/** \file
 *  This C source file was generated by $ANTLR version 3.4
 *
 *     -  From the grammar source file : MySQL.g
 *     -                            On : 2013-01-07 11:52:01
 *     -                for the parser : MySQLParserParser
 *
 * Editing it, at least manually, is not wise.
 *
 * C language generator and runtime by Jim Idle, jimi|hereisanat|idle|dotgoeshere|ws.
 *
 *
*/
// [The "BSD license"]
// Copyright (c) 2005-2009 Jim Idle, Temporal Wave LLC
// http://www.temporal-wave.com
// http://www.linkedin.com/in/jimidle
//
// All rights reserved.
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions
// are met:
// 1. Redistributions of source code must retain the above copyright
//    notice, this list of conditions and the following disclaimer.
// 2. Redistributions in binary form must reproduce the above copyright
//    notice, this list of conditions and the following disclaimer in the
//    documentation and/or other materials provided with the distribution.
// 3. The name of the author may not be used to endorse or promote products
//    derived from this software without specific prior written permission.
//
// THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
// OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
// IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
// INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
// NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
// THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.


/* =============================================================================
 * This is what the grammar programmer asked us to put at the top of every file.
 */


#define ANTLR3_HUGE
#ifndef _WIN32
#pragma GCC diagnostic ignored "-Wunused-variable"
#pragma GCC diagnostic ignored "-Wparentheses"
#pragma GCC diagnostic ignored "-Wtautological-compare"
#endif

#include "MySQLLexer.h" // Not automatically included by the generator.

/* End of Header action.
 * =============================================================================
 */

/* -----------------------------------------
 * Include the ANTLR3 generated header file.
 */
#include    "MySQLParser.h"

#ifdef __cplusplus
extern "C" { 
#endif

  // Custom error reporting function.
  void on_parse_error(struct ANTLR3_BASE_RECOGNIZER_struct *recognizer, pANTLR3_UINT8 *tokenNames); 

#ifdef __cplusplus
};
#endif

/* ----------------------------------------- */





/* MACROS that hide the C interface implementations from the
 * generated code, which makes it a little more understandable to the human eye.
 * I am very much against using C pre-processor macros for function calls and bits
 * of code as you cannot see what is happening when single stepping in debuggers
 * and so on. The exception (in my book at least) is for generated code, where you are
 * not maintaining it, but may wish to read and understand it. If you single step it, you know that input()
 * hides some indirect calls, but is always referring to the input stream. This is
 * probably more readable than ctx->input->istream->input(snarfle0->blarg) and allows me to rejig
 * the runtime interfaces without changing the generated code too often, without
 * confusing the reader of the generated output, who may not wish to know the gory
 * details of the interface inheritance.
 */

#define		CTX	ctx

/* Aids in accessing scopes for grammar programmers
 */
#undef	SCOPE_TYPE
#undef	SCOPE_STACK
#undef	SCOPE_TOP
#define	SCOPE_TYPE(scope)   pMySQLParser_##scope##_SCOPE
#define SCOPE_STACK(scope)  pMySQLParser_##scope##Stack
#define	SCOPE_TOP(scope)    ctx->pMySQLParser_##scope##Top
#define	SCOPE_SIZE(scope)		ctx->pMySQLParser_##scope##Stack_limit
#define SCOPE_INSTANCE(scope, i)	(ctx->SCOPE_STACK(scope)->get(ctx->SCOPE_STACK(scope),i))

/* Macros for accessing things in the parser
 */

#undef	    PARSER
#undef	    RECOGNIZER
#undef	    HAVEPARSEDRULE
#undef		MEMOIZE
#undef	    INPUT
#undef	    STRSTREAM
#undef	    HASEXCEPTION
#undef	    EXCEPTION
#undef	    MATCHT
#undef	    MATCHANYT
#undef	    FOLLOWSTACK
#undef	    FOLLOWPUSH
#undef	    FOLLOWPOP
#undef	    PRECOVER
#undef	    PREPORTERROR
#undef	    LA
#undef	    LT
#undef	    CONSTRUCTEX
#undef	    CONSUME
#undef	    MARK
#undef	    REWIND
#undef	    REWINDLAST
#undef	    PERRORRECOVERY
#undef	    HASFAILED
#undef	    FAILEDFLAG
#undef	    RECOVERFROMMISMATCHEDSET
#undef	    RECOVERFROMMISMATCHEDELEMENT
#undef		INDEX
#undef      ADAPTOR
#undef		SEEK
#undef	    RULEMEMO
#undef		DBG

#define	    PARSER				ctx->pParser
#define	    RECOGNIZER				PARSER->rec
#define	    PSRSTATE				RECOGNIZER->state
#define	    HAVEPARSEDRULE(r)			RECOGNIZER->alreadyParsedRule(RECOGNIZER, r)
#define	    MEMOIZE(ri,si)			RECOGNIZER->memoize(RECOGNIZER, ri, si)
#define	    INPUT				PARSER->tstream
#define	    STRSTREAM				INPUT
#define	    ISTREAM				INPUT->istream
#define	    INDEX()				ISTREAM->index(INPUT->istream)
#define	    HASEXCEPTION()			(PSRSTATE->error == ANTLR3_TRUE)
#define	    EXCEPTION				PSRSTATE->exception
#define	    MATCHT(t, fs)			RECOGNIZER->match(RECOGNIZER, t, fs)
#define	    MATCHANYT()				RECOGNIZER->matchAny(RECOGNIZER)
#define	    FOLLOWSTACK				PSRSTATE->following
#ifdef  SKIP_FOLLOW_SETS
#define	    FOLLOWPUSH(x)
#define	    FOLLOWPOP()
#else
#define	    FOLLOWPUSH(x)			FOLLOWSTACK->push(FOLLOWSTACK, ((void *)(&(x))), NULL)
#define	    FOLLOWPOP()				FOLLOWSTACK->pop(FOLLOWSTACK)
#endif
#define	    PRECOVER()				RECOGNIZER->recover(RECOGNIZER)
#define	    PREPORTERROR()			RECOGNIZER->reportError(RECOGNIZER)
#define	    LA(n)				INPUT->istream->_LA(ISTREAM, n)
#define	    LT(n)				INPUT->_LT(INPUT, n)
#define	    CONSTRUCTEX()			RECOGNIZER->exConstruct(RECOGNIZER)
#define	    CONSUME()				ISTREAM->consume(ISTREAM)
#define	    MARK()				ISTREAM->mark(ISTREAM)
#define	    REWIND(m)				ISTREAM->rewind(ISTREAM, m)
#define	    REWINDLAST()			ISTREAM->rewindLast(ISTREAM)
#define	    SEEK(n)				ISTREAM->seek(ISTREAM, n)
#define	    PERRORRECOVERY			PSRSTATE->errorRecovery
#define	    FAILEDFLAG				PSRSTATE->failed
#define	    HASFAILED()				(FAILEDFLAG == ANTLR3_TRUE)
#define	    BACKTRACKING			PSRSTATE->backtracking
#define	    RECOVERFROMMISMATCHEDSET(s)		RECOGNIZER->recoverFromMismatchedSet(RECOGNIZER, s)
#define	    RECOVERFROMMISMATCHEDELEMENT(e)	RECOGNIZER->recoverFromMismatchedElement(RECOGNIZER, s)
#define     ADAPTOR                         ctx->adaptor
#define		RULEMEMO						PSRSTATE->ruleMemo
#define		DBG								RECOGNIZER->debugger


#define		TOKTEXT(tok, txt)				tok, (pANTLR3_UINT8)txt

/* The 4 tokens defined below may well clash with your own #defines or token types. If so
 * then for the present you must use different names for your defines as these are hard coded
 * in the code generator. It would be better not to use such names internally, and maybe
 * we can change this in a forthcoming release. I deliberately do not #undef these
 * here as this will at least give you a redefined error somewhere if they clash.
 */
#define	    UP	    ANTLR3_TOKEN_UP
#define	    DOWN    ANTLR3_TOKEN_DOWN
#define	    EOR	    ANTLR3_TOKEN_EOR
#define	    INVALID ANTLR3_TOKEN_INVALID


/* =============================================================================
 * Functions to create and destroy scopes. First come the rule scopes, followed
 * by the global declared scopes.
 */



/* ============================================================================= */

/* =============================================================================
 * Start of recognizer
 */


/** \brief Table of all token names in symbolic order, mainly used for
 *         error reporting.
 */
pANTLR3_UINT8   MySQLParserTokenNames[730+4]
     = {
        (pANTLR3_UINT8) "<invalid>",       /* String to print to indicate an invalid token */
        (pANTLR3_UINT8) "<EOR>",
        (pANTLR3_UINT8) "<DOWN>",
        (pANTLR3_UINT8) "<UP>",
        (pANTLR3_UINT8) "ACCESSIBLE_SYMBOL",
        (pANTLR3_UINT8) "ACTION_SYMBOL",
        (pANTLR3_UINT8) "ADDDATE_SYMBOL",
        (pANTLR3_UINT8) "ADD_SYMBOL",
        (pANTLR3_UINT8) "AFTER_SYMBOL",
        (pANTLR3_UINT8) "AGAINST_SYMBOL",
        (pANTLR3_UINT8) "AGGREGATE_SYMBOL",
        (pANTLR3_UINT8) "ALGORITHM_SYMBOL",
        (pANTLR3_UINT8) "ALL_SYMBOL",
        (pANTLR3_UINT8) "ALTER_SYMBOL",
        (pANTLR3_UINT8) "ANALYSE_SYMBOL",
        (pANTLR3_UINT8) "ANALYZE_SYMBOL",
        (pANTLR3_UINT8) "AND_SYMBOL",
        (pANTLR3_UINT8) "ANY_SYMBOL",
        (pANTLR3_UINT8) "ASCII_SYMBOL",
        (pANTLR3_UINT8) "ASC_SYMBOL",
        (pANTLR3_UINT8) "ASENSITIVE_SYMBOL",
        (pANTLR3_UINT8) "ASSIGN_OPERATOR",
        (pANTLR3_UINT8) "AS_SYMBOL",
        (pANTLR3_UINT8) "AT_AT_SIGN_SYMBOL",
        (pANTLR3_UINT8) "AT_SIGN_SYMBOL",
        (pANTLR3_UINT8) "AT_SYMBOL",
        (pANTLR3_UINT8) "AUTHORS_SYMBOL",
        (pANTLR3_UINT8) "AUTOEXTEND_SIZE_SYMBOL",
        (pANTLR3_UINT8) "AUTO_INCREMENT_SYMBOL",
        (pANTLR3_UINT8) "AVG_ROW_LENGTH_SYMBOL",
        (pANTLR3_UINT8) "AVG_SYMBOL",
        (pANTLR3_UINT8) "BACKUP_SYMBOL",
        (pANTLR3_UINT8) "BACK_TICK",
        (pANTLR3_UINT8) "BACK_TICK_QUOTED_ID",
        (pANTLR3_UINT8) "BEFORE_SYMBOL",
        (pANTLR3_UINT8) "BEGIN_SYMBOL",
        (pANTLR3_UINT8) "BETWEEN_SYMBOL",
        (pANTLR3_UINT8) "BIGINT_SYMBOL",
        (pANTLR3_UINT8) "BINARY_SYMBOL",
        (pANTLR3_UINT8) "BINLOG_SYMBOL",
        (pANTLR3_UINT8) "BIN_NUM_SYMBOL",
        (pANTLR3_UINT8) "BITNUMBER",
        (pANTLR3_UINT8) "BITSTRING",
        (pANTLR3_UINT8) "BITWISE_AND_OPERATOR",
        (pANTLR3_UINT8) "BITWISE_NOT_OPERATOR",
        (pANTLR3_UINT8) "BITWISE_OR_OPERATOR",
        (pANTLR3_UINT8) "BITWISE_XOR_OPERATOR",
        (pANTLR3_UINT8) "BIT_AND_SYMBOL",
        (pANTLR3_UINT8) "BIT_OR_SYMBOL",
        (pANTLR3_UINT8) "BIT_SYMBOL",
        (pANTLR3_UINT8) "BIT_XOR_SYMBOL",
        (pANTLR3_UINT8) "BLOB_SYMBOL",
        (pANTLR3_UINT8) "BLOCK_COMMENT",
        (pANTLR3_UINT8) "BLOCK_SYMBOL",
        (pANTLR3_UINT8) "BOOLEAN_SYMBOL",
        (pANTLR3_UINT8) "BOOL_SYMBOL",
        (pANTLR3_UINT8) "BOTH_SYMBOL",
        (pANTLR3_UINT8) "BTREE_SYMBOL",
        (pANTLR3_UINT8) "BYTE_SYMBOL",
        (pANTLR3_UINT8) "BY_SYMBOL",
        (pANTLR3_UINT8) "CACHE_SYMBOL",
        (pANTLR3_UINT8) "CALL_SYMBOL",
        (pANTLR3_UINT8) "CASCADED_SYMBOL",
        (pANTLR3_UINT8) "CASCADE_SYMBOL",
        (pANTLR3_UINT8) "CASE_SYMBOL",
        (pANTLR3_UINT8) "CAST_SYMBOL",
        (pANTLR3_UINT8) "CATALOG_NAME_SYMBOL",
        (pANTLR3_UINT8) "CHAIN_SYMBOL",
        (pANTLR3_UINT8) "CHANGED_SYMBOL",
        (pANTLR3_UINT8) "CHANGE_SYMBOL",
        (pANTLR3_UINT8) "CHARACTER_SYMBOL",
        (pANTLR3_UINT8) "CHARSET_SYMBOL",
        (pANTLR3_UINT8) "CHAR_SYMBOL",
        (pANTLR3_UINT8) "CHECKSUM_SYMBOL",
        (pANTLR3_UINT8) "CHECK_SYMBOL",
        (pANTLR3_UINT8) "CIPHER_SYMBOL",
        (pANTLR3_UINT8) "CLASS_ORIGIN_SYMBOL",
        (pANTLR3_UINT8) "CLIENT_SYMBOL",
        (pANTLR3_UINT8) "CLOSE_PAR_SYMBOL",
        (pANTLR3_UINT8) "CLOSE_SYMBOL",
        (pANTLR3_UINT8) "COALESCE_SYMBOL",
        (pANTLR3_UINT8) "CODE_SYMBOL",
        (pANTLR3_UINT8) "COLLATE_SYMBOL",
        (pANTLR3_UINT8) "COLLATION_SYMBOL",
        (pANTLR3_UINT8) "COLON_SYMBOL",
        (pANTLR3_UINT8) "COLUMNS_SYMBOL",
        (pANTLR3_UINT8) "COLUMN_FORMAT_SYMBOL",
        (pANTLR3_UINT8) "COLUMN_NAME_SYMBOL",
        (pANTLR3_UINT8) "COLUMN_SYMBOL",
        (pANTLR3_UINT8) "COMMA_SYMBOL",
        (pANTLR3_UINT8) "COMMENT_RULE",
        (pANTLR3_UINT8) "COMMENT_SYMBOL",
        (pANTLR3_UINT8) "COMMITTED_SYMBOL",
        (pANTLR3_UINT8) "COMMIT_SYMBOL",
        (pANTLR3_UINT8) "COMPACT_SYMBOL",
        (pANTLR3_UINT8) "COMPLETION_SYMBOL",
        (pANTLR3_UINT8) "COMPRESSED_SYMBOL",
        (pANTLR3_UINT8) "CONCAT_PIPES_SYMBOL",
        (pANTLR3_UINT8) "CONCURRENT_SYMBOL",
        (pANTLR3_UINT8) "CONDITION_SYMBOL",
        (pANTLR3_UINT8) "CONNECTION_SYMBOL",
        (pANTLR3_UINT8) "CONSISTENT_SYMBOL",
        (pANTLR3_UINT8) "CONSTRAINT_CATALOG_SYMBOL",
        (pANTLR3_UINT8) "CONSTRAINT_NAME_SYMBOL",
        (pANTLR3_UINT8) "CONSTRAINT_SCHEMA_SYMBOL",
        (pANTLR3_UINT8) "CONSTRAINT_SYMBOL",
        (pANTLR3_UINT8) "CONTAINS_SYMBOL",
        (pANTLR3_UINT8) "CONTEXT_SYMBOL",
        (pANTLR3_UINT8) "CONTINUE_SYMBOL",
        (pANTLR3_UINT8) "CONTRIBUTORS_SYMBOL",
        (pANTLR3_UINT8) "CONVERT_SYMBOL",
        (pANTLR3_UINT8) "COUNT_SYMBOL",
        (pANTLR3_UINT8) "CPU_SYMBOL",
        (pANTLR3_UINT8) "CREATE_SYMBOL",
        (pANTLR3_UINT8) "CROSS_SYMBOL",
        (pANTLR3_UINT8) "CUBE_SYMBOL",
        (pANTLR3_UINT8) "CURDATE_SYMBOL",
        (pANTLR3_UINT8) "CURRENT_SYMBOL",
        (pANTLR3_UINT8) "CURRENT_TIMESTAMP_SYMBOL",
        (pANTLR3_UINT8) "CURRENT_USER_SYMBOL",
        (pANTLR3_UINT8) "CURSOR_NAME_SYMBOL",
        (pANTLR3_UINT8) "CURSOR_SYMBOL",
        (pANTLR3_UINT8) "CURTIME_SYMBOL",
        (pANTLR3_UINT8) "DASHDASH_COMMENT",
        (pANTLR3_UINT8) "DATABASES_SYMBOL",
        (pANTLR3_UINT8) "DATABASE_SYMBOL",
        (pANTLR3_UINT8) "DATAFILE_SYMBOL",
        (pANTLR3_UINT8) "DATA_SYMBOL",
        (pANTLR3_UINT8) "DATETIME_SYMBOL",
        (pANTLR3_UINT8) "DATE_ADD_INTERVAL_SYMBOL",
        (pANTLR3_UINT8) "DATE_ADD_SYMBOL",
        (pANTLR3_UINT8) "DATE_SUB_INTERVAL_SYMBOL",
        (pANTLR3_UINT8) "DATE_SUB_SYMBOL",
        (pANTLR3_UINT8) "DATE_SYMBOL",
        (pANTLR3_UINT8) "DAYOFMONTH_SYMBOL",
        (pANTLR3_UINT8) "DAY_HOUR_SYMBOL",
        (pANTLR3_UINT8) "DAY_MICROSECOND_SYMBOL",
        (pANTLR3_UINT8) "DAY_MINUTE_SYMBOL",
        (pANTLR3_UINT8) "DAY_SECOND_SYMBOL",
        (pANTLR3_UINT8) "DAY_SYMBOL",
        (pANTLR3_UINT8) "DEALLOCATE_SYMBOL",
        (pANTLR3_UINT8) "DECIMAL_NUM_SYMBOL",
        (pANTLR3_UINT8) "DECIMAL_SYMBOL",
        (pANTLR3_UINT8) "DECLARE_SYMBOL",
        (pANTLR3_UINT8) "DEC_SYMBOL",
        (pANTLR3_UINT8) "DEFAULT_AUTH_SYMBOL",
        (pANTLR3_UINT8) "DEFAULT_SYMBOL",
        (pANTLR3_UINT8) "DEFINER_SYMBOL",
        (pANTLR3_UINT8) "DELAYED_SYMBOL",
        (pANTLR3_UINT8) "DELAY_KEY_WRITE_SYMBOL",
        (pANTLR3_UINT8) "DELETE_SYMBOL",
        (pANTLR3_UINT8) "DESCRIBE_SYMBOL",
        (pANTLR3_UINT8) "DESC_SYMBOL",
        (pANTLR3_UINT8) "DES_KEY_FILE_SYMBOL",
        (pANTLR3_UINT8) "DETERMINISTIC_SYMBOL",
        (pANTLR3_UINT8) "DIAGNOSTICS_SYMBOL",
        (pANTLR3_UINT8) "DIGIT",
        (pANTLR3_UINT8) "DIGITS",
        (pANTLR3_UINT8) "DIRECTORY_SYMBOL",
        (pANTLR3_UINT8) "DISABLE_SYMBOL",
        (pANTLR3_UINT8) "DISCARD_SYMBOL",
        (pANTLR3_UINT8) "DISK_SYMBOL",
        (pANTLR3_UINT8) "DISTINCTROW_SYMBOL",
        (pANTLR3_UINT8) "DISTINCT_SYMBOL",
        (pANTLR3_UINT8) "DIV_OPERATOR",
        (pANTLR3_UINT8) "DIV_SYMBOL",
        (pANTLR3_UINT8) "DOT_SYMBOL",
        (pANTLR3_UINT8) "DOUBLE_QUOTE",
        (pANTLR3_UINT8) "DOUBLE_QUOTED_TEXT",
        (pANTLR3_UINT8) "DOUBLE_SYMBOL",
        (pANTLR3_UINT8) "DO_SYMBOL",
        (pANTLR3_UINT8) "DROP_SYMBOL",
        (pANTLR3_UINT8) "DUAL_SYMBOL",
        (pANTLR3_UINT8) "DUMPFILE_SYMBOL",
        (pANTLR3_UINT8) "DUPLICATE_SYMBOL",
        (pANTLR3_UINT8) "DYNAMIC_SYMBOL",
        (pANTLR3_UINT8) "EACH_SYMBOL",
        (pANTLR3_UINT8) "ELSEIF_SYMBOL",
        (pANTLR3_UINT8) "ELSE_SYMBOL",
        (pANTLR3_UINT8) "ENABLE_SYMBOL",
        (pANTLR3_UINT8) "ENCLOSED_SYMBOL",
        (pANTLR3_UINT8) "ENDS_SYMBOL",
        (pANTLR3_UINT8) "END_OF_INPUT_SYMBOL",
        (pANTLR3_UINT8) "END_SYMBOL",
        (pANTLR3_UINT8) "ENGINES_SYMBOL",
        (pANTLR3_UINT8) "ENGINE_SYMBOL",
        (pANTLR3_UINT8) "ENUM_SYMBOL",
        (pANTLR3_UINT8) "EQUAL_OPERATOR",
        (pANTLR3_UINT8) "ERRORS_SYMBOL",
        (pANTLR3_UINT8) "ERROR_SYMBOL",
        (pANTLR3_UINT8) "ESCAPED_SYMBOL",
        (pANTLR3_UINT8) "ESCAPE_OPERATOR",
        (pANTLR3_UINT8) "ESCAPE_SYMBOL",
        (pANTLR3_UINT8) "EVENTS_SYMBOL",
        (pANTLR3_UINT8) "EVENT_SYMBOL",
        (pANTLR3_UINT8) "EVERY_SYMBOL",
        (pANTLR3_UINT8) "EXCHANGE_SYMBOL",
        (pANTLR3_UINT8) "EXECUTE_SYMBOL",
        (pANTLR3_UINT8) "EXISTS_SYMBOL",
        (pANTLR3_UINT8) "EXIT_SYMBOL",
        (pANTLR3_UINT8) "EXPANSION_SYMBOL",
        (pANTLR3_UINT8) "EXPIRE_SYMBOL",
        (pANTLR3_UINT8) "EXPLAIN_SYMBOL",
        (pANTLR3_UINT8) "EXPORT_SYMBOL",
        (pANTLR3_UINT8) "EXPRESSION",
        (pANTLR3_UINT8) "EXTENDED_SYMBOL",
        (pANTLR3_UINT8) "EXTENT_SIZE_SYMBOL",
        (pANTLR3_UINT8) "EXTRACT_SYMBOL",
        (pANTLR3_UINT8) "FALSE_SYMBOL",
        (pANTLR3_UINT8) "FAST_SYMBOL",
        (pANTLR3_UINT8) "FAULTS_SYMBOL",
        (pANTLR3_UINT8) "FETCH_SYMBOL",
        (pANTLR3_UINT8) "FIELDS_SYMBOL",
        (pANTLR3_UINT8) "FIELD_REF_ID",
        (pANTLR3_UINT8) "FILE_SYMBOL",
        (pANTLR3_UINT8) "FIRST_SYMBOL",
        (pANTLR3_UINT8) "FIXED_SYMBOL",
        (pANTLR3_UINT8) "FLOAT",
        (pANTLR3_UINT8) "FLOAT4_SYMBOL",
        (pANTLR3_UINT8) "FLOAT8_SYMBOL",
        (pANTLR3_UINT8) "FLOAT_SYMBOL",
        (pANTLR3_UINT8) "FLUSH_SYMBOL",
        (pANTLR3_UINT8) "FORCE_SYMBOL",
        (pANTLR3_UINT8) "FOREIGN_SYMBOL",
        (pANTLR3_UINT8) "FORMAT_SYMBOL",
        (pANTLR3_UINT8) "FOR_SYMBOL",
        (pANTLR3_UINT8) "FOUND_SYMBOL",
        (pANTLR3_UINT8) "FRAC_SECOND_SYMBOL",
        (pANTLR3_UINT8) "FROM_SYMBOL",
        (pANTLR3_UINT8) "FULLTEXT_SYMBOL",
        (pANTLR3_UINT8) "FULL_SYMBOL",
        (pANTLR3_UINT8) "FUNCTION_CALL",
        (pANTLR3_UINT8) "FUNCTION_SYMBOL",
        (pANTLR3_UINT8) "GENERAL_SYMBOL",
        (pANTLR3_UINT8) "GEOMETRYCOLLECTION_SYMBOL",
        (pANTLR3_UINT8) "GEOMETRY_SYMBOL",
        (pANTLR3_UINT8) "GET_FORMAT_SYMBOL",
        (pANTLR3_UINT8) "GET_SYMBOL",
        (pANTLR3_UINT8) "GLOBAL_SYMBOL",
        (pANTLR3_UINT8) "GRANTS_SYMBOL",
        (pANTLR3_UINT8) "GRANT_SYMBOL",
        (pANTLR3_UINT8) "GREATER_OR_EQUAL_OPERATOR",
        (pANTLR3_UINT8) "GREATER_THAN_OPERATOR",
        (pANTLR3_UINT8) "GROUP_CONCAT_SYMBOL",
        (pANTLR3_UINT8) "GROUP_SYMBOL",
        (pANTLR3_UINT8) "HANDLER_SYMBOL",
        (pANTLR3_UINT8) "HASH_SYMBOL",
        (pANTLR3_UINT8) "HAVING_SYMBOL",
        (pANTLR3_UINT8) "HELP_SYMBOL",
        (pANTLR3_UINT8) "HEXDIGIT",
        (pANTLR3_UINT8) "HEXNUMBER",
        (pANTLR3_UINT8) "HEXSTRING",
        (pANTLR3_UINT8) "HIGH_PRIORITY_SYMBOL",
        (pANTLR3_UINT8) "HOSTS_SYMBOL",
        (pANTLR3_UINT8) "HOST_SYMBOL",
        (pANTLR3_UINT8) "HOUR_MICROSECOND_SYMBOL",
        (pANTLR3_UINT8) "HOUR_MINUTE_SYMBOL",
        (pANTLR3_UINT8) "HOUR_SECOND_SYMBOL",
        (pANTLR3_UINT8) "HOUR_SYMBOL",
        (pANTLR3_UINT8) "IDENTIFIED_SYMBOL",
        (pANTLR3_UINT8) "IDENTIFIER",
        (pANTLR3_UINT8) "IF_SYMBOL",
        (pANTLR3_UINT8) "IGNORE_SERVER_IDS_SYMBOL",
        (pANTLR3_UINT8) "IGNORE_SYMBOL",
        (pANTLR3_UINT8) "IMPORT_SYMBOL",
        (pANTLR3_UINT8) "INDEXES_SYMBOL",
        (pANTLR3_UINT8) "INDEX_HINT_LIST",
        (pANTLR3_UINT8) "INDEX_SYMBOL",
        (pANTLR3_UINT8) "INFILE_SYMBOL",
        (pANTLR3_UINT8) "INITIAL_SIZE_SYMBOL",
        (pANTLR3_UINT8) "INNER_SYMBOL",
        (pANTLR3_UINT8) "INNODB_SYMBOL",
        (pANTLR3_UINT8) "INOUT_SYMBOL",
        (pANTLR3_UINT8) "INSENSITIVE_SYMBOL",
        (pANTLR3_UINT8) "INSERT_METHOD_SYMBOL",
        (pANTLR3_UINT8) "INSERT_SYMBOL",
        (pANTLR3_UINT8) "INSTALL_SYMBOL",
        (pANTLR3_UINT8) "INT1_SYMBOL",
        (pANTLR3_UINT8) "INT2_SYMBOL",
        (pANTLR3_UINT8) "INT3_SYMBOL",
        (pANTLR3_UINT8) "INT4_SYMBOL",
        (pANTLR3_UINT8) "INT8_SYMBOL",
        (pANTLR3_UINT8) "INTEGER",
        (pANTLR3_UINT8) "INTEGER_SYMBOL",
        (pANTLR3_UINT8) "INTERVAL_SYMBOL",
        (pANTLR3_UINT8) "INTO_SYMBOL",
        (pANTLR3_UINT8) "INT_SYMBOL",
        (pANTLR3_UINT8) "INVOKER_SYMBOL",
        (pANTLR3_UINT8) "IN_SYMBOL",
        (pANTLR3_UINT8) "IO_AFTER_GTIDS_SYMBOL",
        (pANTLR3_UINT8) "IO_BEFORE_GTIDS_SYMBOL",
        (pANTLR3_UINT8) "IO_SYMBOL",
        (pANTLR3_UINT8) "IO_THREAD_SYMBOL",
        (pANTLR3_UINT8) "IPC_SYMBOL",
        (pANTLR3_UINT8) "ISOLATION_SYMBOL",
        (pANTLR3_UINT8) "ISSUER_SYMBOL",
        (pANTLR3_UINT8) "IS_SYMBOL",
        (pANTLR3_UINT8) "ITERATE_SYMBOL",
        (pANTLR3_UINT8) "JOIN",
        (pANTLR3_UINT8) "JOIN_SYMBOL",
        (pANTLR3_UINT8) "KEYS_SYMBOL",
        (pANTLR3_UINT8) "KEY_BLOCK_SIZE_SYMBOL",
        (pANTLR3_UINT8) "KEY_SYMBOL",
        (pANTLR3_UINT8) "KILL_SYMBOL",
        (pANTLR3_UINT8) "LANGUAGE_SYMBOL",
        (pANTLR3_UINT8) "LAST_SYMBOL",
        (pANTLR3_UINT8) "LEADING_SYMBOL",
        (pANTLR3_UINT8) "LEAVES_SYMBOL",
        (pANTLR3_UINT8) "LEAVE_SYMBOL",
        (pANTLR3_UINT8) "LEFT_SYMBOL",
        (pANTLR3_UINT8) "LESS_OR_EQUAL_OPERATOR",
        (pANTLR3_UINT8) "LESS_SYMBOL",
        (pANTLR3_UINT8) "LESS_THAN_OPERATOR",
        (pANTLR3_UINT8) "LETTER_WHEN_UNQUOTED",
        (pANTLR3_UINT8) "LEVEL_SYMBOL",
        (pANTLR3_UINT8) "LEX_HOSTNAME_SYMBOL",
        (pANTLR3_UINT8) "LIKE_SYMBOL",
        (pANTLR3_UINT8) "LIMIT_SYMBOL",
        (pANTLR3_UINT8) "LINEAR_SYMBOL",
        (pANTLR3_UINT8) "LINESTRING_SYMBOL",
        (pANTLR3_UINT8) "LINES_SYMBOL",
        (pANTLR3_UINT8) "LIST_SYMBOL",
        (pANTLR3_UINT8) "LOAD_SYMBOL",
        (pANTLR3_UINT8) "LOCALTIMESTAMP_SYMBOL",
        (pANTLR3_UINT8) "LOCALTIME_SYMBOL",
        (pANTLR3_UINT8) "LOCAL_SYMBOL",
        (pANTLR3_UINT8) "LOCATOR_SYMBOL",
        (pANTLR3_UINT8) "LOCKS_SYMBOL",
        (pANTLR3_UINT8) "LOCK_SYMBOL",
        (pANTLR3_UINT8) "LOGFILE_SYMBOL",
        (pANTLR3_UINT8) "LOGICAL_AND_OPERATOR",
        (pANTLR3_UINT8) "LOGICAL_NOT_OPERATOR",
        (pANTLR3_UINT8) "LOGICAL_OR_OPERATOR",
        (pANTLR3_UINT8) "LOGS_SYMBOL",
        (pANTLR3_UINT8) "LONGBLOB_SYMBOL",
        (pANTLR3_UINT8) "LONGTEXT_SYMBOL",
        (pANTLR3_UINT8) "LONG_NUM_SYMBOL",
        (pANTLR3_UINT8) "LONG_SYMBOL",
        (pANTLR3_UINT8) "LOOP_SYMBOL",
        (pANTLR3_UINT8) "LOW_PRIORITY_SYMBOL",
        (pANTLR3_UINT8) "MASTER_AUTO_POSITION_SYMBOL",
        (pANTLR3_UINT8) "MASTER_BIND_SYMBOL",
        (pANTLR3_UINT8) "MASTER_CONNECT_RETRY_SYMBOL",
        (pANTLR3_UINT8) "MASTER_DELAY_SYMBOL",
        (pANTLR3_UINT8) "MASTER_HEARTBEAT_PERIOD_SYMBOL",
        (pANTLR3_UINT8) "MASTER_HOST_SYMBOL",
        (pANTLR3_UINT8) "MASTER_LOG_FILE_SYMBOL",
        (pANTLR3_UINT8) "MASTER_LOG_POS_SYMBOL",
        (pANTLR3_UINT8) "MASTER_PASSWORD_SYMBOL",
        (pANTLR3_UINT8) "MASTER_PORT_SYMBOL",
        (pANTLR3_UINT8) "MASTER_RETRY_COUNT_SYMBOL",
        (pANTLR3_UINT8) "MASTER_SERVER_ID_SYMBOL",
        (pANTLR3_UINT8) "MASTER_SSL_CAPATH_SYMBOL",
        (pANTLR3_UINT8) "MASTER_SSL_CA_SYMBOL",
        (pANTLR3_UINT8) "MASTER_SSL_CERT_SYMBOL",
        (pANTLR3_UINT8) "MASTER_SSL_CIPHER_SYMBOL",
        (pANTLR3_UINT8) "MASTER_SSL_CRLPATH_SYMBOL",
        (pANTLR3_UINT8) "MASTER_SSL_CRL_SYMBOL",
        (pANTLR3_UINT8) "MASTER_SSL_KEY_SYMBOL",
        (pANTLR3_UINT8) "MASTER_SSL_SYMBOL",
        (pANTLR3_UINT8) "MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL",
        (pANTLR3_UINT8) "MASTER_SYMBOL",
        (pANTLR3_UINT8) "MASTER_USER_SYMBOL",
        (pANTLR3_UINT8) "MATCH_SYMBOL",
        (pANTLR3_UINT8) "MAXVALUE_SYMBOL",
        (pANTLR3_UINT8) "MAX_CONNECTIONS_PER_HOUR_SYMBOL",
        (pANTLR3_UINT8) "MAX_QUERIES_PER_HOUR_SYMBOL",
        (pANTLR3_UINT8) "MAX_ROWS_SYMBOL",
        (pANTLR3_UINT8) "MAX_SIZE_SYMBOL",
        (pANTLR3_UINT8) "MAX_SYMBOL",
        (pANTLR3_UINT8) "MAX_UPDATES_PER_HOUR_SYMBOL",
        (pANTLR3_UINT8) "MAX_USER_CONNECTIONS_SYMBOL",
        (pANTLR3_UINT8) "MEDIUMBLOB_SYMBOL",
        (pANTLR3_UINT8) "MEDIUMINT_SYMBOL",
        (pANTLR3_UINT8) "MEDIUMTEXT_SYMBOL",
        (pANTLR3_UINT8) "MEDIUM_SYMBOL",
        (pANTLR3_UINT8) "MEMORY_SYMBOL",
        (pANTLR3_UINT8) "MERGE_SYMBOL",
        (pANTLR3_UINT8) "MESSAGE_TEXT_SYMBOL",
        (pANTLR3_UINT8) "MICROSECOND_SYMBOL",
        (pANTLR3_UINT8) "MIDDLEINT_SYMBOL",
        (pANTLR3_UINT8) "MID_SYMBOL",
        (pANTLR3_UINT8) "MIGRATE_SYMBOL",
        (pANTLR3_UINT8) "MINUS_OPERATOR",
        (pANTLR3_UINT8) "MINUTE_MICROSECOND_SYMBOL",
        (pANTLR3_UINT8) "MINUTE_SECOND_SYMBOL",
        (pANTLR3_UINT8) "MINUTE_SYMBOL",
        (pANTLR3_UINT8) "MIN_ROWS_SYMBOL",
        (pANTLR3_UINT8) "MIN_SYMBOL",
        (pANTLR3_UINT8) "ML_COMMENT_END",
        (pANTLR3_UINT8) "ML_COMMENT_HEAD",
        (pANTLR3_UINT8) "MODE_SYMBOL",
        (pANTLR3_UINT8) "MODIFIES_SYMBOL",
        (pANTLR3_UINT8) "MODIFY_SYMBOL",
        (pANTLR3_UINT8) "MOD_OPERATOR",
        (pANTLR3_UINT8) "MOD_SYMBOL",
        (pANTLR3_UINT8) "MONTH_SYMBOL",
        (pANTLR3_UINT8) "MULTILINESTRING_SYMBOL",
        (pANTLR3_UINT8) "MULTILINE_COMMENT",
        (pANTLR3_UINT8) "MULTIPOINT_SYMBOL",
        (pANTLR3_UINT8) "MULTIPOLYGON_SYMBOL",
        (pANTLR3_UINT8) "MULT_OPERATOR",
        (pANTLR3_UINT8) "MUTEX_SYMBOL",
        (pANTLR3_UINT8) "MYSQL_ERRNO_SYMBOL",
        (pANTLR3_UINT8) "NAMES_SYMBOL",
        (pANTLR3_UINT8) "NAME_SYMBOL",
        (pANTLR3_UINT8) "NATIONAL_SYMBOL",
        (pANTLR3_UINT8) "NATURAL_SYMBOL",
        (pANTLR3_UINT8) "NCHAR_STRING_SYMBOL",
        (pANTLR3_UINT8) "NCHAR_SYMBOL",
        (pANTLR3_UINT8) "NCHAR_TEXT",
        (pANTLR3_UINT8) "NDBCLUSTER_SYMBOL",
        (pANTLR3_UINT8) "NDB_SYMBOL",
        (pANTLR3_UINT8) "NEG_SYMBOL",
        (pANTLR3_UINT8) "NEW_SYMBOL",
        (pANTLR3_UINT8) "NEXT_SYMBOL",
        (pANTLR3_UINT8) "NODEGROUP_SYMBOL",
        (pANTLR3_UINT8) "NONE_SYMBOL",
        (pANTLR3_UINT8) "NOT2_SYMBOL",
        (pANTLR3_UINT8) "NOT_EQUAL2_OPERATOR",
        (pANTLR3_UINT8) "NOT_EQUAL_OPERATOR",
        (pANTLR3_UINT8) "NOT_SYMBOL",
        (pANTLR3_UINT8) "NOW_SYMBOL",
        (pANTLR3_UINT8) "NO_SYMBOL",
        (pANTLR3_UINT8) "NO_WAIT_SYMBOL",
        (pANTLR3_UINT8) "NO_WRITE_TO_BINLOG_SYMBOL",
        (pANTLR3_UINT8) "NULL2_SYMBOL",
        (pANTLR3_UINT8) "NULL_SAFE_EQUAL_OPERATOR",
        (pANTLR3_UINT8) "NULL_SYMBOL",
        (pANTLR3_UINT8) "NUMBER_SYMBOL",
        (pANTLR3_UINT8) "NUMERIC_SYMBOL",
        (pANTLR3_UINT8) "NUM_SYMBOL",
        (pANTLR3_UINT8) "NVARCHAR_SYMBOL",
        (pANTLR3_UINT8) "OFFLINE_SYMBOL",
        (pANTLR3_UINT8) "OFFSET_SYMBOL",
        (pANTLR3_UINT8) "OLD_PASSWORD_SYMBOL",
        (pANTLR3_UINT8) "ONE_SHOT_SYMBOL",
        (pANTLR3_UINT8) "ONE_SYMBOL",
        (pANTLR3_UINT8) "ONLINE_SYMBOL",
        (pANTLR3_UINT8) "ONLY_SYMBOL",
        (pANTLR3_UINT8) "ON_SYMBOL",
        (pANTLR3_UINT8) "OPEN_PAR_SYMBOL",
        (pANTLR3_UINT8) "OPEN_SYMBOL",
        (pANTLR3_UINT8) "OPTIMIZE_SYMBOL",
        (pANTLR3_UINT8) "OPTIONALLY_SYMBOL",
        (pANTLR3_UINT8) "OPTIONS_SYMBOL",
        (pANTLR3_UINT8) "OPTION_SYMBOL",
        (pANTLR3_UINT8) "ORDER_SYMBOL",
        (pANTLR3_UINT8) "OR_SYMBOL",
        (pANTLR3_UINT8) "OUTER_SYMBOL",
        (pANTLR3_UINT8) "OUTFILE_SYMBOL",
        (pANTLR3_UINT8) "OUT_SYMBOL",
        (pANTLR3_UINT8) "OWNER_SYMBOL",
        (pANTLR3_UINT8) "PACK_KEYS_SYMBOL",
        (pANTLR3_UINT8) "PAGE_SYMBOL",
        (pANTLR3_UINT8) "PARAM_MARKER",
        (pANTLR3_UINT8) "PARAM_MARKER_SYMBOL",
        (pANTLR3_UINT8) "PARSER_SYMBOL",
        (pANTLR3_UINT8) "PARTIAL_SYMBOL",
        (pANTLR3_UINT8) "PARTITIONING_SYMBOL",
        (pANTLR3_UINT8) "PARTITIONS_SYMBOL",
        (pANTLR3_UINT8) "PARTITION_SYMBOL",
        (pANTLR3_UINT8) "PAR_EXPRESSION",
        (pANTLR3_UINT8) "PASSWORD_SYMBOL",
        (pANTLR3_UINT8) "PHASE_SYMBOL",
        (pANTLR3_UINT8) "PLUGINS_SYMBOL",
        (pANTLR3_UINT8) "PLUGIN_DIR_SYMBOL",
        (pANTLR3_UINT8) "PLUGIN_SYMBOL",
        (pANTLR3_UINT8) "PLUS_OPERATOR",
        (pANTLR3_UINT8) "POINT_SYMBOL",
        (pANTLR3_UINT8) "POLYGON_SYMBOL",
        (pANTLR3_UINT8) "PORT_SYMBOL",
        (pANTLR3_UINT8) "POSITION_SYMBOL",
        (pANTLR3_UINT8) "POUND_COMMENT",
        (pANTLR3_UINT8) "PRECISION_SYMBOL",
        (pANTLR3_UINT8) "PREPARE_SYMBOL",
        (pANTLR3_UINT8) "PRESERVE_SYMBOL",
        (pANTLR3_UINT8) "PREV_SYMBOL",
        (pANTLR3_UINT8) "PRIMARY_SYMBOL",
        (pANTLR3_UINT8) "PRIVILEGES_SYMBOL",
        (pANTLR3_UINT8) "PROCEDURE_SYMBOL",
        (pANTLR3_UINT8) "PROCESSLIST_SYMBOL",
        (pANTLR3_UINT8) "PROCESS_SYMBOL",
        (pANTLR3_UINT8) "PROFILES_SYMBOL",
        (pANTLR3_UINT8) "PROFILE_SYMBOL",
        (pANTLR3_UINT8) "PROXY_SYMBOL",
        (pANTLR3_UINT8) "PURGE_SYMBOL",
        (pANTLR3_UINT8) "QUARTER_SYMBOL",
        (pANTLR3_UINT8) "QUERY_SYMBOL",
        (pANTLR3_UINT8) "QUICK_SYMBOL",
        (pANTLR3_UINT8) "RANGE_SYMBOL",
        (pANTLR3_UINT8) "READS_SYMBOL",
        (pANTLR3_UINT8) "READ_ONLY_SYMBOL",
        (pANTLR3_UINT8) "READ_SYMBOL",
        (pANTLR3_UINT8) "READ_WRITE_SYMBOL",
        (pANTLR3_UINT8) "REAL_SYMBOL",
        (pANTLR3_UINT8) "REBUILD_SYMBOL",
        (pANTLR3_UINT8) "RECOVER_SYMBOL",
        (pANTLR3_UINT8) "REDOFILE_SYMBOL",
        (pANTLR3_UINT8) "REDO_BUFFER_SIZE_SYMBOL",
        (pANTLR3_UINT8) "REDUNDANT_SYMBOL",
        (pANTLR3_UINT8) "REFERENCES_SYMBOL",
        (pANTLR3_UINT8) "REGEXP_SYMBOL",
        (pANTLR3_UINT8) "RELAYLOG_SYMBOL",
        (pANTLR3_UINT8) "RELAY_LOG_FILE_SYMBOL",
        (pANTLR3_UINT8) "RELAY_LOG_POS_SYMBOL",
        (pANTLR3_UINT8) "RELAY_SYMBOL",
        (pANTLR3_UINT8) "RELAY_THREAD_SYMBOL",
        (pANTLR3_UINT8) "RELEASE_SYMBOL",
        (pANTLR3_UINT8) "RELOAD_SYMBOL",
        (pANTLR3_UINT8) "REMOVE_SYMBOL",
        (pANTLR3_UINT8) "RENAME_SYMBOL",
        (pANTLR3_UINT8) "REORGANIZE_SYMBOL",
        (pANTLR3_UINT8) "REPAIR_SYMBOL",
        (pANTLR3_UINT8) "REPEATABLE_SYMBOL",
        (pANTLR3_UINT8) "REPEAT_SYMBOL",
        (pANTLR3_UINT8) "REPLACE_SYMBOL",
        (pANTLR3_UINT8) "REPLICATION_SYMBOL",
        (pANTLR3_UINT8) "REQUIRE_SYMBOL",
        (pANTLR3_UINT8) "RESET_SYMBOL",
        (pANTLR3_UINT8) "RESIGNAL_SYMBOL",
        (pANTLR3_UINT8) "RESTORE_SYMBOL",
        (pANTLR3_UINT8) "RESTRICT_SYMBOL",
        (pANTLR3_UINT8) "RESUME_SYMBOL",
        (pANTLR3_UINT8) "RETURNED_SQLSTATE_SYMBOL",
        (pANTLR3_UINT8) "RETURNS_SYMBOL",
        (pANTLR3_UINT8) "RETURN_SYMBOL",
        (pANTLR3_UINT8) "REVERSE_SYMBOL",
        (pANTLR3_UINT8) "REVOKE_SYMBOL",
        (pANTLR3_UINT8) "RIGHT_SYMBOL",
        (pANTLR3_UINT8) "RLIKE_SYMBOL",
        (pANTLR3_UINT8) "ROLLBACK_SYMBOL",
        (pANTLR3_UINT8) "ROLLUP_SYMBOL",
        (pANTLR3_UINT8) "ROUTINE_SYMBOL",
        (pANTLR3_UINT8) "ROWS_SYMBOL",
        (pANTLR3_UINT8) "ROW_COUNT_SYMBOL",
        (pANTLR3_UINT8) "ROW_FORMAT_SYMBOL",
        (pANTLR3_UINT8) "ROW_SYMBOL",
        (pANTLR3_UINT8) "RTREE_SYMBOL",
        (pANTLR3_UINT8) "SAVEPOINT_SYMBOL",
        (pANTLR3_UINT8) "SCHEDULE_SYMBOL",
        (pANTLR3_UINT8) "SCHEMAS_SYMBOL",
        (pANTLR3_UINT8) "SCHEMA_NAME_SYMBOL",
        (pANTLR3_UINT8) "SCHEMA_SYMBOL",
        (pANTLR3_UINT8) "SECOND_MICROSECOND_SYMBOL",
        (pANTLR3_UINT8) "SECOND_SYMBOL",
        (pANTLR3_UINT8) "SECURITY_SYMBOL",
        (pANTLR3_UINT8) "SELECT_EXPR",
        (pANTLR3_UINT8) "SELECT_SYMBOL",
        (pANTLR3_UINT8) "SEMICOLON_SYMBOL",
        (pANTLR3_UINT8) "SENSITIVE_SYMBOL",
        (pANTLR3_UINT8) "SEPARATOR_SYMBOL",
        (pANTLR3_UINT8) "SERIALIZABLE_SYMBOL",
        (pANTLR3_UINT8) "SERIAL_SYMBOL",
        (pANTLR3_UINT8) "SERVER_OPTIONS_SYMBOL",
        (pANTLR3_UINT8) "SERVER_SYMBOL",
        (pANTLR3_UINT8) "SESSION_SYMBOL",
        (pANTLR3_UINT8) "SESSION_USER_SYMBOL",
        (pANTLR3_UINT8) "SET_SYMBOL",
        (pANTLR3_UINT8) "SET_VAR_SYMBOL",
        (pANTLR3_UINT8) "SHARE_SYMBOL",
        (pANTLR3_UINT8) "SHIFT_LEFT_OPERATOR",
        (pANTLR3_UINT8) "SHIFT_RIGHT_OPERATOR",
        (pANTLR3_UINT8) "SHOW_SYMBOL",
        (pANTLR3_UINT8) "SHUTDOWN_SYMBOL",
        (pANTLR3_UINT8) "SIGNAL_SYMBOL",
        (pANTLR3_UINT8) "SIGNED_SYMBOL",
        (pANTLR3_UINT8) "SIMPLE_SYMBOL",
        (pANTLR3_UINT8) "SINGLE_QUOTE",
        (pANTLR3_UINT8) "SINGLE_QUOTED_TEXT",
        (pANTLR3_UINT8) "SLAVE_SYMBOL",
        (pANTLR3_UINT8) "SLOW_SYMBOL",
        (pANTLR3_UINT8) "SMALLINT_SYMBOL",
        (pANTLR3_UINT8) "SNAPSHOT_SYMBOL",
        (pANTLR3_UINT8) "SOCKET_SYMBOL",
        (pANTLR3_UINT8) "SONAME_SYMBOL",
        (pANTLR3_UINT8) "SOUNDS_SYMBOL",
        (pANTLR3_UINT8) "SOURCE_SYMBOL",
        (pANTLR3_UINT8) "SPATIAL_SYMBOL",
        (pANTLR3_UINT8) "SPECIFIC_SYMBOL",
        (pANTLR3_UINT8) "SQLEXCEPTION_SYMBOL",
        (pANTLR3_UINT8) "SQLSTATE_SYMBOL",
        (pANTLR3_UINT8) "SQLWARNING_SYMBOL",
        (pANTLR3_UINT8) "SQL_AFTER_GTIDS_SYMBOL",
        (pANTLR3_UINT8) "SQL_AFTER_MTS_GAPS_SYMBOL",
        (pANTLR3_UINT8) "SQL_BEFORE_GTIDS_SYMBOL",
        (pANTLR3_UINT8) "SQL_BIG_RESULT_SYMBOL",
        (pANTLR3_UINT8) "SQL_BUFFER_RESULT_SYMBOL",
        (pANTLR3_UINT8) "SQL_CACHE_SYMBOL",
        (pANTLR3_UINT8) "SQL_CALC_FOUND_ROWS_SYMBOL",
        (pANTLR3_UINT8) "SQL_NO_CACHE_SYMBOL",
        (pANTLR3_UINT8) "SQL_SMALL_RESULT_SYMBOL",
        (pANTLR3_UINT8) "SQL_SYMBOL",
        (pANTLR3_UINT8) "SQL_THREAD_SYMBOL",
        (pANTLR3_UINT8) "SQL_TSI_DAY_SYMBOL",
        (pANTLR3_UINT8) "SQL_TSI_FRAC_SECOND_SYMBOL",
        (pANTLR3_UINT8) "SQL_TSI_HOUR_SYMBOL",
        (pANTLR3_UINT8) "SQL_TSI_MINUTE_SYMBOL",
        (pANTLR3_UINT8) "SQL_TSI_MONTH_SYMBOL",
        (pANTLR3_UINT8) "SQL_TSI_QUARTER_SYMBOL",
        (pANTLR3_UINT8) "SQL_TSI_SECOND_SYMBOL",
        (pANTLR3_UINT8) "SQL_TSI_WEEK_SYMBOL",
        (pANTLR3_UINT8) "SQL_TSI_YEAR_SYMBOL",
        (pANTLR3_UINT8) "SSL_SYMBOL",
        (pANTLR3_UINT8) "STARTING_SYMBOL",
        (pANTLR3_UINT8) "STARTS_SYMBOL",
        (pANTLR3_UINT8) "START_SYMBOL",
        (pANTLR3_UINT8) "STATS_AUTO_RECALC_SYMBOL",
        (pANTLR3_UINT8) "STATS_PERSISTENT_SYMBOL",
        (pANTLR3_UINT8) "STATS_SAMPLE_PAGES_SYMBOL",
        (pANTLR3_UINT8) "STATUS_SYMBOL",
        (pANTLR3_UINT8) "STDDEV_POP_SYMBOL",
        (pANTLR3_UINT8) "STDDEV_SAMP_SYMBOL",
        (pANTLR3_UINT8) "STDDEV_SYMBOL",
        (pANTLR3_UINT8) "STD_SYMBOL",
        (pANTLR3_UINT8) "STOP_SYMBOL",
        (pANTLR3_UINT8) "STORAGE_SYMBOL",
        (pANTLR3_UINT8) "STRAIGHT_JOIN_SYMBOL",
        (pANTLR3_UINT8) "STRING",
        (pANTLR3_UINT8) "STRING_SYMBOL",
        (pANTLR3_UINT8) "SUBCLASS_ORIGIN_SYMBOL",
        (pANTLR3_UINT8) "SUBDATE_SYMBOL",
        (pANTLR3_UINT8) "SUBJECT_SYMBOL",
        (pANTLR3_UINT8) "SUBPARTITIONS_SYMBOL",
        (pANTLR3_UINT8) "SUBPARTITION_SYMBOL",
        (pANTLR3_UINT8) "SUBQUERY",
        (pANTLR3_UINT8) "SUBSTRING_SYMBOL",
        (pANTLR3_UINT8) "SUBSTR_SYMBOL",
        (pANTLR3_UINT8) "SUM_SYMBOL",
        (pANTLR3_UINT8) "SUPER_SYMBOL",
        (pANTLR3_UINT8) "SUSPEND_SYMBOL",
        (pANTLR3_UINT8) "SWAPS_SYMBOL",
        (pANTLR3_UINT8) "SWITCHES_SYMBOL",
        (pANTLR3_UINT8) "SYSDATE_SYMBOL",
        (pANTLR3_UINT8) "SYSTEM_USER_SYMBOL",
        (pANTLR3_UINT8) "TABLESPACE_SYMBOL",
        (pANTLR3_UINT8) "TABLES_SYMBOL",
        (pANTLR3_UINT8) "TABLE_CHECKSUM_SYMBOL",
        (pANTLR3_UINT8) "TABLE_NAME_SYMBOL",
        (pANTLR3_UINT8) "TABLE_REFERENCE",
        (pANTLR3_UINT8) "TABLE_REF_ID",
        (pANTLR3_UINT8) "TABLE_REF_PRIORITY_SYMBOL",
        (pANTLR3_UINT8) "TABLE_SYMBOL",
        (pANTLR3_UINT8) "TEMPORARY_SYMBOL",
        (pANTLR3_UINT8) "TEMPTABLE_SYMBOL",
        (pANTLR3_UINT8) "TERMINATED_SYMBOL",
        (pANTLR3_UINT8) "TEXT_SYMBOL",
        (pANTLR3_UINT8) "THAN_SYMBOL",
        (pANTLR3_UINT8) "THEN_SYMBOL",
        (pANTLR3_UINT8) "TIMESTAMP_ADD_SYMBOL",
        (pANTLR3_UINT8) "TIMESTAMP_DIFF_SYMBOL",
        (pANTLR3_UINT8) "TIMESTAMP_SYMBOL",
        (pANTLR3_UINT8) "TIME_SYMBOL",
        (pANTLR3_UINT8) "TINYBLOB_SYMBOL",
        (pANTLR3_UINT8) "TINYINT_SYMBOL",
        (pANTLR3_UINT8) "TINYTEXT_SYMBOL",
        (pANTLR3_UINT8) "TO_SYMBOL",
        (pANTLR3_UINT8) "TRAILING_SYMBOL",
        (pANTLR3_UINT8) "TRANSACTION_SYMBOL",
        (pANTLR3_UINT8) "TRIGGERS_SYMBOL",
        (pANTLR3_UINT8) "TRIGGER_SYMBOL",
        (pANTLR3_UINT8) "TRIM_SYMBOL",
        (pANTLR3_UINT8) "TRUE_SYMBOL",
        (pANTLR3_UINT8) "TRUNCATE_SYMBOL",
        (pANTLR3_UINT8) "TYPES_SYMBOL",
        (pANTLR3_UINT8) "TYPE_SYMBOL",
        (pANTLR3_UINT8) "UDF_RETURNS_SYMBOL",
        (pANTLR3_UINT8) "ULONGLONG_NUM_SYMBOL",
        (pANTLR3_UINT8) "UNCOMMITTED_SYMBOL",
        (pANTLR3_UINT8) "UNDEFINED_SYMBOL",
        (pANTLR3_UINT8) "UNDERLINE_SYMBOL",
        (pANTLR3_UINT8) "UNDERSCORE_CHARSET",
        (pANTLR3_UINT8) "UNDOFILE_SYMBOL",
        (pANTLR3_UINT8) "UNDO_BUFFER_SIZE_SYMBOL",
        (pANTLR3_UINT8) "UNDO_SYMBOL",
        (pANTLR3_UINT8) "UNICODE_SYMBOL",
        (pANTLR3_UINT8) "UNINSTALL_SYMBOL",
        (pANTLR3_UINT8) "UNION_SYMBOL",
        (pANTLR3_UINT8) "UNIQUE_SYMBOL",
        (pANTLR3_UINT8) "UNKNOWN_SYMBOL",
        (pANTLR3_UINT8) "UNLOCK_SYMBOL",
        (pANTLR3_UINT8) "UNSIGNED_SYMBOL",
        (pANTLR3_UINT8) "UNTIL_SYMBOL",
        (pANTLR3_UINT8) "UPDATE_SYMBOL",
        (pANTLR3_UINT8) "UPGRADE_SYMBOL",
        (pANTLR3_UINT8) "USAGE_SYMBOL",
        (pANTLR3_UINT8) "USER_RESOURCES_SYMBOL",
        (pANTLR3_UINT8) "USER_SYMBOL",
        (pANTLR3_UINT8) "USE_FRM_SYMBOL",
        (pANTLR3_UINT8) "USE_SYMBOL",
        (pANTLR3_UINT8) "USING_SYMBOL",
        (pANTLR3_UINT8) "UTC_DATE_SYMBOL",
        (pANTLR3_UINT8) "UTC_TIMESTAMP_SYMBOL",
        (pANTLR3_UINT8) "UTC_TIME_SYMBOL",
        (pANTLR3_UINT8) "VALUES_SYMBOL",
        (pANTLR3_UINT8) "VALUE_SYMBOL",
        (pANTLR3_UINT8) "VARBINARY_SYMBOL",
        (pANTLR3_UINT8) "VARCHARACTER_SYMBOL",
        (pANTLR3_UINT8) "VARCHAR_SYMBOL",
        (pANTLR3_UINT8) "VARIABLES_SYMBOL",
        (pANTLR3_UINT8) "VARIANCE_SYMBOL",
        (pANTLR3_UINT8) "VARYING_SYMBOL",
        (pANTLR3_UINT8) "VAR_POP_SYMBOL",
        (pANTLR3_UINT8) "VAR_SAMP_SYMBOL",
        (pANTLR3_UINT8) "VERSION_COMMENT",
        (pANTLR3_UINT8) "VERSION_COMMENT_END",
        (pANTLR3_UINT8) "VERSION_COMMENT_INTRODUCER",
        (pANTLR3_UINT8) "VERSION_COMMENT_START",
        (pANTLR3_UINT8) "VERSION_COMMENT_TAIL",
        (pANTLR3_UINT8) "VIEW_SYMBOL",
        (pANTLR3_UINT8) "WAIT_SYMBOL",
        (pANTLR3_UINT8) "WARNINGS_SYMBOL",
        (pANTLR3_UINT8) "WEEK_SYMBOL",
        (pANTLR3_UINT8) "WEIGHT_STRING_SYMBOL",
        (pANTLR3_UINT8) "WHEN_SYMBOL",
        (pANTLR3_UINT8) "WHERE_SYMBOL",
        (pANTLR3_UINT8) "WHILE_SYMBOL",
        (pANTLR3_UINT8) "WITH_CUBE_SYMBOL",
        (pANTLR3_UINT8) "WITH_ROLLUP_SYMBOL",
        (pANTLR3_UINT8) "WITH_SYMBOL",
        (pANTLR3_UINT8) "WORK_SYMBOL",
        (pANTLR3_UINT8) "WRAPPER_SYMBOL",
        (pANTLR3_UINT8) "WRITE_SYMBOL",
        (pANTLR3_UINT8) "WS",
        (pANTLR3_UINT8) "X509_SYMBOL",
        (pANTLR3_UINT8) "XA_ID",
        (pANTLR3_UINT8) "XA_SYMBOL",
        (pANTLR3_UINT8) "XML_SYMBOL",
        (pANTLR3_UINT8) "XOR_SYMBOL",
        (pANTLR3_UINT8) "YEAR_MONTH_SYMBOL",
        (pANTLR3_UINT8) "YEAR_SYMBOL",
        (pANTLR3_UINT8) "ZEROFILL_SYMBOL",
        (pANTLR3_UINT8) "'{'",
        (pANTLR3_UINT8) "'}'"
       };



// Forward declare the locally static matching functions we have generated.
//
static 
 MySQLParser_query_return
	query    (pMySQLParser ctx);
static 
 MySQLParser_statement_return
	statement    (pMySQLParser ctx);
static 
 MySQLParser_alter_statement_return
	alter_statement    (pMySQLParser ctx);
static 
 MySQLParser_alter_database_return
	alter_database    (pMySQLParser ctx);
static 
 MySQLParser_alter_event_return
	alter_event    (pMySQLParser ctx);
static 
 MySQLParser_alter_log_file_group_return
	alter_log_file_group    (pMySQLParser ctx);
static 
 MySQLParser_alter_routine_return
	alter_routine    (pMySQLParser ctx);
static 
 MySQLParser_alter_server_return
	alter_server    (pMySQLParser ctx);
static 
 MySQLParser_alter_table_return
	alter_table    (pMySQLParser ctx);
static 
 MySQLParser_alter_table_commands_return
	alter_table_commands    (pMySQLParser ctx);
static 
 MySQLParser_alter_table_list_item_return
	alter_table_list_item    (pMySQLParser ctx);
static 
 MySQLParser_alter_order_by_return
	alter_order_by    (pMySQLParser ctx);
static 
 MySQLParser_alter_algorithm_option_return
	alter_algorithm_option    (pMySQLParser ctx);
static 
 MySQLParser_alter_lock_option_return
	alter_lock_option    (pMySQLParser ctx);
static 
 MySQLParser_index_lock_algorithm_return
	index_lock_algorithm    (pMySQLParser ctx);
static 
 MySQLParser_alter_partition_return
	alter_partition    (pMySQLParser ctx);
static 
 MySQLParser_remove_partitioning_return
	remove_partitioning    (pMySQLParser ctx);
static 
 MySQLParser_all_or_partition_name_list_return
	all_or_partition_name_list    (pMySQLParser ctx);
static 
 MySQLParser_alter_tablespace_return
	alter_tablespace    (pMySQLParser ctx);
static 
 MySQLParser_alter_view_return
	alter_view    (pMySQLParser ctx);
static 
 MySQLParser_create_statement_return
	create_statement    (pMySQLParser ctx);
static 
 MySQLParser_create_database_return
	create_database    (pMySQLParser ctx);
static 
 MySQLParser_create_event_return
	create_event    (pMySQLParser ctx);
static 
 MySQLParser_create_routine_or_udf_return
	create_routine_or_udf    (pMySQLParser ctx);
static 
 MySQLParser_udf_tail_return
	udf_tail    (pMySQLParser ctx);
static 
 MySQLParser_routine_create_option_return
	routine_create_option    (pMySQLParser ctx);
static 
 MySQLParser_routine_option_return
	routine_option    (pMySQLParser ctx);
static 
 MySQLParser_create_index_return
	create_index    (pMySQLParser ctx);
static 
 MySQLParser_create_logfile_group_return
	create_logfile_group    (pMySQLParser ctx);
static 
 MySQLParser_create_server_return
	create_server    (pMySQLParser ctx);
static 
 MySQLParser_create_table_return
	create_table    (pMySQLParser ctx);
static 
 MySQLParser_create_table_definitions_return
	create_table_definitions    (pMySQLParser ctx);
static 
 MySQLParser_create_table_definition_return
	create_table_definition    (pMySQLParser ctx);
static 
 MySQLParser_table_creation_source_return
	table_creation_source    (pMySQLParser ctx);
static 
 MySQLParser_create_select_return
	create_select    (pMySQLParser ctx);
static 
 MySQLParser_create_tablespace_return
	create_tablespace    (pMySQLParser ctx);
static 
 MySQLParser_tablespace_option_return
	tablespace_option    (pMySQLParser ctx);
static 
 MySQLParser_create_trigger_return
	create_trigger    (pMySQLParser ctx);
static 
 MySQLParser_create_view_return
	create_view    (pMySQLParser ctx);
static 
 MySQLParser_view_replace_or_algorithm_return
	view_replace_or_algorithm    (pMySQLParser ctx);
static 
 MySQLParser_view_algorithm_return
	view_algorithm    (pMySQLParser ctx);
static 
 MySQLParser_drop_statement_return
	drop_statement    (pMySQLParser ctx);
static 
 MySQLParser_rename_table_statement_return
	rename_table_statement    (pMySQLParser ctx);
static 
 MySQLParser_truncate_table_statement_return
	truncate_table_statement    (pMySQLParser ctx);
static 
 MySQLParser_call_statement_return
	call_statement    (pMySQLParser ctx);
static 
 MySQLParser_delete_statement_return
	delete_statement    (pMySQLParser ctx);
static 
 MySQLParser_partition_delete_return
	partition_delete    (pMySQLParser ctx);
static 
 MySQLParser_delete_option_return
	delete_option    (pMySQLParser ctx);
static 
 MySQLParser_table_name_list_with_wildcards_return
	table_name_list_with_wildcards    (pMySQLParser ctx);
static 
 MySQLParser_do_statement_return
	do_statement    (pMySQLParser ctx);
static 
 MySQLParser_handler_statement_return
	handler_statement    (pMySQLParser ctx);
static 
 MySQLParser_insert_statement_return
	insert_statement    (pMySQLParser ctx);
static 
 MySQLParser_insert_option_return
	insert_option    (pMySQLParser ctx);
static 
 MySQLParser_insert_field_spec_return
	insert_field_spec    (pMySQLParser ctx);
static 
 MySQLParser_fields_return
	fields    (pMySQLParser ctx);
static 
 MySQLParser_insert_identifier_return
	insert_identifier    (pMySQLParser ctx);
static 
 MySQLParser_insert_identifier_ref_return
	insert_identifier_ref    (pMySQLParser ctx);
static 
 MySQLParser_insert_values_return
	insert_values    (pMySQLParser ctx);
static 
 MySQLParser_insert_value_list_return
	insert_value_list    (pMySQLParser ctx);
static 
 MySQLParser_insert_value_list_row_return
	insert_value_list_row    (pMySQLParser ctx);
static 
 MySQLParser_duplicate_key_update_return
	duplicate_key_update    (pMySQLParser ctx);
static 
 MySQLParser_load_data_infile_statement_return
	load_data_infile_statement    (pMySQLParser ctx);
static 
 MySQLParser_load_xml_statement_return
	load_xml_statement    (pMySQLParser ctx);
static 
 MySQLParser_partition_on_load_option_return
	partition_on_load_option    (pMySQLParser ctx);
static 
 MySQLParser_xml_rows_identified_by_return
	xml_rows_identified_by    (pMySQLParser ctx);
static 
 MySQLParser_load_data_file_tail_return
	load_data_file_tail    (pMySQLParser ctx);
static 
 MySQLParser_load_data_file_target_list_return
	load_data_file_target_list    (pMySQLParser ctx);
static 
 MySQLParser_field_or_variable_list_return
	field_or_variable_list    (pMySQLParser ctx);
static 
 MySQLParser_replace_statement_return
	replace_statement    (pMySQLParser ctx);
static 
 MySQLParser_select_statement_return
	select_statement    (pMySQLParser ctx);
static 
 MySQLParser_select_paren_return
	select_paren    (pMySQLParser ctx);
static 
 MySQLParser_select_part2_return
	select_part2    (pMySQLParser ctx);
static 
 MySQLParser_subquery_return
	subquery    (pMySQLParser ctx);
static 
 MySQLParser_select_part2_derived_return
	select_part2_derived    (pMySQLParser ctx);
static 
 MySQLParser_select_option_return
	select_option    (pMySQLParser ctx);
static 
 MySQLParser_query_expression_option_return
	query_expression_option    (pMySQLParser ctx);
static 
 MySQLParser_select_item_list_return
	select_item_list    (pMySQLParser ctx);
static 
 MySQLParser_select_item_return
	select_item    (pMySQLParser ctx);
static 
 MySQLParser_select_alias_return
	select_alias    (pMySQLParser ctx);
static 
 MySQLParser_select_source_and_options_return
	select_source_and_options    (pMySQLParser ctx);
static 
 MySQLParser_limit_clause_return
	limit_clause    (pMySQLParser ctx);
static 
 MySQLParser_limit_options_return
	limit_options    (pMySQLParser ctx);
static 
 MySQLParser_limit_option_return
	limit_option    (pMySQLParser ctx);
static 
 MySQLParser_into_clause_return
	into_clause    (pMySQLParser ctx);
static 
 MySQLParser_select_from_return
	select_from    (pMySQLParser ctx);
static 
 MySQLParser_procedure_analyse_clause_return
	procedure_analyse_clause    (pMySQLParser ctx);
static 
 MySQLParser_having_clause_return
	having_clause    (pMySQLParser ctx);
static 
 MySQLParser_group_by_clause_return
	group_by_clause    (pMySQLParser ctx);
static 
 MySQLParser_olap_option_return
	olap_option    (pMySQLParser ctx);
static 
 MySQLParser_order_by_clause_return
	order_by_clause    (pMySQLParser ctx);
static 
 MySQLParser_direction_return
	direction    (pMySQLParser ctx);
static 
 MySQLParser_where_clause_return
	where_clause    (pMySQLParser ctx);
static 
 MySQLParser_table_references_return
	table_references    (pMySQLParser ctx);
static 
 MySQLParser_escaped_table_reference_return
	escaped_table_reference    (pMySQLParser ctx);
static 
 MySQLParser_table_reference_return
	table_reference    (pMySQLParser ctx);
static 
 MySQLParser_join_return
	join    (pMySQLParser ctx);
static 
 MySQLParser_table_factor_return
	table_factor    (pMySQLParser ctx);
static 
 MySQLParser_table_identifier_return
	table_identifier    (pMySQLParser ctx);
static 
 MySQLParser_join_table_return
	join_table    (pMySQLParser ctx);
static 
 MySQLParser_join_condition_return
	join_condition    (pMySQLParser ctx);
static 
 MySQLParser_union_opt_return
	union_opt    (pMySQLParser ctx);
static 
 MySQLParser_union_clause_return
	union_clause    (pMySQLParser ctx);
static 
 MySQLParser_union_option_return
	union_option    (pMySQLParser ctx);
static 
 MySQLParser_select_from_tail_return
	select_from_tail    (pMySQLParser ctx);
static 
 MySQLParser_table_alias_return
	table_alias    (pMySQLParser ctx);
static 
 MySQLParser_index_hint_list_return
	index_hint_list    (pMySQLParser ctx);
static 
 MySQLParser_index_hint_return
	index_hint    (pMySQLParser ctx);
static 
 MySQLParser_index_hint_type_return
	index_hint_type    (pMySQLParser ctx);
static 
 MySQLParser_key_or_index_return
	key_or_index    (pMySQLParser ctx);
static 
 MySQLParser_index_hint_clause_return
	index_hint_clause    (pMySQLParser ctx);
static 
 MySQLParser_index_list_return
	index_list    (pMySQLParser ctx);
static 
 MySQLParser_index_list_element_return
	index_list_element    (pMySQLParser ctx);
static 
 MySQLParser_update_statement_return
	update_statement    (pMySQLParser ctx);
static 
 MySQLParser_transaction_or_locking_statement_return
	transaction_or_locking_statement    (pMySQLParser ctx);
static 
 MySQLParser_transaction_statement_return
	transaction_statement    (pMySQLParser ctx);
static 
 MySQLParser_transaction_characteristic_return
	transaction_characteristic    (pMySQLParser ctx);
static 
 MySQLParser_set_transaction_characteristic_return
	set_transaction_characteristic    (pMySQLParser ctx);
static 
 MySQLParser_isolation_level_return
	isolation_level    (pMySQLParser ctx);
static 
 MySQLParser_savepoint_statement_return
	savepoint_statement    (pMySQLParser ctx);
static 
 MySQLParser_lock_statement_return
	lock_statement    (pMySQLParser ctx);
static 
 MySQLParser_lock_item_return
	lock_item    (pMySQLParser ctx);
static 
 MySQLParser_lock_type_return
	lock_type    (pMySQLParser ctx);
static 
 MySQLParser_xa_statement_return
	xa_statement    (pMySQLParser ctx);
static 
 MySQLParser_xid_return
	xid    (pMySQLParser ctx);
static 
 MySQLParser_replication_statement_return
	replication_statement    (pMySQLParser ctx);
static 
 MySQLParser_replication_load_return
	replication_load    (pMySQLParser ctx);
static 
 MySQLParser_change_master_return
	change_master    (pMySQLParser ctx);
static 
 MySQLParser_master_option_return
	master_option    (pMySQLParser ctx);
static 
 MySQLParser_server_id_list_return
	server_id_list    (pMySQLParser ctx);
static 
 MySQLParser_start_slave_return
	start_slave    (pMySQLParser ctx);
static 
 MySQLParser_stop_slave_return
	stop_slave    (pMySQLParser ctx);
static 
 MySQLParser_thread_types_return
	thread_types    (pMySQLParser ctx);
static 
 MySQLParser_gtid_set_return
	gtid_set    (pMySQLParser ctx);
static 
 MySQLParser_prepared_statement_return
	prepared_statement    (pMySQLParser ctx);
static 
 MySQLParser_execute_statement_return
	execute_statement    (pMySQLParser ctx);
static 
 MySQLParser_execute_var_list_return
	execute_var_list    (pMySQLParser ctx);
static 
 MySQLParser_account_management_statement_return
	account_management_statement    (pMySQLParser ctx);
static 
 MySQLParser_alter_user_return
	alter_user    (pMySQLParser ctx);
static 
 MySQLParser_create_user_return
	create_user    (pMySQLParser ctx);
static 
 MySQLParser_drop_user_return
	drop_user    (pMySQLParser ctx);
static 
 MySQLParser_grant_return
	grant    (pMySQLParser ctx);
static 
 MySQLParser_grant_proxy_return
	grant_proxy    (pMySQLParser ctx);
static 
 MySQLParser_rename_user_return
	rename_user    (pMySQLParser ctx);
static 
 MySQLParser_revoke_statement_return
	revoke_statement    (pMySQLParser ctx);
static 
 MySQLParser_set_password_return
	set_password    (pMySQLParser ctx);
static 
 MySQLParser_grant_object_type_return
	grant_object_type    (pMySQLParser ctx);
static 
 MySQLParser_privilege_type_return
	privilege_type    (pMySQLParser ctx);
static 
 MySQLParser_privilege_level_return
	privilege_level    (pMySQLParser ctx);
static 
 MySQLParser_ssl_option_return
	ssl_option    (pMySQLParser ctx);
static 
 MySQLParser_grant_option_return
	grant_option    (pMySQLParser ctx);
static 
 MySQLParser_table_administration_statement_return
	table_administration_statement    (pMySQLParser ctx);
static 
 MySQLParser_check_option_return
	check_option    (pMySQLParser ctx);
static 
 MySQLParser_repair_option_return
	repair_option    (pMySQLParser ctx);
static 
 MySQLParser_install_uninstall_statment_return
	install_uninstall_statment    (pMySQLParser ctx);
static 
 MySQLParser_set_statement_return
	set_statement    (pMySQLParser ctx);
static 
 MySQLParser_variable_assignment_return
	variable_assignment    (pMySQLParser ctx);
static 
 MySQLParser_set_expression_or_default_return
	set_expression_or_default    (pMySQLParser ctx);
static 
 MySQLParser_option_value_list_return
	option_value_list    (pMySQLParser ctx);
static 
 MySQLParser_option_value_return
	option_value    (pMySQLParser ctx);
static 
 MySQLParser_show_statement_return
	show_statement    (pMySQLParser ctx);
static 
 MySQLParser_profile_type_return
	profile_type    (pMySQLParser ctx);
static 
 MySQLParser_miscellaneous_statement_return
	miscellaneous_statement    (pMySQLParser ctx);
static 
 MySQLParser_table_index_list_return
	table_index_list    (pMySQLParser ctx);
static 
 MySQLParser_flush_option_return
	flush_option    (pMySQLParser ctx);
static 
 MySQLParser_log_type_return
	log_type    (pMySQLParser ctx);
static 
 MySQLParser_flush_tables_return
	flush_tables    (pMySQLParser ctx);
static 
 MySQLParser_flush_tables_options_return
	flush_tables_options    (pMySQLParser ctx);
static 
 MySQLParser_load_table_index_list_return
	load_table_index_list    (pMySQLParser ctx);
static 
 MySQLParser_load_table_index_partion_return
	load_table_index_partion    (pMySQLParser ctx);
static 
 MySQLParser_reset_option_return
	reset_option    (pMySQLParser ctx);
static 
 MySQLParser_utility_statement_return
	utility_statement    (pMySQLParser ctx);
static 
 MySQLParser_describe_command_return
	describe_command    (pMySQLParser ctx);
static 
 MySQLParser_explainable_statement_return
	explainable_statement    (pMySQLParser ctx);
static 
 MySQLParser_expression_return
	expression    (pMySQLParser ctx);
static 
 MySQLParser_logical_or_expression_return
	logical_or_expression    (pMySQLParser ctx);
static 
 MySQLParser_logical_xor_expression_return
	logical_xor_expression    (pMySQLParser ctx);
static 
 MySQLParser_logical_and_expression_return
	logical_and_expression    (pMySQLParser ctx);
static 
 MySQLParser_logical_not_expression_return
	logical_not_expression    (pMySQLParser ctx);
static 
 MySQLParser_boolean_primary_expression_return
	boolean_primary_expression    (pMySQLParser ctx);
static 
 MySQLParser_predicate_return
	predicate    (pMySQLParser ctx);
static 
 MySQLParser_bitwise_or_expression_return
	bitwise_or_expression    (pMySQLParser ctx);
static 
 MySQLParser_bitwise_and_expression_return
	bitwise_and_expression    (pMySQLParser ctx);
static 
 MySQLParser_shift_expression_return
	shift_expression    (pMySQLParser ctx);
static 
 MySQLParser_additive_expression_return
	additive_expression    (pMySQLParser ctx);
static 
 MySQLParser_multiplicative_expression_return
	multiplicative_expression    (pMySQLParser ctx);
static 
 MySQLParser_bitwise_xor_expression_return
	bitwise_xor_expression    (pMySQLParser ctx);
static 
 MySQLParser_concat_expression_return
	concat_expression    (pMySQLParser ctx);
static 
 MySQLParser_unary_expression_return
	unary_expression    (pMySQLParser ctx);
static 
 MySQLParser_not_expression_return
	not_expression    (pMySQLParser ctx);
static 
 MySQLParser_interval_expression_return
	interval_expression    (pMySQLParser ctx);
static 
 MySQLParser_interval_function_return
	interval_function    (pMySQLParser ctx);
static 
 MySQLParser_interval_time_span_return
	interval_time_span    (pMySQLParser ctx);
static 
 MySQLParser_primary_return
	primary    (pMySQLParser ctx);
static 
 MySQLParser_comparison_operator_return
	comparison_operator    (pMySQLParser ctx);
static 
 MySQLParser_multiplication_operator_return
	multiplication_operator    (pMySQLParser ctx);
static 
 MySQLParser_function_call_expression_return
	function_call_expression    (pMySQLParser ctx);
static 
 MySQLParser_function_call_return
	function_call    (pMySQLParser ctx);
static 
 MySQLParser_time_function_parameters_return
	time_function_parameters    (pMySQLParser ctx);
static 
 MySQLParser_fractional_precision_return
	fractional_precision    (pMySQLParser ctx);
static 
 MySQLParser_weight_string_levels_return
	weight_string_levels    (pMySQLParser ctx);
static 
 MySQLParser_weight_string_level_list_item_return
	weight_string_level_list_item    (pMySQLParser ctx);
static 
 MySQLParser_generic_function_call_return
	generic_function_call    (pMySQLParser ctx);
static 
 MySQLParser_date_time_type_return
	date_time_type    (pMySQLParser ctx);
static 
 MySQLParser_trim_function_return
	trim_function    (pMySQLParser ctx);
static 
 MySQLParser_substring_function_return
	substring_function    (pMySQLParser ctx);
static 
 MySQLParser_geometry_function_return
	geometry_function    (pMySQLParser ctx);
static 
 MySQLParser_aggregate_function_return
	aggregate_function    (pMySQLParser ctx);
static 
 MySQLParser_count_function_return
	count_function    (pMySQLParser ctx);
static 
 MySQLParser_aliased_expression_list_return
	aliased_expression_list    (pMySQLParser ctx);
static 
 MySQLParser_aliased_expression_return
	aliased_expression    (pMySQLParser ctx);
static 
 MySQLParser_variable_return
	variable    (pMySQLParser ctx);
static 
 MySQLParser_user_variable_return
	user_variable    (pMySQLParser ctx);
static 
 MySQLParser_system_variable_return
	system_variable    (pMySQLParser ctx);
static 
 MySQLParser_variable_name_return
	variable_name    (pMySQLParser ctx);
static 
 MySQLParser_match_expression_return
	match_expression    (pMySQLParser ctx);
static 
 MySQLParser_case_expression_return
	case_expression    (pMySQLParser ctx);
static 
 MySQLParser_when_expression_return
	when_expression    (pMySQLParser ctx);
static 
 MySQLParser_then_expression_return
	then_expression    (pMySQLParser ctx);
static 
 MySQLParser_else_expression_return
	else_expression    (pMySQLParser ctx);
static 
 MySQLParser_cast_expression_return
	cast_expression    (pMySQLParser ctx);
static 
 MySQLParser_cast_type_return
	cast_type    (pMySQLParser ctx);
static 
 MySQLParser_encoding_return
	encoding    (pMySQLParser ctx);
static 
 MySQLParser_charset_return
	charset    (pMySQLParser ctx);
static 
 MySQLParser_not_rule_return
	not_rule    (pMySQLParser ctx);
static 
 MySQLParser_not2_rule_return
	not2_rule    (pMySQLParser ctx);
static 
 MySQLParser_or_rule_return
	or_rule    (pMySQLParser ctx);
static 
 MySQLParser_xor_rule_return
	xor_rule    (pMySQLParser ctx);
static 
 MySQLParser_and_rule_return
	and_rule    (pMySQLParser ctx);
static 
 MySQLParser_interval_return
	interval    (pMySQLParser ctx);
static 
 MySQLParser_interval_unit_return
	interval_unit    (pMySQLParser ctx);
static 
 MySQLParser_interval_timestamp_unit_return
	interval_timestamp_unit    (pMySQLParser ctx);
static 
 MySQLParser_expression_list_with_parentheses_return
	expression_list_with_parentheses    (pMySQLParser ctx);
static 
 MySQLParser_expression_list_return
	expression_list    (pMySQLParser ctx);
static 
 MySQLParser_expression_list_with_direction_return
	expression_list_with_direction    (pMySQLParser ctx);
static 
 MySQLParser_compound_statement_return
	compound_statement    (pMySQLParser ctx);
static 
 MySQLParser_compound_statement_list_return
	compound_statement_list    (pMySQLParser ctx);
static 
 MySQLParser_label_return
	label    (pMySQLParser ctx);
static 
 MySQLParser_label_identifier_return
	label_identifier    (pMySQLParser ctx);
static 
 MySQLParser_begin_end_block_return
	begin_end_block    (pMySQLParser ctx);
static 
 MySQLParser_loop_block_return
	loop_block    (pMySQLParser ctx);
static 
 MySQLParser_repeat_until_block_return
	repeat_until_block    (pMySQLParser ctx);
static 
 MySQLParser_while_do_block_return
	while_do_block    (pMySQLParser ctx);
static 
 MySQLParser_declarations_return
	declarations    (pMySQLParser ctx);
static 
 MySQLParser_variable_declaration_return
	variable_declaration    (pMySQLParser ctx);
static 
 MySQLParser_condition_declaration_return
	condition_declaration    (pMySQLParser ctx);
static 
 MySQLParser_cursor_declaration_return
	cursor_declaration    (pMySQLParser ctx);
static 
 MySQLParser_handler_declaration_return
	handler_declaration    (pMySQLParser ctx);
static 
 MySQLParser_handler_condition_return
	handler_condition    (pMySQLParser ctx);
static 
 MySQLParser_case_statement_return
	case_statement    (pMySQLParser ctx);
static 
 MySQLParser_then_statement_return
	then_statement    (pMySQLParser ctx);
static 
 MySQLParser_else_statement_return
	else_statement    (pMySQLParser ctx);
static 
 MySQLParser_if_statement_return
	if_statement    (pMySQLParser ctx);
static 
 MySQLParser_if_body_return
	if_body    (pMySQLParser ctx);
static 
 MySQLParser_iterate_statement_return
	iterate_statement    (pMySQLParser ctx);
static 
 MySQLParser_leave_statement_return
	leave_statement    (pMySQLParser ctx);
static 
 MySQLParser_return_statement_return
	return_statement    (pMySQLParser ctx);
static 
 MySQLParser_get_diagnostics_return
	get_diagnostics    (pMySQLParser ctx);
static 
 MySQLParser_statement_information_item_return
	statement_information_item    (pMySQLParser ctx);
static 
 MySQLParser_condition_information_item_return
	condition_information_item    (pMySQLParser ctx);
static 
 MySQLParser_condition_information_item_name_return
	condition_information_item_name    (pMySQLParser ctx);
static 
 MySQLParser_signal_statement_return
	signal_statement    (pMySQLParser ctx);
static 
 MySQLParser_resignal_statement_return
	resignal_statement    (pMySQLParser ctx);
static 
 MySQLParser_signal_information_item_return
	signal_information_item    (pMySQLParser ctx);
static 
 MySQLParser_cursor_close_return
	cursor_close    (pMySQLParser ctx);
static 
 MySQLParser_cursor_fetch_return
	cursor_fetch    (pMySQLParser ctx);
static 
 MySQLParser_cursor_open_return
	cursor_open    (pMySQLParser ctx);
static 
 MySQLParser_schedule_return
	schedule    (pMySQLParser ctx);
static 
 MySQLParser_server_option_return
	server_option    (pMySQLParser ctx);
static 
 MySQLParser_database_option_return
	database_option    (pMySQLParser ctx);
static 
 MySQLParser_column_definition_return
	column_definition    (pMySQLParser ctx);
static 
 MySQLParser_column_option_return
	column_option    (pMySQLParser ctx);
static 
 MySQLParser_reference_definition_return
	reference_definition    (pMySQLParser ctx);
static 
 MySQLParser_index_columns_return
	index_columns    (pMySQLParser ctx);
static 
 MySQLParser_index_column_return
	index_column    (pMySQLParser ctx);
static 
 MySQLParser_index_type_return
	index_type    (pMySQLParser ctx);
static 
 MySQLParser_index_option_return
	index_option    (pMySQLParser ctx);
static 
 MySQLParser_reference_option_return
	reference_option    (pMySQLParser ctx);
static 
 MySQLParser_data_type_return
	data_type    (pMySQLParser ctx);
static 
 MySQLParser_field_length_return
	field_length    (pMySQLParser ctx);
static 
 MySQLParser_field_options_return
	field_options    (pMySQLParser ctx);
static 
 MySQLParser_type_datetime_precision_return
	type_datetime_precision    (pMySQLParser ctx);
static 
 MySQLParser_charset_name_return
	charset_name    (pMySQLParser ctx);
static 
 MySQLParser_charset_name_or_default_return
	charset_name_or_default    (pMySQLParser ctx);
static 
 MySQLParser_collation_name_or_default_return
	collation_name_or_default    (pMySQLParser ctx);
static 
 MySQLParser_spatial_type_return
	spatial_type    (pMySQLParser ctx);
static 
 MySQLParser_alter_table_options_return
	alter_table_options    (pMySQLParser ctx);
static 
 MySQLParser_create_table_options_return
	create_table_options    (pMySQLParser ctx);
static 
 MySQLParser_create_table_option_return
	create_table_option    (pMySQLParser ctx);
static 
 MySQLParser_partitioning_return
	partitioning    (pMySQLParser ctx);
static 
 MySQLParser_partition_definitions_return
	partition_definitions    (pMySQLParser ctx);
static 
 MySQLParser_partition_definition_return
	partition_definition    (pMySQLParser ctx);
static 
 MySQLParser_subpartition_definition_return
	subpartition_definition    (pMySQLParser ctx);
static 
 MySQLParser_partition_value_list_return
	partition_value_list    (pMySQLParser ctx);
static 
 MySQLParser_definer_clause_return
	definer_clause    (pMySQLParser ctx);
static 
 MySQLParser_if_not_exists_return
	if_not_exists    (pMySQLParser ctx);
static 
 MySQLParser_procedure_parameter_return
	procedure_parameter    (pMySQLParser ctx);
static 
 MySQLParser_function_parameter_return
	function_parameter    (pMySQLParser ctx);
static 
 MySQLParser_qualified_identifier_return
	qualified_identifier    (pMySQLParser ctx);
static 
 MySQLParser_qualified_identifier_list_return
	qualified_identifier_list    (pMySQLParser ctx);
static 
 MySQLParser_qualified_identifier_with_wildcard_return
	qualified_identifier_with_wildcard    (pMySQLParser ctx);
static 
 MySQLParser_target_table_return
	target_table    (pMySQLParser ctx);
static 
 MySQLParser_column_assignment_return
	column_assignment    (pMySQLParser ctx);
static 
 MySQLParser_field_name_list_return
	field_name_list    (pMySQLParser ctx);
static 
 MySQLParser_field_name_return
	field_name    (pMySQLParser ctx);
static 
 MySQLParser_field_name2_return
	field_name2    (pMySQLParser ctx);
static 
 MySQLParser_column_assignment_list_with_default_return
	column_assignment_list_with_default    (pMySQLParser ctx);
static 
 MySQLParser_column_assignment_with_default_return
	column_assignment_with_default    (pMySQLParser ctx);
static 
 MySQLParser_charset_clause_return
	charset_clause    (pMySQLParser ctx);
static 
 MySQLParser_fields_clause_return
	fields_clause    (pMySQLParser ctx);
static 
 MySQLParser_field_term_return
	field_term    (pMySQLParser ctx);
static 
 MySQLParser_lines_clause_return
	lines_clause    (pMySQLParser ctx);
static 
 MySQLParser_line_term_return
	line_term    (pMySQLParser ctx);
static 
 MySQLParser_user_list_return
	user_list    (pMySQLParser ctx);
static 
 MySQLParser_user_specification_return
	user_specification    (pMySQLParser ctx);
static 
 MySQLParser_user_return
	user    (pMySQLParser ctx);
static 
 MySQLParser_like_clause_return
	like_clause    (pMySQLParser ctx);
static 
 MySQLParser_like_or_where_return
	like_or_where    (pMySQLParser ctx);
static 
 MySQLParser_online_option_return
	online_option    (pMySQLParser ctx);
static 
 MySQLParser_no_write_to_bin_log_return
	no_write_to_bin_log    (pMySQLParser ctx);
static 
 MySQLParser_pure_identifier_return
	pure_identifier    (pMySQLParser ctx);
static 
 MySQLParser_identifier_return
	identifier    (pMySQLParser ctx);
static 
 MySQLParser_identifier_list_return
	identifier_list    (pMySQLParser ctx);
static 
 MySQLParser_identifier_list_with_parentheses_return
	identifier_list_with_parentheses    (pMySQLParser ctx);
static 
 MySQLParser_at_variable_identifier_return
	at_variable_identifier    (pMySQLParser ctx);
static 
 MySQLParser_string_list_return
	string_list    (pMySQLParser ctx);
static 
 MySQLParser_literal_return
	literal    (pMySQLParser ctx);
static 
 MySQLParser_string_literal_return
	string_literal    (pMySQLParser ctx);
static 
 MySQLParser_string_return
	string    (pMySQLParser ctx);
static 
 MySQLParser_number_literal_return
	number_literal    (pMySQLParser ctx);
static 
 MySQLParser_hex_literal_return
	hex_literal    (pMySQLParser ctx);
static 
 MySQLParser_bool_literal_return
	bool_literal    (pMySQLParser ctx);
static 
 MySQLParser_bit_literal_return
	bit_literal    (pMySQLParser ctx);
static 
 MySQLParser_null_literal_return
	null_literal    (pMySQLParser ctx);
static 
 MySQLParser_temporal_literal_return
	temporal_literal    (pMySQLParser ctx);
static 
 MySQLParser_integer_type_return
	integer_type    (pMySQLParser ctx);
static 
 MySQLParser_real_literal_return
	real_literal    (pMySQLParser ctx);
static 
 MySQLParser_float_options_return
	float_options    (pMySQLParser ctx);
static 
 MySQLParser_precision_return
	precision    (pMySQLParser ctx);
static 
 MySQLParser_nchar_literal_return
	nchar_literal    (pMySQLParser ctx);
static 
 MySQLParser_varchar_literal_return
	varchar_literal    (pMySQLParser ctx);
static 
 MySQLParser_nvarchar_literal_return
	nvarchar_literal    (pMySQLParser ctx);
static 
 MySQLParser_int_or_param_marker_return
	int_or_param_marker    (pMySQLParser ctx);
static 
 MySQLParser_text_or_param_marker_return
	text_or_param_marker    (pMySQLParser ctx);
static 
 MySQLParser_text_or_identifier_return
	text_or_identifier    (pMySQLParser ctx);
static 
 MySQLParser_float_or_param_return
	float_or_param    (pMySQLParser ctx);
static 
 MySQLParser_parentheses_return
	parentheses    (pMySQLParser ctx);
static 
 MySQLParser_equal_return
	equal    (pMySQLParser ctx);
static 
 MySQLParser_option_type_return
	option_type    (pMySQLParser ctx);
static 
 MySQLParser_keyword_return
	keyword    (pMySQLParser ctx);
static 
 MySQLParser_keyword_sp_return
	keyword_sp    (pMySQLParser ctx);
static 
 ANTLR3_BOOLEAN
	synpred1_MySQL    (pMySQLParser ctx);
static 
 ANTLR3_BOOLEAN
	synpred2_MySQL    (pMySQLParser ctx);
static 
 ANTLR3_BOOLEAN
	synpred3_MySQL    (pMySQLParser ctx);
static void	MySQLParserFree(pMySQLParser ctx);
static void     MySQLParserReset (pMySQLParser ctx);

/* For use in tree output where we are accumulating rule labels via label += ruleRef
 * we need a function that knows how to free a return scope when the list is destroyed.
 * We cannot just use ANTLR3_FREE because in debug tracking mode, this is a macro.
 */
static	void ANTLR3_CDECL freeScope(void * scope)
{
    ANTLR3_FREE(scope);
}

/** \brief Name of the grammar file that generated this code
 */
static const char fileName[] = "MySQL.g";

/** \brief Return the name of the grammar file that generated this code.
 */
static const char * getGrammarFileName()
{
	return fileName;
}
/** \brief Create a new MySQLParser parser and return a context for it.
 *
 * \param[in] instream Pointer to an input stream interface.
 *
 * \return Pointer to new parser context upon success.
 */
ANTLR3_API pMySQLParser
MySQLParserNew   (pANTLR3_COMMON_TOKEN_STREAM instream)
{
	// See if we can create a new parser with the standard constructor
	//
	return MySQLParserNewSSD(instream, NULL);
}

/** \brief Create a new MySQLParser parser and return a context for it.
 *
 * \param[in] instream Pointer to an input stream interface.
 *
 * \return Pointer to new parser context upon success.
 */
ANTLR3_API pMySQLParser
MySQLParserNewSSD   (pANTLR3_COMMON_TOKEN_STREAM instream, pANTLR3_RECOGNIZER_SHARED_STATE state)
{
    pMySQLParser ctx;	    /* Context structure we will build and return   */

    ctx	= (pMySQLParser) ANTLR3_CALLOC(1, sizeof(MySQLParser));

    if	(ctx == NULL)
    {
		// Failed to allocate memory for parser context
		//
        return  NULL;
    }

    /* -------------------------------------------------------------------
     * Memory for basic structure is allocated, now to fill in
     * the base ANTLR3 structures. We initialize the function pointers
     * for the standard ANTLR3 parser function set, but upon return
     * from here, the programmer may set the pointers to provide custom
     * implementations of each function.
     *
     * We don't use the macros defined in MySQLParser.h here, in order that you can get a sense
     * of what goes where.
     */

    /* Create a base parser/recognizer, using the supplied token stream
     */
    ctx->pParser	    = antlr3ParserNewStream(ANTLR3_SIZE_HINT, instream->tstream, state);
    /* Install the implementation of our MySQLParser interface
     */
    ctx->query	= query;
    ctx->statement	= statement;
    ctx->alter_statement	= alter_statement;
    ctx->alter_database	= alter_database;
    ctx->alter_event	= alter_event;
    ctx->alter_log_file_group	= alter_log_file_group;
    ctx->alter_routine	= alter_routine;
    ctx->alter_server	= alter_server;
    ctx->alter_table	= alter_table;
    ctx->alter_table_commands	= alter_table_commands;
    ctx->alter_table_list_item	= alter_table_list_item;
    ctx->alter_order_by	= alter_order_by;
    ctx->alter_algorithm_option	= alter_algorithm_option;
    ctx->alter_lock_option	= alter_lock_option;
    ctx->index_lock_algorithm	= index_lock_algorithm;
    ctx->alter_partition	= alter_partition;
    ctx->remove_partitioning	= remove_partitioning;
    ctx->all_or_partition_name_list	= all_or_partition_name_list;
    ctx->alter_tablespace	= alter_tablespace;
    ctx->alter_view	= alter_view;
    ctx->create_statement	= create_statement;
    ctx->create_database	= create_database;
    ctx->create_event	= create_event;
    ctx->create_routine_or_udf	= create_routine_or_udf;
    ctx->udf_tail	= udf_tail;
    ctx->routine_create_option	= routine_create_option;
    ctx->routine_option	= routine_option;
    ctx->create_index	= create_index;
    ctx->create_logfile_group	= create_logfile_group;
    ctx->create_server	= create_server;
    ctx->create_table	= create_table;
    ctx->create_table_definitions	= create_table_definitions;
    ctx->create_table_definition	= create_table_definition;
    ctx->table_creation_source	= table_creation_source;
    ctx->create_select	= create_select;
    ctx->create_tablespace	= create_tablespace;
    ctx->tablespace_option	= tablespace_option;
    ctx->create_trigger	= create_trigger;
    ctx->create_view	= create_view;
    ctx->view_replace_or_algorithm	= view_replace_or_algorithm;
    ctx->view_algorithm	= view_algorithm;
    ctx->drop_statement	= drop_statement;
    ctx->rename_table_statement	= rename_table_statement;
    ctx->truncate_table_statement	= truncate_table_statement;
    ctx->call_statement	= call_statement;
    ctx->delete_statement	= delete_statement;
    ctx->partition_delete	= partition_delete;
    ctx->delete_option	= delete_option;
    ctx->table_name_list_with_wildcards	= table_name_list_with_wildcards;
    ctx->do_statement	= do_statement;
    ctx->handler_statement	= handler_statement;
    ctx->insert_statement	= insert_statement;
    ctx->insert_option	= insert_option;
    ctx->insert_field_spec	= insert_field_spec;
    ctx->fields	= fields;
    ctx->insert_identifier	= insert_identifier;
    ctx->insert_identifier_ref	= insert_identifier_ref;
    ctx->insert_values	= insert_values;
    ctx->insert_value_list	= insert_value_list;
    ctx->insert_value_list_row	= insert_value_list_row;
    ctx->duplicate_key_update	= duplicate_key_update;
    ctx->load_data_infile_statement	= load_data_infile_statement;
    ctx->load_xml_statement	= load_xml_statement;
    ctx->partition_on_load_option	= partition_on_load_option;
    ctx->xml_rows_identified_by	= xml_rows_identified_by;
    ctx->load_data_file_tail	= load_data_file_tail;
    ctx->load_data_file_target_list	= load_data_file_target_list;
    ctx->field_or_variable_list	= field_or_variable_list;
    ctx->replace_statement	= replace_statement;
    ctx->select_statement	= select_statement;
    ctx->select_paren	= select_paren;
    ctx->select_part2	= select_part2;
    ctx->subquery	= subquery;
    ctx->select_part2_derived	= select_part2_derived;
    ctx->select_option	= select_option;
    ctx->query_expression_option	= query_expression_option;
    ctx->select_item_list	= select_item_list;
    ctx->select_item	= select_item;
    ctx->select_alias	= select_alias;
    ctx->select_source_and_options	= select_source_and_options;
    ctx->limit_clause	= limit_clause;
    ctx->limit_options	= limit_options;
    ctx->limit_option	= limit_option;
    ctx->into_clause	= into_clause;
    ctx->select_from	= select_from;
    ctx->procedure_analyse_clause	= procedure_analyse_clause;
    ctx->having_clause	= having_clause;
    ctx->group_by_clause	= group_by_clause;
    ctx->olap_option	= olap_option;
    ctx->order_by_clause	= order_by_clause;
    ctx->direction	= direction;
    ctx->where_clause	= where_clause;
    ctx->table_references	= table_references;
    ctx->escaped_table_reference	= escaped_table_reference;
    ctx->table_reference	= table_reference;
    ctx->join	= join;
    ctx->table_factor	= table_factor;
    ctx->table_identifier	= table_identifier;
    ctx->join_table	= join_table;
    ctx->join_condition	= join_condition;
    ctx->union_opt	= union_opt;
    ctx->union_clause	= union_clause;
    ctx->union_option	= union_option;
    ctx->select_from_tail	= select_from_tail;
    ctx->table_alias	= table_alias;
    ctx->index_hint_list	= index_hint_list;
    ctx->index_hint	= index_hint;
    ctx->index_hint_type	= index_hint_type;
    ctx->key_or_index	= key_or_index;
    ctx->index_hint_clause	= index_hint_clause;
    ctx->index_list	= index_list;
    ctx->index_list_element	= index_list_element;
    ctx->update_statement	= update_statement;
    ctx->transaction_or_locking_statement	= transaction_or_locking_statement;
    ctx->transaction_statement	= transaction_statement;
    ctx->transaction_characteristic	= transaction_characteristic;
    ctx->set_transaction_characteristic	= set_transaction_characteristic;
    ctx->isolation_level	= isolation_level;
    ctx->savepoint_statement	= savepoint_statement;
    ctx->lock_statement	= lock_statement;
    ctx->lock_item	= lock_item;
    ctx->lock_type	= lock_type;
    ctx->xa_statement	= xa_statement;
    ctx->xid	= xid;
    ctx->replication_statement	= replication_statement;
    ctx->replication_load	= replication_load;
    ctx->change_master	= change_master;
    ctx->master_option	= master_option;
    ctx->server_id_list	= server_id_list;
    ctx->start_slave	= start_slave;
    ctx->stop_slave	= stop_slave;
    ctx->thread_types	= thread_types;
    ctx->gtid_set	= gtid_set;
    ctx->prepared_statement	= prepared_statement;
    ctx->execute_statement	= execute_statement;
    ctx->execute_var_list	= execute_var_list;
    ctx->account_management_statement	= account_management_statement;
    ctx->alter_user	= alter_user;
    ctx->create_user	= create_user;
    ctx->drop_user	= drop_user;
    ctx->grant	= grant;
    ctx->grant_proxy	= grant_proxy;
    ctx->rename_user	= rename_user;
    ctx->revoke_statement	= revoke_statement;
    ctx->set_password	= set_password;
    ctx->grant_object_type	= grant_object_type;
    ctx->privilege_type	= privilege_type;
    ctx->privilege_level	= privilege_level;
    ctx->ssl_option	= ssl_option;
    ctx->grant_option	= grant_option;
    ctx->table_administration_statement	= table_administration_statement;
    ctx->check_option	= check_option;
    ctx->repair_option	= repair_option;
    ctx->install_uninstall_statment	= install_uninstall_statment;
    ctx->set_statement	= set_statement;
    ctx->variable_assignment	= variable_assignment;
    ctx->set_expression_or_default	= set_expression_or_default;
    ctx->option_value_list	= option_value_list;
    ctx->option_value	= option_value;
    ctx->show_statement	= show_statement;
    ctx->profile_type	= profile_type;
    ctx->miscellaneous_statement	= miscellaneous_statement;
    ctx->table_index_list	= table_index_list;
    ctx->flush_option	= flush_option;
    ctx->log_type	= log_type;
    ctx->flush_tables	= flush_tables;
    ctx->flush_tables_options	= flush_tables_options;
    ctx->load_table_index_list	= load_table_index_list;
    ctx->load_table_index_partion	= load_table_index_partion;
    ctx->reset_option	= reset_option;
    ctx->utility_statement	= utility_statement;
    ctx->describe_command	= describe_command;
    ctx->explainable_statement	= explainable_statement;
    ctx->expression	= expression;
    ctx->logical_or_expression	= logical_or_expression;
    ctx->logical_xor_expression	= logical_xor_expression;
    ctx->logical_and_expression	= logical_and_expression;
    ctx->logical_not_expression	= logical_not_expression;
    ctx->boolean_primary_expression	= boolean_primary_expression;
    ctx->predicate	= predicate;
    ctx->bitwise_or_expression	= bitwise_or_expression;
    ctx->bitwise_and_expression	= bitwise_and_expression;
    ctx->shift_expression	= shift_expression;
    ctx->additive_expression	= additive_expression;
    ctx->multiplicative_expression	= multiplicative_expression;
    ctx->bitwise_xor_expression	= bitwise_xor_expression;
    ctx->concat_expression	= concat_expression;
    ctx->unary_expression	= unary_expression;
    ctx->not_expression	= not_expression;
    ctx->interval_expression	= interval_expression;
    ctx->interval_function	= interval_function;
    ctx->interval_time_span	= interval_time_span;
    ctx->primary	= primary;
    ctx->comparison_operator	= comparison_operator;
    ctx->multiplication_operator	= multiplication_operator;
    ctx->function_call_expression	= function_call_expression;
    ctx->function_call	= function_call;
    ctx->time_function_parameters	= time_function_parameters;
    ctx->fractional_precision	= fractional_precision;
    ctx->weight_string_levels	= weight_string_levels;
    ctx->weight_string_level_list_item	= weight_string_level_list_item;
    ctx->generic_function_call	= generic_function_call;
    ctx->date_time_type	= date_time_type;
    ctx->trim_function	= trim_function;
    ctx->substring_function	= substring_function;
    ctx->geometry_function	= geometry_function;
    ctx->aggregate_function	= aggregate_function;
    ctx->count_function	= count_function;
    ctx->aliased_expression_list	= aliased_expression_list;
    ctx->aliased_expression	= aliased_expression;
    ctx->variable	= variable;
    ctx->user_variable	= user_variable;
    ctx->system_variable	= system_variable;
    ctx->variable_name	= variable_name;
    ctx->match_expression	= match_expression;
    ctx->case_expression	= case_expression;
    ctx->when_expression	= when_expression;
    ctx->then_expression	= then_expression;
    ctx->else_expression	= else_expression;
    ctx->cast_expression	= cast_expression;
    ctx->cast_type	= cast_type;
    ctx->encoding	= encoding;
    ctx->charset	= charset;
    ctx->not_rule	= not_rule;
    ctx->not2_rule	= not2_rule;
    ctx->or_rule	= or_rule;
    ctx->xor_rule	= xor_rule;
    ctx->and_rule	= and_rule;
    ctx->interval	= interval;
    ctx->interval_unit	= interval_unit;
    ctx->interval_timestamp_unit	= interval_timestamp_unit;
    ctx->expression_list_with_parentheses	= expression_list_with_parentheses;
    ctx->expression_list	= expression_list;
    ctx->expression_list_with_direction	= expression_list_with_direction;
    ctx->compound_statement	= compound_statement;
    ctx->compound_statement_list	= compound_statement_list;
    ctx->label	= label;
    ctx->label_identifier	= label_identifier;
    ctx->begin_end_block	= begin_end_block;
    ctx->loop_block	= loop_block;
    ctx->repeat_until_block	= repeat_until_block;
    ctx->while_do_block	= while_do_block;
    ctx->declarations	= declarations;
    ctx->variable_declaration	= variable_declaration;
    ctx->condition_declaration	= condition_declaration;
    ctx->cursor_declaration	= cursor_declaration;
    ctx->handler_declaration	= handler_declaration;
    ctx->handler_condition	= handler_condition;
    ctx->case_statement	= case_statement;
    ctx->then_statement	= then_statement;
    ctx->else_statement	= else_statement;
    ctx->if_statement	= if_statement;
    ctx->if_body	= if_body;
    ctx->iterate_statement	= iterate_statement;
    ctx->leave_statement	= leave_statement;
    ctx->return_statement	= return_statement;
    ctx->get_diagnostics	= get_diagnostics;
    ctx->statement_information_item	= statement_information_item;
    ctx->condition_information_item	= condition_information_item;
    ctx->condition_information_item_name	= condition_information_item_name;
    ctx->signal_statement	= signal_statement;
    ctx->resignal_statement	= resignal_statement;
    ctx->signal_information_item	= signal_information_item;
    ctx->cursor_close	= cursor_close;
    ctx->cursor_fetch	= cursor_fetch;
    ctx->cursor_open	= cursor_open;
    ctx->schedule	= schedule;
    ctx->server_option	= server_option;
    ctx->database_option	= database_option;
    ctx->column_definition	= column_definition;
    ctx->column_option	= column_option;
    ctx->reference_definition	= reference_definition;
    ctx->index_columns	= index_columns;
    ctx->index_column	= index_column;
    ctx->index_type	= index_type;
    ctx->index_option	= index_option;
    ctx->reference_option	= reference_option;
    ctx->data_type	= data_type;
    ctx->field_length	= field_length;
    ctx->field_options	= field_options;
    ctx->type_datetime_precision	= type_datetime_precision;
    ctx->charset_name	= charset_name;
    ctx->charset_name_or_default	= charset_name_or_default;
    ctx->collation_name_or_default	= collation_name_or_default;
    ctx->spatial_type	= spatial_type;
    ctx->alter_table_options	= alter_table_options;
    ctx->create_table_options	= create_table_options;
    ctx->create_table_option	= create_table_option;
    ctx->partitioning	= partitioning;
    ctx->partition_definitions	= partition_definitions;
    ctx->partition_definition	= partition_definition;
    ctx->subpartition_definition	= subpartition_definition;
    ctx->partition_value_list	= partition_value_list;
    ctx->definer_clause	= definer_clause;
    ctx->if_not_exists	= if_not_exists;
    ctx->procedure_parameter	= procedure_parameter;
    ctx->function_parameter	= function_parameter;
    ctx->qualified_identifier	= qualified_identifier;
    ctx->qualified_identifier_list	= qualified_identifier_list;
    ctx->qualified_identifier_with_wildcard	= qualified_identifier_with_wildcard;
    ctx->target_table	= target_table;
    ctx->column_assignment	= column_assignment;
    ctx->field_name_list	= field_name_list;
    ctx->field_name	= field_name;
    ctx->field_name2	= field_name2;
    ctx->column_assignment_list_with_default	= column_assignment_list_with_default;
    ctx->column_assignment_with_default	= column_assignment_with_default;
    ctx->charset_clause	= charset_clause;
    ctx->fields_clause	= fields_clause;
    ctx->field_term	= field_term;
    ctx->lines_clause	= lines_clause;
    ctx->line_term	= line_term;
    ctx->user_list	= user_list;
    ctx->user_specification	= user_specification;
    ctx->user	= user;
    ctx->like_clause	= like_clause;
    ctx->like_or_where	= like_or_where;
    ctx->online_option	= online_option;
    ctx->no_write_to_bin_log	= no_write_to_bin_log;
    ctx->pure_identifier	= pure_identifier;
    ctx->identifier	= identifier;
    ctx->identifier_list	= identifier_list;
    ctx->identifier_list_with_parentheses	= identifier_list_with_parentheses;
    ctx->at_variable_identifier	= at_variable_identifier;
    ctx->string_list	= string_list;
    ctx->literal	= literal;
    ctx->string_literal	= string_literal;
    ctx->string	= string;
    ctx->number_literal	= number_literal;
    ctx->hex_literal	= hex_literal;
    ctx->bool_literal	= bool_literal;
    ctx->bit_literal	= bit_literal;
    ctx->null_literal	= null_literal;
    ctx->temporal_literal	= temporal_literal;
    ctx->integer_type	= integer_type;
    ctx->real_literal	= real_literal;
    ctx->float_options	= float_options;
    ctx->precision	= precision;
    ctx->nchar_literal	= nchar_literal;
    ctx->varchar_literal	= varchar_literal;
    ctx->nvarchar_literal	= nvarchar_literal;
    ctx->int_or_param_marker	= int_or_param_marker;
    ctx->text_or_param_marker	= text_or_param_marker;
    ctx->text_or_identifier	= text_or_identifier;
    ctx->float_or_param	= float_or_param;
    ctx->parentheses	= parentheses;
    ctx->equal	= equal;
    ctx->option_type	= option_type;
    ctx->keyword	= keyword;
    ctx->keyword_sp	= keyword_sp;
    ctx->synpred1_MySQL	= synpred1_MySQL;
    ctx->synpred2_MySQL	= synpred2_MySQL;
    ctx->synpred3_MySQL	= synpred3_MySQL;
    ctx->free			= MySQLParserFree;
    ctx->reset			= MySQLParserReset;
    ctx->getGrammarFileName	= getGrammarFileName;

    /* Install the scope pushing methods.
     */
ADAPTOR	= ANTLR3_TREE_ADAPTORNew(instream->tstream->tokenSource->strFactory);

ctx->vectors	= antlr3VectorFactoryNew(0);
    	// Install custom error collector for the front end.
    	RECOGNIZER->displayRecognitionError = on_parse_error;

    /* Install the token table
     */
    PSRSTATE->tokenNames   = MySQLParserTokenNames;


    /* Return the newly built parser to the caller
     */
    return  ctx;
}

static void
MySQLParserReset (pMySQLParser ctx)
{
    RECOGNIZER->reset(RECOGNIZER);
}

/** Free the parser resources
 */
 static void
 MySQLParserFree(pMySQLParser ctx)
 {
    /* Free any scope memory
     */

ctx->vectors->close(ctx->vectors);
/* We created the adaptor so we must free it
 */
ADAPTOR->free(ADAPTOR);
	// Free this parser
	//
    ctx->pParser->free(ctx->pParser);


    ANTLR3_FREE(ctx);

    /* Everything is released, so we can return
     */
    return;
 }

/** Return token names used by this 
parser

 *
 * The returned pointer is used as an index into the token names table (using the token
 * number as the index).
 *
 * \return Pointer to first char * in the table.
 */
static pANTLR3_UINT8    *getTokenNames()
{
        return MySQLParserTokenNames;
}


/* Declare the bitsets
 */
/** Bitset defining follow set for error recovery in rule state: FOLLOW_statement_in_query191  */
static	ANTLR3_BITWORD FOLLOW_statement_in_query191_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_statement_in_query191	= { FOLLOW_statement_in_query191_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEMICOLON_SYMBOL_in_query193  */
static	ANTLR3_BITWORD FOLLOW_SEMICOLON_SYMBOL_in_query193_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SEMICOLON_SYMBOL_in_query193	= { FOLLOW_SEMICOLON_SYMBOL_in_query193_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EOF_in_query198  */
static	ANTLR3_BITWORD FOLLOW_EOF_in_query198_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EOF_in_query198	= { FOLLOW_EOF_in_query198_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_statement_in_statement209  */
static	ANTLR3_BITWORD FOLLOW_alter_statement_in_statement209_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_statement_in_statement209	= { FOLLOW_alter_statement_in_statement209_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_statement_in_statement214  */
static	ANTLR3_BITWORD FOLLOW_create_statement_in_statement214_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_statement_in_statement214	= { FOLLOW_create_statement_in_statement214_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_drop_statement_in_statement219  */
static	ANTLR3_BITWORD FOLLOW_drop_statement_in_statement219_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_drop_statement_in_statement219	= { FOLLOW_drop_statement_in_statement219_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_rename_table_statement_in_statement224  */
static	ANTLR3_BITWORD FOLLOW_rename_table_statement_in_statement224_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_rename_table_statement_in_statement224	= { FOLLOW_rename_table_statement_in_statement224_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_truncate_table_statement_in_statement229  */
static	ANTLR3_BITWORD FOLLOW_truncate_table_statement_in_statement229_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_truncate_table_statement_in_statement229	= { FOLLOW_truncate_table_statement_in_statement229_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_call_statement_in_statement238  */
static	ANTLR3_BITWORD FOLLOW_call_statement_in_statement238_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_call_statement_in_statement238	= { FOLLOW_call_statement_in_statement238_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_delete_statement_in_statement243  */
static	ANTLR3_BITWORD FOLLOW_delete_statement_in_statement243_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_delete_statement_in_statement243	= { FOLLOW_delete_statement_in_statement243_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_do_statement_in_statement248  */
static	ANTLR3_BITWORD FOLLOW_do_statement_in_statement248_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_do_statement_in_statement248	= { FOLLOW_do_statement_in_statement248_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_handler_statement_in_statement253  */
static	ANTLR3_BITWORD FOLLOW_handler_statement_in_statement253_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_handler_statement_in_statement253	= { FOLLOW_handler_statement_in_statement253_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_insert_statement_in_statement258  */
static	ANTLR3_BITWORD FOLLOW_insert_statement_in_statement258_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_insert_statement_in_statement258	= { FOLLOW_insert_statement_in_statement258_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_load_data_infile_statement_in_statement263  */
static	ANTLR3_BITWORD FOLLOW_load_data_infile_statement_in_statement263_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_load_data_infile_statement_in_statement263	= { FOLLOW_load_data_infile_statement_in_statement263_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_load_xml_statement_in_statement272  */
static	ANTLR3_BITWORD FOLLOW_load_xml_statement_in_statement272_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_load_xml_statement_in_statement272	= { FOLLOW_load_xml_statement_in_statement272_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_replace_statement_in_statement277  */
static	ANTLR3_BITWORD FOLLOW_replace_statement_in_statement277_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_replace_statement_in_statement277	= { FOLLOW_replace_statement_in_statement277_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_statement_in_statement282  */
static	ANTLR3_BITWORD FOLLOW_select_statement_in_statement282_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_select_statement_in_statement282	= { FOLLOW_select_statement_in_statement282_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_update_statement_in_statement287  */
static	ANTLR3_BITWORD FOLLOW_update_statement_in_statement287_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_update_statement_in_statement287	= { FOLLOW_update_statement_in_statement287_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partitioning_in_statement293  */
static	ANTLR3_BITWORD FOLLOW_partitioning_in_statement293_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_partitioning_in_statement293	= { FOLLOW_partitioning_in_statement293_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_transaction_or_locking_statement_in_statement302  */
static	ANTLR3_BITWORD FOLLOW_transaction_or_locking_statement_in_statement302_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_transaction_or_locking_statement_in_statement302	= { FOLLOW_transaction_or_locking_statement_in_statement302_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_replication_statement_in_statement309  */
static	ANTLR3_BITWORD FOLLOW_replication_statement_in_statement309_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_replication_statement_in_statement309	= { FOLLOW_replication_statement_in_statement309_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_prepared_statement_in_statement316  */
static	ANTLR3_BITWORD FOLLOW_prepared_statement_in_statement316_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_prepared_statement_in_statement316	= { FOLLOW_prepared_statement_in_statement316_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_account_management_statement_in_statement325  */
static	ANTLR3_BITWORD FOLLOW_account_management_statement_in_statement325_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_account_management_statement_in_statement325	= { FOLLOW_account_management_statement_in_statement325_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_administration_statement_in_statement330  */
static	ANTLR3_BITWORD FOLLOW_table_administration_statement_in_statement330_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_administration_statement_in_statement330	= { FOLLOW_table_administration_statement_in_statement330_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_install_uninstall_statment_in_statement335  */
static	ANTLR3_BITWORD FOLLOW_install_uninstall_statment_in_statement335_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_install_uninstall_statment_in_statement335	= { FOLLOW_install_uninstall_statment_in_statement335_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_statement_in_statement342  */
static	ANTLR3_BITWORD FOLLOW_set_statement_in_statement342_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_statement_in_statement342	= { FOLLOW_set_statement_in_statement342_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_show_statement_in_statement348  */
static	ANTLR3_BITWORD FOLLOW_show_statement_in_statement348_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_show_statement_in_statement348	= { FOLLOW_show_statement_in_statement348_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_miscellaneous_statement_in_statement353  */
static	ANTLR3_BITWORD FOLLOW_miscellaneous_statement_in_statement353_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_miscellaneous_statement_in_statement353	= { FOLLOW_miscellaneous_statement_in_statement353_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_utility_statement_in_statement362  */
static	ANTLR3_BITWORD FOLLOW_utility_statement_in_statement362_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_utility_statement_in_statement362	= { FOLLOW_utility_statement_in_statement362_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALTER_SYMBOL_in_alter_statement374  */
static	ANTLR3_BITWORD FOLLOW_ALTER_SYMBOL_in_alter_statement374_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000800), ANTLR3_UINT64_LIT(0x2000000000000000), ANTLR3_UINT64_LIT(0x0000000000080000), ANTLR3_UINT64_LIT(0x0000010000000004), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0000000000000200), ANTLR3_UINT64_LIT(0x0042000000000000), ANTLR3_UINT64_LIT(0x0000000100000000), ANTLR3_UINT64_LIT(0x0000080000000000), ANTLR3_UINT64_LIT(0x0800000000010000), ANTLR3_UINT64_LIT(0x0000000000000004), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_ALTER_SYMBOL_in_alter_statement374	= { FOLLOW_ALTER_SYMBOL_in_alter_statement374_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_database_in_alter_statement381  */
static	ANTLR3_BITWORD FOLLOW_alter_database_in_alter_statement381_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_database_in_alter_statement381	= { FOLLOW_alter_database_in_alter_statement381_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_log_file_group_in_alter_statement386  */
static	ANTLR3_BITWORD FOLLOW_alter_log_file_group_in_alter_statement386_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_log_file_group_in_alter_statement386	= { FOLLOW_alter_log_file_group_in_alter_statement386_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FUNCTION_SYMBOL_in_alter_statement391  */
static	ANTLR3_BITWORD FOLLOW_FUNCTION_SYMBOL_in_alter_statement391_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_FUNCTION_SYMBOL_in_alter_statement391	= { FOLLOW_FUNCTION_SYMBOL_in_alter_statement391_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_routine_in_alter_statement393  */
static	ANTLR3_BITWORD FOLLOW_alter_routine_in_alter_statement393_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_routine_in_alter_statement393	= { FOLLOW_alter_routine_in_alter_statement393_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROCEDURE_SYMBOL_in_alter_statement398  */
static	ANTLR3_BITWORD FOLLOW_PROCEDURE_SYMBOL_in_alter_statement398_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_PROCEDURE_SYMBOL_in_alter_statement398	= { FOLLOW_PROCEDURE_SYMBOL_in_alter_statement398_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_routine_in_alter_statement400  */
static	ANTLR3_BITWORD FOLLOW_alter_routine_in_alter_statement400_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_routine_in_alter_statement400	= { FOLLOW_alter_routine_in_alter_statement400_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_server_in_alter_statement405  */
static	ANTLR3_BITWORD FOLLOW_alter_server_in_alter_statement405_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_server_in_alter_statement405	= { FOLLOW_alter_server_in_alter_statement405_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_table_in_alter_statement410  */
static	ANTLR3_BITWORD FOLLOW_alter_table_in_alter_statement410_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_table_in_alter_statement410	= { FOLLOW_alter_table_in_alter_statement410_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_tablespace_in_alter_statement415  */
static	ANTLR3_BITWORD FOLLOW_alter_tablespace_in_alter_statement415_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_tablespace_in_alter_statement415	= { FOLLOW_alter_tablespace_in_alter_statement415_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_event_in_alter_statement424  */
static	ANTLR3_BITWORD FOLLOW_alter_event_in_alter_statement424_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_event_in_alter_statement424	= { FOLLOW_alter_event_in_alter_statement424_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_view_in_alter_statement429  */
static	ANTLR3_BITWORD FOLLOW_alter_view_in_alter_statement429_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_view_in_alter_statement429	= { FOLLOW_alter_view_in_alter_statement429_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATABASE_SYMBOL_in_alter_database442  */
static	ANTLR3_BITWORD FOLLOW_DATABASE_SYMBOL_in_alter_database442_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EFBB9C), ANTLR3_UINT64_LIT(0x37A8E503CA2E1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_DATABASE_SYMBOL_in_alter_database442	= { FOLLOW_DATABASE_SYMBOL_in_alter_database442_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_database449  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_database449_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000040100), ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_database449	= { FOLLOW_identifier_in_alter_database449_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_database_option_in_alter_database452  */
static	ANTLR3_BITWORD FOLLOW_database_option_in_alter_database452_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000040100), ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_database_option_in_alter_database452	= { FOLLOW_database_option_in_alter_database452_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_database459  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_database459_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_database459	= { FOLLOW_identifier_in_alter_database459_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UPGRADE_SYMBOL_in_alter_database461  */
static	ANTLR3_BITWORD FOLLOW_UPGRADE_SYMBOL_in_alter_database461_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_UPGRADE_SYMBOL_in_alter_database461	= { FOLLOW_UPGRADE_SYMBOL_in_alter_database461_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATA_SYMBOL_in_alter_database463  */
static	ANTLR3_BITWORD FOLLOW_DATA_SYMBOL_in_alter_database463_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DATA_SYMBOL_in_alter_database463	= { FOLLOW_DATA_SYMBOL_in_alter_database463_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DIRECTORY_SYMBOL_in_alter_database465  */
static	ANTLR3_BITWORD FOLLOW_DIRECTORY_SYMBOL_in_alter_database465_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000200000) };
static  ANTLR3_BITSET_LIST FOLLOW_DIRECTORY_SYMBOL_in_alter_database465	= { FOLLOW_DIRECTORY_SYMBOL_in_alter_database465_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NAME_SYMBOL_in_alter_database467  */
static	ANTLR3_BITWORD FOLLOW_NAME_SYMBOL_in_alter_database467_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_NAME_SYMBOL_in_alter_database467	= { FOLLOW_NAME_SYMBOL_in_alter_database467_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_definer_clause_in_alter_event479  */
static	ANTLR3_BITWORD FOLLOW_definer_clause_in_alter_event479_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_definer_clause_in_alter_event479	= { FOLLOW_definer_clause_in_alter_event479_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EVENT_SYMBOL_in_alter_event484  */
static	ANTLR3_BITWORD FOLLOW_EVENT_SYMBOL_in_alter_event484_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_EVENT_SYMBOL_in_alter_event484	= { FOLLOW_EVENT_SYMBOL_in_alter_event484_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_event486  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_event486_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0008040080000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_event486	= { FOLLOW_identifier_in_alter_event486_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_alter_event491  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_alter_event491_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_alter_event491	= { FOLLOW_ON_SYMBOL_in_alter_event491_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SCHEDULE_SYMBOL_in_alter_event493  */
static	ANTLR3_BITWORD FOLLOW_SCHEDULE_SYMBOL_in_alter_event493_bits[]	= { ANTLR3_UINT64_LIT(0x0000000002000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000008) };
static  ANTLR3_BITSET_LIST FOLLOW_SCHEDULE_SYMBOL_in_alter_event493	= { FOLLOW_SCHEDULE_SYMBOL_in_alter_event493_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_schedule_in_alter_event495  */
static	ANTLR3_BITWORD FOLLOW_schedule_in_alter_event495_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0008040080000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_schedule_in_alter_event495	= { FOLLOW_schedule_in_alter_event495_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_alter_event502  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_alter_event502_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_alter_event502	= { FOLLOW_ON_SYMBOL_in_alter_event502_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMPLETION_SYMBOL_in_alter_event504  */
static	ANTLR3_BITWORD FOLLOW_COMPLETION_SYMBOL_in_alter_event504_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMPLETION_SYMBOL_in_alter_event504	= { FOLLOW_COMPLETION_SYMBOL_in_alter_event504_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NOT_SYMBOL_in_alter_event506  */
static	ANTLR3_BITWORD FOLLOW_NOT_SYMBOL_in_alter_event506_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_NOT_SYMBOL_in_alter_event506	= { FOLLOW_NOT_SYMBOL_in_alter_event506_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRESERVE_SYMBOL_in_alter_event509  */
static	ANTLR3_BITWORD FOLLOW_PRESERVE_SYMBOL_in_alter_event509_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0008040080000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PRESERVE_SYMBOL_in_alter_event509	= { FOLLOW_PRESERVE_SYMBOL_in_alter_event509_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RENAME_SYMBOL_in_alter_event516  */
static	ANTLR3_BITWORD FOLLOW_RENAME_SYMBOL_in_alter_event516_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_RENAME_SYMBOL_in_alter_event516	= { FOLLOW_RENAME_SYMBOL_in_alter_event516_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TO_SYMBOL_in_alter_event518  */
static	ANTLR3_BITWORD FOLLOW_TO_SYMBOL_in_alter_event518_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_TO_SYMBOL_in_alter_event518	= { FOLLOW_TO_SYMBOL_in_alter_event518_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_event520  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_event520_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0008040080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_event520	= { FOLLOW_identifier_in_alter_event520_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENABLE_SYMBOL_in_alter_event527  */
static	ANTLR3_BITWORD FOLLOW_ENABLE_SYMBOL_in_alter_event527_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0000040000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ENABLE_SYMBOL_in_alter_event527	= { FOLLOW_ENABLE_SYMBOL_in_alter_event527_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DISABLE_SYMBOL_in_alter_event531  */
static	ANTLR3_BITWORD FOLLOW_DISABLE_SYMBOL_in_alter_event531_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0000040000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DISABLE_SYMBOL_in_alter_event531	= { FOLLOW_DISABLE_SYMBOL_in_alter_event531_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_alter_event534  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_alter_event534_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_alter_event534	= { FOLLOW_ON_SYMBOL_in_alter_event534_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SLAVE_SYMBOL_in_alter_event536  */
static	ANTLR3_BITWORD FOLLOW_SLAVE_SYMBOL_in_alter_event536_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0000040000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SLAVE_SYMBOL_in_alter_event536	= { FOLLOW_SLAVE_SYMBOL_in_alter_event536_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMENT_SYMBOL_in_alter_event545  */
static	ANTLR3_BITWORD FOLLOW_COMMENT_SYMBOL_in_alter_event545_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMENT_SYMBOL_in_alter_event545	= { FOLLOW_COMMENT_SYMBOL_in_alter_event545_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_alter_event547  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_alter_event547_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000040000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_alter_event547	= { FOLLOW_string_literal_in_alter_event547_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DO_SYMBOL_in_alter_event554  */
static	ANTLR3_BITWORD FOLLOW_DO_SYMBOL_in_alter_event554_bits[]	= { ANTLR3_UINT64_LIT(0x72E2008AFE02AF60), ANTLR3_UINT64_LIT(0xC12B29F5F0EBBE3D), ANTLR3_UINT64_LIT(0x3728ED03CBEA1821), ANTLR3_UINT64_LIT(0x2161FF4421CE692F), ANTLR3_UINT64_LIT(0x849AA2E8801CA37C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD423A6), ANTLR3_UINT64_LIT(0x0E3D2103CA7DB28C), ANTLR3_UINT64_LIT(0xBF9F13FEB86FBC60), ANTLR3_UINT64_LIT(0x28B953125FF9FBBF), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0883CD93378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D113E0) };
static  ANTLR3_BITSET_LIST FOLLOW_DO_SYMBOL_in_alter_event554	= { FOLLOW_DO_SYMBOL_in_alter_event554_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_in_alter_event556  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_in_alter_event556_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_compound_statement_in_alter_event556	= { FOLLOW_compound_statement_in_alter_event556_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOGFILE_SYMBOL_in_alter_log_file_group567  */
static	ANTLR3_BITWORD FOLLOW_LOGFILE_SYMBOL_in_alter_log_file_group567_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_LOGFILE_SYMBOL_in_alter_log_file_group567	= { FOLLOW_LOGFILE_SYMBOL_in_alter_log_file_group567_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GROUP_SYMBOL_in_alter_log_file_group569  */
static	ANTLR3_BITWORD FOLLOW_GROUP_SYMBOL_in_alter_log_file_group569_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_GROUP_SYMBOL_in_alter_log_file_group569	= { FOLLOW_GROUP_SYMBOL_in_alter_log_file_group569_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_log_file_group571  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_log_file_group571_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_log_file_group571	= { FOLLOW_identifier_in_alter_log_file_group571_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ADD_SYMBOL_in_alter_log_file_group573  */
static	ANTLR3_BITWORD FOLLOW_ADD_SYMBOL_in_alter_log_file_group573_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000100000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ADD_SYMBOL_in_alter_log_file_group573	= { FOLLOW_ADD_SYMBOL_in_alter_log_file_group573_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNDOFILE_SYMBOL_in_alter_log_file_group575  */
static	ANTLR3_BITWORD FOLLOW_UNDOFILE_SYMBOL_in_alter_log_file_group575_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_UNDOFILE_SYMBOL_in_alter_log_file_group575	= { FOLLOW_UNDOFILE_SYMBOL_in_alter_log_file_group575_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_alter_log_file_group577  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_alter_log_file_group577_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_alter_log_file_group577	= { FOLLOW_string_literal_in_alter_log_file_group577_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INITIAL_SIZE_SYMBOL_in_alter_log_file_group582  */
static	ANTLR3_BITWORD FOLLOW_INITIAL_SIZE_SYMBOL_in_alter_log_file_group582_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INITIAL_SIZE_SYMBOL_in_alter_log_file_group582	= { FOLLOW_INITIAL_SIZE_SYMBOL_in_alter_log_file_group582_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_alter_log_file_group584  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_alter_log_file_group584_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_alter_log_file_group584	= { FOLLOW_EQUAL_OPERATOR_in_alter_log_file_group584_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_alter_log_file_group587  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_alter_log_file_group587_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_alter_log_file_group587	= { FOLLOW_INTEGER_in_alter_log_file_group587_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WAIT_SYMBOL_in_alter_log_file_group591  */
static	ANTLR3_BITWORD FOLLOW_WAIT_SYMBOL_in_alter_log_file_group591_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_WAIT_SYMBOL_in_alter_log_file_group591	= { FOLLOW_WAIT_SYMBOL_in_alter_log_file_group591_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENGINE_SYMBOL_in_alter_log_file_group594  */
static	ANTLR3_BITWORD FOLLOW_ENGINE_SYMBOL_in_alter_log_file_group594_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_ENGINE_SYMBOL_in_alter_log_file_group594	= { FOLLOW_ENGINE_SYMBOL_in_alter_log_file_group594_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_alter_log_file_group596  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_alter_log_file_group596_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_alter_log_file_group596	= { FOLLOW_EQUAL_OPERATOR_in_alter_log_file_group596_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IDENTIFIER_in_alter_log_file_group599  */
static	ANTLR3_BITWORD FOLLOW_IDENTIFIER_in_alter_log_file_group599_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_IDENTIFIER_in_alter_log_file_group599	= { FOLLOW_IDENTIFIER_in_alter_log_file_group599_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_routine608  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_routine608_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000040008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0001000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000000100), ANTLR3_UINT64_LIT(0x0000080000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_routine608	= { FOLLOW_identifier_in_alter_routine608_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_routine_option_in_alter_routine610  */
static	ANTLR3_BITWORD FOLLOW_routine_option_in_alter_routine610_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000040008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0001000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000000100), ANTLR3_UINT64_LIT(0x0000080000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_routine_option_in_alter_routine610	= { FOLLOW_routine_option_in_alter_routine610_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SERVER_SYMBOL_in_alter_server620  */
static	ANTLR3_BITWORD FOLLOW_SERVER_SYMBOL_in_alter_server620_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_SERVER_SYMBOL_in_alter_server620	= { FOLLOW_SERVER_SYMBOL_in_alter_server620_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_server622  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_server622_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_server622	= { FOLLOW_identifier_in_alter_server622_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPTIONS_SYMBOL_in_alter_server624  */
static	ANTLR3_BITWORD FOLLOW_OPTIONS_SYMBOL_in_alter_server624_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPTIONS_SYMBOL_in_alter_server624	= { FOLLOW_OPTIONS_SYMBOL_in_alter_server624_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_alter_server626  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_alter_server626_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x4000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000808010), ANTLR3_UINT64_LIT(0x4000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000800000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_alter_server626	= { FOLLOW_OPEN_PAR_SYMBOL_in_alter_server626_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_server_option_in_alter_server628  */
static	ANTLR3_BITWORD FOLLOW_server_option_in_alter_server628_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002004000) };
static  ANTLR3_BITSET_LIST FOLLOW_server_option_in_alter_server628	= { FOLLOW_server_option_in_alter_server628_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_alter_server631  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_alter_server631_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x4000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000808010), ANTLR3_UINT64_LIT(0x4000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000800000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_alter_server631	= { FOLLOW_COMMA_SYMBOL_in_alter_server631_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_server_option_in_alter_server633  */
static	ANTLR3_BITWORD FOLLOW_server_option_in_alter_server633_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002004000) };
static  ANTLR3_BITSET_LIST FOLLOW_server_option_in_alter_server633	= { FOLLOW_server_option_in_alter_server633_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_alter_server637  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_alter_server637_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_alter_server637	= { FOLLOW_CLOSE_PAR_SYMBOL_in_alter_server637_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_online_option_in_alter_table646  */
static	ANTLR3_BITWORD FOLLOW_online_option_in_alter_table646_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_online_option_in_alter_table646	= { FOLLOW_online_option_in_alter_table646_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IGNORE_SYMBOL_in_alter_table649  */
static	ANTLR3_BITWORD FOLLOW_IGNORE_SYMBOL_in_alter_table649_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_IGNORE_SYMBOL_in_alter_table649	= { FOLLOW_IGNORE_SYMBOL_in_alter_table649_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_alter_table652  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_alter_table652_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_alter_table652	= { FOLLOW_TABLE_SYMBOL_in_alter_table652_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_identifier_in_alter_table654  */
static	ANTLR3_BITWORD FOLLOW_table_identifier_in_alter_table654_bits[]	= { ANTLR3_UINT64_LIT(0x000000003000A882), ANTLR3_UINT64_LIT(0x80004010080507A0), ANTLR3_UINT64_LIT(0x0208080180240000), ANTLR3_UINT64_LIT(0x0000000040000010), ANTLR3_UINT64_LIT(0x0000200000040900), ANTLR3_UINT64_LIT(0x0000800000000100), ANTLR3_UINT64_LIT(0x8800000000000208), ANTLR3_UINT64_LIT(0xC00100000000A020), ANTLR3_UINT64_LIT(0x0000000001000003), ANTLR3_UINT64_LIT(0x2800010380000000), ANTLR3_UINT64_LIT(0x0000002002800000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_identifier_in_alter_table654	= { FOLLOW_table_identifier_in_alter_table654_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_table_commands_in_alter_table656  */
static	ANTLR3_BITWORD FOLLOW_alter_table_commands_in_alter_table656_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_table_commands_in_alter_table656	= { FOLLOW_alter_table_commands_in_alter_table656_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DISCARD_SYMBOL_in_alter_table_commands666  */
static	ANTLR3_BITWORD FOLLOW_DISCARD_SYMBOL_in_alter_table_commands666_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DISCARD_SYMBOL_in_alter_table_commands666	= { FOLLOW_DISCARD_SYMBOL_in_alter_table_commands666_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLESPACE_SYMBOL_in_alter_table_commands668  */
static	ANTLR3_BITWORD FOLLOW_TABLESPACE_SYMBOL_in_alter_table_commands668_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLESPACE_SYMBOL_in_alter_table_commands668	= { FOLLOW_TABLESPACE_SYMBOL_in_alter_table_commands668_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IMPORT_SYMBOL_in_alter_table_commands673  */
static	ANTLR3_BITWORD FOLLOW_IMPORT_SYMBOL_in_alter_table_commands673_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_IMPORT_SYMBOL_in_alter_table_commands673	= { FOLLOW_IMPORT_SYMBOL_in_alter_table_commands673_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLESPACE_SYMBOL_in_alter_table_commands675  */
static	ANTLR3_BITWORD FOLLOW_TABLESPACE_SYMBOL_in_alter_table_commands675_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLESPACE_SYMBOL_in_alter_table_commands675	= { FOLLOW_TABLESPACE_SYMBOL_in_alter_table_commands675_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_table_list_item_in_alter_table_commands680  */
static	ANTLR3_BITWORD FOLLOW_alter_table_list_item_in_alter_table_commands680_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x4000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_table_list_item_in_alter_table_commands680	= { FOLLOW_alter_table_list_item_in_alter_table_commands680_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_alter_table_commands683  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_alter_table_commands683_bits[]	= { ANTLR3_UINT64_LIT(0x0000000030002880), ANTLR3_UINT64_LIT(0x80004010080403A0), ANTLR3_UINT64_LIT(0x0208080080240000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000200000040800), ANTLR3_UINT64_LIT(0x0000800000000100), ANTLR3_UINT64_LIT(0x8000000000000208), ANTLR3_UINT64_LIT(0x8000000000008020), ANTLR3_UINT64_LIT(0x0000000001000000), ANTLR3_UINT64_LIT(0x2800010380000000), ANTLR3_UINT64_LIT(0x0000002002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_alter_table_commands683	= { FOLLOW_COMMA_SYMBOL_in_alter_table_commands683_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_table_list_item_in_alter_table_commands685  */
static	ANTLR3_BITWORD FOLLOW_alter_table_list_item_in_alter_table_commands685_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x4000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_table_list_item_in_alter_table_commands685	= { FOLLOW_alter_table_list_item_in_alter_table_commands685_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partitioning_in_alter_table_commands690  */
static	ANTLR3_BITWORD FOLLOW_partitioning_in_alter_table_commands690_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_partitioning_in_alter_table_commands690	= { FOLLOW_partitioning_in_alter_table_commands690_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_remove_partitioning_in_alter_table_commands695  */
static	ANTLR3_BITWORD FOLLOW_remove_partitioning_in_alter_table_commands695_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_remove_partitioning_in_alter_table_commands695	= { FOLLOW_remove_partitioning_in_alter_table_commands695_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_remove_partitioning_in_alter_table_commands701  */
static	ANTLR3_BITWORD FOLLOW_remove_partitioning_in_alter_table_commands701_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_remove_partitioning_in_alter_table_commands701	= { FOLLOW_remove_partitioning_in_alter_table_commands701_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partitioning_in_alter_table_commands706  */
static	ANTLR3_BITWORD FOLLOW_partitioning_in_alter_table_commands706_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_partitioning_in_alter_table_commands706	= { FOLLOW_partitioning_in_alter_table_commands706_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_partition_in_alter_table_commands715  */
static	ANTLR3_BITWORD FOLLOW_alter_partition_in_alter_table_commands715_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_partition_in_alter_table_commands715	= { FOLLOW_alter_partition_in_alter_table_commands715_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_table_options_in_alter_table_list_item724  */
static	ANTLR3_BITWORD FOLLOW_alter_table_options_in_alter_table_list_item724_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_table_options_in_alter_table_list_item724	= { FOLLOW_alter_table_options_in_alter_table_list_item724_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ADD_SYMBOL_in_alter_table_list_item729  */
static	ANTLR3_BITWORD FOLLOW_ADD_SYMBOL_in_alter_table_list_item729_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F9EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x263D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_ADD_SYMBOL_in_alter_table_list_item729	= { FOLLOW_ADD_SYMBOL_in_alter_table_list_item729_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLUMN_SYMBOL_in_alter_table_list_item731  */
static	ANTLR3_BITWORD FOLLOW_COLUMN_SYMBOL_in_alter_table_list_item731_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x263D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COLUMN_SYMBOL_in_alter_table_list_item731	= { FOLLOW_COLUMN_SYMBOL_in_alter_table_list_item731_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_table_list_item741  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_table_list_item741_bits[]	= { ANTLR3_UINT64_LIT(0x00CA006000000000), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0400020000004021), ANTLR3_UINT64_LIT(0x00000C0011000000), ANTLR3_UINT64_LIT(0x8000000048000000), ANTLR3_UINT64_LIT(0x007000000002C000), ANTLR3_UINT64_LIT(0x000140000241A000), ANTLR3_UINT64_LIT(0x0000800000600000), ANTLR3_UINT64_LIT(0x1000420000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x050000000000F840), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_table_list_item741	= { FOLLOW_identifier_in_alter_table_list_item741_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_definition_in_alter_table_list_item743  */
static	ANTLR3_BITWORD FOLLOW_column_definition_in_alter_table_list_item743_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000102), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000800000) };
static  ANTLR3_BITSET_LIST FOLLOW_column_definition_in_alter_table_list_item743	= { FOLLOW_column_definition_in_alter_table_list_item743_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FIRST_SYMBOL_in_alter_table_list_item746  */
static	ANTLR3_BITWORD FOLLOW_FIRST_SYMBOL_in_alter_table_list_item746_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_FIRST_SYMBOL_in_alter_table_list_item746	= { FOLLOW_FIRST_SYMBOL_in_alter_table_list_item746_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AFTER_SYMBOL_in_alter_table_list_item750  */
static	ANTLR3_BITWORD FOLLOW_AFTER_SYMBOL_in_alter_table_list_item750_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_AFTER_SYMBOL_in_alter_table_list_item750	= { FOLLOW_AFTER_SYMBOL_in_alter_table_list_item750_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_table_list_item752  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_table_list_item752_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_table_list_item752	= { FOLLOW_identifier_in_alter_table_list_item752_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_alter_table_list_item761  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_alter_table_list_item761_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_alter_table_list_item761	= { FOLLOW_OPEN_PAR_SYMBOL_in_alter_table_list_item761_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_table_list_item763  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_table_list_item763_bits[]	= { ANTLR3_UINT64_LIT(0x00CA006000000000), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0400020000004021), ANTLR3_UINT64_LIT(0x00000C0011000000), ANTLR3_UINT64_LIT(0x8000000048000000), ANTLR3_UINT64_LIT(0x007000000002C000), ANTLR3_UINT64_LIT(0x000140000241A000), ANTLR3_UINT64_LIT(0x0000800000600000), ANTLR3_UINT64_LIT(0x1000420000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x050000000000F840), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_table_list_item763	= { FOLLOW_identifier_in_alter_table_list_item763_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_definition_in_alter_table_list_item765  */
static	ANTLR3_BITWORD FOLLOW_column_definition_in_alter_table_list_item765_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002004000) };
static  ANTLR3_BITSET_LIST FOLLOW_column_definition_in_alter_table_list_item765	= { FOLLOW_column_definition_in_alter_table_list_item765_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_alter_table_list_item768  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_alter_table_list_item768_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_alter_table_list_item768	= { FOLLOW_COMMA_SYMBOL_in_alter_table_list_item768_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_table_list_item770  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_table_list_item770_bits[]	= { ANTLR3_UINT64_LIT(0x00CA006000000000), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0400020000004021), ANTLR3_UINT64_LIT(0x00000C0011000000), ANTLR3_UINT64_LIT(0x8000000048000000), ANTLR3_UINT64_LIT(0x007000000002C000), ANTLR3_UINT64_LIT(0x000140000241A000), ANTLR3_UINT64_LIT(0x0000800000600000), ANTLR3_UINT64_LIT(0x1000420000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x050000000000F840), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_table_list_item770	= { FOLLOW_identifier_in_alter_table_list_item770_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_definition_in_alter_table_list_item772  */
static	ANTLR3_BITWORD FOLLOW_column_definition_in_alter_table_list_item772_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002004000) };
static  ANTLR3_BITSET_LIST FOLLOW_column_definition_in_alter_table_list_item772	= { FOLLOW_column_definition_in_alter_table_list_item772_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_alter_table_list_item776  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_alter_table_list_item776_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_alter_table_list_item776	= { FOLLOW_CLOSE_PAR_SYMBOL_in_alter_table_list_item776_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ADD_SYMBOL_in_alter_table_list_item785  */
static	ANTLR3_BITWORD FOLLOW_ADD_SYMBOL_in_alter_table_list_item785_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_ADD_SYMBOL_in_alter_table_list_item785	= { FOLLOW_ADD_SYMBOL_in_alter_table_list_item785_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_alter_table_list_item787  */
static	ANTLR3_BITWORD FOLLOW_set_in_alter_table_list_item787_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x263D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0885D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_alter_table_list_item787	= { FOLLOW_set_in_alter_table_list_item787_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_table_list_item795  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_table_list_item795_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_table_list_item795	= { FOLLOW_identifier_in_alter_table_list_item795_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_type_in_alter_table_list_item798  */
static	ANTLR3_BITWORD FOLLOW_index_type_in_alter_table_list_item798_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_type_in_alter_table_list_item798	= { FOLLOW_index_type_in_alter_table_list_item798_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_columns_in_alter_table_list_item801  */
static	ANTLR3_BITWORD FOLLOW_index_columns_in_alter_table_list_item801_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000002000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_columns_in_alter_table_list_item801	= { FOLLOW_index_columns_in_alter_table_list_item801_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_option_in_alter_table_list_item803  */
static	ANTLR3_BITWORD FOLLOW_index_option_in_alter_table_list_item803_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000002000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_option_in_alter_table_list_item803	= { FOLLOW_index_option_in_alter_table_list_item803_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ADD_SYMBOL_in_alter_table_list_item809  */
static	ANTLR3_BITWORD FOLLOW_ADD_SYMBOL_in_alter_table_list_item809_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000020000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000004000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ADD_SYMBOL_in_alter_table_list_item809	= { FOLLOW_ADD_SYMBOL_in_alter_table_list_item809_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONSTRAINT_SYMBOL_in_alter_table_list_item812  */
static	ANTLR3_BITWORD FOLLOW_CONSTRAINT_SYMBOL_in_alter_table_list_item812_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF45A1C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEF8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D4DB378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_CONSTRAINT_SYMBOL_in_alter_table_list_item812	= { FOLLOW_CONSTRAINT_SYMBOL_in_alter_table_list_item812_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_table_list_item814  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_table_list_item814_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000004000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_table_list_item814	= { FOLLOW_identifier_in_alter_table_list_item814_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRIMARY_SYMBOL_in_alter_table_list_item826  */
static	ANTLR3_BITWORD FOLLOW_PRIMARY_SYMBOL_in_alter_table_list_item826_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PRIMARY_SYMBOL_in_alter_table_list_item826	= { FOLLOW_PRIMARY_SYMBOL_in_alter_table_list_item826_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEY_SYMBOL_in_alter_table_list_item828  */
static	ANTLR3_BITWORD FOLLOW_KEY_SYMBOL_in_alter_table_list_item828_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_KEY_SYMBOL_in_alter_table_list_item828	= { FOLLOW_KEY_SYMBOL_in_alter_table_list_item828_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_type_in_alter_table_list_item830  */
static	ANTLR3_BITWORD FOLLOW_index_type_in_alter_table_list_item830_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_type_in_alter_table_list_item830	= { FOLLOW_index_type_in_alter_table_list_item830_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_columns_in_alter_table_list_item833  */
static	ANTLR3_BITWORD FOLLOW_index_columns_in_alter_table_list_item833_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000002000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_columns_in_alter_table_list_item833	= { FOLLOW_index_columns_in_alter_table_list_item833_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_option_in_alter_table_list_item835  */
static	ANTLR3_BITWORD FOLLOW_index_option_in_alter_table_list_item835_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000002000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_option_in_alter_table_list_item835	= { FOLLOW_index_option_in_alter_table_list_item835_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNIQUE_SYMBOL_in_alter_table_list_item843  */
static	ANTLR3_BITWORD FOLLOW_UNIQUE_SYMBOL_in_alter_table_list_item843_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B60E88014AB5C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x263D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0885D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_UNIQUE_SYMBOL_in_alter_table_list_item843	= { FOLLOW_UNIQUE_SYMBOL_in_alter_table_list_item843_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_table_list_item854  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_table_list_item854_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_table_list_item854	= { FOLLOW_identifier_in_alter_table_list_item854_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_type_in_alter_table_list_item857  */
static	ANTLR3_BITWORD FOLLOW_index_type_in_alter_table_list_item857_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_type_in_alter_table_list_item857	= { FOLLOW_index_type_in_alter_table_list_item857_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_columns_in_alter_table_list_item860  */
static	ANTLR3_BITWORD FOLLOW_index_columns_in_alter_table_list_item860_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000002000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_columns_in_alter_table_list_item860	= { FOLLOW_index_columns_in_alter_table_list_item860_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_option_in_alter_table_list_item862  */
static	ANTLR3_BITWORD FOLLOW_index_option_in_alter_table_list_item862_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000002000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_option_in_alter_table_list_item862	= { FOLLOW_index_option_in_alter_table_list_item862_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOREIGN_SYMBOL_in_alter_table_list_item870  */
static	ANTLR3_BITWORD FOLLOW_FOREIGN_SYMBOL_in_alter_table_list_item870_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FOREIGN_SYMBOL_in_alter_table_list_item870	= { FOLLOW_FOREIGN_SYMBOL_in_alter_table_list_item870_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEY_SYMBOL_in_alter_table_list_item872  */
static	ANTLR3_BITWORD FOLLOW_KEY_SYMBOL_in_alter_table_list_item872_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x263D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_KEY_SYMBOL_in_alter_table_list_item872	= { FOLLOW_KEY_SYMBOL_in_alter_table_list_item872_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_table_list_item874  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_table_list_item874_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_table_list_item874	= { FOLLOW_identifier_in_alter_table_list_item874_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_columns_in_alter_table_list_item877  */
static	ANTLR3_BITWORD FOLLOW_index_columns_in_alter_table_list_item877_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0020000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_columns_in_alter_table_list_item877	= { FOLLOW_index_columns_in_alter_table_list_item877_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_reference_definition_in_alter_table_list_item879  */
static	ANTLR3_BITWORD FOLLOW_reference_definition_in_alter_table_list_item879_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_reference_definition_in_alter_table_list_item879	= { FOLLOW_reference_definition_in_alter_table_list_item879_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ADD_SYMBOL_in_alter_table_list_item888  */
static	ANTLR3_BITWORD FOLLOW_ADD_SYMBOL_in_alter_table_list_item888_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ADD_SYMBOL_in_alter_table_list_item888	= { FOLLOW_ADD_SYMBOL_in_alter_table_list_item888_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FULLTEXT_SYMBOL_in_alter_table_list_item890  */
static	ANTLR3_BITWORD FOLLOW_FULLTEXT_SYMBOL_in_alter_table_list_item890_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B60E88014AB5C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x263D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_FULLTEXT_SYMBOL_in_alter_table_list_item890	= { FOLLOW_FULLTEXT_SYMBOL_in_alter_table_list_item890_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_table_list_item901  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_table_list_item901_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_table_list_item901	= { FOLLOW_identifier_in_alter_table_list_item901_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_columns_in_alter_table_list_item904  */
static	ANTLR3_BITWORD FOLLOW_index_columns_in_alter_table_list_item904_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000002000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_columns_in_alter_table_list_item904	= { FOLLOW_index_columns_in_alter_table_list_item904_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_option_in_alter_table_list_item906  */
static	ANTLR3_BITWORD FOLLOW_index_option_in_alter_table_list_item906_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000002000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_option_in_alter_table_list_item906	= { FOLLOW_index_option_in_alter_table_list_item906_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ADD_SYMBOL_in_alter_table_list_item912  */
static	ANTLR3_BITWORD FOLLOW_ADD_SYMBOL_in_alter_table_list_item912_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_ADD_SYMBOL_in_alter_table_list_item912	= { FOLLOW_ADD_SYMBOL_in_alter_table_list_item912_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SPATIAL_SYMBOL_in_alter_table_list_item914  */
static	ANTLR3_BITWORD FOLLOW_SPATIAL_SYMBOL_in_alter_table_list_item914_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B60E88014AB5C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x263D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_SPATIAL_SYMBOL_in_alter_table_list_item914	= { FOLLOW_SPATIAL_SYMBOL_in_alter_table_list_item914_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_table_list_item925  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_table_list_item925_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_table_list_item925	= { FOLLOW_identifier_in_alter_table_list_item925_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_columns_in_alter_table_list_item928  */
static	ANTLR3_BITWORD FOLLOW_index_columns_in_alter_table_list_item928_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000002000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_columns_in_alter_table_list_item928	= { FOLLOW_index_columns_in_alter_table_list_item928_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_option_in_alter_table_list_item930  */
static	ANTLR3_BITWORD FOLLOW_index_option_in_alter_table_list_item930_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000002000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_option_in_alter_table_list_item930	= { FOLLOW_index_option_in_alter_table_list_item930_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALTER_SYMBOL_in_alter_table_list_item936  */
static	ANTLR3_BITWORD FOLLOW_ALTER_SYMBOL_in_alter_table_list_item936_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F9EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_ALTER_SYMBOL_in_alter_table_list_item936	= { FOLLOW_ALTER_SYMBOL_in_alter_table_list_item936_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLUMN_SYMBOL_in_alter_table_list_item938  */
static	ANTLR3_BITWORD FOLLOW_COLUMN_SYMBOL_in_alter_table_list_item938_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COLUMN_SYMBOL_in_alter_table_list_item938	= { FOLLOW_COLUMN_SYMBOL_in_alter_table_list_item938_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_table_list_item941  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_table_list_item941_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000080000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_table_list_item941	= { FOLLOW_identifier_in_alter_table_list_item941_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SET_SYMBOL_in_alter_table_list_item944  */
static	ANTLR3_BITWORD FOLLOW_SET_SYMBOL_in_alter_table_list_item944_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_SET_SYMBOL_in_alter_table_list_item944	= { FOLLOW_SET_SYMBOL_in_alter_table_list_item944_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_alter_table_list_item946  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_alter_table_list_item946_bits[]	= { ANTLR3_UINT64_LIT(0x0000060000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0C00000002010000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000140004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080400000) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_alter_table_list_item946	= { FOLLOW_DEFAULT_SYMBOL_in_alter_table_list_item946_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_literal_in_alter_table_list_item948  */
static	ANTLR3_BITWORD FOLLOW_literal_in_alter_table_list_item948_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_literal_in_alter_table_list_item948	= { FOLLOW_literal_in_alter_table_list_item948_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DROP_SYMBOL_in_alter_table_list_item952  */
static	ANTLR3_BITWORD FOLLOW_DROP_SYMBOL_in_alter_table_list_item952_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_DROP_SYMBOL_in_alter_table_list_item952	= { FOLLOW_DROP_SYMBOL_in_alter_table_list_item952_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_alter_table_list_item954  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_alter_table_list_item954_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_alter_table_list_item954	= { FOLLOW_DEFAULT_SYMBOL_in_alter_table_list_item954_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHANGE_SYMBOL_in_alter_table_list_item960  */
static	ANTLR3_BITWORD FOLLOW_CHANGE_SYMBOL_in_alter_table_list_item960_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F9EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_CHANGE_SYMBOL_in_alter_table_list_item960	= { FOLLOW_CHANGE_SYMBOL_in_alter_table_list_item960_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLUMN_SYMBOL_in_alter_table_list_item962  */
static	ANTLR3_BITWORD FOLLOW_COLUMN_SYMBOL_in_alter_table_list_item962_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COLUMN_SYMBOL_in_alter_table_list_item962	= { FOLLOW_COLUMN_SYMBOL_in_alter_table_list_item962_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_table_list_item965  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_table_list_item965_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_table_list_item965	= { FOLLOW_identifier_in_alter_table_list_item965_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_table_list_item967  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_table_list_item967_bits[]	= { ANTLR3_UINT64_LIT(0x00CA006000000000), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0400020000004021), ANTLR3_UINT64_LIT(0x00000C0011000000), ANTLR3_UINT64_LIT(0x8000000048000000), ANTLR3_UINT64_LIT(0x007000000002C000), ANTLR3_UINT64_LIT(0x000140000241A000), ANTLR3_UINT64_LIT(0x0000800000600000), ANTLR3_UINT64_LIT(0x1000420000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x050000000000F840), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_table_list_item967	= { FOLLOW_identifier_in_alter_table_list_item967_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_definition_in_alter_table_list_item969  */
static	ANTLR3_BITWORD FOLLOW_column_definition_in_alter_table_list_item969_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000102), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000800000) };
static  ANTLR3_BITSET_LIST FOLLOW_column_definition_in_alter_table_list_item969	= { FOLLOW_column_definition_in_alter_table_list_item969_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FIRST_SYMBOL_in_alter_table_list_item972  */
static	ANTLR3_BITWORD FOLLOW_FIRST_SYMBOL_in_alter_table_list_item972_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_FIRST_SYMBOL_in_alter_table_list_item972	= { FOLLOW_FIRST_SYMBOL_in_alter_table_list_item972_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AFTER_SYMBOL_in_alter_table_list_item976  */
static	ANTLR3_BITWORD FOLLOW_AFTER_SYMBOL_in_alter_table_list_item976_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_AFTER_SYMBOL_in_alter_table_list_item976	= { FOLLOW_AFTER_SYMBOL_in_alter_table_list_item976_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_table_list_item978  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_table_list_item978_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_table_list_item978	= { FOLLOW_identifier_in_alter_table_list_item978_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MODIFY_SYMBOL_in_alter_table_list_item985  */
static	ANTLR3_BITWORD FOLLOW_MODIFY_SYMBOL_in_alter_table_list_item985_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F9EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_MODIFY_SYMBOL_in_alter_table_list_item985	= { FOLLOW_MODIFY_SYMBOL_in_alter_table_list_item985_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLUMN_SYMBOL_in_alter_table_list_item987  */
static	ANTLR3_BITWORD FOLLOW_COLUMN_SYMBOL_in_alter_table_list_item987_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COLUMN_SYMBOL_in_alter_table_list_item987	= { FOLLOW_COLUMN_SYMBOL_in_alter_table_list_item987_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_table_list_item990  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_table_list_item990_bits[]	= { ANTLR3_UINT64_LIT(0x00CA006000000000), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0400020000004021), ANTLR3_UINT64_LIT(0x00000C0011000000), ANTLR3_UINT64_LIT(0x8000000048000000), ANTLR3_UINT64_LIT(0x007000000002C000), ANTLR3_UINT64_LIT(0x000140000241A000), ANTLR3_UINT64_LIT(0x0000800000600000), ANTLR3_UINT64_LIT(0x1000420000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x050000000000F840), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_table_list_item990	= { FOLLOW_identifier_in_alter_table_list_item990_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_definition_in_alter_table_list_item992  */
static	ANTLR3_BITWORD FOLLOW_column_definition_in_alter_table_list_item992_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000102), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000800000) };
static  ANTLR3_BITSET_LIST FOLLOW_column_definition_in_alter_table_list_item992	= { FOLLOW_column_definition_in_alter_table_list_item992_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FIRST_SYMBOL_in_alter_table_list_item995  */
static	ANTLR3_BITWORD FOLLOW_FIRST_SYMBOL_in_alter_table_list_item995_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_FIRST_SYMBOL_in_alter_table_list_item995	= { FOLLOW_FIRST_SYMBOL_in_alter_table_list_item995_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AFTER_SYMBOL_in_alter_table_list_item999  */
static	ANTLR3_BITWORD FOLLOW_AFTER_SYMBOL_in_alter_table_list_item999_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_AFTER_SYMBOL_in_alter_table_list_item999	= { FOLLOW_AFTER_SYMBOL_in_alter_table_list_item999_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_table_list_item1001  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_table_list_item1001_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_table_list_item1001	= { FOLLOW_identifier_in_alter_table_list_item1001_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DROP_SYMBOL_in_alter_table_list_item1008  */
static	ANTLR3_BITWORD FOLLOW_DROP_SYMBOL_in_alter_table_list_item1008_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F9EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF45A1C6692F), ANTLR3_UINT64_LIT(0x848B60E88014AB5C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEF8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_DROP_SYMBOL_in_alter_table_list_item1008	= { FOLLOW_DROP_SYMBOL_in_alter_table_list_item1008_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_alter_table_list_item1017  */
static	ANTLR3_BITWORD FOLLOW_set_in_alter_table_list_item1017_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_alter_table_list_item1017	= { FOLLOW_set_in_alter_table_list_item1017_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_table_list_item1025  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_table_list_item1025_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_table_list_item1025	= { FOLLOW_identifier_in_alter_table_list_item1025_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLUMN_SYMBOL_in_alter_table_list_item1032  */
static	ANTLR3_BITWORD FOLLOW_COLUMN_SYMBOL_in_alter_table_list_item1032_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COLUMN_SYMBOL_in_alter_table_list_item1032	= { FOLLOW_COLUMN_SYMBOL_in_alter_table_list_item1032_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_table_list_item1035  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_table_list_item1035_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_table_list_item1035	= { FOLLOW_identifier_in_alter_table_list_item1035_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRIMARY_SYMBOL_in_alter_table_list_item1042  */
static	ANTLR3_BITWORD FOLLOW_PRIMARY_SYMBOL_in_alter_table_list_item1042_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PRIMARY_SYMBOL_in_alter_table_list_item1042	= { FOLLOW_PRIMARY_SYMBOL_in_alter_table_list_item1042_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEY_SYMBOL_in_alter_table_list_item1044  */
static	ANTLR3_BITWORD FOLLOW_KEY_SYMBOL_in_alter_table_list_item1044_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_KEY_SYMBOL_in_alter_table_list_item1044	= { FOLLOW_KEY_SYMBOL_in_alter_table_list_item1044_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOREIGN_SYMBOL_in_alter_table_list_item1051  */
static	ANTLR3_BITWORD FOLLOW_FOREIGN_SYMBOL_in_alter_table_list_item1051_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FOREIGN_SYMBOL_in_alter_table_list_item1051	= { FOLLOW_FOREIGN_SYMBOL_in_alter_table_list_item1051_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEY_SYMBOL_in_alter_table_list_item1053  */
static	ANTLR3_BITWORD FOLLOW_KEY_SYMBOL_in_alter_table_list_item1053_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_KEY_SYMBOL_in_alter_table_list_item1053	= { FOLLOW_KEY_SYMBOL_in_alter_table_list_item1053_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_table_list_item1055  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_table_list_item1055_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_table_list_item1055	= { FOLLOW_identifier_in_alter_table_list_item1055_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DISABLE_SYMBOL_in_alter_table_list_item1064  */
static	ANTLR3_BITWORD FOLLOW_DISABLE_SYMBOL_in_alter_table_list_item1064_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DISABLE_SYMBOL_in_alter_table_list_item1064	= { FOLLOW_DISABLE_SYMBOL_in_alter_table_list_item1064_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEYS_SYMBOL_in_alter_table_list_item1066  */
static	ANTLR3_BITWORD FOLLOW_KEYS_SYMBOL_in_alter_table_list_item1066_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_KEYS_SYMBOL_in_alter_table_list_item1066	= { FOLLOW_KEYS_SYMBOL_in_alter_table_list_item1066_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENABLE_SYMBOL_in_alter_table_list_item1071  */
static	ANTLR3_BITWORD FOLLOW_ENABLE_SYMBOL_in_alter_table_list_item1071_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ENABLE_SYMBOL_in_alter_table_list_item1071	= { FOLLOW_ENABLE_SYMBOL_in_alter_table_list_item1071_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEYS_SYMBOL_in_alter_table_list_item1073  */
static	ANTLR3_BITWORD FOLLOW_KEYS_SYMBOL_in_alter_table_list_item1073_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_KEYS_SYMBOL_in_alter_table_list_item1073	= { FOLLOW_KEYS_SYMBOL_in_alter_table_list_item1073_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RENAME_SYMBOL_in_alter_table_list_item1078  */
static	ANTLR3_BITWORD FOLLOW_RENAME_SYMBOL_in_alter_table_list_item1078_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE468F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378D1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_RENAME_SYMBOL_in_alter_table_list_item1078	= { FOLLOW_RENAME_SYMBOL_in_alter_table_list_item1078_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_table_list_item1089  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_table_list_item1089_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_table_list_item1089	= { FOLLOW_identifier_in_alter_table_list_item1089_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_order_by_in_alter_table_list_item1094  */
static	ANTLR3_BITWORD FOLLOW_alter_order_by_in_alter_table_list_item1094_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_order_by_in_alter_table_list_item1094	= { FOLLOW_alter_order_by_in_alter_table_list_item1094_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONVERT_SYMBOL_in_alter_table_list_item1099  */
static	ANTLR3_BITWORD FOLLOW_CONVERT_SYMBOL_in_alter_table_list_item1099_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_CONVERT_SYMBOL_in_alter_table_list_item1099	= { FOLLOW_CONVERT_SYMBOL_in_alter_table_list_item1099_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TO_SYMBOL_in_alter_table_list_item1101  */
static	ANTLR3_BITWORD FOLLOW_TO_SYMBOL_in_alter_table_list_item1101_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000100) };
static  ANTLR3_BITSET_LIST FOLLOW_TO_SYMBOL_in_alter_table_list_item1101	= { FOLLOW_TO_SYMBOL_in_alter_table_list_item1101_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHAR_SYMBOL_in_alter_table_list_item1103  */
static	ANTLR3_BITWORD FOLLOW_CHAR_SYMBOL_in_alter_table_list_item1103_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CHAR_SYMBOL_in_alter_table_list_item1103	= { FOLLOW_CHAR_SYMBOL_in_alter_table_list_item1103_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SET_SYMBOL_in_alter_table_list_item1105  */
static	ANTLR3_BITWORD FOLLOW_SET_SYMBOL_in_alter_table_list_item1105_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000180), ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_SET_SYMBOL_in_alter_table_list_item1105	= { FOLLOW_SET_SYMBOL_in_alter_table_list_item1105_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_name_or_default_in_alter_table_list_item1107  */
static	ANTLR3_BITWORD FOLLOW_charset_name_or_default_in_alter_table_list_item1107_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_name_or_default_in_alter_table_list_item1107	= { FOLLOW_charset_name_or_default_in_alter_table_list_item1107_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLLATE_SYMBOL_in_alter_table_list_item1110  */
static	ANTLR3_BITWORD FOLLOW_COLLATE_SYMBOL_in_alter_table_list_item1110_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2E1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COLLATE_SYMBOL_in_alter_table_list_item1110	= { FOLLOW_COLLATE_SYMBOL_in_alter_table_list_item1110_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_collation_name_or_default_in_alter_table_list_item1112  */
static	ANTLR3_BITWORD FOLLOW_collation_name_or_default_in_alter_table_list_item1112_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_collation_name_or_default_in_alter_table_list_item1112	= { FOLLOW_collation_name_or_default_in_alter_table_list_item1112_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FORCE_SYMBOL_in_alter_table_list_item1119  */
static	ANTLR3_BITWORD FOLLOW_FORCE_SYMBOL_in_alter_table_list_item1119_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_FORCE_SYMBOL_in_alter_table_list_item1119	= { FOLLOW_FORCE_SYMBOL_in_alter_table_list_item1119_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_algorithm_option_in_alter_table_list_item1128  */
static	ANTLR3_BITWORD FOLLOW_alter_algorithm_option_in_alter_table_list_item1128_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_algorithm_option_in_alter_table_list_item1128	= { FOLLOW_alter_algorithm_option_in_alter_table_list_item1128_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_lock_option_in_alter_table_list_item1137  */
static	ANTLR3_BITWORD FOLLOW_alter_lock_option_in_alter_table_list_item1137_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_lock_option_in_alter_table_list_item1137	= { FOLLOW_alter_lock_option_in_alter_table_list_item1137_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ORDER_SYMBOL_in_alter_order_by1146  */
static	ANTLR3_BITWORD FOLLOW_ORDER_SYMBOL_in_alter_order_by1146_bits[]	= { ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ORDER_SYMBOL_in_alter_order_by1146	= { FOLLOW_ORDER_SYMBOL_in_alter_order_by1146_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_alter_order_by1148  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_alter_order_by1148_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_alter_order_by1148	= { FOLLOW_BY_SYMBOL_in_alter_order_by1148_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_order_by1150  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_order_by1150_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000080000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000001000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_order_by1150	= { FOLLOW_identifier_in_alter_order_by1150_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_direction_in_alter_order_by1152  */
static	ANTLR3_BITWORD FOLLOW_direction_in_alter_order_by1152_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_direction_in_alter_order_by1152	= { FOLLOW_direction_in_alter_order_by1152_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_alter_order_by1165  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_alter_order_by1165_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_alter_order_by1165	= { FOLLOW_COMMA_SYMBOL_in_alter_order_by1165_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_order_by1167  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_order_by1167_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000080000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000001000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_order_by1167	= { FOLLOW_identifier_in_alter_order_by1167_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_direction_in_alter_order_by1169  */
static	ANTLR3_BITWORD FOLLOW_direction_in_alter_order_by1169_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_direction_in_alter_order_by1169	= { FOLLOW_direction_in_alter_order_by1169_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALGORITHM_SYMBOL_in_alter_algorithm_option1180  */
static	ANTLR3_BITWORD FOLLOW_ALGORITHM_SYMBOL_in_alter_algorithm_option1180_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x3FA8E503CA2E1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_ALGORITHM_SYMBOL_in_alter_algorithm_option1180	= { FOLLOW_ALGORITHM_SYMBOL_in_alter_algorithm_option1180_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_alter_algorithm_option1182  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_alter_algorithm_option1182_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2E1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_alter_algorithm_option1182	= { FOLLOW_EQUAL_OPERATOR_in_alter_algorithm_option1182_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_alter_algorithm_option1187  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_alter_algorithm_option1187_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_alter_algorithm_option1187	= { FOLLOW_DEFAULT_SYMBOL_in_alter_algorithm_option1187_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_algorithm_option1191  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_algorithm_option1191_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_algorithm_option1191	= { FOLLOW_identifier_in_alter_algorithm_option1191_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOCK_SYMBOL_in_alter_lock_option1202  */
static	ANTLR3_BITWORD FOLLOW_LOCK_SYMBOL_in_alter_lock_option1202_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x3FA8E503CA2E1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_LOCK_SYMBOL_in_alter_lock_option1202	= { FOLLOW_LOCK_SYMBOL_in_alter_lock_option1202_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_alter_lock_option1204  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_alter_lock_option1204_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2E1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_alter_lock_option1204	= { FOLLOW_EQUAL_OPERATOR_in_alter_lock_option1204_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_alter_lock_option1208  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_alter_lock_option1208_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_alter_lock_option1208	= { FOLLOW_DEFAULT_SYMBOL_in_alter_lock_option1208_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_lock_option1212  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_lock_option1212_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_lock_option1212	= { FOLLOW_identifier_in_alter_lock_option1212_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_algorithm_option_in_index_lock_algorithm1234  */
static	ANTLR3_BITWORD FOLLOW_alter_algorithm_option_in_index_lock_algorithm1234_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000100) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_algorithm_option_in_index_lock_algorithm1234	= { FOLLOW_alter_algorithm_option_in_index_lock_algorithm1234_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_lock_option_in_index_lock_algorithm1236  */
static	ANTLR3_BITWORD FOLLOW_alter_lock_option_in_index_lock_algorithm1236_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_lock_option_in_index_lock_algorithm1236	= { FOLLOW_alter_lock_option_in_index_lock_algorithm1236_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_lock_option_in_index_lock_algorithm1244  */
static	ANTLR3_BITWORD FOLLOW_alter_lock_option_in_index_lock_algorithm1244_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000802) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_lock_option_in_index_lock_algorithm1244	= { FOLLOW_alter_lock_option_in_index_lock_algorithm1244_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_algorithm_option_in_index_lock_algorithm1246  */
static	ANTLR3_BITWORD FOLLOW_alter_algorithm_option_in_index_lock_algorithm1246_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_algorithm_option_in_index_lock_algorithm1246	= { FOLLOW_alter_algorithm_option_in_index_lock_algorithm1246_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ADD_SYMBOL_in_alter_partition1262  */
static	ANTLR3_BITWORD FOLLOW_ADD_SYMBOL_in_alter_partition1262_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_ADD_SYMBOL_in_alter_partition1262	= { FOLLOW_ADD_SYMBOL_in_alter_partition1262_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_alter_partition1264  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_alter_partition1264_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020), ANTLR3_UINT64_LIT(0x0200020000000000), ANTLR3_UINT64_LIT(0x0000000000001000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_alter_partition1264	= { FOLLOW_PARTITION_SYMBOL_in_alter_partition1264_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_no_write_to_bin_log_in_alter_partition1266  */
static	ANTLR3_BITWORD FOLLOW_no_write_to_bin_log_in_alter_partition1266_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000001000) };
static  ANTLR3_BITSET_LIST FOLLOW_no_write_to_bin_log_in_alter_partition1266	= { FOLLOW_no_write_to_bin_log_in_alter_partition1266_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_alter_partition1276  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_alter_partition1276_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_alter_partition1276	= { FOLLOW_OPEN_PAR_SYMBOL_in_alter_partition1276_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partition_definition_in_alter_partition1278  */
static	ANTLR3_BITWORD FOLLOW_partition_definition_in_alter_partition1278_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_partition_definition_in_alter_partition1278	= { FOLLOW_partition_definition_in_alter_partition1278_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_alter_partition1280  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_alter_partition1280_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_alter_partition1280	= { FOLLOW_CLOSE_PAR_SYMBOL_in_alter_partition1280_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITIONS_SYMBOL_in_alter_partition1287  */
static	ANTLR3_BITWORD FOLLOW_PARTITIONS_SYMBOL_in_alter_partition1287_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITIONS_SYMBOL_in_alter_partition1287	= { FOLLOW_PARTITIONS_SYMBOL_in_alter_partition1287_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_alter_partition1289  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_alter_partition1289_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_alter_partition1289	= { FOLLOW_INTEGER_in_alter_partition1289_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DROP_SYMBOL_in_alter_partition1298  */
static	ANTLR3_BITWORD FOLLOW_DROP_SYMBOL_in_alter_partition1298_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_DROP_SYMBOL_in_alter_partition1298	= { FOLLOW_DROP_SYMBOL_in_alter_partition1298_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_alter_partition1300  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_alter_partition1300_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_alter_partition1300	= { FOLLOW_PARTITION_SYMBOL_in_alter_partition1300_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_in_alter_partition1302  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_in_alter_partition1302_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_in_alter_partition1302	= { FOLLOW_identifier_list_in_alter_partition1302_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REBUILD_SYMBOL_in_alter_partition1307  */
static	ANTLR3_BITWORD FOLLOW_REBUILD_SYMBOL_in_alter_partition1307_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_REBUILD_SYMBOL_in_alter_partition1307	= { FOLLOW_REBUILD_SYMBOL_in_alter_partition1307_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_alter_partition1309  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_alter_partition1309_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE069F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2383CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_alter_partition1309	= { FOLLOW_PARTITION_SYMBOL_in_alter_partition1309_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_no_write_to_bin_log_in_alter_partition1311  */
static	ANTLR3_BITWORD FOLLOW_no_write_to_bin_log_in_alter_partition1311_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE069F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_no_write_to_bin_log_in_alter_partition1311	= { FOLLOW_no_write_to_bin_log_in_alter_partition1311_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_all_or_partition_name_list_in_alter_partition1314  */
static	ANTLR3_BITWORD FOLLOW_all_or_partition_name_list_in_alter_partition1314_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_all_or_partition_name_list_in_alter_partition1314	= { FOLLOW_all_or_partition_name_list_in_alter_partition1314_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPTIMIZE_SYMBOL_in_alter_partition1319  */
static	ANTLR3_BITWORD FOLLOW_OPTIMIZE_SYMBOL_in_alter_partition1319_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPTIMIZE_SYMBOL_in_alter_partition1319	= { FOLLOW_OPTIMIZE_SYMBOL_in_alter_partition1319_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_alter_partition1321  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_alter_partition1321_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE069F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2383CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_alter_partition1321	= { FOLLOW_PARTITION_SYMBOL_in_alter_partition1321_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_no_write_to_bin_log_in_alter_partition1323  */
static	ANTLR3_BITWORD FOLLOW_no_write_to_bin_log_in_alter_partition1323_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE069F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_no_write_to_bin_log_in_alter_partition1323	= { FOLLOW_no_write_to_bin_log_in_alter_partition1323_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_all_or_partition_name_list_in_alter_partition1326  */
static	ANTLR3_BITWORD FOLLOW_all_or_partition_name_list_in_alter_partition1326_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020), ANTLR3_UINT64_LIT(0x0000020000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_all_or_partition_name_list_in_alter_partition1326	= { FOLLOW_all_or_partition_name_list_in_alter_partition1326_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_no_write_to_bin_log_in_alter_partition1328  */
static	ANTLR3_BITWORD FOLLOW_no_write_to_bin_log_in_alter_partition1328_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_no_write_to_bin_log_in_alter_partition1328	= { FOLLOW_no_write_to_bin_log_in_alter_partition1328_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ANALYZE_SYMBOL_in_alter_partition1335  */
static	ANTLR3_BITWORD FOLLOW_ANALYZE_SYMBOL_in_alter_partition1335_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_ANALYZE_SYMBOL_in_alter_partition1335	= { FOLLOW_ANALYZE_SYMBOL_in_alter_partition1335_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_alter_partition1337  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_alter_partition1337_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE069F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2383CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_alter_partition1337	= { FOLLOW_PARTITION_SYMBOL_in_alter_partition1337_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_no_write_to_bin_log_in_alter_partition1339  */
static	ANTLR3_BITWORD FOLLOW_no_write_to_bin_log_in_alter_partition1339_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE069F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_no_write_to_bin_log_in_alter_partition1339	= { FOLLOW_no_write_to_bin_log_in_alter_partition1339_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_all_or_partition_name_list_in_alter_partition1342  */
static	ANTLR3_BITWORD FOLLOW_all_or_partition_name_list_in_alter_partition1342_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_all_or_partition_name_list_in_alter_partition1342	= { FOLLOW_all_or_partition_name_list_in_alter_partition1342_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHECK_SYMBOL_in_alter_partition1347  */
static	ANTLR3_BITWORD FOLLOW_CHECK_SYMBOL_in_alter_partition1347_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_CHECK_SYMBOL_in_alter_partition1347	= { FOLLOW_CHECK_SYMBOL_in_alter_partition1347_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_alter_partition1349  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_alter_partition1349_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE069F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_alter_partition1349	= { FOLLOW_PARTITION_SYMBOL_in_alter_partition1349_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_all_or_partition_name_list_in_alter_partition1351  */
static	ANTLR3_BITWORD FOLLOW_all_or_partition_name_list_in_alter_partition1351_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200022000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000020000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_all_or_partition_name_list_in_alter_partition1351	= { FOLLOW_all_or_partition_name_list_in_alter_partition1351_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_check_option_in_alter_partition1353  */
static	ANTLR3_BITWORD FOLLOW_check_option_in_alter_partition1353_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200022000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000020000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_check_option_in_alter_partition1353	= { FOLLOW_check_option_in_alter_partition1353_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPAIR_SYMBOL_in_alter_partition1359  */
static	ANTLR3_BITWORD FOLLOW_REPAIR_SYMBOL_in_alter_partition1359_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_REPAIR_SYMBOL_in_alter_partition1359	= { FOLLOW_REPAIR_SYMBOL_in_alter_partition1359_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_alter_partition1361  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_alter_partition1361_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE069F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2383CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_alter_partition1361	= { FOLLOW_PARTITION_SYMBOL_in_alter_partition1361_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_no_write_to_bin_log_in_alter_partition1363  */
static	ANTLR3_BITWORD FOLLOW_no_write_to_bin_log_in_alter_partition1363_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE069F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_no_write_to_bin_log_in_alter_partition1363	= { FOLLOW_no_write_to_bin_log_in_alter_partition1363_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_all_or_partition_name_list_in_alter_partition1366  */
static	ANTLR3_BITWORD FOLLOW_all_or_partition_name_list_in_alter_partition1366_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000020000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0001000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_all_or_partition_name_list_in_alter_partition1366	= { FOLLOW_all_or_partition_name_list_in_alter_partition1366_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_repair_option_in_alter_partition1368  */
static	ANTLR3_BITWORD FOLLOW_repair_option_in_alter_partition1368_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000020000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0001000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_repair_option_in_alter_partition1368	= { FOLLOW_repair_option_in_alter_partition1368_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COALESCE_SYMBOL_in_alter_partition1374  */
static	ANTLR3_BITWORD FOLLOW_COALESCE_SYMBOL_in_alter_partition1374_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_COALESCE_SYMBOL_in_alter_partition1374	= { FOLLOW_COALESCE_SYMBOL_in_alter_partition1374_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_alter_partition1376  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_alter_partition1376_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000020), ANTLR3_UINT64_LIT(0x0000020000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_alter_partition1376	= { FOLLOW_PARTITION_SYMBOL_in_alter_partition1376_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_no_write_to_bin_log_in_alter_partition1378  */
static	ANTLR3_BITWORD FOLLOW_no_write_to_bin_log_in_alter_partition1378_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_no_write_to_bin_log_in_alter_partition1378	= { FOLLOW_no_write_to_bin_log_in_alter_partition1378_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_alter_partition1381  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_alter_partition1381_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_alter_partition1381	= { FOLLOW_INTEGER_in_alter_partition1381_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TRUNCATE_SYMBOL_in_alter_partition1390  */
static	ANTLR3_BITWORD FOLLOW_TRUNCATE_SYMBOL_in_alter_partition1390_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_TRUNCATE_SYMBOL_in_alter_partition1390	= { FOLLOW_TRUNCATE_SYMBOL_in_alter_partition1390_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_alter_partition1392  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_alter_partition1392_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE069F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_alter_partition1392	= { FOLLOW_PARTITION_SYMBOL_in_alter_partition1392_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_all_or_partition_name_list_in_alter_partition1394  */
static	ANTLR3_BITWORD FOLLOW_all_or_partition_name_list_in_alter_partition1394_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_all_or_partition_name_list_in_alter_partition1394	= { FOLLOW_all_or_partition_name_list_in_alter_partition1394_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXCHANGE_SYMBOL_in_alter_partition1399  */
static	ANTLR3_BITWORD FOLLOW_EXCHANGE_SYMBOL_in_alter_partition1399_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_EXCHANGE_SYMBOL_in_alter_partition1399	= { FOLLOW_EXCHANGE_SYMBOL_in_alter_partition1399_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_alter_partition1401  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_alter_partition1401_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_alter_partition1401	= { FOLLOW_PARTITION_SYMBOL_in_alter_partition1401_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_partition1403  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_partition1403_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_partition1403	= { FOLLOW_identifier_in_alter_partition1403_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_alter_partition1405  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_alter_partition1405_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_WITH_SYMBOL_in_alter_partition1405	= { FOLLOW_WITH_SYMBOL_in_alter_partition1405_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_alter_partition1407  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_alter_partition1407_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_alter_partition1407	= { FOLLOW_TABLE_SYMBOL_in_alter_partition1407_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_identifier_in_alter_partition1409  */
static	ANTLR3_BITWORD FOLLOW_table_identifier_in_alter_partition1409_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_identifier_in_alter_partition1409	= { FOLLOW_table_identifier_in_alter_partition1409_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REORGANIZE_SYMBOL_in_alter_partition1414  */
static	ANTLR3_BITWORD FOLLOW_REORGANIZE_SYMBOL_in_alter_partition1414_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_REORGANIZE_SYMBOL_in_alter_partition1414	= { FOLLOW_REORGANIZE_SYMBOL_in_alter_partition1414_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_alter_partition1416  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_alter_partition1416_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F62), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2383CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_alter_partition1416	= { FOLLOW_PARTITION_SYMBOL_in_alter_partition1416_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_no_write_to_bin_log_in_alter_partition1418  */
static	ANTLR3_BITWORD FOLLOW_no_write_to_bin_log_in_alter_partition1418_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F62), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_no_write_to_bin_log_in_alter_partition1418	= { FOLLOW_no_write_to_bin_log_in_alter_partition1418_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_in_alter_partition1422  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_in_alter_partition1422_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000020000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_in_alter_partition1422	= { FOLLOW_identifier_list_in_alter_partition1422_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTO_SYMBOL_in_alter_partition1424  */
static	ANTLR3_BITWORD FOLLOW_INTO_SYMBOL_in_alter_partition1424_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INTO_SYMBOL_in_alter_partition1424	= { FOLLOW_INTO_SYMBOL_in_alter_partition1424_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partition_definitions_in_alter_partition1426  */
static	ANTLR3_BITWORD FOLLOW_partition_definitions_in_alter_partition1426_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_partition_definitions_in_alter_partition1426	= { FOLLOW_partition_definitions_in_alter_partition1426_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REMOVE_SYMBOL_in_remove_partitioning1441  */
static	ANTLR3_BITWORD FOLLOW_REMOVE_SYMBOL_in_remove_partitioning1441_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_REMOVE_SYMBOL_in_remove_partitioning1441	= { FOLLOW_REMOVE_SYMBOL_in_remove_partitioning1441_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITIONING_SYMBOL_in_remove_partitioning1443  */
static	ANTLR3_BITWORD FOLLOW_PARTITIONING_SYMBOL_in_remove_partitioning1443_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITIONING_SYMBOL_in_remove_partitioning1443	= { FOLLOW_PARTITIONING_SYMBOL_in_remove_partitioning1443_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALL_SYMBOL_in_all_or_partition_name_list1452  */
static	ANTLR3_BITWORD FOLLOW_ALL_SYMBOL_in_all_or_partition_name_list1452_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ALL_SYMBOL_in_all_or_partition_name_list1452	= { FOLLOW_ALL_SYMBOL_in_all_or_partition_name_list1452_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_in_all_or_partition_name_list1457  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_in_all_or_partition_name_list1457_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_in_all_or_partition_name_list1457	= { FOLLOW_identifier_list_in_all_or_partition_name_list1457_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLESPACE_SYMBOL_in_alter_tablespace1466  */
static	ANTLR3_BITWORD FOLLOW_TABLESPACE_SYMBOL_in_alter_tablespace1466_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLESPACE_SYMBOL_in_alter_tablespace1466	= { FOLLOW_TABLESPACE_SYMBOL_in_alter_tablespace1466_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_tablespace1468  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_tablespace1468_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000080000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_tablespace1468	= { FOLLOW_identifier_in_alter_tablespace1468_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_alter_tablespace1470  */
static	ANTLR3_BITWORD FOLLOW_set_in_alter_tablespace1470_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x4000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_alter_tablespace1470	= { FOLLOW_set_in_alter_tablespace1470_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATAFILE_SYMBOL_in_alter_tablespace1478  */
static	ANTLR3_BITWORD FOLLOW_DATAFILE_SYMBOL_in_alter_tablespace1478_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_DATAFILE_SYMBOL_in_alter_tablespace1478	= { FOLLOW_DATAFILE_SYMBOL_in_alter_tablespace1478_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INITIAL_SIZE_SYMBOL_in_alter_tablespace1482  */
static	ANTLR3_BITWORD FOLLOW_INITIAL_SIZE_SYMBOL_in_alter_tablespace1482_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INITIAL_SIZE_SYMBOL_in_alter_tablespace1482	= { FOLLOW_INITIAL_SIZE_SYMBOL_in_alter_tablespace1482_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_alter_tablespace1484  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_alter_tablespace1484_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_alter_tablespace1484	= { FOLLOW_EQUAL_OPERATOR_in_alter_tablespace1484_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_alter_tablespace1487  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_alter_tablespace1487_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_alter_tablespace1487	= { FOLLOW_INTEGER_in_alter_tablespace1487_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WAIT_SYMBOL_in_alter_tablespace1493  */
static	ANTLR3_BITWORD FOLLOW_WAIT_SYMBOL_in_alter_tablespace1493_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_WAIT_SYMBOL_in_alter_tablespace1493	= { FOLLOW_WAIT_SYMBOL_in_alter_tablespace1493_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENGINE_SYMBOL_in_alter_tablespace1496  */
static	ANTLR3_BITWORD FOLLOW_ENGINE_SYMBOL_in_alter_tablespace1496_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_ENGINE_SYMBOL_in_alter_tablespace1496	= { FOLLOW_ENGINE_SYMBOL_in_alter_tablespace1496_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_alter_tablespace1498  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_alter_tablespace1498_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_alter_tablespace1498	= { FOLLOW_EQUAL_OPERATOR_in_alter_tablespace1498_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IDENTIFIER_in_alter_tablespace1501  */
static	ANTLR3_BITWORD FOLLOW_IDENTIFIER_in_alter_tablespace1501_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_IDENTIFIER_in_alter_tablespace1501	= { FOLLOW_IDENTIFIER_in_alter_tablespace1501_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALGORITHM_SYMBOL_in_alter_view1511  */
static	ANTLR3_BITWORD FOLLOW_ALGORITHM_SYMBOL_in_alter_view1511_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ALGORITHM_SYMBOL_in_alter_view1511	= { FOLLOW_ALGORITHM_SYMBOL_in_alter_view1511_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_alter_view1513  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_alter_view1513_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000020000010) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_alter_view1513	= { FOLLOW_EQUAL_OPERATOR_in_alter_view1513_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_alter_view1515  */
static	ANTLR3_BITWORD FOLLOW_set_in_alter_view1515_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000080000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_alter_view1515	= { FOLLOW_set_in_alter_view1515_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_definer_clause_in_alter_view1531  */
static	ANTLR3_BITWORD FOLLOW_definer_clause_in_alter_view1531_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_definer_clause_in_alter_view1531	= { FOLLOW_definer_clause_in_alter_view1531_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQL_SYMBOL_in_alter_view1537  */
static	ANTLR3_BITWORD FOLLOW_SQL_SYMBOL_in_alter_view1537_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SQL_SYMBOL_in_alter_view1537	= { FOLLOW_SQL_SYMBOL_in_alter_view1537_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SECURITY_SYMBOL_in_alter_view1539  */
static	ANTLR3_BITWORD FOLLOW_SECURITY_SYMBOL_in_alter_view1539_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000080000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SECURITY_SYMBOL_in_alter_view1539	= { FOLLOW_SECURITY_SYMBOL_in_alter_view1539_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_alter_view1541  */
static	ANTLR3_BITWORD FOLLOW_set_in_alter_view1541_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_alter_view1541	= { FOLLOW_set_in_alter_view1541_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VIEW_SYMBOL_in_alter_view1553  */
static	ANTLR3_BITWORD FOLLOW_VIEW_SYMBOL_in_alter_view1553_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_VIEW_SYMBOL_in_alter_view1553	= { FOLLOW_VIEW_SYMBOL_in_alter_view1553_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_view1555  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_view1555_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000400000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_view1555	= { FOLLOW_identifier_in_alter_view1555_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_with_parentheses_in_alter_view1557  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_with_parentheses_in_alter_view1557_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000400000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_with_parentheses_in_alter_view1557	= { FOLLOW_identifier_list_with_parentheses_in_alter_view1557_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AS_SYMBOL_in_alter_view1560  */
static	ANTLR3_BITWORD FOLLOW_AS_SYMBOL_in_alter_view1560_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_AS_SYMBOL_in_alter_view1560	= { FOLLOW_AS_SYMBOL_in_alter_view1560_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_statement_in_alter_view1562  */
static	ANTLR3_BITWORD FOLLOW_select_statement_in_alter_view1562_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_select_statement_in_alter_view1562	= { FOLLOW_select_statement_in_alter_view1562_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_alter_view1567  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_alter_view1567_bits[]	= { ANTLR3_UINT64_LIT(0x4000000000000000), ANTLR3_UINT64_LIT(0x0000000000000400), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_WITH_SYMBOL_in_alter_view1567	= { FOLLOW_WITH_SYMBOL_in_alter_view1567_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHECK_SYMBOL_in_alter_view1578  */
static	ANTLR3_BITWORD FOLLOW_CHECK_SYMBOL_in_alter_view1578_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x4000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CHECK_SYMBOL_in_alter_view1578	= { FOLLOW_CHECK_SYMBOL_in_alter_view1578_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPTION_SYMBOL_in_alter_view1580  */
static	ANTLR3_BITWORD FOLLOW_OPTION_SYMBOL_in_alter_view1580_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_OPTION_SYMBOL_in_alter_view1580	= { FOLLOW_OPTION_SYMBOL_in_alter_view1580_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CREATE_SYMBOL_in_create_statement1593  */
static	ANTLR3_BITWORD FOLLOW_CREATE_SYMBOL_in_create_statement1593_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000C00), ANTLR3_UINT64_LIT(0x2000000000000000), ANTLR3_UINT64_LIT(0x0000000000080000), ANTLR3_UINT64_LIT(0x0000012000000004), ANTLR3_UINT64_LIT(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000000000000200), ANTLR3_UINT64_LIT(0x0042000000000000), ANTLR3_UINT64_LIT(0x0000000100000001), ANTLR3_UINT64_LIT(0x0000080000000000), ANTLR3_UINT64_LIT(0x0800000000010004), ANTLR3_UINT64_LIT(0x000000400010000C), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_CREATE_SYMBOL_in_create_statement1593	= { FOLLOW_CREATE_SYMBOL_in_create_statement1593_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_table_in_create_statement1601  */
static	ANTLR3_BITWORD FOLLOW_create_table_in_create_statement1601_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_table_in_create_statement1601	= { FOLLOW_create_table_in_create_statement1601_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_index_in_create_statement1607  */
static	ANTLR3_BITWORD FOLLOW_create_index_in_create_statement1607_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_index_in_create_statement1607	= { FOLLOW_create_index_in_create_statement1607_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_database_in_create_statement1613  */
static	ANTLR3_BITWORD FOLLOW_create_database_in_create_statement1613_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_database_in_create_statement1613	= { FOLLOW_create_database_in_create_statement1613_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_definer_clause_in_create_statement1619  */
static	ANTLR3_BITWORD FOLLOW_definer_clause_in_create_statement1619_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000400), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000004), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000100000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_definer_clause_in_create_statement1619	= { FOLLOW_definer_clause_in_create_statement1619_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_event_in_create_statement1635  */
static	ANTLR3_BITWORD FOLLOW_create_event_in_create_statement1635_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_event_in_create_statement1635	= { FOLLOW_create_event_in_create_statement1635_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_view_in_create_statement1643  */
static	ANTLR3_BITWORD FOLLOW_create_view_in_create_statement1643_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_view_in_create_statement1643	= { FOLLOW_create_view_in_create_statement1643_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_routine_or_udf_in_create_statement1651  */
static	ANTLR3_BITWORD FOLLOW_create_routine_or_udf_in_create_statement1651_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_routine_or_udf_in_create_statement1651	= { FOLLOW_create_routine_or_udf_in_create_statement1651_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_trigger_in_create_statement1659  */
static	ANTLR3_BITWORD FOLLOW_create_trigger_in_create_statement1659_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_trigger_in_create_statement1659	= { FOLLOW_create_trigger_in_create_statement1659_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_view_replace_or_algorithm_in_create_statement1670  */
static	ANTLR3_BITWORD FOLLOW_view_replace_or_algorithm_in_create_statement1670_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000080000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_view_replace_or_algorithm_in_create_statement1670	= { FOLLOW_view_replace_or_algorithm_in_create_statement1670_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_definer_clause_in_create_statement1672  */
static	ANTLR3_BITWORD FOLLOW_definer_clause_in_create_statement1672_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_definer_clause_in_create_statement1672	= { FOLLOW_definer_clause_in_create_statement1672_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_view_in_create_statement1675  */
static	ANTLR3_BITWORD FOLLOW_create_view_in_create_statement1675_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_view_in_create_statement1675	= { FOLLOW_create_view_in_create_statement1675_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_logfile_group_in_create_statement1681  */
static	ANTLR3_BITWORD FOLLOW_create_logfile_group_in_create_statement1681_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_logfile_group_in_create_statement1681	= { FOLLOW_create_logfile_group_in_create_statement1681_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_server_in_create_statement1687  */
static	ANTLR3_BITWORD FOLLOW_create_server_in_create_statement1687_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_server_in_create_statement1687	= { FOLLOW_create_server_in_create_statement1687_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_tablespace_in_create_statement1693  */
static	ANTLR3_BITWORD FOLLOW_create_tablespace_in_create_statement1693_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_tablespace_in_create_statement1693	= { FOLLOW_create_tablespace_in_create_statement1693_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATABASE_SYMBOL_in_create_database1705  */
static	ANTLR3_BITWORD FOLLOW_DATABASE_SYMBOL_in_create_database1705_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A37C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_DATABASE_SYMBOL_in_create_database1705	= { FOLLOW_DATABASE_SYMBOL_in_create_database1705_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_not_exists_in_create_database1707  */
static	ANTLR3_BITWORD FOLLOW_if_not_exists_in_create_database1707_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_if_not_exists_in_create_database1707	= { FOLLOW_if_not_exists_in_create_database1707_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_create_database1710  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_create_database1710_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000040100), ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_create_database1710	= { FOLLOW_identifier_in_create_database1710_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_database_option_in_create_database1712  */
static	ANTLR3_BITWORD FOLLOW_database_option_in_create_database1712_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000040100), ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_database_option_in_create_database1712	= { FOLLOW_database_option_in_create_database1712_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EVENT_SYMBOL_in_create_event1722  */
static	ANTLR3_BITWORD FOLLOW_EVENT_SYMBOL_in_create_event1722_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A37C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_EVENT_SYMBOL_in_create_event1722	= { FOLLOW_EVENT_SYMBOL_in_create_event1722_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_not_exists_in_create_event1724  */
static	ANTLR3_BITWORD FOLLOW_if_not_exists_in_create_event1724_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_if_not_exists_in_create_event1724	= { FOLLOW_if_not_exists_in_create_event1724_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_create_event1727  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_create_event1727_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_create_event1727	= { FOLLOW_identifier_in_create_event1727_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_create_event1729  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_create_event1729_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_create_event1729	= { FOLLOW_ON_SYMBOL_in_create_event1729_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SCHEDULE_SYMBOL_in_create_event1731  */
static	ANTLR3_BITWORD FOLLOW_SCHEDULE_SYMBOL_in_create_event1731_bits[]	= { ANTLR3_UINT64_LIT(0x0000000002000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000008) };
static  ANTLR3_BITSET_LIST FOLLOW_SCHEDULE_SYMBOL_in_create_event1731	= { FOLLOW_SCHEDULE_SYMBOL_in_create_event1731_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_schedule_in_create_event1733  */
static	ANTLR3_BITWORD FOLLOW_schedule_in_create_event1733_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0008040080000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_schedule_in_create_event1733	= { FOLLOW_schedule_in_create_event1733_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_create_event1738  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_create_event1738_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_create_event1738	= { FOLLOW_ON_SYMBOL_in_create_event1738_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMPLETION_SYMBOL_in_create_event1740  */
static	ANTLR3_BITWORD FOLLOW_COMPLETION_SYMBOL_in_create_event1740_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMPLETION_SYMBOL_in_create_event1740	= { FOLLOW_COMPLETION_SYMBOL_in_create_event1740_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NOT_SYMBOL_in_create_event1742  */
static	ANTLR3_BITWORD FOLLOW_NOT_SYMBOL_in_create_event1742_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_NOT_SYMBOL_in_create_event1742	= { FOLLOW_NOT_SYMBOL_in_create_event1742_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRESERVE_SYMBOL_in_create_event1745  */
static	ANTLR3_BITWORD FOLLOW_PRESERVE_SYMBOL_in_create_event1745_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0008040080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PRESERVE_SYMBOL_in_create_event1745	= { FOLLOW_PRESERVE_SYMBOL_in_create_event1745_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENABLE_SYMBOL_in_create_event1752  */
static	ANTLR3_BITWORD FOLLOW_ENABLE_SYMBOL_in_create_event1752_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0000040000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ENABLE_SYMBOL_in_create_event1752	= { FOLLOW_ENABLE_SYMBOL_in_create_event1752_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DISABLE_SYMBOL_in_create_event1756  */
static	ANTLR3_BITWORD FOLLOW_DISABLE_SYMBOL_in_create_event1756_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0000040000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DISABLE_SYMBOL_in_create_event1756	= { FOLLOW_DISABLE_SYMBOL_in_create_event1756_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_create_event1759  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_create_event1759_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_create_event1759	= { FOLLOW_ON_SYMBOL_in_create_event1759_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SLAVE_SYMBOL_in_create_event1761  */
static	ANTLR3_BITWORD FOLLOW_SLAVE_SYMBOL_in_create_event1761_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0000040000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SLAVE_SYMBOL_in_create_event1761	= { FOLLOW_SLAVE_SYMBOL_in_create_event1761_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMENT_SYMBOL_in_create_event1770  */
static	ANTLR3_BITWORD FOLLOW_COMMENT_SYMBOL_in_create_event1770_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMENT_SYMBOL_in_create_event1770	= { FOLLOW_COMMENT_SYMBOL_in_create_event1770_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_create_event1772  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_create_event1772_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000040000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_create_event1772	= { FOLLOW_string_literal_in_create_event1772_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DO_SYMBOL_in_create_event1778  */
static	ANTLR3_BITWORD FOLLOW_DO_SYMBOL_in_create_event1778_bits[]	= { ANTLR3_UINT64_LIT(0x72E2008AFE02AF60), ANTLR3_UINT64_LIT(0xC12B29F5F0EBBE3D), ANTLR3_UINT64_LIT(0x3728ED03CBEA1821), ANTLR3_UINT64_LIT(0x2161FF4421CE692F), ANTLR3_UINT64_LIT(0x849AA2E8801CA37C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD423A6), ANTLR3_UINT64_LIT(0x0E3D2103CA7DB28C), ANTLR3_UINT64_LIT(0xBF9F13FEB86FBC60), ANTLR3_UINT64_LIT(0x28B953125FF9FBBF), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0883CD93378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D113E0) };
static  ANTLR3_BITSET_LIST FOLLOW_DO_SYMBOL_in_create_event1778	= { FOLLOW_DO_SYMBOL_in_create_event1778_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_in_create_event1780  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_in_create_event1780_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_compound_statement_in_create_event1780	= { FOLLOW_compound_statement_in_create_event1780_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROCEDURE_SYMBOL_in_create_routine_or_udf1789  */
static	ANTLR3_BITWORD FOLLOW_PROCEDURE_SYMBOL_in_create_routine_or_udf1789_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_PROCEDURE_SYMBOL_in_create_routine_or_udf1789	= { FOLLOW_PROCEDURE_SYMBOL_in_create_routine_or_udf1789_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_create_routine_or_udf1791  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_create_routine_or_udf1791_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_create_routine_or_udf1791	= { FOLLOW_qualified_identifier_in_create_routine_or_udf1791_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_create_routine_or_udf1793  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_create_routine_or_udf1793_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBFA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E98015A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE78), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_create_routine_or_udf1793	= { FOLLOW_OPEN_PAR_SYMBOL_in_create_routine_or_udf1793_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_procedure_parameter_in_create_routine_or_udf1796  */
static	ANTLR3_BITWORD FOLLOW_procedure_parameter_in_create_routine_or_udf1796_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002004000) };
static  ANTLR3_BITSET_LIST FOLLOW_procedure_parameter_in_create_routine_or_udf1796	= { FOLLOW_procedure_parameter_in_create_routine_or_udf1796_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_create_routine_or_udf1799  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_create_routine_or_udf1799_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E98015A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE78), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_create_routine_or_udf1799	= { FOLLOW_COMMA_SYMBOL_in_create_routine_or_udf1799_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_procedure_parameter_in_create_routine_or_udf1801  */
static	ANTLR3_BITWORD FOLLOW_procedure_parameter_in_create_routine_or_udf1801_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002004000) };
static  ANTLR3_BITSET_LIST FOLLOW_procedure_parameter_in_create_routine_or_udf1801	= { FOLLOW_procedure_parameter_in_create_routine_or_udf1801_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_create_routine_or_udf1807  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_create_routine_or_udf1807_bits[]	= { ANTLR3_UINT64_LIT(0x72E2008AFE02AF60), ANTLR3_UINT64_LIT(0xC12B2DF5F8EBBE3D), ANTLR3_UINT64_LIT(0x3728ED03CFEA1821), ANTLR3_UINT64_LIT(0x2161FF4421CE692F), ANTLR3_UINT64_LIT(0x849BA2E8801CA37C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD423A6), ANTLR3_UINT64_LIT(0x0E3D21A3CA7DB38C), ANTLR3_UINT64_LIT(0xBF9F1BFEB86FBC60), ANTLR3_UINT64_LIT(0x28B953125FF9FBBF), ANTLR3_UINT64_LIT(0x79E1F987E0035B83), ANTLR3_UINT64_LIT(0x0883CD93378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D113E0) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_create_routine_or_udf1807	= { FOLLOW_CLOSE_PAR_SYMBOL_in_create_routine_or_udf1807_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_routine_create_option_in_create_routine_or_udf1811  */
static	ANTLR3_BITWORD FOLLOW_routine_create_option_in_create_routine_or_udf1811_bits[]	= { ANTLR3_UINT64_LIT(0x72E2008AFE02AF60), ANTLR3_UINT64_LIT(0xC12B2DF5F8EBBE3D), ANTLR3_UINT64_LIT(0x3728ED03CFEA1821), ANTLR3_UINT64_LIT(0x2161FF4421CE692F), ANTLR3_UINT64_LIT(0x849BA2E8801CA37C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD423A6), ANTLR3_UINT64_LIT(0x0E3D21A3CA7DB38C), ANTLR3_UINT64_LIT(0xBF9F1BFEB86FBC60), ANTLR3_UINT64_LIT(0x28B953125FF9FBBF), ANTLR3_UINT64_LIT(0x79E1F987E0035B83), ANTLR3_UINT64_LIT(0x0883CD93378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D113E0) };
static  ANTLR3_BITSET_LIST FOLLOW_routine_create_option_in_create_routine_or_udf1811	= { FOLLOW_routine_create_option_in_create_routine_or_udf1811_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_in_create_routine_or_udf1814  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_in_create_routine_or_udf1814_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_compound_statement_in_create_routine_or_udf1814	= { FOLLOW_compound_statement_in_create_routine_or_udf1814_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FUNCTION_SYMBOL_in_create_routine_or_udf1819  */
static	ANTLR3_BITWORD FOLLOW_FUNCTION_SYMBOL_in_create_routine_or_udf1819_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_FUNCTION_SYMBOL_in_create_routine_or_udf1819	= { FOLLOW_FUNCTION_SYMBOL_in_create_routine_or_udf1819_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_create_routine_or_udf1828  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_create_routine_or_udf1828_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_create_routine_or_udf1828	= { FOLLOW_qualified_identifier_in_create_routine_or_udf1828_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_create_routine_or_udf1830  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_create_routine_or_udf1830_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBFA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_create_routine_or_udf1830	= { FOLLOW_OPEN_PAR_SYMBOL_in_create_routine_or_udf1830_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_function_parameter_in_create_routine_or_udf1833  */
static	ANTLR3_BITWORD FOLLOW_function_parameter_in_create_routine_or_udf1833_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002004000) };
static  ANTLR3_BITSET_LIST FOLLOW_function_parameter_in_create_routine_or_udf1833	= { FOLLOW_function_parameter_in_create_routine_or_udf1833_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_create_routine_or_udf1836  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_create_routine_or_udf1836_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_create_routine_or_udf1836	= { FOLLOW_COMMA_SYMBOL_in_create_routine_or_udf1836_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_function_parameter_in_create_routine_or_udf1838  */
static	ANTLR3_BITWORD FOLLOW_function_parameter_in_create_routine_or_udf1838_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002004000) };
static  ANTLR3_BITSET_LIST FOLLOW_function_parameter_in_create_routine_or_udf1838	= { FOLLOW_function_parameter_in_create_routine_or_udf1838_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_create_routine_or_udf1844  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_create_routine_or_udf1844_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_create_routine_or_udf1844	= { FOLLOW_CLOSE_PAR_SYMBOL_in_create_routine_or_udf1844_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RETURNS_SYMBOL_in_create_routine_or_udf1846  */
static	ANTLR3_BITWORD FOLLOW_RETURNS_SYMBOL_in_create_routine_or_udf1846_bits[]	= { ANTLR3_UINT64_LIT(0x00CA006000000000), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0400020000004021), ANTLR3_UINT64_LIT(0x00000C0011000000), ANTLR3_UINT64_LIT(0x8000000048000000), ANTLR3_UINT64_LIT(0x007000000002C000), ANTLR3_UINT64_LIT(0x000140000241A000), ANTLR3_UINT64_LIT(0x0000800000600000), ANTLR3_UINT64_LIT(0x1000420000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x050000000000F840), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_RETURNS_SYMBOL_in_create_routine_or_udf1846	= { FOLLOW_RETURNS_SYMBOL_in_create_routine_or_udf1846_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_data_type_in_create_routine_or_udf1852  */
static	ANTLR3_BITWORD FOLLOW_data_type_in_create_routine_or_udf1852_bits[]	= { ANTLR3_UINT64_LIT(0x72E2008AFE02AF60), ANTLR3_UINT64_LIT(0xC12B2DF5F8EBBE3D), ANTLR3_UINT64_LIT(0x3728ED03CFEA1821), ANTLR3_UINT64_LIT(0x2161FF4421CE692F), ANTLR3_UINT64_LIT(0x849BA2E8801CA37C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD423A6), ANTLR3_UINT64_LIT(0x0E3D21A3CA7DB38C), ANTLR3_UINT64_LIT(0xBF9F1BFEB86FBC60), ANTLR3_UINT64_LIT(0x28B953125FF9FBBF), ANTLR3_UINT64_LIT(0x79E1F987E0035B83), ANTLR3_UINT64_LIT(0x0883CD93378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D113E0) };
static  ANTLR3_BITSET_LIST FOLLOW_data_type_in_create_routine_or_udf1852	= { FOLLOW_data_type_in_create_routine_or_udf1852_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_routine_create_option_in_create_routine_or_udf1854  */
static	ANTLR3_BITWORD FOLLOW_routine_create_option_in_create_routine_or_udf1854_bits[]	= { ANTLR3_UINT64_LIT(0x72E2008AFE02AF60), ANTLR3_UINT64_LIT(0xC12B2DF5F8EBBE3D), ANTLR3_UINT64_LIT(0x3728ED03CFEA1821), ANTLR3_UINT64_LIT(0x2161FF4421CE692F), ANTLR3_UINT64_LIT(0x849BA2E8801CA37C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD423A6), ANTLR3_UINT64_LIT(0x0E3D21A3CA7DB38C), ANTLR3_UINT64_LIT(0xBF9F1BFEB86FBC60), ANTLR3_UINT64_LIT(0x28B953125FF9FBBF), ANTLR3_UINT64_LIT(0x79E1F987E0035B83), ANTLR3_UINT64_LIT(0x0883CD93378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D113E0) };
static  ANTLR3_BITSET_LIST FOLLOW_routine_create_option_in_create_routine_or_udf1854	= { FOLLOW_routine_create_option_in_create_routine_or_udf1854_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_in_create_routine_or_udf1857  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_in_create_routine_or_udf1857_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_compound_statement_in_create_routine_or_udf1857	= { FOLLOW_compound_statement_in_create_routine_or_udf1857_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_udf_tail_in_create_routine_or_udf1864  */
static	ANTLR3_BITWORD FOLLOW_udf_tail_in_create_routine_or_udf1864_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_udf_tail_in_create_routine_or_udf1864	= { FOLLOW_udf_tail_in_create_routine_or_udf1864_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AGGREGATE_SYMBOL_in_create_routine_or_udf1873  */
static	ANTLR3_BITWORD FOLLOW_AGGREGATE_SYMBOL_in_create_routine_or_udf1873_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_AGGREGATE_SYMBOL_in_create_routine_or_udf1873	= { FOLLOW_AGGREGATE_SYMBOL_in_create_routine_or_udf1873_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FUNCTION_SYMBOL_in_create_routine_or_udf1875  */
static	ANTLR3_BITWORD FOLLOW_FUNCTION_SYMBOL_in_create_routine_or_udf1875_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_FUNCTION_SYMBOL_in_create_routine_or_udf1875	= { FOLLOW_FUNCTION_SYMBOL_in_create_routine_or_udf1875_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_udf_tail_in_create_routine_or_udf1877  */
static	ANTLR3_BITWORD FOLLOW_udf_tail_in_create_routine_or_udf1877_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_udf_tail_in_create_routine_or_udf1877	= { FOLLOW_udf_tail_in_create_routine_or_udf1877_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_udf_tail1886  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_udf_tail1886_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_udf_tail1886	= { FOLLOW_identifier_in_udf_tail1886_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RETURNS_SYMBOL_in_udf_tail1888  */
static	ANTLR3_BITWORD FOLLOW_RETURNS_SYMBOL_in_udf_tail1888_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000800000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000080000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_RETURNS_SYMBOL_in_udf_tail1888	= { FOLLOW_RETURNS_SYMBOL_in_udf_tail1888_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_udf_tail1890  */
static	ANTLR3_BITWORD FOLLOW_set_in_udf_tail1890_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_udf_tail1890	= { FOLLOW_set_in_udf_tail1890_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SONAME_SYMBOL_in_udf_tail1906  */
static	ANTLR3_BITWORD FOLLOW_SONAME_SYMBOL_in_udf_tail1906_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SONAME_SYMBOL_in_udf_tail1906	= { FOLLOW_SONAME_SYMBOL_in_udf_tail1906_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_udf_tail1908  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_udf_tail1908_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_udf_tail1908	= { FOLLOW_string_literal_in_udf_tail1908_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_routine_option_in_routine_create_option1917  */
static	ANTLR3_BITWORD FOLLOW_routine_option_in_routine_create_option1917_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_routine_option_in_routine_create_option1917	= { FOLLOW_routine_option_in_routine_create_option1917_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NOT_SYMBOL_in_routine_create_option1922  */
static	ANTLR3_BITWORD FOLLOW_NOT_SYMBOL_in_routine_create_option1922_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_NOT_SYMBOL_in_routine_create_option1922	= { FOLLOW_NOT_SYMBOL_in_routine_create_option1922_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DETERMINISTIC_SYMBOL_in_routine_create_option1925  */
static	ANTLR3_BITWORD FOLLOW_DETERMINISTIC_SYMBOL_in_routine_create_option1925_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DETERMINISTIC_SYMBOL_in_routine_create_option1925	= { FOLLOW_DETERMINISTIC_SYMBOL_in_routine_create_option1925_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMENT_SYMBOL_in_routine_option1934  */
static	ANTLR3_BITWORD FOLLOW_COMMENT_SYMBOL_in_routine_option1934_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMENT_SYMBOL_in_routine_option1934	= { FOLLOW_COMMENT_SYMBOL_in_routine_option1934_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_routine_option1936  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_routine_option1936_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_routine_option1936	= { FOLLOW_string_literal_in_routine_option1936_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LANGUAGE_SYMBOL_in_routine_option1941  */
static	ANTLR3_BITWORD FOLLOW_LANGUAGE_SYMBOL_in_routine_option1941_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_LANGUAGE_SYMBOL_in_routine_option1941	= { FOLLOW_LANGUAGE_SYMBOL_in_routine_option1941_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQL_SYMBOL_in_routine_option1943  */
static	ANTLR3_BITWORD FOLLOW_SQL_SYMBOL_in_routine_option1943_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SQL_SYMBOL_in_routine_option1943	= { FOLLOW_SQL_SYMBOL_in_routine_option1943_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NO_SYMBOL_in_routine_option1948  */
static	ANTLR3_BITWORD FOLLOW_NO_SYMBOL_in_routine_option1948_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_NO_SYMBOL_in_routine_option1948	= { FOLLOW_NO_SYMBOL_in_routine_option1948_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQL_SYMBOL_in_routine_option1950  */
static	ANTLR3_BITWORD FOLLOW_SQL_SYMBOL_in_routine_option1950_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SQL_SYMBOL_in_routine_option1950	= { FOLLOW_SQL_SYMBOL_in_routine_option1950_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONTAINS_SYMBOL_in_routine_option1955  */
static	ANTLR3_BITWORD FOLLOW_CONTAINS_SYMBOL_in_routine_option1955_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_CONTAINS_SYMBOL_in_routine_option1955	= { FOLLOW_CONTAINS_SYMBOL_in_routine_option1955_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQL_SYMBOL_in_routine_option1957  */
static	ANTLR3_BITWORD FOLLOW_SQL_SYMBOL_in_routine_option1957_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SQL_SYMBOL_in_routine_option1957	= { FOLLOW_SQL_SYMBOL_in_routine_option1957_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_READS_SYMBOL_in_routine_option1962  */
static	ANTLR3_BITWORD FOLLOW_READS_SYMBOL_in_routine_option1962_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_READS_SYMBOL_in_routine_option1962	= { FOLLOW_READS_SYMBOL_in_routine_option1962_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQL_SYMBOL_in_routine_option1964  */
static	ANTLR3_BITWORD FOLLOW_SQL_SYMBOL_in_routine_option1964_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SQL_SYMBOL_in_routine_option1964	= { FOLLOW_SQL_SYMBOL_in_routine_option1964_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATA_SYMBOL_in_routine_option1966  */
static	ANTLR3_BITWORD FOLLOW_DATA_SYMBOL_in_routine_option1966_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DATA_SYMBOL_in_routine_option1966	= { FOLLOW_DATA_SYMBOL_in_routine_option1966_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MODIFIES_SYMBOL_in_routine_option1971  */
static	ANTLR3_BITWORD FOLLOW_MODIFIES_SYMBOL_in_routine_option1971_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_MODIFIES_SYMBOL_in_routine_option1971	= { FOLLOW_MODIFIES_SYMBOL_in_routine_option1971_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQL_SYMBOL_in_routine_option1973  */
static	ANTLR3_BITWORD FOLLOW_SQL_SYMBOL_in_routine_option1973_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SQL_SYMBOL_in_routine_option1973	= { FOLLOW_SQL_SYMBOL_in_routine_option1973_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATA_SYMBOL_in_routine_option1975  */
static	ANTLR3_BITWORD FOLLOW_DATA_SYMBOL_in_routine_option1975_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DATA_SYMBOL_in_routine_option1975	= { FOLLOW_DATA_SYMBOL_in_routine_option1975_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQL_SYMBOL_in_routine_option1980  */
static	ANTLR3_BITWORD FOLLOW_SQL_SYMBOL_in_routine_option1980_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SQL_SYMBOL_in_routine_option1980	= { FOLLOW_SQL_SYMBOL_in_routine_option1980_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SECURITY_SYMBOL_in_routine_option1982  */
static	ANTLR3_BITWORD FOLLOW_SECURITY_SYMBOL_in_routine_option1982_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000080000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SECURITY_SYMBOL_in_routine_option1982	= { FOLLOW_SECURITY_SYMBOL_in_routine_option1982_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_routine_option1984  */
static	ANTLR3_BITWORD FOLLOW_set_in_routine_option1984_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_routine_option1984	= { FOLLOW_set_in_routine_option1984_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_online_option_in_create_index1999  */
static	ANTLR3_BITWORD FOLLOW_online_option_in_create_index1999_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000000000), ANTLR3_UINT64_LIT(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000004), ANTLR3_UINT64_LIT(0x0000004000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_online_option_in_create_index1999	= { FOLLOW_online_option_in_create_index1999_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INDEX_SYMBOL_in_create_index2015  */
static	ANTLR3_BITWORD FOLLOW_INDEX_SYMBOL_in_create_index2015_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_INDEX_SYMBOL_in_create_index2015	= { FOLLOW_INDEX_SYMBOL_in_create_index2015_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_create_index2017  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_create_index2017_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_create_index2017	= { FOLLOW_identifier_in_create_index2017_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_type_in_create_index2021  */
static	ANTLR3_BITWORD FOLLOW_index_type_in_create_index2021_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_type_in_create_index2021	= { FOLLOW_index_type_in_create_index2021_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_create_index2024  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_create_index2024_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_create_index2024	= { FOLLOW_ON_SYMBOL_in_create_index2024_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_identifier_in_create_index2026  */
static	ANTLR3_BITWORD FOLLOW_table_identifier_in_create_index2026_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_identifier_in_create_index2026	= { FOLLOW_table_identifier_in_create_index2026_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_columns_in_create_index2028  */
static	ANTLR3_BITWORD FOLLOW_index_columns_in_create_index2028_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000802), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000000000), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000002000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_columns_in_create_index2028	= { FOLLOW_index_columns_in_create_index2028_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_option_in_create_index2030  */
static	ANTLR3_BITWORD FOLLOW_index_option_in_create_index2030_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000802), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000000000), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000002000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_option_in_create_index2030	= { FOLLOW_index_option_in_create_index2030_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_lock_algorithm_in_create_index2033  */
static	ANTLR3_BITWORD FOLLOW_index_lock_algorithm_in_create_index2033_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_index_lock_algorithm_in_create_index2033	= { FOLLOW_index_lock_algorithm_in_create_index2033_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOGFILE_SYMBOL_in_create_logfile_group2043  */
static	ANTLR3_BITWORD FOLLOW_LOGFILE_SYMBOL_in_create_logfile_group2043_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_LOGFILE_SYMBOL_in_create_logfile_group2043	= { FOLLOW_LOGFILE_SYMBOL_in_create_logfile_group2043_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GROUP_SYMBOL_in_create_logfile_group2045  */
static	ANTLR3_BITWORD FOLLOW_GROUP_SYMBOL_in_create_logfile_group2045_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_GROUP_SYMBOL_in_create_logfile_group2045	= { FOLLOW_GROUP_SYMBOL_in_create_logfile_group2045_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_create_logfile_group2047  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_create_logfile_group2047_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_create_logfile_group2047	= { FOLLOW_identifier_in_create_logfile_group2047_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ADD_SYMBOL_in_create_logfile_group2049  */
static	ANTLR3_BITWORD FOLLOW_ADD_SYMBOL_in_create_logfile_group2049_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000100000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ADD_SYMBOL_in_create_logfile_group2049	= { FOLLOW_ADD_SYMBOL_in_create_logfile_group2049_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNDOFILE_SYMBOL_in_create_logfile_group2051  */
static	ANTLR3_BITWORD FOLLOW_UNDOFILE_SYMBOL_in_create_logfile_group2051_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_UNDOFILE_SYMBOL_in_create_logfile_group2051	= { FOLLOW_UNDOFILE_SYMBOL_in_create_logfile_group2051_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_create_logfile_group2053  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_create_logfile_group2053_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000100000000), ANTLR3_UINT64_LIT(0x0008000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_create_logfile_group2053	= { FOLLOW_string_literal_in_create_logfile_group2053_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INITIAL_SIZE_SYMBOL_in_create_logfile_group2058  */
static	ANTLR3_BITWORD FOLLOW_INITIAL_SIZE_SYMBOL_in_create_logfile_group2058_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INITIAL_SIZE_SYMBOL_in_create_logfile_group2058	= { FOLLOW_INITIAL_SIZE_SYMBOL_in_create_logfile_group2058_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_logfile_group2060  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_logfile_group2060_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_logfile_group2060	= { FOLLOW_EQUAL_OPERATOR_in_create_logfile_group2060_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_create_logfile_group2063  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_create_logfile_group2063_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000100000000), ANTLR3_UINT64_LIT(0x0008000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_create_logfile_group2063	= { FOLLOW_INTEGER_in_create_logfile_group2063_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNDO_BUFFER_SIZE_SYMBOL_in_create_logfile_group2070  */
static	ANTLR3_BITWORD FOLLOW_UNDO_BUFFER_SIZE_SYMBOL_in_create_logfile_group2070_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_UNDO_BUFFER_SIZE_SYMBOL_in_create_logfile_group2070	= { FOLLOW_UNDO_BUFFER_SIZE_SYMBOL_in_create_logfile_group2070_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_logfile_group2072  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_logfile_group2072_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_logfile_group2072	= { FOLLOW_EQUAL_OPERATOR_in_create_logfile_group2072_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_create_logfile_group2075  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_create_logfile_group2075_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000100000000), ANTLR3_UINT64_LIT(0x0008000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_create_logfile_group2075	= { FOLLOW_INTEGER_in_create_logfile_group2075_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REDO_BUFFER_SIZE_SYMBOL_in_create_logfile_group2082  */
static	ANTLR3_BITWORD FOLLOW_REDO_BUFFER_SIZE_SYMBOL_in_create_logfile_group2082_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_REDO_BUFFER_SIZE_SYMBOL_in_create_logfile_group2082	= { FOLLOW_REDO_BUFFER_SIZE_SYMBOL_in_create_logfile_group2082_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_logfile_group2084  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_logfile_group2084_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_logfile_group2084	= { FOLLOW_EQUAL_OPERATOR_in_create_logfile_group2084_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_create_logfile_group2087  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_create_logfile_group2087_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000100000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_create_logfile_group2087	= { FOLLOW_INTEGER_in_create_logfile_group2087_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NODEGROUP_SYMBOL_in_create_logfile_group2094  */
static	ANTLR3_BITWORD FOLLOW_NODEGROUP_SYMBOL_in_create_logfile_group2094_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_NODEGROUP_SYMBOL_in_create_logfile_group2094	= { FOLLOW_NODEGROUP_SYMBOL_in_create_logfile_group2094_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_logfile_group2096  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_logfile_group2096_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_logfile_group2096	= { FOLLOW_EQUAL_OPERATOR_in_create_logfile_group2096_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_create_logfile_group2099  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_create_logfile_group2099_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_create_logfile_group2099	= { FOLLOW_pure_identifier_in_create_logfile_group2099_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WAIT_SYMBOL_in_create_logfile_group2105  */
static	ANTLR3_BITWORD FOLLOW_WAIT_SYMBOL_in_create_logfile_group2105_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_WAIT_SYMBOL_in_create_logfile_group2105	= { FOLLOW_WAIT_SYMBOL_in_create_logfile_group2105_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMENT_SYMBOL_in_create_logfile_group2109  */
static	ANTLR3_BITWORD FOLLOW_COMMENT_SYMBOL_in_create_logfile_group2109_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMENT_SYMBOL_in_create_logfile_group2109	= { FOLLOW_COMMENT_SYMBOL_in_create_logfile_group2109_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_logfile_group2111  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_logfile_group2111_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_logfile_group2111	= { FOLLOW_EQUAL_OPERATOR_in_create_logfile_group2111_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_create_logfile_group2114  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_create_logfile_group2114_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_create_logfile_group2114	= { FOLLOW_string_literal_in_create_logfile_group2114_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENGINE_SYMBOL_in_create_logfile_group2118  */
static	ANTLR3_BITWORD FOLLOW_ENGINE_SYMBOL_in_create_logfile_group2118_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_ENGINE_SYMBOL_in_create_logfile_group2118	= { FOLLOW_ENGINE_SYMBOL_in_create_logfile_group2118_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_logfile_group2120  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_logfile_group2120_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_logfile_group2120	= { FOLLOW_EQUAL_OPERATOR_in_create_logfile_group2120_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IDENTIFIER_in_create_logfile_group2123  */
static	ANTLR3_BITWORD FOLLOW_IDENTIFIER_in_create_logfile_group2123_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_IDENTIFIER_in_create_logfile_group2123	= { FOLLOW_IDENTIFIER_in_create_logfile_group2123_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SERVER_SYMBOL_in_create_server2132  */
static	ANTLR3_BITWORD FOLLOW_SERVER_SYMBOL_in_create_server2132_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_SERVER_SYMBOL_in_create_server2132	= { FOLLOW_SERVER_SYMBOL_in_create_server2132_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_create_server2134  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_create_server2134_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_create_server2134	= { FOLLOW_identifier_in_create_server2134_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOREIGN_SYMBOL_in_create_server2138  */
static	ANTLR3_BITWORD FOLLOW_FOREIGN_SYMBOL_in_create_server2138_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FOREIGN_SYMBOL_in_create_server2138	= { FOLLOW_FOREIGN_SYMBOL_in_create_server2138_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATA_SYMBOL_in_create_server2140  */
static	ANTLR3_BITWORD FOLLOW_DATA_SYMBOL_in_create_server2140_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_DATA_SYMBOL_in_create_server2140	= { FOLLOW_DATA_SYMBOL_in_create_server2140_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WRAPPER_SYMBOL_in_create_server2142  */
static	ANTLR3_BITWORD FOLLOW_WRAPPER_SYMBOL_in_create_server2142_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_WRAPPER_SYMBOL_in_create_server2142	= { FOLLOW_WRAPPER_SYMBOL_in_create_server2142_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_create_server2144  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_create_server2144_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_create_server2144	= { FOLLOW_text_or_identifier_in_create_server2144_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPTIONS_SYMBOL_in_create_server2148  */
static	ANTLR3_BITWORD FOLLOW_OPTIONS_SYMBOL_in_create_server2148_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPTIONS_SYMBOL_in_create_server2148	= { FOLLOW_OPTIONS_SYMBOL_in_create_server2148_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_create_server2150  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_create_server2150_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x4000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000808010), ANTLR3_UINT64_LIT(0x4000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000800000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_create_server2150	= { FOLLOW_OPEN_PAR_SYMBOL_in_create_server2150_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_server_option_in_create_server2152  */
static	ANTLR3_BITWORD FOLLOW_server_option_in_create_server2152_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002004000) };
static  ANTLR3_BITSET_LIST FOLLOW_server_option_in_create_server2152	= { FOLLOW_server_option_in_create_server2152_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_create_server2155  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_create_server2155_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x4000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000808010), ANTLR3_UINT64_LIT(0x4000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000800000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_create_server2155	= { FOLLOW_COMMA_SYMBOL_in_create_server2155_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_server_option_in_create_server2157  */
static	ANTLR3_BITWORD FOLLOW_server_option_in_create_server2157_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002004000) };
static  ANTLR3_BITSET_LIST FOLLOW_server_option_in_create_server2157	= { FOLLOW_server_option_in_create_server2157_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_create_server2161  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_create_server2161_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_create_server2161	= { FOLLOW_CLOSE_PAR_SYMBOL_in_create_server2161_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TEMPORARY_SYMBOL_in_create_table2170  */
static	ANTLR3_BITWORD FOLLOW_TEMPORARY_SYMBOL_in_create_table2170_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_TEMPORARY_SYMBOL_in_create_table2170	= { FOLLOW_TEMPORARY_SYMBOL_in_create_table2170_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_create_table2173  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_create_table2173_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A37C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_create_table2173	= { FOLLOW_TABLE_SYMBOL_in_create_table2173_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_not_exists_in_create_table2175  */
static	ANTLR3_BITWORD FOLLOW_if_not_exists_in_create_table2175_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_if_not_exists_in_create_table2175	= { FOLLOW_if_not_exists_in_create_table2175_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_identifier_in_create_table2178  */
static	ANTLR3_BITWORD FOLLOW_table_identifier_in_create_table2178_bits[]	= { ANTLR3_UINT64_LIT(0x0000000030400000), ANTLR3_UINT64_LIT(0x8000001008040380), ANTLR3_UINT64_LIT(0x0200000000240000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000200000040880), ANTLR3_UINT64_LIT(0x0000800000000000), ANTLR3_UINT64_LIT(0x0200000000000008), ANTLR3_UINT64_LIT(0x000000000000A020), ANTLR3_UINT64_LIT(0x0000001001000010), ANTLR3_UINT64_LIT(0x2800010380000000), ANTLR3_UINT64_LIT(0x0000002002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_identifier_in_create_table2178	= { FOLLOW_table_identifier_in_create_table2178_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_create_table2187  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_create_table2187_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292FF5F8EBBE9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF65A1C6692F), ANTLR3_UINT64_LIT(0x848B60E88014AB5C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEF8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B87), ANTLR3_UINT64_LIT(0x0881D4DB378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_create_table2187	= { FOLLOW_OPEN_PAR_SYMBOL_in_create_table2187_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_table_definitions_in_create_table2200  */
static	ANTLR3_BITWORD FOLLOW_create_table_definitions_in_create_table2200_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_create_table_definitions_in_create_table2200	= { FOLLOW_create_table_definitions_in_create_table2200_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_create_table2202  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_create_table2202_bits[]	= { ANTLR3_UINT64_LIT(0x0000000030400002), ANTLR3_UINT64_LIT(0x8000001008040380), ANTLR3_UINT64_LIT(0x0200000000240000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000040880), ANTLR3_UINT64_LIT(0x0000800000000000), ANTLR3_UINT64_LIT(0x0200000000000008), ANTLR3_UINT64_LIT(0x000000000000A020), ANTLR3_UINT64_LIT(0x0000001001000010), ANTLR3_UINT64_LIT(0x2800010380000000), ANTLR3_UINT64_LIT(0x0000002002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_create_table2202	= { FOLLOW_CLOSE_PAR_SYMBOL_in_create_table2202_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_table_options_in_create_table2204  */
static	ANTLR3_BITWORD FOLLOW_create_table_options_in_create_table2204_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000400002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000002000), ANTLR3_UINT64_LIT(0x0000001000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_create_table_options_in_create_table2204	= { FOLLOW_create_table_options_in_create_table2204_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partitioning_in_create_table2207  */
static	ANTLR3_BITWORD FOLLOW_partitioning_in_create_table2207_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000400002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_partitioning_in_create_table2207	= { FOLLOW_partitioning_in_create_table2207_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_creation_source_in_create_table2210  */
static	ANTLR3_BITWORD FOLLOW_table_creation_source_in_create_table2210_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_creation_source_in_create_table2210	= { FOLLOW_table_creation_source_in_create_table2210_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partitioning_in_create_table2220  */
static	ANTLR3_BITWORD FOLLOW_partitioning_in_create_table2220_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_partitioning_in_create_table2220	= { FOLLOW_partitioning_in_create_table2220_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_select_in_create_table2222  */
static	ANTLR3_BITWORD FOLLOW_create_select_in_create_table2222_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_create_select_in_create_table2222	= { FOLLOW_create_select_in_create_table2222_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_create_table2224  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_create_table2224_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_create_table2224	= { FOLLOW_CLOSE_PAR_SYMBOL_in_create_table2224_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_union_clause_in_create_table2226  */
static	ANTLR3_BITWORD FOLLOW_union_clause_in_create_table2226_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_union_clause_in_create_table2226	= { FOLLOW_union_clause_in_create_table2226_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_table_options_in_create_table2240  */
static	ANTLR3_BITWORD FOLLOW_create_table_options_in_create_table2240_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000400000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000002000), ANTLR3_UINT64_LIT(0x0000001000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_create_table_options_in_create_table2240	= { FOLLOW_create_table_options_in_create_table2240_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partitioning_in_create_table2243  */
static	ANTLR3_BITWORD FOLLOW_partitioning_in_create_table2243_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000400000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_partitioning_in_create_table2243	= { FOLLOW_partitioning_in_create_table2243_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_creation_source_in_create_table2246  */
static	ANTLR3_BITWORD FOLLOW_table_creation_source_in_create_table2246_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_creation_source_in_create_table2246	= { FOLLOW_table_creation_source_in_create_table2246_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LIKE_SYMBOL_in_create_table2253  */
static	ANTLR3_BITWORD FOLLOW_LIKE_SYMBOL_in_create_table2253_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_LIKE_SYMBOL_in_create_table2253	= { FOLLOW_LIKE_SYMBOL_in_create_table2253_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_identifier_in_create_table2255  */
static	ANTLR3_BITWORD FOLLOW_table_identifier_in_create_table2255_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_identifier_in_create_table2255	= { FOLLOW_table_identifier_in_create_table2255_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_create_table2262  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_create_table2262_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_create_table2262	= { FOLLOW_OPEN_PAR_SYMBOL_in_create_table2262_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LIKE_SYMBOL_in_create_table2264  */
static	ANTLR3_BITWORD FOLLOW_LIKE_SYMBOL_in_create_table2264_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_LIKE_SYMBOL_in_create_table2264	= { FOLLOW_LIKE_SYMBOL_in_create_table2264_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_identifier_in_create_table2266  */
static	ANTLR3_BITWORD FOLLOW_table_identifier_in_create_table2266_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_identifier_in_create_table2266	= { FOLLOW_table_identifier_in_create_table2266_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_create_table2268  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_create_table2268_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_create_table2268	= { FOLLOW_CLOSE_PAR_SYMBOL_in_create_table2268_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_table_definition_in_create_table_definitions2281  */
static	ANTLR3_BITWORD FOLLOW_create_table_definition_in_create_table_definitions2281_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_create_table_definition_in_create_table_definitions2281	= { FOLLOW_create_table_definition_in_create_table_definitions2281_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_create_table_definitions2284  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_create_table_definitions2284_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292FF5F8EBBE9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF65A1C6692F), ANTLR3_UINT64_LIT(0x848B60E88014AB5C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEF8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B87), ANTLR3_UINT64_LIT(0x0881D4DB378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_create_table_definitions2284	= { FOLLOW_COMMA_SYMBOL_in_create_table_definitions2284_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_table_definition_in_create_table_definitions2286  */
static	ANTLR3_BITWORD FOLLOW_create_table_definition_in_create_table_definitions2286_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_create_table_definition_in_create_table_definitions2286	= { FOLLOW_create_table_definition_in_create_table_definitions2286_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_create_table_definition2297  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_create_table_definition2297_bits[]	= { ANTLR3_UINT64_LIT(0x00CA006000000000), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0400020000004021), ANTLR3_UINT64_LIT(0x00000C0011000000), ANTLR3_UINT64_LIT(0x8000000048000000), ANTLR3_UINT64_LIT(0x007000000002C000), ANTLR3_UINT64_LIT(0x000140000241A000), ANTLR3_UINT64_LIT(0x0000800000600000), ANTLR3_UINT64_LIT(0x1000420000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x050000000000F840), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_create_table_definition2297	= { FOLLOW_identifier_in_create_table_definition2297_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_definition_in_create_table_definition2299  */
static	ANTLR3_BITWORD FOLLOW_column_definition_in_create_table_definition2299_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_column_definition_in_create_table_definition2299	= { FOLLOW_column_definition_in_create_table_definition2299_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONSTRAINT_SYMBOL_in_create_table_definition2305  */
static	ANTLR3_BITWORD FOLLOW_CONSTRAINT_SYMBOL_in_create_table_definition2305_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF45A1C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEF8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D4DB378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_CONSTRAINT_SYMBOL_in_create_table_definition2305	= { FOLLOW_CONSTRAINT_SYMBOL_in_create_table_definition2305_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_create_table_definition2307  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_create_table_definition2307_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000004000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_create_table_definition2307	= { FOLLOW_identifier_in_create_table_definition2307_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRIMARY_SYMBOL_in_create_table_definition2319  */
static	ANTLR3_BITWORD FOLLOW_PRIMARY_SYMBOL_in_create_table_definition2319_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PRIMARY_SYMBOL_in_create_table_definition2319	= { FOLLOW_PRIMARY_SYMBOL_in_create_table_definition2319_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEY_SYMBOL_in_create_table_definition2321  */
static	ANTLR3_BITWORD FOLLOW_KEY_SYMBOL_in_create_table_definition2321_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_KEY_SYMBOL_in_create_table_definition2321	= { FOLLOW_KEY_SYMBOL_in_create_table_definition2321_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_type_in_create_table_definition2323  */
static	ANTLR3_BITWORD FOLLOW_index_type_in_create_table_definition2323_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_type_in_create_table_definition2323	= { FOLLOW_index_type_in_create_table_definition2323_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_columns_in_create_table_definition2326  */
static	ANTLR3_BITWORD FOLLOW_index_columns_in_create_table_definition2326_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000002000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_columns_in_create_table_definition2326	= { FOLLOW_index_columns_in_create_table_definition2326_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_option_in_create_table_definition2328  */
static	ANTLR3_BITWORD FOLLOW_index_option_in_create_table_definition2328_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000002000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_option_in_create_table_definition2328	= { FOLLOW_index_option_in_create_table_definition2328_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOREIGN_SYMBOL_in_create_table_definition2336  */
static	ANTLR3_BITWORD FOLLOW_FOREIGN_SYMBOL_in_create_table_definition2336_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FOREIGN_SYMBOL_in_create_table_definition2336	= { FOLLOW_FOREIGN_SYMBOL_in_create_table_definition2336_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEY_SYMBOL_in_create_table_definition2338  */
static	ANTLR3_BITWORD FOLLOW_KEY_SYMBOL_in_create_table_definition2338_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_KEY_SYMBOL_in_create_table_definition2338	= { FOLLOW_KEY_SYMBOL_in_create_table_definition2338_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_create_table_definition2340  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_create_table_definition2340_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_create_table_definition2340	= { FOLLOW_pure_identifier_in_create_table_definition2340_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_columns_in_create_table_definition2343  */
static	ANTLR3_BITWORD FOLLOW_index_columns_in_create_table_definition2343_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0020000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_columns_in_create_table_definition2343	= { FOLLOW_index_columns_in_create_table_definition2343_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_reference_definition_in_create_table_definition2345  */
static	ANTLR3_BITWORD FOLLOW_reference_definition_in_create_table_definition2345_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_reference_definition_in_create_table_definition2345	= { FOLLOW_reference_definition_in_create_table_definition2345_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNIQUE_SYMBOL_in_create_table_definition2352  */
static	ANTLR3_BITWORD FOLLOW_UNIQUE_SYMBOL_in_create_table_definition2352_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000810), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_UNIQUE_SYMBOL_in_create_table_definition2352	= { FOLLOW_UNIQUE_SYMBOL_in_create_table_definition2352_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_create_table_definition2363  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_create_table_definition2363_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_create_table_definition2363	= { FOLLOW_pure_identifier_in_create_table_definition2363_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_type_in_create_table_definition2366  */
static	ANTLR3_BITWORD FOLLOW_index_type_in_create_table_definition2366_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_type_in_create_table_definition2366	= { FOLLOW_index_type_in_create_table_definition2366_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_columns_in_create_table_definition2369  */
static	ANTLR3_BITWORD FOLLOW_index_columns_in_create_table_definition2369_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000002000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_columns_in_create_table_definition2369	= { FOLLOW_index_columns_in_create_table_definition2369_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_option_in_create_table_definition2371  */
static	ANTLR3_BITWORD FOLLOW_index_option_in_create_table_definition2371_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000002000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_option_in_create_table_definition2371	= { FOLLOW_index_option_in_create_table_definition2371_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_create_table_definition2381  */
static	ANTLR3_BITWORD FOLLOW_set_in_create_table_definition2381_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_create_table_definition2381	= { FOLLOW_set_in_create_table_definition2381_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_create_table_definition2389  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_create_table_definition2389_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_create_table_definition2389	= { FOLLOW_pure_identifier_in_create_table_definition2389_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_type_in_create_table_definition2392  */
static	ANTLR3_BITWORD FOLLOW_index_type_in_create_table_definition2392_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_type_in_create_table_definition2392	= { FOLLOW_index_type_in_create_table_definition2392_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_columns_in_create_table_definition2395  */
static	ANTLR3_BITWORD FOLLOW_index_columns_in_create_table_definition2395_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000002000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_columns_in_create_table_definition2395	= { FOLLOW_index_columns_in_create_table_definition2395_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_option_in_create_table_definition2397  */
static	ANTLR3_BITWORD FOLLOW_index_option_in_create_table_definition2397_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000002000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_option_in_create_table_definition2397	= { FOLLOW_index_option_in_create_table_definition2397_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_create_table_definition2403  */
static	ANTLR3_BITWORD FOLLOW_set_in_create_table_definition2403_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000810), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_create_table_definition2403	= { FOLLOW_set_in_create_table_definition2403_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_create_table_definition2420  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_create_table_definition2420_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_create_table_definition2420	= { FOLLOW_pure_identifier_in_create_table_definition2420_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_columns_in_create_table_definition2423  */
static	ANTLR3_BITWORD FOLLOW_index_columns_in_create_table_definition2423_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000002000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_columns_in_create_table_definition2423	= { FOLLOW_index_columns_in_create_table_definition2423_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_option_in_create_table_definition2425  */
static	ANTLR3_BITWORD FOLLOW_index_option_in_create_table_definition2425_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000002000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_option_in_create_table_definition2425	= { FOLLOW_index_option_in_create_table_definition2425_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHECK_SYMBOL_in_create_table_definition2431  */
static	ANTLR3_BITWORD FOLLOW_CHECK_SYMBOL_in_create_table_definition2431_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CHECK_SYMBOL_in_create_table_definition2431	= { FOLLOW_CHECK_SYMBOL_in_create_table_definition2431_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_create_table_definition2433  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_create_table_definition2433_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_create_table_definition2433	= { FOLLOW_OPEN_PAR_SYMBOL_in_create_table_definition2433_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_create_table_definition2435  */
static	ANTLR3_BITWORD FOLLOW_expression_in_create_table_definition2435_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_create_table_definition2435	= { FOLLOW_expression_in_create_table_definition2435_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_definition2437  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_definition2437_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_definition2437	= { FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_definition2437_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AS_SYMBOL_in_table_creation_source2455  */
static	ANTLR3_BITWORD FOLLOW_AS_SYMBOL_in_table_creation_source2455_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_AS_SYMBOL_in_table_creation_source2455	= { FOLLOW_AS_SYMBOL_in_table_creation_source2455_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_select_in_table_creation_source2459  */
static	ANTLR3_BITWORD FOLLOW_create_select_in_table_creation_source2459_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_create_select_in_table_creation_source2459	= { FOLLOW_create_select_in_table_creation_source2459_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_table_creation_source2463  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_table_creation_source2463_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_table_creation_source2463	= { FOLLOW_OPEN_PAR_SYMBOL_in_table_creation_source2463_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_select_in_table_creation_source2465  */
static	ANTLR3_BITWORD FOLLOW_create_select_in_table_creation_source2465_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_create_select_in_table_creation_source2465	= { FOLLOW_create_select_in_table_creation_source2465_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_table_creation_source2467  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_table_creation_source2467_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_table_creation_source2467	= { FOLLOW_CLOSE_PAR_SYMBOL_in_table_creation_source2467_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_union_clause_in_table_creation_source2470  */
static	ANTLR3_BITWORD FOLLOW_union_clause_in_table_creation_source2470_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_union_clause_in_table_creation_source2470	= { FOLLOW_union_clause_in_table_creation_source2470_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SELECT_SYMBOL_in_create_select2481  */
static	ANTLR3_BITWORD FOLLOW_SELECT_SYMBOL_in_create_select2481_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF869F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E54BCA2A1835), ANTLR3_UINT64_LIT(0x7D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7FBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5FBD7E002FF83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_SELECT_SYMBOL_in_create_select2481	= { FOLLOW_SELECT_SYMBOL_in_create_select2481_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_option_in_create_select2497  */
static	ANTLR3_BITWORD FOLLOW_select_option_in_create_select2497_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF869F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E54BCA2A1835), ANTLR3_UINT64_LIT(0x7D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7FBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5FBD7E002FF83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_select_option_in_create_select2497	= { FOLLOW_select_option_in_create_select2497_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_item_list_in_create_select2501  */
static	ANTLR3_BITWORD FOLLOW_select_item_list_in_create_select2501_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001200000000), ANTLR3_UINT64_LIT(0x2000000020000000), ANTLR3_UINT64_LIT(0x0000000000000100) };
static  ANTLR3_BITSET_LIST FOLLOW_select_item_list_in_create_select2501	= { FOLLOW_select_item_list_in_create_select2501_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_source_and_options_in_create_select2503  */
static	ANTLR3_BITWORD FOLLOW_select_source_and_options_in_create_select2503_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000100) };
static  ANTLR3_BITSET_LIST FOLLOW_select_source_and_options_in_create_select2503	= { FOLLOW_select_source_and_options_in_create_select2503_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_from_tail_in_create_select2506  */
static	ANTLR3_BITWORD FOLLOW_select_from_tail_in_create_select2506_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_select_from_tail_in_create_select2506	= { FOLLOW_select_from_tail_in_create_select2506_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLESPACE_SYMBOL_in_create_tablespace2516  */
static	ANTLR3_BITWORD FOLLOW_TABLESPACE_SYMBOL_in_create_tablespace2516_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLESPACE_SYMBOL_in_create_tablespace2516	= { FOLLOW_TABLESPACE_SYMBOL_in_create_tablespace2516_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_create_tablespace2518  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_create_tablespace2518_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_create_tablespace2518	= { FOLLOW_identifier_in_create_tablespace2518_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ADD_SYMBOL_in_create_tablespace2520  */
static	ANTLR3_BITWORD FOLLOW_ADD_SYMBOL_in_create_tablespace2520_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x4000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ADD_SYMBOL_in_create_tablespace2520	= { FOLLOW_ADD_SYMBOL_in_create_tablespace2520_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATAFILE_SYMBOL_in_create_tablespace2522  */
static	ANTLR3_BITWORD FOLLOW_DATAFILE_SYMBOL_in_create_tablespace2522_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DATAFILE_SYMBOL_in_create_tablespace2522	= { FOLLOW_DATAFILE_SYMBOL_in_create_tablespace2522_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_create_tablespace2524  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_create_tablespace2524_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_create_tablespace2524	= { FOLLOW_string_literal_in_create_tablespace2524_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USE_SYMBOL_in_create_tablespace2528  */
static	ANTLR3_BITWORD FOLLOW_USE_SYMBOL_in_create_tablespace2528_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000200) };
static  ANTLR3_BITSET_LIST FOLLOW_USE_SYMBOL_in_create_tablespace2528	= { FOLLOW_USE_SYMBOL_in_create_tablespace2528_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOGFILE_SYMBOL_in_create_tablespace2530  */
static	ANTLR3_BITWORD FOLLOW_LOGFILE_SYMBOL_in_create_tablespace2530_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_LOGFILE_SYMBOL_in_create_tablespace2530	= { FOLLOW_LOGFILE_SYMBOL_in_create_tablespace2530_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GROUP_SYMBOL_in_create_tablespace2532  */
static	ANTLR3_BITWORD FOLLOW_GROUP_SYMBOL_in_create_tablespace2532_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_GROUP_SYMBOL_in_create_tablespace2532	= { FOLLOW_GROUP_SYMBOL_in_create_tablespace2532_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_create_tablespace2534  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_create_tablespace2534_bits[]	= { ANTLR3_UINT64_LIT(0x0000000008000002), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000004000), ANTLR3_UINT64_LIT(0x0000000000002000), ANTLR3_UINT64_LIT(0x0001000000000000), ANTLR3_UINT64_LIT(0x0000000100000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_create_tablespace2534	= { FOLLOW_pure_identifier_in_create_tablespace2534_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_tablespace_option_in_create_tablespace2536  */
static	ANTLR3_BITWORD FOLLOW_tablespace_option_in_create_tablespace2536_bits[]	= { ANTLR3_UINT64_LIT(0x0000000008000002), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000004000), ANTLR3_UINT64_LIT(0x0000000000002000), ANTLR3_UINT64_LIT(0x0001000000000000), ANTLR3_UINT64_LIT(0x0000000100000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_tablespace_option_in_create_tablespace2536	= { FOLLOW_tablespace_option_in_create_tablespace2536_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXTENT_SIZE_SYMBOL_in_tablespace_option2546  */
static	ANTLR3_BITWORD FOLLOW_EXTENT_SIZE_SYMBOL_in_tablespace_option2546_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EXTENT_SIZE_SYMBOL_in_tablespace_option2546	= { FOLLOW_EXTENT_SIZE_SYMBOL_in_tablespace_option2546_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_tablespace_option2548  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_tablespace_option2548_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_tablespace_option2548	= { FOLLOW_EQUAL_OPERATOR_in_tablespace_option2548_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_tablespace_option2551  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_tablespace_option2551_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_tablespace_option2551	= { FOLLOW_INTEGER_in_tablespace_option2551_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INITIAL_SIZE_SYMBOL_in_tablespace_option2556  */
static	ANTLR3_BITWORD FOLLOW_INITIAL_SIZE_SYMBOL_in_tablespace_option2556_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INITIAL_SIZE_SYMBOL_in_tablespace_option2556	= { FOLLOW_INITIAL_SIZE_SYMBOL_in_tablespace_option2556_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_tablespace_option2558  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_tablespace_option2558_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_tablespace_option2558	= { FOLLOW_EQUAL_OPERATOR_in_tablespace_option2558_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_tablespace_option2561  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_tablespace_option2561_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_tablespace_option2561	= { FOLLOW_INTEGER_in_tablespace_option2561_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AUTOEXTEND_SIZE_SYMBOL_in_tablespace_option2566  */
static	ANTLR3_BITWORD FOLLOW_AUTOEXTEND_SIZE_SYMBOL_in_tablespace_option2566_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_AUTOEXTEND_SIZE_SYMBOL_in_tablespace_option2566	= { FOLLOW_AUTOEXTEND_SIZE_SYMBOL_in_tablespace_option2566_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_tablespace_option2568  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_tablespace_option2568_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_tablespace_option2568	= { FOLLOW_EQUAL_OPERATOR_in_tablespace_option2568_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_tablespace_option2571  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_tablespace_option2571_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_tablespace_option2571	= { FOLLOW_INTEGER_in_tablespace_option2571_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAX_SIZE_SYMBOL_in_tablespace_option2576  */
static	ANTLR3_BITWORD FOLLOW_MAX_SIZE_SYMBOL_in_tablespace_option2576_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MAX_SIZE_SYMBOL_in_tablespace_option2576	= { FOLLOW_MAX_SIZE_SYMBOL_in_tablespace_option2576_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_tablespace_option2578  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_tablespace_option2578_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_tablespace_option2578	= { FOLLOW_EQUAL_OPERATOR_in_tablespace_option2578_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_tablespace_option2581  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_tablespace_option2581_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_tablespace_option2581	= { FOLLOW_INTEGER_in_tablespace_option2581_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NODEGROUP_SYMBOL_in_tablespace_option2586  */
static	ANTLR3_BITWORD FOLLOW_NODEGROUP_SYMBOL_in_tablespace_option2586_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_NODEGROUP_SYMBOL_in_tablespace_option2586	= { FOLLOW_NODEGROUP_SYMBOL_in_tablespace_option2586_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_tablespace_option2588  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_tablespace_option2588_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_tablespace_option2588	= { FOLLOW_EQUAL_OPERATOR_in_tablespace_option2588_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_tablespace_option2591  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_tablespace_option2591_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_tablespace_option2591	= { FOLLOW_pure_identifier_in_tablespace_option2591_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WAIT_SYMBOL_in_tablespace_option2596  */
static	ANTLR3_BITWORD FOLLOW_WAIT_SYMBOL_in_tablespace_option2596_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_WAIT_SYMBOL_in_tablespace_option2596	= { FOLLOW_WAIT_SYMBOL_in_tablespace_option2596_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMENT_SYMBOL_in_tablespace_option2601  */
static	ANTLR3_BITWORD FOLLOW_COMMENT_SYMBOL_in_tablespace_option2601_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMENT_SYMBOL_in_tablespace_option2601	= { FOLLOW_COMMENT_SYMBOL_in_tablespace_option2601_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_tablespace_option2603  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_tablespace_option2603_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_tablespace_option2603	= { FOLLOW_string_literal_in_tablespace_option2603_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENGINE_SYMBOL_in_tablespace_option2608  */
static	ANTLR3_BITWORD FOLLOW_ENGINE_SYMBOL_in_tablespace_option2608_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_ENGINE_SYMBOL_in_tablespace_option2608	= { FOLLOW_ENGINE_SYMBOL_in_tablespace_option2608_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_tablespace_option2610  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_tablespace_option2610_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_tablespace_option2610	= { FOLLOW_EQUAL_OPERATOR_in_tablespace_option2610_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IDENTIFIER_in_tablespace_option2613  */
static	ANTLR3_BITWORD FOLLOW_IDENTIFIER_in_tablespace_option2613_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_IDENTIFIER_in_tablespace_option2613	= { FOLLOW_IDENTIFIER_in_tablespace_option2613_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TRIGGER_SYMBOL_in_create_trigger2622  */
static	ANTLR3_BITWORD FOLLOW_TRIGGER_SYMBOL_in_create_trigger2622_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_TRIGGER_SYMBOL_in_create_trigger2622	= { FOLLOW_TRIGGER_SYMBOL_in_create_trigger2622_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_create_trigger2624  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_create_trigger2624_bits[]	= { ANTLR3_UINT64_LIT(0x0000000400000100) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_create_trigger2624	= { FOLLOW_pure_identifier_in_create_trigger2624_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_create_trigger2626  */
static	ANTLR3_BITWORD FOLLOW_set_in_create_trigger2626_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000400000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000080000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000080000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_create_trigger2626	= { FOLLOW_set_in_create_trigger2626_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_create_trigger2634  */
static	ANTLR3_BITWORD FOLLOW_set_in_create_trigger2634_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_create_trigger2634	= { FOLLOW_set_in_create_trigger2634_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_create_trigger2648  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_create_trigger2648_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_create_trigger2648	= { FOLLOW_ON_SYMBOL_in_create_trigger2648_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_create_trigger2650  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_create_trigger2650_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200000000) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_create_trigger2650	= { FOLLOW_qualified_identifier_in_create_trigger2650_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_create_trigger2652  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_create_trigger2652_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0001000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FOR_SYMBOL_in_create_trigger2652	= { FOLLOW_FOR_SYMBOL_in_create_trigger2652_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EACH_SYMBOL_in_create_trigger2654  */
static	ANTLR3_BITWORD FOLLOW_EACH_SYMBOL_in_create_trigger2654_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EACH_SYMBOL_in_create_trigger2654	= { FOLLOW_EACH_SYMBOL_in_create_trigger2654_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ROW_SYMBOL_in_create_trigger2656  */
static	ANTLR3_BITWORD FOLLOW_ROW_SYMBOL_in_create_trigger2656_bits[]	= { ANTLR3_UINT64_LIT(0x72E2008AFE02AF60), ANTLR3_UINT64_LIT(0xC12B29F5F0EBBE3D), ANTLR3_UINT64_LIT(0x3728ED03CBEA1821), ANTLR3_UINT64_LIT(0x2161FF4421CE692F), ANTLR3_UINT64_LIT(0x849AA2E8801CA37C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD423A6), ANTLR3_UINT64_LIT(0x0E3D2103CA7DB28C), ANTLR3_UINT64_LIT(0xBF9F13FEB86FBC60), ANTLR3_UINT64_LIT(0x28B953125FF9FBBF), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0883CD93378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D113E0) };
static  ANTLR3_BITSET_LIST FOLLOW_ROW_SYMBOL_in_create_trigger2656	= { FOLLOW_ROW_SYMBOL_in_create_trigger2656_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_in_create_trigger2658  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_in_create_trigger2658_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_compound_statement_in_create_trigger2658	= { FOLLOW_compound_statement_in_create_trigger2658_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQL_SYMBOL_in_create_view2668  */
static	ANTLR3_BITWORD FOLLOW_SQL_SYMBOL_in_create_view2668_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SQL_SYMBOL_in_create_view2668	= { FOLLOW_SQL_SYMBOL_in_create_view2668_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SECURITY_SYMBOL_in_create_view2670  */
static	ANTLR3_BITWORD FOLLOW_SECURITY_SYMBOL_in_create_view2670_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000080000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SECURITY_SYMBOL_in_create_view2670	= { FOLLOW_SECURITY_SYMBOL_in_create_view2670_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_create_view2672  */
static	ANTLR3_BITWORD FOLLOW_set_in_create_view2672_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_create_view2672	= { FOLLOW_set_in_create_view2672_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VIEW_SYMBOL_in_create_view2684  */
static	ANTLR3_BITWORD FOLLOW_VIEW_SYMBOL_in_create_view2684_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_VIEW_SYMBOL_in_create_view2684	= { FOLLOW_VIEW_SYMBOL_in_create_view2684_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_create_view2686  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_create_view2686_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000400000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_create_view2686	= { FOLLOW_qualified_identifier_in_create_view2686_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_with_parentheses_in_create_view2688  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_with_parentheses_in_create_view2688_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000400000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_with_parentheses_in_create_view2688	= { FOLLOW_identifier_list_with_parentheses_in_create_view2688_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AS_SYMBOL_in_create_view2693  */
static	ANTLR3_BITWORD FOLLOW_AS_SYMBOL_in_create_view2693_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_AS_SYMBOL_in_create_view2693	= { FOLLOW_AS_SYMBOL_in_create_view2693_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_statement_in_create_view2695  */
static	ANTLR3_BITWORD FOLLOW_select_statement_in_create_view2695_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_select_statement_in_create_view2695	= { FOLLOW_select_statement_in_create_view2695_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_create_view2700  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_create_view2700_bits[]	= { ANTLR3_UINT64_LIT(0x4000000000000000), ANTLR3_UINT64_LIT(0x0000000000000400), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_WITH_SYMBOL_in_create_view2700	= { FOLLOW_WITH_SYMBOL_in_create_view2700_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHECK_SYMBOL_in_create_view2711  */
static	ANTLR3_BITWORD FOLLOW_CHECK_SYMBOL_in_create_view2711_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x4000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CHECK_SYMBOL_in_create_view2711	= { FOLLOW_CHECK_SYMBOL_in_create_view2711_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPTION_SYMBOL_in_create_view2713  */
static	ANTLR3_BITWORD FOLLOW_OPTION_SYMBOL_in_create_view2713_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_OPTION_SYMBOL_in_create_view2713	= { FOLLOW_OPTION_SYMBOL_in_create_view2713_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OR_SYMBOL_in_view_replace_or_algorithm2724  */
static	ANTLR3_BITWORD FOLLOW_OR_SYMBOL_in_view_replace_or_algorithm2724_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OR_SYMBOL_in_view_replace_or_algorithm2724	= { FOLLOW_OR_SYMBOL_in_view_replace_or_algorithm2724_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPLACE_SYMBOL_in_view_replace_or_algorithm2726  */
static	ANTLR3_BITWORD FOLLOW_REPLACE_SYMBOL_in_view_replace_or_algorithm2726_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000802) };
static  ANTLR3_BITSET_LIST FOLLOW_REPLACE_SYMBOL_in_view_replace_or_algorithm2726	= { FOLLOW_REPLACE_SYMBOL_in_view_replace_or_algorithm2726_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_view_algorithm_in_view_replace_or_algorithm2728  */
static	ANTLR3_BITWORD FOLLOW_view_algorithm_in_view_replace_or_algorithm2728_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_view_algorithm_in_view_replace_or_algorithm2728	= { FOLLOW_view_algorithm_in_view_replace_or_algorithm2728_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_view_algorithm_in_view_replace_or_algorithm2734  */
static	ANTLR3_BITWORD FOLLOW_view_algorithm_in_view_replace_or_algorithm2734_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_view_algorithm_in_view_replace_or_algorithm2734	= { FOLLOW_view_algorithm_in_view_replace_or_algorithm2734_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALGORITHM_SYMBOL_in_view_algorithm2743  */
static	ANTLR3_BITWORD FOLLOW_ALGORITHM_SYMBOL_in_view_algorithm2743_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ALGORITHM_SYMBOL_in_view_algorithm2743	= { FOLLOW_ALGORITHM_SYMBOL_in_view_algorithm2743_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_view_algorithm2745  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_view_algorithm2745_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000020000010) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_view_algorithm2745	= { FOLLOW_EQUAL_OPERATOR_in_view_algorithm2745_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_view_algorithm2747  */
static	ANTLR3_BITWORD FOLLOW_set_in_view_algorithm2747_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_view_algorithm2747	= { FOLLOW_set_in_view_algorithm2747_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DROP_SYMBOL_in_drop_statement2768  */
static	ANTLR3_BITWORD FOLLOW_DROP_SYMBOL_in_drop_statement2768_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000004), ANTLR3_UINT64_LIT(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000000000000200), ANTLR3_UINT64_LIT(0x0042000000000000), ANTLR3_UINT64_LIT(0x0000000100000000), ANTLR3_UINT64_LIT(0x0000080000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x000000000010000C), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_DROP_SYMBOL_in_drop_statement2768	= { FOLLOW_DROP_SYMBOL_in_drop_statement2768_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATABASE_SYMBOL_in_drop_statement2775  */
static	ANTLR3_BITWORD FOLLOW_DATABASE_SYMBOL_in_drop_statement2775_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A37C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_DATABASE_SYMBOL_in_drop_statement2775	= { FOLLOW_DATABASE_SYMBOL_in_drop_statement2775_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IF_SYMBOL_in_drop_statement2778  */
static	ANTLR3_BITWORD FOLLOW_IF_SYMBOL_in_drop_statement2778_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_IF_SYMBOL_in_drop_statement2778	= { FOLLOW_IF_SYMBOL_in_drop_statement2778_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXISTS_SYMBOL_in_drop_statement2780  */
static	ANTLR3_BITWORD FOLLOW_EXISTS_SYMBOL_in_drop_statement2780_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_EXISTS_SYMBOL_in_drop_statement2780	= { FOLLOW_EXISTS_SYMBOL_in_drop_statement2780_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_drop_statement2784  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_drop_statement2784_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_drop_statement2784	= { FOLLOW_identifier_in_drop_statement2784_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EVENT_SYMBOL_in_drop_statement2794  */
static	ANTLR3_BITWORD FOLLOW_EVENT_SYMBOL_in_drop_statement2794_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A37C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_EVENT_SYMBOL_in_drop_statement2794	= { FOLLOW_EVENT_SYMBOL_in_drop_statement2794_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IF_SYMBOL_in_drop_statement2797  */
static	ANTLR3_BITWORD FOLLOW_IF_SYMBOL_in_drop_statement2797_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_IF_SYMBOL_in_drop_statement2797	= { FOLLOW_IF_SYMBOL_in_drop_statement2797_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXISTS_SYMBOL_in_drop_statement2799  */
static	ANTLR3_BITWORD FOLLOW_EXISTS_SYMBOL_in_drop_statement2799_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_EXISTS_SYMBOL_in_drop_statement2799	= { FOLLOW_EXISTS_SYMBOL_in_drop_statement2799_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_drop_statement2803  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_drop_statement2803_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_drop_statement2803	= { FOLLOW_identifier_in_drop_statement2803_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_drop_statement2809  */
static	ANTLR3_BITWORD FOLLOW_set_in_drop_statement2809_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A37C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_drop_statement2809	= { FOLLOW_set_in_drop_statement2809_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IF_SYMBOL_in_drop_statement2818  */
static	ANTLR3_BITWORD FOLLOW_IF_SYMBOL_in_drop_statement2818_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_IF_SYMBOL_in_drop_statement2818	= { FOLLOW_IF_SYMBOL_in_drop_statement2818_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXISTS_SYMBOL_in_drop_statement2820  */
static	ANTLR3_BITWORD FOLLOW_EXISTS_SYMBOL_in_drop_statement2820_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_EXISTS_SYMBOL_in_drop_statement2820	= { FOLLOW_EXISTS_SYMBOL_in_drop_statement2820_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_drop_statement2824  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_drop_statement2824_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_drop_statement2824	= { FOLLOW_qualified_identifier_in_drop_statement2824_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_online_option_in_drop_statement2831  */
static	ANTLR3_BITWORD FOLLOW_online_option_in_drop_statement2831_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_online_option_in_drop_statement2831	= { FOLLOW_online_option_in_drop_statement2831_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INDEX_SYMBOL_in_drop_statement2834  */
static	ANTLR3_BITWORD FOLLOW_INDEX_SYMBOL_in_drop_statement2834_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_INDEX_SYMBOL_in_drop_statement2834	= { FOLLOW_INDEX_SYMBOL_in_drop_statement2834_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_drop_statement2836  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_drop_statement2836_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_drop_statement2836	= { FOLLOW_identifier_in_drop_statement2836_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_drop_statement2838  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_drop_statement2838_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_drop_statement2838	= { FOLLOW_ON_SYMBOL_in_drop_statement2838_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_drop_statement2840  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_drop_statement2840_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000802), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000100) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_drop_statement2840	= { FOLLOW_qualified_identifier_in_drop_statement2840_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_lock_algorithm_in_drop_statement2842  */
static	ANTLR3_BITWORD FOLLOW_index_lock_algorithm_in_drop_statement2842_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_index_lock_algorithm_in_drop_statement2842	= { FOLLOW_index_lock_algorithm_in_drop_statement2842_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOGFILE_SYMBOL_in_drop_statement2849  */
static	ANTLR3_BITWORD FOLLOW_LOGFILE_SYMBOL_in_drop_statement2849_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_LOGFILE_SYMBOL_in_drop_statement2849	= { FOLLOW_LOGFILE_SYMBOL_in_drop_statement2849_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GROUP_SYMBOL_in_drop_statement2851  */
static	ANTLR3_BITWORD FOLLOW_GROUP_SYMBOL_in_drop_statement2851_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_GROUP_SYMBOL_in_drop_statement2851	= { FOLLOW_GROUP_SYMBOL_in_drop_statement2851_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_drop_statement2853  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_drop_statement2853_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_drop_statement2853	= { FOLLOW_identifier_in_drop_statement2853_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENGINE_SYMBOL_in_drop_statement2855  */
static	ANTLR3_BITWORD FOLLOW_ENGINE_SYMBOL_in_drop_statement2855_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_ENGINE_SYMBOL_in_drop_statement2855	= { FOLLOW_ENGINE_SYMBOL_in_drop_statement2855_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_drop_statement2857  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_drop_statement2857_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_drop_statement2857	= { FOLLOW_EQUAL_OPERATOR_in_drop_statement2857_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_drop_statement2860  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_drop_statement2860_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_drop_statement2860	= { FOLLOW_pure_identifier_in_drop_statement2860_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SERVER_SYMBOL_in_drop_statement2866  */
static	ANTLR3_BITWORD FOLLOW_SERVER_SYMBOL_in_drop_statement2866_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000030) };
static  ANTLR3_BITSET_LIST FOLLOW_SERVER_SYMBOL_in_drop_statement2866	= { FOLLOW_SERVER_SYMBOL_in_drop_statement2866_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IF_SYMBOL_in_drop_statement2869  */
static	ANTLR3_BITWORD FOLLOW_IF_SYMBOL_in_drop_statement2869_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_IF_SYMBOL_in_drop_statement2869	= { FOLLOW_IF_SYMBOL_in_drop_statement2869_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXISTS_SYMBOL_in_drop_statement2871  */
static	ANTLR3_BITWORD FOLLOW_EXISTS_SYMBOL_in_drop_statement2871_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_EXISTS_SYMBOL_in_drop_statement2871	= { FOLLOW_EXISTS_SYMBOL_in_drop_statement2871_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_drop_statement2875  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_drop_statement2875_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_drop_statement2875	= { FOLLOW_pure_identifier_in_drop_statement2875_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TEMPORARY_SYMBOL_in_drop_statement2881  */
static	ANTLR3_BITWORD FOLLOW_TEMPORARY_SYMBOL_in_drop_statement2881_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_TEMPORARY_SYMBOL_in_drop_statement2881	= { FOLLOW_TEMPORARY_SYMBOL_in_drop_statement2881_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_drop_statement2884  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_drop_statement2884_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A37C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_drop_statement2884	= { FOLLOW_TABLE_SYMBOL_in_drop_statement2884_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IF_SYMBOL_in_drop_statement2887  */
static	ANTLR3_BITWORD FOLLOW_IF_SYMBOL_in_drop_statement2887_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_IF_SYMBOL_in_drop_statement2887	= { FOLLOW_IF_SYMBOL_in_drop_statement2887_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXISTS_SYMBOL_in_drop_statement2889  */
static	ANTLR3_BITWORD FOLLOW_EXISTS_SYMBOL_in_drop_statement2889_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_EXISTS_SYMBOL_in_drop_statement2889	= { FOLLOW_EXISTS_SYMBOL_in_drop_statement2889_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_list_in_drop_statement2893  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_list_in_drop_statement2893_bits[]	= { ANTLR3_UINT64_LIT(0x8000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000400) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_list_in_drop_statement2893	= { FOLLOW_qualified_identifier_list_in_drop_statement2893_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLESPACE_SYMBOL_in_drop_statement2908  */
static	ANTLR3_BITWORD FOLLOW_TABLESPACE_SYMBOL_in_drop_statement2908_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLESPACE_SYMBOL_in_drop_statement2908	= { FOLLOW_TABLESPACE_SYMBOL_in_drop_statement2908_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_drop_statement2910  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_drop_statement2910_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_drop_statement2910	= { FOLLOW_identifier_in_drop_statement2910_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENGINE_SYMBOL_in_drop_statement2912  */
static	ANTLR3_BITWORD FOLLOW_ENGINE_SYMBOL_in_drop_statement2912_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_ENGINE_SYMBOL_in_drop_statement2912	= { FOLLOW_ENGINE_SYMBOL_in_drop_statement2912_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_drop_statement2914  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_drop_statement2914_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_drop_statement2914	= { FOLLOW_EQUAL_OPERATOR_in_drop_statement2914_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_drop_statement2917  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_drop_statement2917_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_drop_statement2917	= { FOLLOW_pure_identifier_in_drop_statement2917_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TRIGGER_SYMBOL_in_drop_statement2923  */
static	ANTLR3_BITWORD FOLLOW_TRIGGER_SYMBOL_in_drop_statement2923_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A37C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_TRIGGER_SYMBOL_in_drop_statement2923	= { FOLLOW_TRIGGER_SYMBOL_in_drop_statement2923_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IF_SYMBOL_in_drop_statement2926  */
static	ANTLR3_BITWORD FOLLOW_IF_SYMBOL_in_drop_statement2926_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_IF_SYMBOL_in_drop_statement2926	= { FOLLOW_IF_SYMBOL_in_drop_statement2926_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXISTS_SYMBOL_in_drop_statement2928  */
static	ANTLR3_BITWORD FOLLOW_EXISTS_SYMBOL_in_drop_statement2928_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_EXISTS_SYMBOL_in_drop_statement2928	= { FOLLOW_EXISTS_SYMBOL_in_drop_statement2928_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_drop_statement2932  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_drop_statement2932_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_drop_statement2932	= { FOLLOW_qualified_identifier_in_drop_statement2932_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VIEW_SYMBOL_in_drop_statement2938  */
static	ANTLR3_BITWORD FOLLOW_VIEW_SYMBOL_in_drop_statement2938_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A37C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_VIEW_SYMBOL_in_drop_statement2938	= { FOLLOW_VIEW_SYMBOL_in_drop_statement2938_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IF_SYMBOL_in_drop_statement2941  */
static	ANTLR3_BITWORD FOLLOW_IF_SYMBOL_in_drop_statement2941_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_IF_SYMBOL_in_drop_statement2941	= { FOLLOW_IF_SYMBOL_in_drop_statement2941_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXISTS_SYMBOL_in_drop_statement2943  */
static	ANTLR3_BITWORD FOLLOW_EXISTS_SYMBOL_in_drop_statement2943_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_EXISTS_SYMBOL_in_drop_statement2943	= { FOLLOW_EXISTS_SYMBOL_in_drop_statement2943_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_list_in_drop_statement2947  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_list_in_drop_statement2947_bits[]	= { ANTLR3_UINT64_LIT(0x8000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000400) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_list_in_drop_statement2947	= { FOLLOW_qualified_identifier_list_in_drop_statement2947_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RENAME_SYMBOL_in_rename_table_statement2970  */
static	ANTLR3_BITWORD FOLLOW_RENAME_SYMBOL_in_rename_table_statement2970_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_RENAME_SYMBOL_in_rename_table_statement2970	= { FOLLOW_RENAME_SYMBOL_in_rename_table_statement2970_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_rename_table_statement2972  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_rename_table_statement2972_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_rename_table_statement2972	= { FOLLOW_TABLE_SYMBOL_in_rename_table_statement2972_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_rename_table_statement2974  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_rename_table_statement2974_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_rename_table_statement2974	= { FOLLOW_qualified_identifier_in_rename_table_statement2974_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TO_SYMBOL_in_rename_table_statement2976  */
static	ANTLR3_BITWORD FOLLOW_TO_SYMBOL_in_rename_table_statement2976_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_TO_SYMBOL_in_rename_table_statement2976	= { FOLLOW_TO_SYMBOL_in_rename_table_statement2976_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_rename_table_statement2980  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_rename_table_statement2980_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_rename_table_statement2980	= { FOLLOW_qualified_identifier_in_rename_table_statement2980_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_rename_table_statement2983  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_rename_table_statement2983_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_rename_table_statement2983	= { FOLLOW_COMMA_SYMBOL_in_rename_table_statement2983_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_rename_table_statement2985  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_rename_table_statement2985_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_rename_table_statement2985	= { FOLLOW_qualified_identifier_in_rename_table_statement2985_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TO_SYMBOL_in_rename_table_statement2987  */
static	ANTLR3_BITWORD FOLLOW_TO_SYMBOL_in_rename_table_statement2987_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_TO_SYMBOL_in_rename_table_statement2987	= { FOLLOW_TO_SYMBOL_in_rename_table_statement2987_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_rename_table_statement2989  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_rename_table_statement2989_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_rename_table_statement2989	= { FOLLOW_qualified_identifier_in_rename_table_statement2989_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TRUNCATE_SYMBOL_in_truncate_table_statement3003  */
static	ANTLR3_BITWORD FOLLOW_TRUNCATE_SYMBOL_in_truncate_table_statement3003_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1EDC), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_TRUNCATE_SYMBOL_in_truncate_table_statement3003	= { FOLLOW_TRUNCATE_SYMBOL_in_truncate_table_statement3003_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_truncate_table_statement3005  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_truncate_table_statement3005_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_truncate_table_statement3005	= { FOLLOW_TABLE_SYMBOL_in_truncate_table_statement3005_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_truncate_table_statement3008  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_truncate_table_statement3008_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_truncate_table_statement3008	= { FOLLOW_qualified_identifier_in_truncate_table_statement3008_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CALL_SYMBOL_in_call_statement3019  */
static	ANTLR3_BITWORD FOLLOW_CALL_SYMBOL_in_call_statement3019_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_CALL_SYMBOL_in_call_statement3019	= { FOLLOW_CALL_SYMBOL_in_call_statement3019_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_call_statement3021  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_call_statement3021_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_call_statement3021	= { FOLLOW_identifier_in_call_statement3021_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_call_statement3024  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_call_statement3024_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBFB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_call_statement3024	= { FOLLOW_OPEN_PAR_SYMBOL_in_call_statement3024_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_in_call_statement3026  */
static	ANTLR3_BITWORD FOLLOW_expression_list_in_call_statement3026_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_in_call_statement3026	= { FOLLOW_expression_list_in_call_statement3026_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_call_statement3029  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_call_statement3029_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_call_statement3029	= { FOLLOW_CLOSE_PAR_SYMBOL_in_call_statement3029_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DELETE_SYMBOL_in_delete_statement3040  */
static	ANTLR3_BITWORD FOLLOW_DELETE_SYMBOL_in_delete_statement3040_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF5521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A3DC), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD822A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_DELETE_SYMBOL_in_delete_statement3040	= { FOLLOW_DELETE_SYMBOL_in_delete_statement3040_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_delete_option_in_delete_statement3056  */
static	ANTLR3_BITWORD FOLLOW_delete_option_in_delete_statement3056_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF5521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A3DC), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD822A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_delete_option_in_delete_statement3056	= { FOLLOW_delete_option_in_delete_statement3056_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_delete_statement3067  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_delete_statement3067_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_delete_statement3067	= { FOLLOW_FROM_SYMBOL_in_delete_statement3067_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_identifier_in_delete_statement3069  */
static	ANTLR3_BITWORD FOLLOW_table_identifier_in_delete_statement3069_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F62), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0xA48B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0xA43D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D30BE0) };
static  ANTLR3_BITSET_LIST FOLLOW_table_identifier_in_delete_statement3069	= { FOLLOW_table_identifier_in_delete_statement3069_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partition_delete_in_delete_statement3082  */
static	ANTLR3_BITWORD FOLLOW_partition_delete_in_delete_statement3082_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_partition_delete_in_delete_statement3082	= { FOLLOW_partition_delete_in_delete_statement3082_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_where_clause_in_delete_statement3085  */
static	ANTLR3_BITWORD FOLLOW_where_clause_in_delete_statement3085_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_where_clause_in_delete_statement3085	= { FOLLOW_where_clause_in_delete_statement3085_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_order_by_clause_in_delete_statement3088  */
static	ANTLR3_BITWORD FOLLOW_order_by_clause_in_delete_statement3088_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_order_by_clause_in_delete_statement3088	= { FOLLOW_order_by_clause_in_delete_statement3088_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LIMIT_SYMBOL_in_delete_statement3092  */
static	ANTLR3_BITWORD FOLLOW_LIMIT_SYMBOL_in_delete_statement3092_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_LIMIT_SYMBOL_in_delete_statement3092	= { FOLLOW_LIMIT_SYMBOL_in_delete_statement3092_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_delete_statement3094  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_delete_statement3094_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_delete_statement3094	= { FOLLOW_INTEGER_in_delete_statement3094_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_name_list_with_wildcards_in_delete_statement3106  */
static	ANTLR3_BITWORD FOLLOW_table_name_list_with_wildcards_in_delete_statement3106_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_name_list_with_wildcards_in_delete_statement3106	= { FOLLOW_table_name_list_with_wildcards_in_delete_statement3106_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USING_SYMBOL_in_delete_statement3108  */
static	ANTLR3_BITWORD FOLLOW_USING_SYMBOL_in_delete_statement3108_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x263D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_USING_SYMBOL_in_delete_statement3108	= { FOLLOW_USING_SYMBOL_in_delete_statement3108_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_references_in_delete_statement3110  */
static	ANTLR3_BITWORD FOLLOW_table_references_in_delete_statement3110_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_table_references_in_delete_statement3110	= { FOLLOW_table_references_in_delete_statement3110_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_where_clause_in_delete_statement3112  */
static	ANTLR3_BITWORD FOLLOW_where_clause_in_delete_statement3112_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_where_clause_in_delete_statement3112	= { FOLLOW_where_clause_in_delete_statement3112_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_name_list_with_wildcards_in_delete_statement3128  */
static	ANTLR3_BITWORD FOLLOW_table_name_list_with_wildcards_in_delete_statement3128_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_name_list_with_wildcards_in_delete_statement3128	= { FOLLOW_table_name_list_with_wildcards_in_delete_statement3128_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_delete_statement3130  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_delete_statement3130_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x263D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_delete_statement3130	= { FOLLOW_FROM_SYMBOL_in_delete_statement3130_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_references_in_delete_statement3132  */
static	ANTLR3_BITWORD FOLLOW_table_references_in_delete_statement3132_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_table_references_in_delete_statement3132	= { FOLLOW_table_references_in_delete_statement3132_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_where_clause_in_delete_statement3134  */
static	ANTLR3_BITWORD FOLLOW_where_clause_in_delete_statement3134_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_where_clause_in_delete_statement3134	= { FOLLOW_where_clause_in_delete_statement3134_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_partition_delete3154  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_partition_delete3154_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_partition_delete3154	= { FOLLOW_PARTITION_SYMBOL_in_partition_delete3154_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_partition_delete3156  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_partition_delete3156_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_partition_delete3156	= { FOLLOW_OPEN_PAR_SYMBOL_in_partition_delete3156_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_partition_delete3158  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_partition_delete3158_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002004000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_partition_delete3158	= { FOLLOW_identifier_in_partition_delete3158_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_partition_delete3161  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_partition_delete3161_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_partition_delete3161	= { FOLLOW_COMMA_SYMBOL_in_partition_delete3161_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_partition_delete3163  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_partition_delete3163_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002004000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_partition_delete3163	= { FOLLOW_identifier_in_partition_delete3163_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_partition_delete3167  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_partition_delete3167_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_partition_delete3167	= { FOLLOW_CLOSE_PAR_SYMBOL_in_partition_delete3167_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_table_name_list_with_wildcards3194  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_table_name_list_with_wildcards3194_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000), ANTLR3_UINT64_LIT(0x0000004000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_table_name_list_with_wildcards3194	= { FOLLOW_qualified_identifier_in_table_name_list_with_wildcards3194_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOT_SYMBOL_in_table_name_list_with_wildcards3197  */
static	ANTLR3_BITWORD FOLLOW_DOT_SYMBOL_in_table_name_list_with_wildcards3197_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_DOT_SYMBOL_in_table_name_list_with_wildcards3197	= { FOLLOW_DOT_SYMBOL_in_table_name_list_with_wildcards3197_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_OPERATOR_in_table_name_list_with_wildcards3199  */
static	ANTLR3_BITWORD FOLLOW_MULT_OPERATOR_in_table_name_list_with_wildcards3199_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MULT_OPERATOR_in_table_name_list_with_wildcards3199	= { FOLLOW_MULT_OPERATOR_in_table_name_list_with_wildcards3199_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_table_name_list_with_wildcards3204  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_table_name_list_with_wildcards3204_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_table_name_list_with_wildcards3204	= { FOLLOW_COMMA_SYMBOL_in_table_name_list_with_wildcards3204_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_table_name_list_with_wildcards3206  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_table_name_list_with_wildcards3206_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000), ANTLR3_UINT64_LIT(0x0000004000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_table_name_list_with_wildcards3206	= { FOLLOW_qualified_identifier_in_table_name_list_with_wildcards3206_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOT_SYMBOL_in_table_name_list_with_wildcards3209  */
static	ANTLR3_BITWORD FOLLOW_DOT_SYMBOL_in_table_name_list_with_wildcards3209_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_DOT_SYMBOL_in_table_name_list_with_wildcards3209	= { FOLLOW_DOT_SYMBOL_in_table_name_list_with_wildcards3209_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_OPERATOR_in_table_name_list_with_wildcards3211  */
static	ANTLR3_BITWORD FOLLOW_MULT_OPERATOR_in_table_name_list_with_wildcards3211_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MULT_OPERATOR_in_table_name_list_with_wildcards3211	= { FOLLOW_MULT_OPERATOR_in_table_name_list_with_wildcards3211_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DO_SYMBOL_in_do_statement3224  */
static	ANTLR3_BITWORD FOLLOW_DO_SYMBOL_in_do_statement3224_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_DO_SYMBOL_in_do_statement3224	= { FOLLOW_DO_SYMBOL_in_do_statement3224_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_in_do_statement3226  */
static	ANTLR3_BITWORD FOLLOW_expression_list_in_do_statement3226_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_in_do_statement3226	= { FOLLOW_expression_list_in_do_statement3226_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HANDLER_SYMBOL_in_handler_statement3235  */
static	ANTLR3_BITWORD FOLLOW_HANDLER_SYMBOL_in_handler_statement3235_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_HANDLER_SYMBOL_in_handler_statement3235	= { FOLLOW_HANDLER_SYMBOL_in_handler_statement3235_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_handler_statement3237  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_handler_statement3237_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000008000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400000000000000), ANTLR3_UINT64_LIT(0x0000200000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_handler_statement3237	= { FOLLOW_qualified_identifier_in_handler_statement3237_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_SYMBOL_in_handler_statement3244  */
static	ANTLR3_BITWORD FOLLOW_OPEN_SYMBOL_in_handler_statement3244_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200400002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_SYMBOL_in_handler_statement3244	= { FOLLOW_OPEN_SYMBOL_in_handler_statement3244_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AS_SYMBOL_in_handler_statement3247  */
static	ANTLR3_BITWORD FOLLOW_AS_SYMBOL_in_handler_statement3247_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_AS_SYMBOL_in_handler_statement3247	= { FOLLOW_AS_SYMBOL_in_handler_statement3247_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_handler_statement3250  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_handler_statement3250_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_handler_statement3250	= { FOLLOW_pure_identifier_in_handler_statement3250_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_SYMBOL_in_handler_statement3258  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_SYMBOL_in_handler_statement3258_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_SYMBOL_in_handler_statement3258	= { FOLLOW_CLOSE_SYMBOL_in_handler_statement3258_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_READ_SYMBOL_in_handler_statement3264  */
static	ANTLR3_BITWORD FOLLOW_READ_SYMBOL_in_handler_statement3264_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000800000), ANTLR3_UINT64_LIT(0x0000000000000010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_READ_SYMBOL_in_handler_statement3264	= { FOLLOW_READ_SYMBOL_in_handler_statement3264_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_handler_statement3275  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_handler_statement3275_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0006000000800000), ANTLR3_UINT64_LIT(0x0142000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000), ANTLR3_UINT64_LIT(0x0000000020000000) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_handler_statement3275	= { FOLLOW_pure_identifier_in_handler_statement3275_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_handler_statement3288  */
static	ANTLR3_BITWORD FOLLOW_set_in_handler_statement3288_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_handler_statement3288	= { FOLLOW_set_in_handler_statement3288_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_with_parentheses_in_handler_statement3314  */
static	ANTLR3_BITWORD FOLLOW_expression_list_with_parentheses_in_handler_statement3314_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_with_parentheses_in_handler_statement3314	= { FOLLOW_expression_list_with_parentheses_in_handler_statement3314_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_handler_statement3323  */
static	ANTLR3_BITWORD FOLLOW_set_in_handler_statement3323_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_handler_statement3323	= { FOLLOW_set_in_handler_statement3323_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_handler_statement3351  */
static	ANTLR3_BITWORD FOLLOW_set_in_handler_statement3351_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_handler_statement3351	= { FOLLOW_set_in_handler_statement3351_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_where_clause_in_handler_statement3367  */
static	ANTLR3_BITWORD FOLLOW_where_clause_in_handler_statement3367_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_where_clause_in_handler_statement3367	= { FOLLOW_where_clause_in_handler_statement3367_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_clause_in_handler_statement3370  */
static	ANTLR3_BITWORD FOLLOW_limit_clause_in_handler_statement3370_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_clause_in_handler_statement3370	= { FOLLOW_limit_clause_in_handler_statement3370_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INSERT_SYMBOL_in_insert_statement3385  */
static	ANTLR3_BITWORD FOLLOW_INSERT_SYMBOL_in_insert_statement3385_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA3A1821), ANTLR3_UINT64_LIT(0x7160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E8A014A3DC), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD822A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_INSERT_SYMBOL_in_insert_statement3385	= { FOLLOW_INSERT_SYMBOL_in_insert_statement3385_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_insert_option_in_insert_statement3387  */
static	ANTLR3_BITWORD FOLLOW_insert_option_in_insert_statement3387_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E8A014A3DC), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_insert_option_in_insert_statement3387	= { FOLLOW_insert_option_in_insert_statement3387_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IGNORE_SYMBOL_in_insert_statement3390  */
static	ANTLR3_BITWORD FOLLOW_IGNORE_SYMBOL_in_insert_statement3390_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E8A014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_IGNORE_SYMBOL_in_insert_statement3390	= { FOLLOW_IGNORE_SYMBOL_in_insert_statement3390_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTO_SYMBOL_in_insert_statement3393  */
static	ANTLR3_BITWORD FOLLOW_INTO_SYMBOL_in_insert_statement3393_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_INTO_SYMBOL_in_insert_statement3393	= { FOLLOW_INTO_SYMBOL_in_insert_statement3393_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_target_table_in_insert_statement3396  */
static	ANTLR3_BITWORD FOLLOW_target_table_in_insert_statement3396_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000401000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x00C0000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_target_table_in_insert_statement3396	= { FOLLOW_target_table_in_insert_statement3396_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_insert_field_spec_in_insert_statement3398  */
static	ANTLR3_BITWORD FOLLOW_insert_field_spec_in_insert_statement3398_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_insert_field_spec_in_insert_statement3398	= { FOLLOW_insert_field_spec_in_insert_statement3398_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_duplicate_key_update_in_insert_statement3400  */
static	ANTLR3_BITWORD FOLLOW_duplicate_key_update_in_insert_statement3400_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_duplicate_key_update_in_insert_statement3400	= { FOLLOW_duplicate_key_update_in_insert_statement3400_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_insert_field_spec3432  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_insert_field_spec3432_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBFA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7FB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_insert_field_spec3432	= { FOLLOW_OPEN_PAR_SYMBOL_in_insert_field_spec3432_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_fields_in_insert_field_spec3434  */
static	ANTLR3_BITWORD FOLLOW_fields_in_insert_field_spec3434_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_fields_in_insert_field_spec3434	= { FOLLOW_fields_in_insert_field_spec3434_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_insert_field_spec3437  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_insert_field_spec3437_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x00C0000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_insert_field_spec3437	= { FOLLOW_CLOSE_PAR_SYMBOL_in_insert_field_spec3437_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_insert_values_in_insert_field_spec3441  */
static	ANTLR3_BITWORD FOLLOW_insert_values_in_insert_field_spec3441_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_insert_values_in_insert_field_spec3441	= { FOLLOW_insert_values_in_insert_field_spec3441_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SET_SYMBOL_in_insert_field_spec3446  */
static	ANTLR3_BITWORD FOLLOW_SET_SYMBOL_in_insert_field_spec3446_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_SET_SYMBOL_in_insert_field_spec3446	= { FOLLOW_SET_SYMBOL_in_insert_field_spec3446_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_assignment_list_with_default_in_insert_field_spec3448  */
static	ANTLR3_BITWORD FOLLOW_column_assignment_list_with_default_in_insert_field_spec3448_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_column_assignment_list_with_default_in_insert_field_spec3448	= { FOLLOW_column_assignment_list_with_default_in_insert_field_spec3448_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_insert_identifier_in_fields3457  */
static	ANTLR3_BITWORD FOLLOW_insert_identifier_in_fields3457_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_insert_identifier_in_fields3457	= { FOLLOW_insert_identifier_in_fields3457_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_fields3460  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_fields3460_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7FB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_fields3460	= { FOLLOW_COMMA_SYMBOL_in_fields3460_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_insert_identifier_in_fields3462  */
static	ANTLR3_BITWORD FOLLOW_insert_identifier_in_fields3462_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_insert_identifier_in_fields3462	= { FOLLOW_insert_identifier_in_fields3462_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_insert_identifier_ref_in_insert_identifier3473  */
static	ANTLR3_BITWORD FOLLOW_insert_identifier_ref_in_insert_identifier3473_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_insert_identifier_ref_in_insert_identifier3473	= { FOLLOW_insert_identifier_ref_in_insert_identifier3473_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_insert_identifier_ref3492  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_insert_identifier_ref3492_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000004000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_insert_identifier_ref3492	= { FOLLOW_identifier_in_insert_identifier_ref3492_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOT_SYMBOL_in_insert_identifier_ref3494  */
static	ANTLR3_BITWORD FOLLOW_DOT_SYMBOL_in_insert_identifier_ref3494_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7FB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_DOT_SYMBOL_in_insert_identifier_ref3494	= { FOLLOW_DOT_SYMBOL_in_insert_identifier_ref3494_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_insert_identifier_ref3497  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_insert_identifier_ref3497_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000004000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_insert_identifier_ref3497	= { FOLLOW_identifier_in_insert_identifier_ref3497_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOT_SYMBOL_in_insert_identifier_ref3499  */
static	ANTLR3_BITWORD FOLLOW_DOT_SYMBOL_in_insert_identifier_ref3499_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7FB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_DOT_SYMBOL_in_insert_identifier_ref3499	= { FOLLOW_DOT_SYMBOL_in_insert_identifier_ref3499_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_insert_identifier_ref3506  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_insert_identifier_ref3506_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_insert_identifier_ref3506	= { FOLLOW_identifier_in_insert_identifier_ref3506_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_OPERATOR_in_insert_identifier_ref3510  */
static	ANTLR3_BITWORD FOLLOW_MULT_OPERATOR_in_insert_identifier_ref3510_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MULT_OPERATOR_in_insert_identifier_ref3510	= { FOLLOW_MULT_OPERATOR_in_insert_identifier_ref3510_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_insert_values3520  */
static	ANTLR3_BITWORD FOLLOW_set_in_insert_values3520_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_insert_values3520	= { FOLLOW_set_in_insert_values3520_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_insert_value_list_in_insert_values3528  */
static	ANTLR3_BITWORD FOLLOW_insert_value_list_in_insert_values3528_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_insert_value_list_in_insert_values3528	= { FOLLOW_insert_value_list_in_insert_values3528_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_statement_in_insert_values3533  */
static	ANTLR3_BITWORD FOLLOW_select_statement_in_insert_values3533_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_select_statement_in_insert_values3533	= { FOLLOW_select_statement_in_insert_values3533_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_insert_value_list_row_in_insert_value_list3542  */
static	ANTLR3_BITWORD FOLLOW_insert_value_list_row_in_insert_value_list3542_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_insert_value_list_row_in_insert_value_list3542	= { FOLLOW_insert_value_list_row_in_insert_value_list3542_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_insert_value_list3545  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_insert_value_list3545_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_insert_value_list3545	= { FOLLOW_COMMA_SYMBOL_in_insert_value_list3545_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_insert_value_list_row_in_insert_value_list3547  */
static	ANTLR3_BITWORD FOLLOW_insert_value_list_row_in_insert_value_list3547_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_insert_value_list_row_in_insert_value_list3547	= { FOLLOW_insert_value_list_row_in_insert_value_list3547_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_insert_value_list_row3559  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_insert_value_list_row3559_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2E1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_insert_value_list_row3559	= { FOLLOW_OPEN_PAR_SYMBOL_in_insert_value_list_row3559_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_insert_value_list_row3562  */
static	ANTLR3_BITWORD FOLLOW_expression_in_insert_value_list_row3562_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_insert_value_list_row3562	= { FOLLOW_expression_in_insert_value_list_row3562_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_insert_value_list_row3566  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_insert_value_list_row3566_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002004000) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_insert_value_list_row3566	= { FOLLOW_DEFAULT_SYMBOL_in_insert_value_list_row3566_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_insert_value_list_row3570  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_insert_value_list_row3570_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2E1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_insert_value_list_row3570	= { FOLLOW_COMMA_SYMBOL_in_insert_value_list_row3570_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_insert_value_list_row3573  */
static	ANTLR3_BITWORD FOLLOW_expression_in_insert_value_list_row3573_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_insert_value_list_row3573	= { FOLLOW_expression_in_insert_value_list_row3573_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_insert_value_list_row3577  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_insert_value_list_row3577_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002004000) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_insert_value_list_row3577	= { FOLLOW_DEFAULT_SYMBOL_in_insert_value_list_row3577_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_insert_value_list_row3582  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_insert_value_list_row3582_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_insert_value_list_row3582	= { FOLLOW_CLOSE_PAR_SYMBOL_in_insert_value_list_row3582_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_duplicate_key_update3591  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_duplicate_key_update3591_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_duplicate_key_update3591	= { FOLLOW_ON_SYMBOL_in_duplicate_key_update3591_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DUPLICATE_SYMBOL_in_duplicate_key_update3593  */
static	ANTLR3_BITWORD FOLLOW_DUPLICATE_SYMBOL_in_duplicate_key_update3593_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DUPLICATE_SYMBOL_in_duplicate_key_update3593	= { FOLLOW_DUPLICATE_SYMBOL_in_duplicate_key_update3593_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEY_SYMBOL_in_duplicate_key_update3595  */
static	ANTLR3_BITWORD FOLLOW_KEY_SYMBOL_in_duplicate_key_update3595_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000080000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_KEY_SYMBOL_in_duplicate_key_update3595	= { FOLLOW_KEY_SYMBOL_in_duplicate_key_update3595_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UPDATE_SYMBOL_in_duplicate_key_update3597  */
static	ANTLR3_BITWORD FOLLOW_UPDATE_SYMBOL_in_duplicate_key_update3597_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_UPDATE_SYMBOL_in_duplicate_key_update3597	= { FOLLOW_UPDATE_SYMBOL_in_duplicate_key_update3597_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_assignment_in_duplicate_key_update3599  */
static	ANTLR3_BITWORD FOLLOW_column_assignment_in_duplicate_key_update3599_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_column_assignment_in_duplicate_key_update3599	= { FOLLOW_column_assignment_in_duplicate_key_update3599_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_duplicate_key_update3602  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_duplicate_key_update3602_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_duplicate_key_update3602	= { FOLLOW_COMMA_SYMBOL_in_duplicate_key_update3602_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_assignment_in_duplicate_key_update3604  */
static	ANTLR3_BITWORD FOLLOW_column_assignment_in_duplicate_key_update3604_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_column_assignment_in_duplicate_key_update3604	= { FOLLOW_column_assignment_in_duplicate_key_update3604_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOAD_SYMBOL_in_load_data_infile_statement3617  */
static	ANTLR3_BITWORD FOLLOW_LOAD_SYMBOL_in_load_data_infile_statement3617_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_LOAD_SYMBOL_in_load_data_infile_statement3617	= { FOLLOW_LOAD_SYMBOL_in_load_data_infile_statement3617_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATA_SYMBOL_in_load_data_infile_statement3619  */
static	ANTLR3_BITWORD FOLLOW_DATA_SYMBOL_in_load_data_infile_statement3619_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000400000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000080020) };
static  ANTLR3_BITSET_LIST FOLLOW_DATA_SYMBOL_in_load_data_infile_statement3619	= { FOLLOW_DATA_SYMBOL_in_load_data_infile_statement3619_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOCAL_SYMBOL_in_load_data_infile_statement3630  */
static	ANTLR3_BITWORD FOLLOW_LOCAL_SYMBOL_in_load_data_infile_statement3630_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000) };
static  ANTLR3_BITSET_LIST FOLLOW_LOCAL_SYMBOL_in_load_data_infile_statement3630	= { FOLLOW_LOCAL_SYMBOL_in_load_data_infile_statement3630_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INFILE_SYMBOL_in_load_data_infile_statement3633  */
static	ANTLR3_BITWORD FOLLOW_INFILE_SYMBOL_in_load_data_infile_statement3633_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INFILE_SYMBOL_in_load_data_infile_statement3633	= { FOLLOW_INFILE_SYMBOL_in_load_data_infile_statement3633_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_load_data_infile_statement3635  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_load_data_infile_statement3635_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000020000080), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_load_data_infile_statement3635	= { FOLLOW_string_literal_in_load_data_infile_statement3635_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTO_SYMBOL_in_load_data_infile_statement3648  */
static	ANTLR3_BITWORD FOLLOW_INTO_SYMBOL_in_load_data_infile_statement3648_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_INTO_SYMBOL_in_load_data_infile_statement3648	= { FOLLOW_INTO_SYMBOL_in_load_data_infile_statement3648_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_load_data_infile_statement3650  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_load_data_infile_statement3650_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_load_data_infile_statement3650	= { FOLLOW_TABLE_SYMBOL_in_load_data_infile_statement3650_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_identifier_in_load_data_infile_statement3652  */
static	ANTLR3_BITWORD FOLLOW_table_identifier_in_load_data_infile_statement3652_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBB9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A3DC), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A3), ANTLR3_UINT64_LIT(0x263D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_table_identifier_in_load_data_infile_statement3652	= { FOLLOW_table_identifier_in_load_data_infile_statement3652_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partition_on_load_option_in_load_data_infile_statement3656  */
static	ANTLR3_BITWORD FOLLOW_partition_on_load_option_in_load_data_infile_statement3656_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBB9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A3DC), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A3), ANTLR3_UINT64_LIT(0x263D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_partition_on_load_option_in_load_data_infile_statement3656	= { FOLLOW_partition_on_load_option_in_load_data_infile_statement3656_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_clause_in_load_data_infile_statement3659  */
static	ANTLR3_BITWORD FOLLOW_charset_clause_in_load_data_infile_statement3659_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A3DC), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A3), ANTLR3_UINT64_LIT(0x263D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_clause_in_load_data_infile_statement3659	= { FOLLOW_charset_clause_in_load_data_infile_statement3659_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_fields_clause_in_load_data_infile_statement3664  */
static	ANTLR3_BITWORD FOLLOW_fields_clause_in_load_data_infile_statement3664_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A3DC), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A3), ANTLR3_UINT64_LIT(0x263D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_fields_clause_in_load_data_infile_statement3664	= { FOLLOW_fields_clause_in_load_data_infile_statement3664_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_lines_clause_in_load_data_infile_statement3667  */
static	ANTLR3_BITWORD FOLLOW_lines_clause_in_load_data_infile_statement3667_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A3DC), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x263D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_lines_clause_in_load_data_infile_statement3667	= { FOLLOW_lines_clause_in_load_data_infile_statement3667_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_load_data_file_tail_in_load_data_infile_statement3670  */
static	ANTLR3_BITWORD FOLLOW_load_data_file_tail_in_load_data_infile_statement3670_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_load_data_file_tail_in_load_data_infile_statement3670	= { FOLLOW_load_data_file_tail_in_load_data_infile_statement3670_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOAD_SYMBOL_in_load_xml_statement3679  */
static	ANTLR3_BITWORD FOLLOW_LOAD_SYMBOL_in_load_xml_statement3679_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000800000) };
static  ANTLR3_BITSET_LIST FOLLOW_LOAD_SYMBOL_in_load_xml_statement3679	= { FOLLOW_LOAD_SYMBOL_in_load_xml_statement3679_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_XML_SYMBOL_in_load_xml_statement3681  */
static	ANTLR3_BITWORD FOLLOW_XML_SYMBOL_in_load_xml_statement3681_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000400000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000080020) };
static  ANTLR3_BITSET_LIST FOLLOW_XML_SYMBOL_in_load_xml_statement3681	= { FOLLOW_XML_SYMBOL_in_load_xml_statement3681_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOCAL_SYMBOL_in_load_xml_statement3692  */
static	ANTLR3_BITWORD FOLLOW_LOCAL_SYMBOL_in_load_xml_statement3692_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000) };
static  ANTLR3_BITSET_LIST FOLLOW_LOCAL_SYMBOL_in_load_xml_statement3692	= { FOLLOW_LOCAL_SYMBOL_in_load_xml_statement3692_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INFILE_SYMBOL_in_load_xml_statement3695  */
static	ANTLR3_BITWORD FOLLOW_INFILE_SYMBOL_in_load_xml_statement3695_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INFILE_SYMBOL_in_load_xml_statement3695	= { FOLLOW_INFILE_SYMBOL_in_load_xml_statement3695_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_load_xml_statement3697  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_load_xml_statement3697_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000020000080), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_load_xml_statement3697	= { FOLLOW_string_literal_in_load_xml_statement3697_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTO_SYMBOL_in_load_xml_statement3710  */
static	ANTLR3_BITWORD FOLLOW_INTO_SYMBOL_in_load_xml_statement3710_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_INTO_SYMBOL_in_load_xml_statement3710	= { FOLLOW_INTO_SYMBOL_in_load_xml_statement3710_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_load_xml_statement3712  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_load_xml_statement3712_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_load_xml_statement3712	= { FOLLOW_TABLE_SYMBOL_in_load_xml_statement3712_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_identifier_in_load_xml_statement3714  */
static	ANTLR3_BITWORD FOLLOW_table_identifier_in_load_xml_statement3714_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBB9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A3DC), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x263D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_table_identifier_in_load_xml_statement3714	= { FOLLOW_table_identifier_in_load_xml_statement3714_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partition_on_load_option_in_load_xml_statement3718  */
static	ANTLR3_BITWORD FOLLOW_partition_on_load_option_in_load_xml_statement3718_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBB9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A3DC), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x263D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_partition_on_load_option_in_load_xml_statement3718	= { FOLLOW_partition_on_load_option_in_load_xml_statement3718_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_clause_in_load_xml_statement3721  */
static	ANTLR3_BITWORD FOLLOW_charset_clause_in_load_xml_statement3721_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A3DC), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x263D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_clause_in_load_xml_statement3721	= { FOLLOW_charset_clause_in_load_xml_statement3721_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_xml_rows_identified_by_in_load_xml_statement3724  */
static	ANTLR3_BITWORD FOLLOW_xml_rows_identified_by_in_load_xml_statement3724_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A3DC), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x263D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_xml_rows_identified_by_in_load_xml_statement3724	= { FOLLOW_xml_rows_identified_by_in_load_xml_statement3724_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_load_data_file_tail_in_load_xml_statement3729  */
static	ANTLR3_BITWORD FOLLOW_load_data_file_tail_in_load_xml_statement3729_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_load_data_file_tail_in_load_xml_statement3729	= { FOLLOW_load_data_file_tail_in_load_xml_statement3729_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_partition_on_load_option3743  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_partition_on_load_option3743_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_partition_on_load_option3743	= { FOLLOW_PARTITION_SYMBOL_in_partition_on_load_option3743_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_with_parentheses_in_partition_on_load_option3745  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_with_parentheses_in_partition_on_load_option3745_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_with_parentheses_in_partition_on_load_option3745	= { FOLLOW_identifier_list_with_parentheses_in_partition_on_load_option3745_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ROWS_SYMBOL_in_xml_rows_identified_by3755  */
static	ANTLR3_BITWORD FOLLOW_ROWS_SYMBOL_in_xml_rows_identified_by3755_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000008) };
static  ANTLR3_BITSET_LIST FOLLOW_ROWS_SYMBOL_in_xml_rows_identified_by3755	= { FOLLOW_ROWS_SYMBOL_in_xml_rows_identified_by3755_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IDENTIFIED_SYMBOL_in_xml_rows_identified_by3757  */
static	ANTLR3_BITWORD FOLLOW_IDENTIFIED_SYMBOL_in_xml_rows_identified_by3757_bits[]	= { ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_IDENTIFIED_SYMBOL_in_xml_rows_identified_by3757	= { FOLLOW_IDENTIFIED_SYMBOL_in_xml_rows_identified_by3757_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_xml_rows_identified_by3759  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_xml_rows_identified_by3759_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_xml_rows_identified_by3759	= { FOLLOW_BY_SYMBOL_in_xml_rows_identified_by3759_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_xml_rows_identified_by3761  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_xml_rows_identified_by3761_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_xml_rows_identified_by3761	= { FOLLOW_string_literal_in_xml_rows_identified_by3761_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IGNORE_SYMBOL_in_load_data_file_tail3771  */
static	ANTLR3_BITWORD FOLLOW_IGNORE_SYMBOL_in_load_data_file_tail3771_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_IGNORE_SYMBOL_in_load_data_file_tail3771	= { FOLLOW_IGNORE_SYMBOL_in_load_data_file_tail3771_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_load_data_file_tail3773  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_load_data_file_tail3773_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_load_data_file_tail3773	= { FOLLOW_INTEGER_in_load_data_file_tail3773_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LINES_SYMBOL_in_load_data_file_tail3775  */
static	ANTLR3_BITWORD FOLLOW_LINES_SYMBOL_in_load_data_file_tail3775_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F62), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x263D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_LINES_SYMBOL_in_load_data_file_tail3775	= { FOLLOW_LINES_SYMBOL_in_load_data_file_tail3775_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_load_data_file_target_list_in_load_data_file_tail3779  */
static	ANTLR3_BITWORD FOLLOW_load_data_file_target_list_in_load_data_file_tail3779_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F62), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_load_data_file_target_list_in_load_data_file_tail3779	= { FOLLOW_load_data_file_target_list_in_load_data_file_tail3779_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_assignment_list_with_default_in_load_data_file_tail3782  */
static	ANTLR3_BITWORD FOLLOW_column_assignment_list_with_default_in_load_data_file_tail3782_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_column_assignment_list_with_default_in_load_data_file_tail3782	= { FOLLOW_column_assignment_list_with_default_in_load_data_file_tail3782_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_load_data_file_target_list3792  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_load_data_file_target_list3792_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFF068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBFA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_load_data_file_target_list3792	= { FOLLOW_OPEN_PAR_SYMBOL_in_load_data_file_target_list3792_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_or_variable_list_in_load_data_file_target_list3794  */
static	ANTLR3_BITWORD FOLLOW_field_or_variable_list_in_load_data_file_target_list3794_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_field_or_variable_list_in_load_data_file_target_list3794	= { FOLLOW_field_or_variable_list_in_load_data_file_target_list3794_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_load_data_file_target_list3797  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_load_data_file_target_list3797_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_load_data_file_target_list3797	= { FOLLOW_CLOSE_PAR_SYMBOL_in_load_data_file_target_list3797_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_name_in_field_or_variable_list3807  */
static	ANTLR3_BITWORD FOLLOW_field_name_in_field_or_variable_list3807_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_field_name_in_field_or_variable_list3807	= { FOLLOW_field_name_in_field_or_variable_list3807_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_variable_in_field_or_variable_list3811  */
static	ANTLR3_BITWORD FOLLOW_user_variable_in_field_or_variable_list3811_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_user_variable_in_field_or_variable_list3811	= { FOLLOW_user_variable_in_field_or_variable_list3811_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_field_or_variable_list3815  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_field_or_variable_list3815_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFF068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_field_or_variable_list3815	= { FOLLOW_COMMA_SYMBOL_in_field_or_variable_list3815_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_name_in_field_or_variable_list3818  */
static	ANTLR3_BITWORD FOLLOW_field_name_in_field_or_variable_list3818_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_field_name_in_field_or_variable_list3818	= { FOLLOW_field_name_in_field_or_variable_list3818_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_variable_in_field_or_variable_list3822  */
static	ANTLR3_BITWORD FOLLOW_user_variable_in_field_or_variable_list3822_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_user_variable_in_field_or_variable_list3822	= { FOLLOW_user_variable_in_field_or_variable_list3822_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPLACE_SYMBOL_in_replace_statement3836  */
static	ANTLR3_BITWORD FOLLOW_REPLACE_SYMBOL_in_replace_statement3836_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA3A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E8A014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD822A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_REPLACE_SYMBOL_in_replace_statement3836	= { FOLLOW_REPLACE_SYMBOL_in_replace_statement3836_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTO_SYMBOL_in_replace_statement3847  */
static	ANTLR3_BITWORD FOLLOW_INTO_SYMBOL_in_replace_statement3847_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_INTO_SYMBOL_in_replace_statement3847	= { FOLLOW_INTO_SYMBOL_in_replace_statement3847_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_replace_statement3850  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_replace_statement3850_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000002000), ANTLR3_UINT64_LIT(0x0000401000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x00C0000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_replace_statement3850	= { FOLLOW_qualified_identifier_in_replace_statement3850_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_replace_statement3855  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_replace_statement3855_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_replace_statement3855	= { FOLLOW_PARTITION_SYMBOL_in_replace_statement3855_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_with_parentheses_in_replace_statement3857  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_with_parentheses_in_replace_statement3857_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000401000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x00C0000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_with_parentheses_in_replace_statement3857	= { FOLLOW_identifier_list_with_parentheses_in_replace_statement3857_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_insert_field_spec_in_replace_statement3861  */
static	ANTLR3_BITWORD FOLLOW_insert_field_spec_in_replace_statement3861_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_insert_field_spec_in_replace_statement3861	= { FOLLOW_insert_field_spec_in_replace_statement3861_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SELECT_SYMBOL_in_select_statement3872  */
static	ANTLR3_BITWORD FOLLOW_SELECT_SYMBOL_in_select_statement3872_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF869F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E54BCA2A1835), ANTLR3_UINT64_LIT(0x7D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7FBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5FBD7E002FF83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_SELECT_SYMBOL_in_select_statement3872	= { FOLLOW_SELECT_SYMBOL_in_select_statement3872_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_part2_in_select_statement3874  */
static	ANTLR3_BITWORD FOLLOW_select_part2_in_select_statement3874_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_select_part2_in_select_statement3874	= { FOLLOW_select_part2_in_select_statement3874_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_union_clause_in_select_statement3876  */
static	ANTLR3_BITWORD FOLLOW_union_clause_in_select_statement3876_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_union_clause_in_select_statement3876	= { FOLLOW_union_clause_in_select_statement3876_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_select_statement3882  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_select_statement3882_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_select_statement3882	= { FOLLOW_OPEN_PAR_SYMBOL_in_select_statement3882_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_paren_in_select_statement3884  */
static	ANTLR3_BITWORD FOLLOW_select_paren_in_select_statement3884_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_select_paren_in_select_statement3884	= { FOLLOW_select_paren_in_select_statement3884_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_select_statement3886  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_select_statement3886_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_select_statement3886	= { FOLLOW_CLOSE_PAR_SYMBOL_in_select_statement3886_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_union_clause_in_select_statement3889  */
static	ANTLR3_BITWORD FOLLOW_union_clause_in_select_statement3889_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_union_clause_in_select_statement3889	= { FOLLOW_union_clause_in_select_statement3889_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_order_by_clause_in_select_statement3893  */
static	ANTLR3_BITWORD FOLLOW_order_by_clause_in_select_statement3893_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_order_by_clause_in_select_statement3893	= { FOLLOW_order_by_clause_in_select_statement3893_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_clause_in_select_statement3895  */
static	ANTLR3_BITWORD FOLLOW_limit_clause_in_select_statement3895_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_clause_in_select_statement3895	= { FOLLOW_limit_clause_in_select_statement3895_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_clause_in_select_statement3900  */
static	ANTLR3_BITWORD FOLLOW_limit_clause_in_select_statement3900_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_clause_in_select_statement3900	= { FOLLOW_limit_clause_in_select_statement3900_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SELECT_SYMBOL_in_select_paren3911  */
static	ANTLR3_BITWORD FOLLOW_SELECT_SYMBOL_in_select_paren3911_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF869F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E54BCA2A1835), ANTLR3_UINT64_LIT(0x7D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7FBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5FBD7E002FF83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_SELECT_SYMBOL_in_select_paren3911	= { FOLLOW_SELECT_SYMBOL_in_select_paren3911_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_part2_in_select_paren3913  */
static	ANTLR3_BITWORD FOLLOW_select_part2_in_select_paren3913_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_select_part2_in_select_paren3913	= { FOLLOW_select_part2_in_select_paren3913_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_select_paren3918  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_select_paren3918_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_select_paren3918	= { FOLLOW_OPEN_PAR_SYMBOL_in_select_paren3918_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_paren_in_select_paren3920  */
static	ANTLR3_BITWORD FOLLOW_select_paren_in_select_paren3920_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_select_paren_in_select_paren3920	= { FOLLOW_select_paren_in_select_paren3920_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_select_paren3922  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_select_paren3922_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_select_paren3922	= { FOLLOW_CLOSE_PAR_SYMBOL_in_select_paren3922_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_option_in_select_part23945  */
static	ANTLR3_BITWORD FOLLOW_select_option_in_select_part23945_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF869F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E54BCA2A1835), ANTLR3_UINT64_LIT(0x7D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7FBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5FBD7E002FF83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_select_option_in_select_part23945	= { FOLLOW_select_option_in_select_part23945_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_item_list_in_select_part23949  */
static	ANTLR3_BITWORD FOLLOW_select_item_list_in_select_part23949_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001200000000), ANTLR3_UINT64_LIT(0x2000000020000000), ANTLR3_UINT64_LIT(0x0000000000000100) };
static  ANTLR3_BITSET_LIST FOLLOW_select_item_list_in_select_part23949	= { FOLLOW_select_item_list_in_select_part23949_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_source_and_options_in_select_part23951  */
static	ANTLR3_BITWORD FOLLOW_select_source_and_options_in_select_part23951_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000100) };
static  ANTLR3_BITSET_LIST FOLLOW_select_source_and_options_in_select_part23951	= { FOLLOW_select_source_and_options_in_select_part23951_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_from_tail_in_select_part23954  */
static	ANTLR3_BITWORD FOLLOW_select_from_tail_in_select_part23954_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_select_from_tail_in_select_part23954	= { FOLLOW_select_from_tail_in_select_part23954_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_subquery3964  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_subquery3964_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_subquery3964	= { FOLLOW_OPEN_PAR_SYMBOL_in_subquery3964_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SELECT_SYMBOL_in_subquery3966  */
static	ANTLR3_BITWORD FOLLOW_SELECT_SYMBOL_in_subquery3966_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF869F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E54BCA2A1835), ANTLR3_UINT64_LIT(0x7D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7FBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5FBD7E002FF83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_SELECT_SYMBOL_in_subquery3966	= { FOLLOW_SELECT_SYMBOL_in_subquery3966_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_part2_derived_in_subquery3968  */
static	ANTLR3_BITWORD FOLLOW_select_part2_derived_in_subquery3968_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_select_part2_derived_in_subquery3968	= { FOLLOW_select_part2_derived_in_subquery3968_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_union_clause_in_subquery3970  */
static	ANTLR3_BITWORD FOLLOW_union_clause_in_subquery3970_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_union_clause_in_subquery3970	= { FOLLOW_union_clause_in_subquery3970_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_subquery3973  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_subquery3973_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_subquery3973	= { FOLLOW_CLOSE_PAR_SYMBOL_in_subquery3973_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_query_expression_option_in_select_part2_derived4016  */
static	ANTLR3_BITWORD FOLLOW_query_expression_option_in_select_part2_derived4016_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF869F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E54BCA2A1835), ANTLR3_UINT64_LIT(0x7D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7FBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5FBD7E002FF83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_query_expression_option_in_select_part2_derived4016	= { FOLLOW_query_expression_option_in_select_part2_derived4016_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_item_list_in_select_part2_derived4020  */
static	ANTLR3_BITWORD FOLLOW_select_item_list_in_select_part2_derived4020_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001200000000), ANTLR3_UINT64_LIT(0x2000000020000000), ANTLR3_UINT64_LIT(0x0000000000000100) };
static  ANTLR3_BITSET_LIST FOLLOW_select_item_list_in_select_part2_derived4020	= { FOLLOW_select_item_list_in_select_part2_derived4020_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_source_and_options_in_select_part2_derived4022  */
static	ANTLR3_BITWORD FOLLOW_select_source_and_options_in_select_part2_derived4022_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000100) };
static  ANTLR3_BITSET_LIST FOLLOW_select_source_and_options_in_select_part2_derived4022	= { FOLLOW_select_source_and_options_in_select_part2_derived4022_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_from_tail_in_select_part2_derived4025  */
static	ANTLR3_BITWORD FOLLOW_select_from_tail_in_select_part2_derived4025_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_select_from_tail_in_select_part2_derived4025	= { FOLLOW_select_from_tail_in_select_part2_derived4025_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_query_expression_option_in_select_option4035  */
static	ANTLR3_BITWORD FOLLOW_query_expression_option_in_select_option4035_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_query_expression_option_in_select_option4035	= { FOLLOW_query_expression_option_in_select_option4035_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQL_NO_CACHE_SYMBOL_in_select_option4040  */
static	ANTLR3_BITWORD FOLLOW_SQL_NO_CACHE_SYMBOL_in_select_option4040_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SQL_NO_CACHE_SYMBOL_in_select_option4040	= { FOLLOW_SQL_NO_CACHE_SYMBOL_in_select_option4040_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQL_CACHE_SYMBOL_in_select_option4045  */
static	ANTLR3_BITWORD FOLLOW_SQL_CACHE_SYMBOL_in_select_option4045_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SQL_CACHE_SYMBOL_in_select_option4045	= { FOLLOW_SQL_CACHE_SYMBOL_in_select_option4045_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_item_in_select_item_list4100  */
static	ANTLR3_BITWORD FOLLOW_select_item_in_select_item_list4100_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_select_item_in_select_item_list4100	= { FOLLOW_select_item_in_select_item_list4100_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_OPERATOR_in_select_item_list4104  */
static	ANTLR3_BITWORD FOLLOW_MULT_OPERATOR_in_select_item_list4104_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MULT_OPERATOR_in_select_item_list4104	= { FOLLOW_MULT_OPERATOR_in_select_item_list4104_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_select_item_list4108  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_select_item_list4108_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_select_item_list4108	= { FOLLOW_COMMA_SYMBOL_in_select_item_list4108_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_item_in_select_item_list4110  */
static	ANTLR3_BITWORD FOLLOW_select_item_in_select_item_list4110_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_select_item_in_select_item_list4110	= { FOLLOW_select_item_in_select_item_list4110_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_with_wildcard_in_select_item4127  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_with_wildcard_in_select_item4127_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_with_wildcard_in_select_item4127	= { FOLLOW_qualified_identifier_with_wildcard_in_select_item4127_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_select_item4140  */
static	ANTLR3_BITWORD FOLLOW_expression_in_select_item4140_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE468F62), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_select_item4140	= { FOLLOW_expression_in_select_item4140_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_alias_in_select_item4142  */
static	ANTLR3_BITWORD FOLLOW_select_alias_in_select_item4142_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_select_alias_in_select_item4142	= { FOLLOW_select_alias_in_select_item4142_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AS_SYMBOL_in_select_alias4163  */
static	ANTLR3_BITWORD FOLLOW_AS_SYMBOL_in_select_alias4163_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_AS_SYMBOL_in_select_alias4163	= { FOLLOW_AS_SYMBOL_in_select_alias4163_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_select_alias4166  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_select_alias4166_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_select_alias4166	= { FOLLOW_text_or_identifier_in_select_alias4166_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_clause_in_select_source_and_options4184  */
static	ANTLR3_BITWORD FOLLOW_limit_clause_in_select_source_and_options4184_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_clause_in_select_source_and_options4184	= { FOLLOW_limit_clause_in_select_source_and_options4184_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_into_clause_in_select_source_and_options4189  */
static	ANTLR3_BITWORD FOLLOW_into_clause_in_select_source_and_options4189_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_into_clause_in_select_source_and_options4189	= { FOLLOW_into_clause_in_select_source_and_options4189_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_from_in_select_source_and_options4191  */
static	ANTLR3_BITWORD FOLLOW_select_from_in_select_source_and_options4191_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_select_from_in_select_source_and_options4191	= { FOLLOW_select_from_in_select_source_and_options4191_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_from_in_select_source_and_options4197  */
static	ANTLR3_BITWORD FOLLOW_select_from_in_select_source_and_options4197_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000020000000) };
static  ANTLR3_BITSET_LIST FOLLOW_select_from_in_select_source_and_options4197	= { FOLLOW_select_from_in_select_source_and_options4197_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_into_clause_in_select_source_and_options4199  */
static	ANTLR3_BITWORD FOLLOW_into_clause_in_select_source_and_options4199_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_into_clause_in_select_source_and_options4199	= { FOLLOW_into_clause_in_select_source_and_options4199_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LIMIT_SYMBOL_in_limit_clause4209  */
static	ANTLR3_BITWORD FOLLOW_LIMIT_SYMBOL_in_limit_clause4209_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88414A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBEF0), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_LIMIT_SYMBOL_in_limit_clause4209	= { FOLLOW_LIMIT_SYMBOL_in_limit_clause4209_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_options_in_limit_clause4211  */
static	ANTLR3_BITWORD FOLLOW_limit_options_in_limit_clause4211_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_options_in_limit_clause4211	= { FOLLOW_limit_options_in_limit_clause4211_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_option_in_limit_options4220  */
static	ANTLR3_BITWORD FOLLOW_limit_option_in_limit_options4220_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_option_in_limit_options4220	= { FOLLOW_limit_option_in_limit_options4220_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_limit_options4223  */
static	ANTLR3_BITWORD FOLLOW_set_in_limit_options4223_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88414A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBEF0), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_limit_options4223	= { FOLLOW_set_in_limit_options4223_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_option_in_limit_options4231  */
static	ANTLR3_BITWORD FOLLOW_limit_option_in_limit_options4231_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_option_in_limit_options4231	= { FOLLOW_limit_option_in_limit_options4231_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARAM_MARKER_in_limit_option4242  */
static	ANTLR3_BITWORD FOLLOW_PARAM_MARKER_in_limit_option4242_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PARAM_MARKER_in_limit_option4242	= { FOLLOW_PARAM_MARKER_in_limit_option4242_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_limit_option4247  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_limit_option4247_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_limit_option4247	= { FOLLOW_INTEGER_in_limit_option4247_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_limit_option4252  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_limit_option4252_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_limit_option4252	= { FOLLOW_identifier_in_limit_option4252_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTO_SYMBOL_in_into_clause4262  */
static	ANTLR3_BITWORD FOLLOW_INTO_SYMBOL_in_into_clause4262_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFF068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE74), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_INTO_SYMBOL_in_into_clause4262	= { FOLLOW_INTO_SYMBOL_in_into_clause4262_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OUTFILE_SYMBOL_in_into_clause4269  */
static	ANTLR3_BITWORD FOLLOW_OUTFILE_SYMBOL_in_into_clause4269_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OUTFILE_SYMBOL_in_into_clause4269	= { FOLLOW_OUTFILE_SYMBOL_in_into_clause4269_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_into_clause4271  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_into_clause4271_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000200180), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_into_clause4271	= { FOLLOW_string_literal_in_into_clause4271_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_clause_in_into_clause4273  */
static	ANTLR3_BITWORD FOLLOW_charset_clause_in_into_clause4273_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000200000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_clause_in_into_clause4273	= { FOLLOW_charset_clause_in_into_clause4273_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_fields_clause_in_into_clause4276  */
static	ANTLR3_BITWORD FOLLOW_fields_clause_in_into_clause4276_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_fields_clause_in_into_clause4276	= { FOLLOW_fields_clause_in_into_clause4276_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_lines_clause_in_into_clause4279  */
static	ANTLR3_BITWORD FOLLOW_lines_clause_in_into_clause4279_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_lines_clause_in_into_clause4279	= { FOLLOW_lines_clause_in_into_clause4279_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DUMPFILE_SYMBOL_in_into_clause4286  */
static	ANTLR3_BITWORD FOLLOW_DUMPFILE_SYMBOL_in_into_clause4286_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DUMPFILE_SYMBOL_in_into_clause4286	= { FOLLOW_DUMPFILE_SYMBOL_in_into_clause4286_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_into_clause4288  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_into_clause4288_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_into_clause4288	= { FOLLOW_string_literal_in_into_clause4288_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AT_SIGN_SYMBOL_in_into_clause4294  */
static	ANTLR3_BITWORD FOLLOW_AT_SIGN_SYMBOL_in_into_clause4294_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_AT_SIGN_SYMBOL_in_into_clause4294	= { FOLLOW_AT_SIGN_SYMBOL_in_into_clause4294_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_at_variable_identifier_in_into_clause4297  */
static	ANTLR3_BITWORD FOLLOW_at_variable_identifier_in_into_clause4297_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_at_variable_identifier_in_into_clause4297	= { FOLLOW_at_variable_identifier_in_into_clause4297_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_into_clause4300  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_into_clause4300_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFF068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_into_clause4300	= { FOLLOW_COMMA_SYMBOL_in_into_clause4300_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AT_SIGN_SYMBOL_in_into_clause4302  */
static	ANTLR3_BITWORD FOLLOW_AT_SIGN_SYMBOL_in_into_clause4302_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_AT_SIGN_SYMBOL_in_into_clause4302	= { FOLLOW_AT_SIGN_SYMBOL_in_into_clause4302_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_at_variable_identifier_in_into_clause4305  */
static	ANTLR3_BITWORD FOLLOW_at_variable_identifier_in_into_clause4305_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_at_variable_identifier_in_into_clause4305	= { FOLLOW_at_variable_identifier_in_into_clause4305_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_select_from4319  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_select_from4319_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8F543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x263D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_select_from4319	= { FOLLOW_FROM_SYMBOL_in_select_from4319_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DUAL_SYMBOL_in_select_from4326  */
static	ANTLR3_BITWORD FOLLOW_DUAL_SYMBOL_in_select_from4326_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_DUAL_SYMBOL_in_select_from4326	= { FOLLOW_DUAL_SYMBOL_in_select_from4326_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_where_clause_in_select_from4328  */
static	ANTLR3_BITWORD FOLLOW_where_clause_in_select_from4328_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_where_clause_in_select_from4328	= { FOLLOW_where_clause_in_select_from4328_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_clause_in_select_from4331  */
static	ANTLR3_BITWORD FOLLOW_limit_clause_in_select_from4331_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_clause_in_select_from4331	= { FOLLOW_limit_clause_in_select_from4331_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_references_in_select_from4352  */
static	ANTLR3_BITWORD FOLLOW_table_references_in_select_from4352_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0090000000000000), ANTLR3_UINT64_LIT(0x2000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000), ANTLR3_UINT64_LIT(0x0000000100000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_table_references_in_select_from4352	= { FOLLOW_table_references_in_select_from4352_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_where_clause_in_select_from4354  */
static	ANTLR3_BITWORD FOLLOW_where_clause_in_select_from4354_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0090000000000000), ANTLR3_UINT64_LIT(0x2000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000), ANTLR3_UINT64_LIT(0x0000000100000000) };
static  ANTLR3_BITSET_LIST FOLLOW_where_clause_in_select_from4354	= { FOLLOW_where_clause_in_select_from4354_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_group_by_clause_in_select_from4357  */
static	ANTLR3_BITWORD FOLLOW_group_by_clause_in_select_from4357_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000000000000), ANTLR3_UINT64_LIT(0x2000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000), ANTLR3_UINT64_LIT(0x0000000100000000) };
static  ANTLR3_BITSET_LIST FOLLOW_group_by_clause_in_select_from4357	= { FOLLOW_group_by_clause_in_select_from4357_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_having_clause_in_select_from4360  */
static	ANTLR3_BITWORD FOLLOW_having_clause_in_select_from4360_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000), ANTLR3_UINT64_LIT(0x0000000100000000) };
static  ANTLR3_BITSET_LIST FOLLOW_having_clause_in_select_from4360	= { FOLLOW_having_clause_in_select_from4360_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_order_by_clause_in_select_from4363  */
static	ANTLR3_BITWORD FOLLOW_order_by_clause_in_select_from4363_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000100000000) };
static  ANTLR3_BITSET_LIST FOLLOW_order_by_clause_in_select_from4363	= { FOLLOW_order_by_clause_in_select_from4363_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_clause_in_select_from4366  */
static	ANTLR3_BITWORD FOLLOW_limit_clause_in_select_from4366_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000100000000) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_clause_in_select_from4366	= { FOLLOW_limit_clause_in_select_from4366_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_procedure_analyse_clause_in_select_from4369  */
static	ANTLR3_BITWORD FOLLOW_procedure_analyse_clause_in_select_from4369_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_procedure_analyse_clause_in_select_from4369	= { FOLLOW_procedure_analyse_clause_in_select_from4369_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROCEDURE_SYMBOL_in_procedure_analyse_clause4414  */
static	ANTLR3_BITWORD FOLLOW_PROCEDURE_SYMBOL_in_procedure_analyse_clause4414_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_PROCEDURE_SYMBOL_in_procedure_analyse_clause4414	= { FOLLOW_PROCEDURE_SYMBOL_in_procedure_analyse_clause4414_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ANALYSE_SYMBOL_in_procedure_analyse_clause4417  */
static	ANTLR3_BITWORD FOLLOW_ANALYSE_SYMBOL_in_procedure_analyse_clause4417_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ANALYSE_SYMBOL_in_procedure_analyse_clause4417	= { FOLLOW_ANALYSE_SYMBOL_in_procedure_analyse_clause4417_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_procedure_analyse_clause4419  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_procedure_analyse_clause4419_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_procedure_analyse_clause4419	= { FOLLOW_OPEN_PAR_SYMBOL_in_procedure_analyse_clause4419_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_procedure_analyse_clause4422  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_procedure_analyse_clause4422_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002004000) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_procedure_analyse_clause4422	= { FOLLOW_INTEGER_in_procedure_analyse_clause4422_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_procedure_analyse_clause4425  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_procedure_analyse_clause4425_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_procedure_analyse_clause4425	= { FOLLOW_COMMA_SYMBOL_in_procedure_analyse_clause4425_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_procedure_analyse_clause4427  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_procedure_analyse_clause4427_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_procedure_analyse_clause4427	= { FOLLOW_INTEGER_in_procedure_analyse_clause4427_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_procedure_analyse_clause4433  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_procedure_analyse_clause4433_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_procedure_analyse_clause4433	= { FOLLOW_CLOSE_PAR_SYMBOL_in_procedure_analyse_clause4433_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HAVING_SYMBOL_in_having_clause4442  */
static	ANTLR3_BITWORD FOLLOW_HAVING_SYMBOL_in_having_clause4442_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_HAVING_SYMBOL_in_having_clause4442	= { FOLLOW_HAVING_SYMBOL_in_having_clause4442_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_having_clause4445  */
static	ANTLR3_BITWORD FOLLOW_expression_in_having_clause4445_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_having_clause4445	= { FOLLOW_expression_in_having_clause4445_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GROUP_SYMBOL_in_group_by_clause4454  */
static	ANTLR3_BITWORD FOLLOW_GROUP_SYMBOL_in_group_by_clause4454_bits[]	= { ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_GROUP_SYMBOL_in_group_by_clause4454	= { FOLLOW_GROUP_SYMBOL_in_group_by_clause4454_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_group_by_clause4457  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_group_by_clause4457_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_group_by_clause4457	= { FOLLOW_BY_SYMBOL_in_group_by_clause4457_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_with_direction_in_group_by_clause4459  */
static	ANTLR3_BITWORD FOLLOW_expression_list_with_direction_in_group_by_clause4459_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_with_direction_in_group_by_clause4459	= { FOLLOW_expression_list_with_direction_in_group_by_clause4459_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_olap_option_in_group_by_clause4461  */
static	ANTLR3_BITWORD FOLLOW_olap_option_in_group_by_clause4461_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_olap_option_in_group_by_clause4461	= { FOLLOW_olap_option_in_group_by_clause4461_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_olap_option4471  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_olap_option4471_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0008000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_WITH_SYMBOL_in_olap_option4471	= { FOLLOW_WITH_SYMBOL_in_olap_option4471_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CUBE_SYMBOL_in_olap_option4473  */
static	ANTLR3_BITWORD FOLLOW_CUBE_SYMBOL_in_olap_option4473_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CUBE_SYMBOL_in_olap_option4473	= { FOLLOW_CUBE_SYMBOL_in_olap_option4473_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_olap_option4478  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_olap_option4478_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_WITH_SYMBOL_in_olap_option4478	= { FOLLOW_WITH_SYMBOL_in_olap_option4478_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ROLLUP_SYMBOL_in_olap_option4480  */
static	ANTLR3_BITWORD FOLLOW_ROLLUP_SYMBOL_in_olap_option4480_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ROLLUP_SYMBOL_in_olap_option4480	= { FOLLOW_ROLLUP_SYMBOL_in_olap_option4480_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ORDER_SYMBOL_in_order_by_clause4489  */
static	ANTLR3_BITWORD FOLLOW_ORDER_SYMBOL_in_order_by_clause4489_bits[]	= { ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ORDER_SYMBOL_in_order_by_clause4489	= { FOLLOW_ORDER_SYMBOL_in_order_by_clause4489_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_order_by_clause4492  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_order_by_clause4492_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_order_by_clause4492	= { FOLLOW_BY_SYMBOL_in_order_by_clause4492_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_with_direction_in_order_by_clause4494  */
static	ANTLR3_BITWORD FOLLOW_expression_list_with_direction_in_order_by_clause4494_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_with_direction_in_order_by_clause4494	= { FOLLOW_expression_list_with_direction_in_order_by_clause4494_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WHERE_SYMBOL_in_where_clause4525  */
static	ANTLR3_BITWORD FOLLOW_WHERE_SYMBOL_in_where_clause4525_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_WHERE_SYMBOL_in_where_clause4525	= { FOLLOW_WHERE_SYMBOL_in_where_clause4525_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_where_clause4528  */
static	ANTLR3_BITWORD FOLLOW_expression_in_where_clause4528_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_where_clause4528	= { FOLLOW_expression_in_where_clause4528_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_escaped_table_reference_in_table_references4538  */
static	ANTLR3_BITWORD FOLLOW_escaped_table_reference_in_table_references4538_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_escaped_table_reference_in_table_references4538	= { FOLLOW_escaped_table_reference_in_table_references4538_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_table_references4541  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_table_references4541_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x263D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_table_references4541	= { FOLLOW_COMMA_SYMBOL_in_table_references4541_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_escaped_table_reference_in_table_references4543  */
static	ANTLR3_BITWORD FOLLOW_escaped_table_reference_in_table_references4543_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_escaped_table_reference_in_table_references4543	= { FOLLOW_escaped_table_reference_in_table_references4543_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_reference_in_escaped_table_reference4560  */
static	ANTLR3_BITWORD FOLLOW_table_reference_in_escaped_table_reference4560_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_reference_in_escaped_table_reference4560	= { FOLLOW_table_reference_in_escaped_table_reference4560_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_732_in_escaped_table_reference4565  */
static	ANTLR3_BITWORD FOLLOW_732_in_escaped_table_reference4565_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_732_in_escaped_table_reference4565	= { FOLLOW_732_in_escaped_table_reference4565_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_escaped_table_reference4567  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_escaped_table_reference4567_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x263D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_escaped_table_reference4567	= { FOLLOW_identifier_in_escaped_table_reference4567_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_reference_in_escaped_table_reference4569  */
static	ANTLR3_BITWORD FOLLOW_table_reference_in_escaped_table_reference4569_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000020000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_reference_in_escaped_table_reference4569	= { FOLLOW_table_reference_in_escaped_table_reference4569_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_733_in_escaped_table_reference4571  */
static	ANTLR3_BITWORD FOLLOW_733_in_escaped_table_reference4571_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_733_in_escaped_table_reference4571	= { FOLLOW_733_in_escaped_table_reference4571_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_factor_in_table_reference4580  */
static	ANTLR3_BITWORD FOLLOW_table_factor_in_table_reference4580_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0004000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0020080000004000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000800000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000020000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_factor_in_table_reference4580	= { FOLLOW_table_factor_in_table_reference4580_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_join_in_table_reference4596  */
static	ANTLR3_BITWORD FOLLOW_join_in_table_reference4596_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0004000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0020080000004000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000800000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000020000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_join_in_table_reference4596	= { FOLLOW_join_in_table_reference4596_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_join_table_in_join4618  */
static	ANTLR3_BITWORD FOLLOW_join_table_in_join4618_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_join_table_in_join4618	= { FOLLOW_join_table_in_join4618_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_subquery_in_table_factor4637  */
static	ANTLR3_BITWORD FOLLOW_subquery_in_table_factor4637_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE468F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x3FA8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_subquery_in_table_factor4637	= { FOLLOW_subquery_in_table_factor4637_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_alias_in_table_factor4639  */
static	ANTLR3_BITWORD FOLLOW_table_alias_in_table_factor4639_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_alias_in_table_factor4639	= { FOLLOW_table_alias_in_table_factor4639_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_table_factor4644  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_table_factor4644_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x263D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_table_factor4644	= { FOLLOW_OPEN_PAR_SYMBOL_in_table_factor4644_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_references_in_table_factor4646  */
static	ANTLR3_BITWORD FOLLOW_table_references_in_table_factor4646_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_references_in_table_factor4646	= { FOLLOW_table_references_in_table_factor4646_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_table_factor4648  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_table_factor4648_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_table_factor4648	= { FOLLOW_CLOSE_PAR_SYMBOL_in_table_factor4648_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_identifier_in_table_factor4653  */
static	ANTLR3_BITWORD FOLLOW_table_identifier_in_table_factor4653_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE468F62), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x3FA8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4561C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A3DC), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0883D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_table_identifier_in_table_factor4653	= { FOLLOW_table_identifier_in_table_factor4653_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_table_factor4656  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_table_factor4656_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_table_factor4656	= { FOLLOW_PARTITION_SYMBOL_in_table_factor4656_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_with_parentheses_in_table_factor4658  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_with_parentheses_in_table_factor4658_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE468F62), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x3FA8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4561C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A3DC), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0883D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_with_parentheses_in_table_factor4658	= { FOLLOW_identifier_list_with_parentheses_in_table_factor4658_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_alias_in_table_factor4662  */
static	ANTLR3_BITWORD FOLLOW_table_alias_in_table_factor4662_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_alias_in_table_factor4662	= { FOLLOW_table_alias_in_table_factor4662_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_hint_list_in_table_factor4665  */
static	ANTLR3_BITWORD FOLLOW_index_hint_list_in_table_factor4665_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_index_hint_list_in_table_factor4665	= { FOLLOW_index_hint_list_in_table_factor4665_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_table_identifier4702  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_table_identifier4702_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000004000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_table_identifier4702	= { FOLLOW_identifier_in_table_identifier4702_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOT_SYMBOL_in_table_identifier4718  */
static	ANTLR3_BITWORD FOLLOW_DOT_SYMBOL_in_table_identifier4718_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_DOT_SYMBOL_in_table_identifier4718	= { FOLLOW_DOT_SYMBOL_in_table_identifier4718_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_table_identifier4720  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_table_identifier4720_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_table_identifier4720	= { FOLLOW_identifier_in_table_identifier4720_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOT_SYMBOL_in_table_identifier4727  */
static	ANTLR3_BITWORD FOLLOW_DOT_SYMBOL_in_table_identifier4727_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_DOT_SYMBOL_in_table_identifier4727	= { FOLLOW_DOT_SYMBOL_in_table_identifier4727_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_table_identifier4729  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_table_identifier4729_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_table_identifier4729	= { FOLLOW_identifier_in_table_identifier4729_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_JOIN_SYMBOL_in_join_table4747  */
static	ANTLR3_BITWORD FOLLOW_JOIN_SYMBOL_in_join_table4747_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x263D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_JOIN_SYMBOL_in_join_table4747	= { FOLLOW_JOIN_SYMBOL_in_join_table4747_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_reference_in_join_table4749  */
static	ANTLR3_BITWORD FOLLOW_table_reference_in_join_table4749_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_reference_in_join_table4749	= { FOLLOW_table_reference_in_join_table4749_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_join_condition_in_join_table4763  */
static	ANTLR3_BITWORD FOLLOW_join_condition_in_join_table4763_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_join_condition_in_join_table4763	= { FOLLOW_join_condition_in_join_table4763_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STRAIGHT_JOIN_SYMBOL_in_join_table4770  */
static	ANTLR3_BITWORD FOLLOW_STRAIGHT_JOIN_SYMBOL_in_join_table4770_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x263D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_STRAIGHT_JOIN_SYMBOL_in_join_table4770	= { FOLLOW_STRAIGHT_JOIN_SYMBOL_in_join_table4770_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_factor_in_join_table4772  */
static	ANTLR3_BITWORD FOLLOW_table_factor_in_join_table4772_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_factor_in_join_table4772	= { FOLLOW_table_factor_in_join_table4772_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_join_table4786  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_join_table4786_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_join_table4786	= { FOLLOW_ON_SYMBOL_in_join_table4786_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_join_table4788  */
static	ANTLR3_BITWORD FOLLOW_expression_in_join_table4788_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_join_table4788	= { FOLLOW_expression_in_join_table4788_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_join_table4795  */
static	ANTLR3_BITWORD FOLLOW_set_in_join_table4795_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000080000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_join_table4795	= { FOLLOW_set_in_join_table4795_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OUTER_SYMBOL_in_join_table4803  */
static	ANTLR3_BITWORD FOLLOW_OUTER_SYMBOL_in_join_table4803_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000080000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OUTER_SYMBOL_in_join_table4803	= { FOLLOW_OUTER_SYMBOL_in_join_table4803_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_JOIN_SYMBOL_in_join_table4806  */
static	ANTLR3_BITWORD FOLLOW_JOIN_SYMBOL_in_join_table4806_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x263D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_JOIN_SYMBOL_in_join_table4806	= { FOLLOW_JOIN_SYMBOL_in_join_table4806_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_reference_in_join_table4808  */
static	ANTLR3_BITWORD FOLLOW_table_reference_in_join_table4808_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_reference_in_join_table4808	= { FOLLOW_table_reference_in_join_table4808_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_join_condition_in_join_table4810  */
static	ANTLR3_BITWORD FOLLOW_join_condition_in_join_table4810_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_join_condition_in_join_table4810	= { FOLLOW_join_condition_in_join_table4810_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NATURAL_SYMBOL_in_join_table4815  */
static	ANTLR3_BITWORD FOLLOW_NATURAL_SYMBOL_in_join_table4815_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0020080000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_NATURAL_SYMBOL_in_join_table4815	= { FOLLOW_NATURAL_SYMBOL_in_join_table4815_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_join_table4818  */
static	ANTLR3_BITWORD FOLLOW_set_in_join_table4818_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000080000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_join_table4818	= { FOLLOW_set_in_join_table4818_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OUTER_SYMBOL_in_join_table4826  */
static	ANTLR3_BITWORD FOLLOW_OUTER_SYMBOL_in_join_table4826_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000080000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OUTER_SYMBOL_in_join_table4826	= { FOLLOW_OUTER_SYMBOL_in_join_table4826_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_JOIN_SYMBOL_in_join_table4831  */
static	ANTLR3_BITWORD FOLLOW_JOIN_SYMBOL_in_join_table4831_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x263D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_JOIN_SYMBOL_in_join_table4831	= { FOLLOW_JOIN_SYMBOL_in_join_table4831_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_factor_in_join_table4833  */
static	ANTLR3_BITWORD FOLLOW_table_factor_in_join_table4833_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_factor_in_join_table4833	= { FOLLOW_table_factor_in_join_table4833_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_join_condition4842  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_join_condition4842_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_join_condition4842	= { FOLLOW_ON_SYMBOL_in_join_condition4842_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_join_condition4844  */
static	ANTLR3_BITWORD FOLLOW_expression_in_join_condition4844_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_join_condition4844	= { FOLLOW_expression_in_join_condition4844_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USING_SYMBOL_in_join_condition4849  */
static	ANTLR3_BITWORD FOLLOW_USING_SYMBOL_in_join_condition4849_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_USING_SYMBOL_in_join_condition4849	= { FOLLOW_USING_SYMBOL_in_join_condition4849_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_with_parentheses_in_join_condition4851  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_with_parentheses_in_join_condition4851_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_with_parentheses_in_join_condition4851	= { FOLLOW_identifier_list_with_parentheses_in_join_condition4851_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_union_clause_in_union_opt4860  */
static	ANTLR3_BITWORD FOLLOW_union_clause_in_union_opt4860_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_union_clause_in_union_opt4860	= { FOLLOW_union_clause_in_union_opt4860_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_order_by_clause_in_union_opt4865  */
static	ANTLR3_BITWORD FOLLOW_order_by_clause_in_union_opt4865_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_order_by_clause_in_union_opt4865	= { FOLLOW_order_by_clause_in_union_opt4865_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_clause_in_union_opt4867  */
static	ANTLR3_BITWORD FOLLOW_limit_clause_in_union_opt4867_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_clause_in_union_opt4867	= { FOLLOW_limit_clause_in_union_opt4867_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_clause_in_union_opt4873  */
static	ANTLR3_BITWORD FOLLOW_limit_clause_in_union_opt4873_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_clause_in_union_opt4873	= { FOLLOW_limit_clause_in_union_opt4873_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNION_SYMBOL_in_union_clause4884  */
static	ANTLR3_BITWORD FOLLOW_UNION_SYMBOL_in_union_clause4884_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000800000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_UNION_SYMBOL_in_union_clause4884	= { FOLLOW_UNION_SYMBOL_in_union_clause4884_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_union_option_in_union_clause4887  */
static	ANTLR3_BITWORD FOLLOW_union_option_in_union_clause4887_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_union_option_in_union_clause4887	= { FOLLOW_union_option_in_union_clause4887_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_statement_in_union_clause4890  */
static	ANTLR3_BITWORD FOLLOW_select_statement_in_union_clause4890_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_select_statement_in_union_clause4890	= { FOLLOW_select_statement_in_union_clause4890_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_select_from_tail4914  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_select_from_tail4914_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000080000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FOR_SYMBOL_in_select_from_tail4914	= { FOLLOW_FOR_SYMBOL_in_select_from_tail4914_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UPDATE_SYMBOL_in_select_from_tail4916  */
static	ANTLR3_BITWORD FOLLOW_UPDATE_SYMBOL_in_select_from_tail4916_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_UPDATE_SYMBOL_in_select_from_tail4916	= { FOLLOW_UPDATE_SYMBOL_in_select_from_tail4916_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOCK_SYMBOL_in_select_from_tail4921  */
static	ANTLR3_BITWORD FOLLOW_LOCK_SYMBOL_in_select_from_tail4921_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000100000000) };
static  ANTLR3_BITSET_LIST FOLLOW_LOCK_SYMBOL_in_select_from_tail4921	= { FOLLOW_LOCK_SYMBOL_in_select_from_tail4921_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IN_SYMBOL_in_select_from_tail4923  */
static	ANTLR3_BITWORD FOLLOW_IN_SYMBOL_in_select_from_tail4923_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0001000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_IN_SYMBOL_in_select_from_tail4923	= { FOLLOW_IN_SYMBOL_in_select_from_tail4923_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SHARE_SYMBOL_in_select_from_tail4925  */
static	ANTLR3_BITWORD FOLLOW_SHARE_SYMBOL_in_select_from_tail4925_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_SHARE_SYMBOL_in_select_from_tail4925	= { FOLLOW_SHARE_SYMBOL_in_select_from_tail4925_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MODE_SYMBOL_in_select_from_tail4927  */
static	ANTLR3_BITWORD FOLLOW_MODE_SYMBOL_in_select_from_tail4927_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MODE_SYMBOL_in_select_from_tail4927	= { FOLLOW_MODE_SYMBOL_in_select_from_tail4927_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_table_alias4945  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_table_alias4945_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_table_alias4945	= { FOLLOW_identifier_in_table_alias4945_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_hint_in_index_hint_list4954  */
static	ANTLR3_BITWORD FOLLOW_index_hint_in_index_hint_list4954_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_hint_in_index_hint_list4954	= { FOLLOW_index_hint_in_index_hint_list4954_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_index_hint_list4957  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_index_hint_list4957_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_index_hint_list4957	= { FOLLOW_COMMA_SYMBOL_in_index_hint_list4957_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_hint_in_index_hint_list4959  */
static	ANTLR3_BITWORD FOLLOW_index_hint_in_index_hint_list4959_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_hint_in_index_hint_list4959	= { FOLLOW_index_hint_in_index_hint_list4959_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_hint_type_in_index_hint4985  */
static	ANTLR3_BITWORD FOLLOW_index_hint_type_in_index_hint4985_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_index_hint_type_in_index_hint4985	= { FOLLOW_index_hint_type_in_index_hint4985_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_key_or_index_in_index_hint4987  */
static	ANTLR3_BITWORD FOLLOW_key_or_index_in_index_hint4987_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_key_or_index_in_index_hint4987	= { FOLLOW_key_or_index_in_index_hint4987_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_hint_clause_in_index_hint4989  */
static	ANTLR3_BITWORD FOLLOW_index_hint_clause_in_index_hint4989_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_hint_clause_in_index_hint4989	= { FOLLOW_index_hint_clause_in_index_hint4989_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_index_hint4992  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_index_hint4992_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEF8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_index_hint4992	= { FOLLOW_OPEN_PAR_SYMBOL_in_index_hint4992_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_list_in_index_hint4994  */
static	ANTLR3_BITWORD FOLLOW_index_list_in_index_hint4994_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_list_in_index_hint4994	= { FOLLOW_index_list_in_index_hint4994_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_index_hint4996  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_index_hint4996_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_index_hint4996	= { FOLLOW_CLOSE_PAR_SYMBOL_in_index_hint4996_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USE_SYMBOL_in_index_hint5001  */
static	ANTLR3_BITWORD FOLLOW_USE_SYMBOL_in_index_hint5001_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_USE_SYMBOL_in_index_hint5001	= { FOLLOW_USE_SYMBOL_in_index_hint5001_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_key_or_index_in_index_hint5003  */
static	ANTLR3_BITWORD FOLLOW_key_or_index_in_index_hint5003_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_key_or_index_in_index_hint5003	= { FOLLOW_key_or_index_in_index_hint5003_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_hint_clause_in_index_hint5005  */
static	ANTLR3_BITWORD FOLLOW_index_hint_clause_in_index_hint5005_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_hint_clause_in_index_hint5005	= { FOLLOW_index_hint_clause_in_index_hint5005_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_index_hint5008  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_index_hint5008_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBFA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEF8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_index_hint5008	= { FOLLOW_OPEN_PAR_SYMBOL_in_index_hint5008_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_list_in_index_hint5010  */
static	ANTLR3_BITWORD FOLLOW_index_list_in_index_hint5010_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_list_in_index_hint5010	= { FOLLOW_index_list_in_index_hint5010_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_index_hint5013  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_index_hint5013_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_index_hint5013	= { FOLLOW_CLOSE_PAR_SYMBOL_in_index_hint5013_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_index_hint_clause5049  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_index_hint_clause5049_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000080000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FOR_SYMBOL_in_index_hint_clause5049	= { FOLLOW_FOR_SYMBOL_in_index_hint_clause5049_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_JOIN_SYMBOL_in_index_hint_clause5052  */
static	ANTLR3_BITWORD FOLLOW_JOIN_SYMBOL_in_index_hint_clause5052_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_JOIN_SYMBOL_in_index_hint_clause5052	= { FOLLOW_JOIN_SYMBOL_in_index_hint_clause5052_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ORDER_SYMBOL_in_index_hint_clause5056  */
static	ANTLR3_BITWORD FOLLOW_ORDER_SYMBOL_in_index_hint_clause5056_bits[]	= { ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ORDER_SYMBOL_in_index_hint_clause5056	= { FOLLOW_ORDER_SYMBOL_in_index_hint_clause5056_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_index_hint_clause5058  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_index_hint_clause5058_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_index_hint_clause5058	= { FOLLOW_BY_SYMBOL_in_index_hint_clause5058_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GROUP_SYMBOL_in_index_hint_clause5062  */
static	ANTLR3_BITWORD FOLLOW_GROUP_SYMBOL_in_index_hint_clause5062_bits[]	= { ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_GROUP_SYMBOL_in_index_hint_clause5062	= { FOLLOW_GROUP_SYMBOL_in_index_hint_clause5062_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_index_hint_clause5064  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_index_hint_clause5064_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_index_hint_clause5064	= { FOLLOW_BY_SYMBOL_in_index_hint_clause5064_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_list_element_in_index_list5074  */
static	ANTLR3_BITWORD FOLLOW_index_list_element_in_index_list5074_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_list_element_in_index_list5074	= { FOLLOW_index_list_element_in_index_list5074_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_index_list5077  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_index_list5077_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEF8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_index_list5077	= { FOLLOW_COMMA_SYMBOL_in_index_list5077_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_list_element_in_index_list5079  */
static	ANTLR3_BITWORD FOLLOW_index_list_element_in_index_list5079_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_list_element_in_index_list5079	= { FOLLOW_index_list_element_in_index_list5079_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_index_list_element5090  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_index_list_element5090_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_index_list_element5090	= { FOLLOW_identifier_in_index_list_element5090_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRIMARY_SYMBOL_in_index_list_element5095  */
static	ANTLR3_BITWORD FOLLOW_PRIMARY_SYMBOL_in_index_list_element5095_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PRIMARY_SYMBOL_in_index_list_element5095	= { FOLLOW_PRIMARY_SYMBOL_in_index_list_element5095_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UPDATE_SYMBOL_in_update_statement5106  */
static	ANTLR3_BITWORD FOLLOW_UPDATE_SYMBOL_in_update_statement5106_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A3DC), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD822A2), ANTLR3_UINT64_LIT(0x263D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_UPDATE_SYMBOL_in_update_statement5106	= { FOLLOW_UPDATE_SYMBOL_in_update_statement5106_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOW_PRIORITY_SYMBOL_in_update_statement5108  */
static	ANTLR3_BITWORD FOLLOW_LOW_PRIORITY_SYMBOL_in_update_statement5108_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A3DC), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x263D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_LOW_PRIORITY_SYMBOL_in_update_statement5108	= { FOLLOW_LOW_PRIORITY_SYMBOL_in_update_statement5108_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IGNORE_SYMBOL_in_update_statement5111  */
static	ANTLR3_BITWORD FOLLOW_IGNORE_SYMBOL_in_update_statement5111_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x263D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_IGNORE_SYMBOL_in_update_statement5111	= { FOLLOW_IGNORE_SYMBOL_in_update_statement5111_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_references_in_update_statement5114  */
static	ANTLR3_BITWORD FOLLOW_table_references_in_update_statement5114_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_references_in_update_statement5114	= { FOLLOW_table_references_in_update_statement5114_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SET_SYMBOL_in_update_statement5118  */
static	ANTLR3_BITWORD FOLLOW_SET_SYMBOL_in_update_statement5118_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_SET_SYMBOL_in_update_statement5118	= { FOLLOW_SET_SYMBOL_in_update_statement5118_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_assignment_list_with_default_in_update_statement5120  */
static	ANTLR3_BITWORD FOLLOW_column_assignment_list_with_default_in_update_statement5120_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_column_assignment_list_with_default_in_update_statement5120	= { FOLLOW_column_assignment_list_with_default_in_update_statement5120_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_where_clause_in_update_statement5122  */
static	ANTLR3_BITWORD FOLLOW_where_clause_in_update_statement5122_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_where_clause_in_update_statement5122	= { FOLLOW_where_clause_in_update_statement5122_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_order_by_clause_in_update_statement5125  */
static	ANTLR3_BITWORD FOLLOW_order_by_clause_in_update_statement5125_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_order_by_clause_in_update_statement5125	= { FOLLOW_order_by_clause_in_update_statement5125_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_clause_in_update_statement5128  */
static	ANTLR3_BITWORD FOLLOW_limit_clause_in_update_statement5128_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_clause_in_update_statement5128	= { FOLLOW_limit_clause_in_update_statement5128_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_transaction_statement_in_transaction_or_locking_statement5140  */
static	ANTLR3_BITWORD FOLLOW_transaction_statement_in_transaction_or_locking_statement5140_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_transaction_statement_in_transaction_or_locking_statement5140	= { FOLLOW_transaction_statement_in_transaction_or_locking_statement5140_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_savepoint_statement_in_transaction_or_locking_statement5145  */
static	ANTLR3_BITWORD FOLLOW_savepoint_statement_in_transaction_or_locking_statement5145_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_savepoint_statement_in_transaction_or_locking_statement5145	= { FOLLOW_savepoint_statement_in_transaction_or_locking_statement5145_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_lock_statement_in_transaction_or_locking_statement5150  */
static	ANTLR3_BITWORD FOLLOW_lock_statement_in_transaction_or_locking_statement5150_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_lock_statement_in_transaction_or_locking_statement5150	= { FOLLOW_lock_statement_in_transaction_or_locking_statement5150_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_xa_statement_in_transaction_or_locking_statement5155  */
static	ANTLR3_BITWORD FOLLOW_xa_statement_in_transaction_or_locking_statement5155_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_xa_statement_in_transaction_or_locking_statement5155	= { FOLLOW_xa_statement_in_transaction_or_locking_statement5155_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_START_SYMBOL_in_transaction_statement5164  */
static	ANTLR3_BITWORD FOLLOW_START_SYMBOL_in_transaction_statement5164_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_START_SYMBOL_in_transaction_statement5164	= { FOLLOW_START_SYMBOL_in_transaction_statement5164_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TRANSACTION_SYMBOL_in_transaction_statement5166  */
static	ANTLR3_BITWORD FOLLOW_TRANSACTION_SYMBOL_in_transaction_statement5166_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_TRANSACTION_SYMBOL_in_transaction_statement5166	= { FOLLOW_TRANSACTION_SYMBOL_in_transaction_statement5166_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_transaction_characteristic_in_transaction_statement5168  */
static	ANTLR3_BITWORD FOLLOW_transaction_characteristic_in_transaction_statement5168_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_transaction_characteristic_in_transaction_statement5168	= { FOLLOW_transaction_characteristic_in_transaction_statement5168_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BEGIN_SYMBOL_in_transaction_statement5174  */
static	ANTLR3_BITWORD FOLLOW_BEGIN_SYMBOL_in_transaction_statement5174_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_BEGIN_SYMBOL_in_transaction_statement5174	= { FOLLOW_BEGIN_SYMBOL_in_transaction_statement5174_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WORK_SYMBOL_in_transaction_statement5176  */
static	ANTLR3_BITWORD FOLLOW_WORK_SYMBOL_in_transaction_statement5176_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_WORK_SYMBOL_in_transaction_statement5176	= { FOLLOW_WORK_SYMBOL_in_transaction_statement5176_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMIT_SYMBOL_in_transaction_statement5182  */
static	ANTLR3_BITWORD FOLLOW_COMMIT_SYMBOL_in_transaction_statement5182_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000010002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000000000), ANTLR3_UINT64_LIT(0x1000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMIT_SYMBOL_in_transaction_statement5182	= { FOLLOW_COMMIT_SYMBOL_in_transaction_statement5182_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WORK_SYMBOL_in_transaction_statement5184  */
static	ANTLR3_BITWORD FOLLOW_WORK_SYMBOL_in_transaction_statement5184_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000010002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000000000), ANTLR3_UINT64_LIT(0x1000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_WORK_SYMBOL_in_transaction_statement5184	= { FOLLOW_WORK_SYMBOL_in_transaction_statement5184_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AND_SYMBOL_in_transaction_statement5188  */
static	ANTLR3_BITWORD FOLLOW_AND_SYMBOL_in_transaction_statement5188_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000008), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_AND_SYMBOL_in_transaction_statement5188	= { FOLLOW_AND_SYMBOL_in_transaction_statement5188_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NO_SYMBOL_in_transaction_statement5190  */
static	ANTLR3_BITWORD FOLLOW_NO_SYMBOL_in_transaction_statement5190_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000008) };
static  ANTLR3_BITSET_LIST FOLLOW_NO_SYMBOL_in_transaction_statement5190	= { FOLLOW_NO_SYMBOL_in_transaction_statement5190_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHAIN_SYMBOL_in_transaction_statement5193  */
static	ANTLR3_BITWORD FOLLOW_CHAIN_SYMBOL_in_transaction_statement5193_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000000000), ANTLR3_UINT64_LIT(0x1000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CHAIN_SYMBOL_in_transaction_statement5193	= { FOLLOW_CHAIN_SYMBOL_in_transaction_statement5193_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NO_SYMBOL_in_transaction_statement5198  */
static	ANTLR3_BITWORD FOLLOW_NO_SYMBOL_in_transaction_statement5198_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_NO_SYMBOL_in_transaction_statement5198	= { FOLLOW_NO_SYMBOL_in_transaction_statement5198_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RELEASE_SYMBOL_in_transaction_statement5201  */
static	ANTLR3_BITWORD FOLLOW_RELEASE_SYMBOL_in_transaction_statement5201_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_RELEASE_SYMBOL_in_transaction_statement5201	= { FOLLOW_RELEASE_SYMBOL_in_transaction_statement5201_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ROLLBACK_SYMBOL_in_transaction_statement5208  */
static	ANTLR3_BITWORD FOLLOW_ROLLBACK_SYMBOL_in_transaction_statement5208_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000010002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000000000), ANTLR3_UINT64_LIT(0x1000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_ROLLBACK_SYMBOL_in_transaction_statement5208	= { FOLLOW_ROLLBACK_SYMBOL_in_transaction_statement5208_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WORK_SYMBOL_in_transaction_statement5210  */
static	ANTLR3_BITWORD FOLLOW_WORK_SYMBOL_in_transaction_statement5210_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000010002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000000000), ANTLR3_UINT64_LIT(0x1000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_WORK_SYMBOL_in_transaction_statement5210	= { FOLLOW_WORK_SYMBOL_in_transaction_statement5210_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AND_SYMBOL_in_transaction_statement5221  */
static	ANTLR3_BITWORD FOLLOW_AND_SYMBOL_in_transaction_statement5221_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000008), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_AND_SYMBOL_in_transaction_statement5221	= { FOLLOW_AND_SYMBOL_in_transaction_statement5221_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NO_SYMBOL_in_transaction_statement5223  */
static	ANTLR3_BITWORD FOLLOW_NO_SYMBOL_in_transaction_statement5223_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000008) };
static  ANTLR3_BITSET_LIST FOLLOW_NO_SYMBOL_in_transaction_statement5223	= { FOLLOW_NO_SYMBOL_in_transaction_statement5223_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHAIN_SYMBOL_in_transaction_statement5226  */
static	ANTLR3_BITWORD FOLLOW_CHAIN_SYMBOL_in_transaction_statement5226_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000000000), ANTLR3_UINT64_LIT(0x1000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CHAIN_SYMBOL_in_transaction_statement5226	= { FOLLOW_CHAIN_SYMBOL_in_transaction_statement5226_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NO_SYMBOL_in_transaction_statement5231  */
static	ANTLR3_BITWORD FOLLOW_NO_SYMBOL_in_transaction_statement5231_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_NO_SYMBOL_in_transaction_statement5231	= { FOLLOW_NO_SYMBOL_in_transaction_statement5231_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RELEASE_SYMBOL_in_transaction_statement5234  */
static	ANTLR3_BITWORD FOLLOW_RELEASE_SYMBOL_in_transaction_statement5234_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_RELEASE_SYMBOL_in_transaction_statement5234	= { FOLLOW_RELEASE_SYMBOL_in_transaction_statement5234_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TO_SYMBOL_in_transaction_statement5243  */
static	ANTLR3_BITWORD FOLLOW_TO_SYMBOL_in_transaction_statement5243_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000008000000) };
static  ANTLR3_BITSET_LIST FOLLOW_TO_SYMBOL_in_transaction_statement5243	= { FOLLOW_TO_SYMBOL_in_transaction_statement5243_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SAVEPOINT_SYMBOL_in_transaction_statement5245  */
static	ANTLR3_BITWORD FOLLOW_SAVEPOINT_SYMBOL_in_transaction_statement5245_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_SAVEPOINT_SYMBOL_in_transaction_statement5245	= { FOLLOW_SAVEPOINT_SYMBOL_in_transaction_statement5245_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_transaction_statement5248  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_transaction_statement5248_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_transaction_statement5248	= { FOLLOW_pure_identifier_in_transaction_statement5248_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_transaction_characteristic5268  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_transaction_characteristic5268_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_WITH_SYMBOL_in_transaction_characteristic5268	= { FOLLOW_WITH_SYMBOL_in_transaction_characteristic5268_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONSISTENT_SYMBOL_in_transaction_characteristic5270  */
static	ANTLR3_BITWORD FOLLOW_CONSISTENT_SYMBOL_in_transaction_characteristic5270_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CONSISTENT_SYMBOL_in_transaction_characteristic5270	= { FOLLOW_CONSISTENT_SYMBOL_in_transaction_characteristic5270_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SNAPSHOT_SYMBOL_in_transaction_characteristic5272  */
static	ANTLR3_BITWORD FOLLOW_SNAPSHOT_SYMBOL_in_transaction_characteristic5272_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SNAPSHOT_SYMBOL_in_transaction_characteristic5272	= { FOLLOW_SNAPSHOT_SYMBOL_in_transaction_characteristic5272_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_READ_SYMBOL_in_transaction_characteristic5281  */
static	ANTLR3_BITWORD FOLLOW_READ_SYMBOL_in_transaction_characteristic5281_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_READ_SYMBOL_in_transaction_characteristic5281	= { FOLLOW_READ_SYMBOL_in_transaction_characteristic5281_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_transaction_characteristic5283  */
static	ANTLR3_BITWORD FOLLOW_set_in_transaction_characteristic5283_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_transaction_characteristic5283	= { FOLLOW_set_in_transaction_characteristic5283_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ISOLATION_SYMBOL_in_set_transaction_characteristic5298  */
static	ANTLR3_BITWORD FOLLOW_ISOLATION_SYMBOL_in_set_transaction_characteristic5298_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ISOLATION_SYMBOL_in_set_transaction_characteristic5298	= { FOLLOW_ISOLATION_SYMBOL_in_set_transaction_characteristic5298_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LEVEL_SYMBOL_in_set_transaction_characteristic5300  */
static	ANTLR3_BITWORD FOLLOW_LEVEL_SYMBOL_in_set_transaction_characteristic5300_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000000000), ANTLR3_UINT64_LIT(0x0000010000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_LEVEL_SYMBOL_in_set_transaction_characteristic5300	= { FOLLOW_LEVEL_SYMBOL_in_set_transaction_characteristic5300_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_isolation_level_in_set_transaction_characteristic5302  */
static	ANTLR3_BITWORD FOLLOW_isolation_level_in_set_transaction_characteristic5302_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_isolation_level_in_set_transaction_characteristic5302	= { FOLLOW_isolation_level_in_set_transaction_characteristic5302_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_READ_SYMBOL_in_set_transaction_characteristic5311  */
static	ANTLR3_BITWORD FOLLOW_READ_SYMBOL_in_set_transaction_characteristic5311_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_READ_SYMBOL_in_set_transaction_characteristic5311	= { FOLLOW_READ_SYMBOL_in_set_transaction_characteristic5311_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_set_transaction_characteristic5313  */
static	ANTLR3_BITWORD FOLLOW_set_in_set_transaction_characteristic5313_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_set_transaction_characteristic5313	= { FOLLOW_set_in_set_transaction_characteristic5313_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPEATABLE_SYMBOL_in_isolation_level5328  */
static	ANTLR3_BITWORD FOLLOW_REPEATABLE_SYMBOL_in_isolation_level5328_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_REPEATABLE_SYMBOL_in_isolation_level5328	= { FOLLOW_REPEATABLE_SYMBOL_in_isolation_level5328_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_READ_SYMBOL_in_isolation_level5330  */
static	ANTLR3_BITWORD FOLLOW_READ_SYMBOL_in_isolation_level5330_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_READ_SYMBOL_in_isolation_level5330	= { FOLLOW_READ_SYMBOL_in_isolation_level5330_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_READ_SYMBOL_in_isolation_level5335  */
static	ANTLR3_BITWORD FOLLOW_READ_SYMBOL_in_isolation_level5335_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_READ_SYMBOL_in_isolation_level5335	= { FOLLOW_READ_SYMBOL_in_isolation_level5335_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_isolation_level5337  */
static	ANTLR3_BITWORD FOLLOW_set_in_isolation_level5337_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_isolation_level5337	= { FOLLOW_set_in_isolation_level5337_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SERIALIZABLE_SYMBOL_in_isolation_level5348  */
static	ANTLR3_BITWORD FOLLOW_SERIALIZABLE_SYMBOL_in_isolation_level5348_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SERIALIZABLE_SYMBOL_in_isolation_level5348	= { FOLLOW_SERIALIZABLE_SYMBOL_in_isolation_level5348_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SAVEPOINT_SYMBOL_in_savepoint_statement5357  */
static	ANTLR3_BITWORD FOLLOW_SAVEPOINT_SYMBOL_in_savepoint_statement5357_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_SAVEPOINT_SYMBOL_in_savepoint_statement5357	= { FOLLOW_SAVEPOINT_SYMBOL_in_savepoint_statement5357_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_savepoint_statement5359  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_savepoint_statement5359_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_savepoint_statement5359	= { FOLLOW_pure_identifier_in_savepoint_statement5359_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RELEASE_SYMBOL_in_savepoint_statement5364  */
static	ANTLR3_BITWORD FOLLOW_RELEASE_SYMBOL_in_savepoint_statement5364_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000008000000) };
static  ANTLR3_BITSET_LIST FOLLOW_RELEASE_SYMBOL_in_savepoint_statement5364	= { FOLLOW_RELEASE_SYMBOL_in_savepoint_statement5364_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SAVEPOINT_SYMBOL_in_savepoint_statement5366  */
static	ANTLR3_BITWORD FOLLOW_SAVEPOINT_SYMBOL_in_savepoint_statement5366_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_SAVEPOINT_SYMBOL_in_savepoint_statement5366	= { FOLLOW_SAVEPOINT_SYMBOL_in_savepoint_statement5366_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_savepoint_statement5368  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_savepoint_statement5368_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_savepoint_statement5368	= { FOLLOW_pure_identifier_in_savepoint_statement5368_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOCK_SYMBOL_in_lock_statement5377  */
static	ANTLR3_BITWORD FOLLOW_LOCK_SYMBOL_in_lock_statement5377_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000000000), ANTLR3_UINT64_LIT(0x0000000000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_LOCK_SYMBOL_in_lock_statement5377	= { FOLLOW_LOCK_SYMBOL_in_lock_statement5377_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_lock_statement5379  */
static	ANTLR3_BITWORD FOLLOW_set_in_lock_statement5379_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_lock_statement5379	= { FOLLOW_set_in_lock_statement5379_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_lock_item_in_lock_statement5387  */
static	ANTLR3_BITWORD FOLLOW_lock_item_in_lock_statement5387_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_lock_item_in_lock_statement5387	= { FOLLOW_lock_item_in_lock_statement5387_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_lock_statement5390  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_lock_statement5390_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_lock_statement5390	= { FOLLOW_COMMA_SYMBOL_in_lock_statement5390_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_lock_item_in_lock_statement5392  */
static	ANTLR3_BITWORD FOLLOW_lock_item_in_lock_statement5392_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_lock_item_in_lock_statement5392	= { FOLLOW_lock_item_in_lock_statement5392_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNLOCK_SYMBOL_in_lock_statement5399  */
static	ANTLR3_BITWORD FOLLOW_UNLOCK_SYMBOL_in_lock_statement5399_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000000000), ANTLR3_UINT64_LIT(0x0000000000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_UNLOCK_SYMBOL_in_lock_statement5399	= { FOLLOW_UNLOCK_SYMBOL_in_lock_statement5399_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_lock_statement5401  */
static	ANTLR3_BITWORD FOLLOW_set_in_lock_statement5401_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_lock_statement5401	= { FOLLOW_set_in_lock_statement5401_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_identifier_in_lock_item5416  */
static	ANTLR3_BITWORD FOLLOW_table_identifier_in_lock_item5416_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE468F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x3FA8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD822A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F33BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D703E0) };
static  ANTLR3_BITSET_LIST FOLLOW_table_identifier_in_lock_item5416	= { FOLLOW_table_identifier_in_lock_item5416_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_alias_in_lock_item5418  */
static	ANTLR3_BITWORD FOLLOW_table_alias_in_lock_item5418_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000080000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_alias_in_lock_item5418	= { FOLLOW_table_alias_in_lock_item5418_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_lock_type_in_lock_item5421  */
static	ANTLR3_BITWORD FOLLOW_lock_type_in_lock_item5421_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_lock_type_in_lock_item5421	= { FOLLOW_lock_type_in_lock_item5421_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_READ_SYMBOL_in_lock_type5430  */
static	ANTLR3_BITWORD FOLLOW_READ_SYMBOL_in_lock_type5430_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_READ_SYMBOL_in_lock_type5430	= { FOLLOW_READ_SYMBOL_in_lock_type5430_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOCAL_SYMBOL_in_lock_type5432  */
static	ANTLR3_BITWORD FOLLOW_LOCAL_SYMBOL_in_lock_type5432_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_LOCAL_SYMBOL_in_lock_type5432	= { FOLLOW_LOCAL_SYMBOL_in_lock_type5432_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOW_PRIORITY_SYMBOL_in_lock_type5438  */
static	ANTLR3_BITWORD FOLLOW_LOW_PRIORITY_SYMBOL_in_lock_type5438_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_LOW_PRIORITY_SYMBOL_in_lock_type5438	= { FOLLOW_LOW_PRIORITY_SYMBOL_in_lock_type5438_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WRITE_SYMBOL_in_lock_type5441  */
static	ANTLR3_BITWORD FOLLOW_WRITE_SYMBOL_in_lock_type5441_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_WRITE_SYMBOL_in_lock_type5441	= { FOLLOW_WRITE_SYMBOL_in_lock_type5441_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_XA_SYMBOL_in_xa_statement5450  */
static	ANTLR3_BITWORD FOLLOW_XA_SYMBOL_in_xa_statement5450_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000000), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0080000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000008000000), ANTLR3_UINT64_LIT(0x0000000000080000), ANTLR3_UINT64_LIT(0x0000000040000000) };
static  ANTLR3_BITSET_LIST FOLLOW_XA_SYMBOL_in_xa_statement5450	= { FOLLOW_XA_SYMBOL_in_xa_statement5450_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_xa_statement5459  */
static	ANTLR3_BITWORD FOLLOW_set_in_xa_statement5459_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_xa_statement5459	= { FOLLOW_set_in_xa_statement5459_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_xid_in_xa_statement5467  */
static	ANTLR3_BITWORD FOLLOW_xid_in_xa_statement5467_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000080000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_xid_in_xa_statement5467	= { FOLLOW_xid_in_xa_statement5467_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_END_SYMBOL_in_xa_statement5483  */
static	ANTLR3_BITWORD FOLLOW_END_SYMBOL_in_xa_statement5483_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_END_SYMBOL_in_xa_statement5483	= { FOLLOW_END_SYMBOL_in_xa_statement5483_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_xid_in_xa_statement5485  */
static	ANTLR3_BITWORD FOLLOW_xid_in_xa_statement5485_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0040000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_xid_in_xa_statement5485	= { FOLLOW_xid_in_xa_statement5485_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SUSPEND_SYMBOL_in_xa_statement5488  */
static	ANTLR3_BITWORD FOLLOW_SUSPEND_SYMBOL_in_xa_statement5488_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SUSPEND_SYMBOL_in_xa_statement5488	= { FOLLOW_SUSPEND_SYMBOL_in_xa_statement5488_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_xa_statement5491  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_xa_statement5491_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x4000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FOR_SYMBOL_in_xa_statement5491	= { FOLLOW_FOR_SYMBOL_in_xa_statement5491_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MIGRATE_SYMBOL_in_xa_statement5493  */
static	ANTLR3_BITWORD FOLLOW_MIGRATE_SYMBOL_in_xa_statement5493_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MIGRATE_SYMBOL_in_xa_statement5493	= { FOLLOW_MIGRATE_SYMBOL_in_xa_statement5493_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PREPARE_SYMBOL_in_xa_statement5504  */
static	ANTLR3_BITWORD FOLLOW_PREPARE_SYMBOL_in_xa_statement5504_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PREPARE_SYMBOL_in_xa_statement5504	= { FOLLOW_PREPARE_SYMBOL_in_xa_statement5504_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_xid_in_xa_statement5506  */
static	ANTLR3_BITWORD FOLLOW_xid_in_xa_statement5506_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_xid_in_xa_statement5506	= { FOLLOW_xid_in_xa_statement5506_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMIT_SYMBOL_in_xa_statement5513  */
static	ANTLR3_BITWORD FOLLOW_COMMIT_SYMBOL_in_xa_statement5513_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMIT_SYMBOL_in_xa_statement5513	= { FOLLOW_COMMIT_SYMBOL_in_xa_statement5513_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_xid_in_xa_statement5515  */
static	ANTLR3_BITWORD FOLLOW_xid_in_xa_statement5515_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0020000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_xid_in_xa_statement5515	= { FOLLOW_xid_in_xa_statement5515_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ONE_SYMBOL_in_xa_statement5518  */
static	ANTLR3_BITWORD FOLLOW_ONE_SYMBOL_in_xa_statement5518_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_ONE_SYMBOL_in_xa_statement5518	= { FOLLOW_ONE_SYMBOL_in_xa_statement5518_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PHASE_SYMBOL_in_xa_statement5520  */
static	ANTLR3_BITWORD FOLLOW_PHASE_SYMBOL_in_xa_statement5520_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PHASE_SYMBOL_in_xa_statement5520	= { FOLLOW_PHASE_SYMBOL_in_xa_statement5520_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ROLLBACK_SYMBOL_in_xa_statement5529  */
static	ANTLR3_BITWORD FOLLOW_ROLLBACK_SYMBOL_in_xa_statement5529_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ROLLBACK_SYMBOL_in_xa_statement5529	= { FOLLOW_ROLLBACK_SYMBOL_in_xa_statement5529_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_xid_in_xa_statement5531  */
static	ANTLR3_BITWORD FOLLOW_xid_in_xa_statement5531_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_xid_in_xa_statement5531	= { FOLLOW_xid_in_xa_statement5531_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RECOVER_SYMBOL_in_xa_statement5538  */
static	ANTLR3_BITWORD FOLLOW_RECOVER_SYMBOL_in_xa_statement5538_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_RECOVER_SYMBOL_in_xa_statement5538	= { FOLLOW_RECOVER_SYMBOL_in_xa_statement5538_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_xid5551  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_xid5551_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_xid5551	= { FOLLOW_string_literal_in_xid5551_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_xid5554  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_xid5554_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_xid5554	= { FOLLOW_COMMA_SYMBOL_in_xid5554_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_xid5556  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_xid5556_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_xid5556	= { FOLLOW_string_literal_in_xid5556_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_xid5559  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_xid5559_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_xid5559	= { FOLLOW_COMMA_SYMBOL_in_xid5559_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_xid5561  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_xid5561_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_xid5561	= { FOLLOW_INTEGER_in_xid5561_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PURGE_SYMBOL_in_replication_statement5600  */
static	ANTLR3_BITWORD FOLLOW_PURGE_SYMBOL_in_replication_statement5600_bits[]	= { ANTLR3_UINT64_LIT(0x0000004000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000020000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PURGE_SYMBOL_in_replication_statement5600	= { FOLLOW_PURGE_SYMBOL_in_replication_statement5600_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_replication_statement5602  */
static	ANTLR3_BITWORD FOLLOW_set_in_replication_statement5602_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_replication_statement5602	= { FOLLOW_set_in_replication_statement5602_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOGS_SYMBOL_in_replication_statement5610  */
static	ANTLR3_BITWORD FOLLOW_LOGS_SYMBOL_in_replication_statement5610_bits[]	= { ANTLR3_UINT64_LIT(0x0000000400000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_LOGS_SYMBOL_in_replication_statement5610	= { FOLLOW_LOGS_SYMBOL_in_replication_statement5610_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TO_SYMBOL_in_replication_statement5613  */
static	ANTLR3_BITWORD FOLLOW_TO_SYMBOL_in_replication_statement5613_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_TO_SYMBOL_in_replication_statement5613	= { FOLLOW_TO_SYMBOL_in_replication_statement5613_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_replication_statement5615  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_replication_statement5615_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_replication_statement5615	= { FOLLOW_string_literal_in_replication_statement5615_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BEFORE_SYMBOL_in_replication_statement5619  */
static	ANTLR3_BITWORD FOLLOW_BEFORE_SYMBOL_in_replication_statement5619_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_BEFORE_SYMBOL_in_replication_statement5619	= { FOLLOW_BEFORE_SYMBOL_in_replication_statement5619_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_replication_statement5621  */
static	ANTLR3_BITWORD FOLLOW_expression_in_replication_statement5621_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_replication_statement5621	= { FOLLOW_expression_in_replication_statement5621_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_change_master_in_replication_statement5627  */
static	ANTLR3_BITWORD FOLLOW_change_master_in_replication_statement5627_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_change_master_in_replication_statement5627	= { FOLLOW_change_master_in_replication_statement5627_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_start_slave_in_replication_statement5635  */
static	ANTLR3_BITWORD FOLLOW_start_slave_in_replication_statement5635_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_start_slave_in_replication_statement5635	= { FOLLOW_start_slave_in_replication_statement5635_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_stop_slave_in_replication_statement5640  */
static	ANTLR3_BITWORD FOLLOW_stop_slave_in_replication_statement5640_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_stop_slave_in_replication_statement5640	= { FOLLOW_stop_slave_in_replication_statement5640_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_replication_load_in_replication_statement5651  */
static	ANTLR3_BITWORD FOLLOW_replication_load_in_replication_statement5651_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_replication_load_in_replication_statement5651	= { FOLLOW_replication_load_in_replication_statement5651_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOAD_SYMBOL_in_replication_load5660  */
static	ANTLR3_BITWORD FOLLOW_LOAD_SYMBOL_in_replication_load5660_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_LOAD_SYMBOL_in_replication_load5660	= { FOLLOW_LOAD_SYMBOL_in_replication_load5660_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATA_SYMBOL_in_replication_load5663  */
static	ANTLR3_BITWORD FOLLOW_DATA_SYMBOL_in_replication_load5663_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DATA_SYMBOL_in_replication_load5663	= { FOLLOW_DATA_SYMBOL_in_replication_load5663_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_replication_load5667  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_replication_load5667_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_replication_load5667	= { FOLLOW_TABLE_SYMBOL_in_replication_load5667_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_identifier_in_replication_load5669  */
static	ANTLR3_BITWORD FOLLOW_table_identifier_in_replication_load5669_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_identifier_in_replication_load5669	= { FOLLOW_table_identifier_in_replication_load5669_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_replication_load5672  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_replication_load5672_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000020000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_replication_load5672	= { FOLLOW_FROM_SYMBOL_in_replication_load5672_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_SYMBOL_in_replication_load5674  */
static	ANTLR3_BITWORD FOLLOW_MASTER_SYMBOL_in_replication_load5674_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MASTER_SYMBOL_in_replication_load5674	= { FOLLOW_MASTER_SYMBOL_in_replication_load5674_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHANGE_SYMBOL_in_change_master5683  */
static	ANTLR3_BITWORD FOLLOW_CHANGE_SYMBOL_in_change_master5683_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000020000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CHANGE_SYMBOL_in_change_master5683	= { FOLLOW_CHANGE_SYMBOL_in_change_master5683_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_SYMBOL_in_change_master5685  */
static	ANTLR3_BITWORD FOLLOW_MASTER_SYMBOL_in_change_master5685_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_MASTER_SYMBOL_in_change_master5685	= { FOLLOW_MASTER_SYMBOL_in_change_master5685_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TO_SYMBOL_in_change_master5687  */
static	ANTLR3_BITWORD FOLLOW_TO_SYMBOL_in_change_master5687_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040), ANTLR3_UINT64_LIT(0x000005FF7FF00000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0300000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_TO_SYMBOL_in_change_master5687	= { FOLLOW_TO_SYMBOL_in_change_master5687_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_master_option_in_change_master5689  */
static	ANTLR3_BITWORD FOLLOW_master_option_in_change_master5689_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_master_option_in_change_master5689	= { FOLLOW_master_option_in_change_master5689_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_change_master5692  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_change_master5692_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040), ANTLR3_UINT64_LIT(0x000005FF7FF00000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0300000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_change_master5692	= { FOLLOW_COMMA_SYMBOL_in_change_master5692_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_master_option_in_change_master5694  */
static	ANTLR3_BITWORD FOLLOW_master_option_in_change_master5694_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_master_option_in_change_master5694	= { FOLLOW_master_option_in_change_master5694_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_BIND_SYMBOL_in_master_option5705  */
static	ANTLR3_BITWORD FOLLOW_MASTER_BIND_SYMBOL_in_master_option5705_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MASTER_BIND_SYMBOL_in_master_option5705	= { FOLLOW_MASTER_BIND_SYMBOL_in_master_option5705_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option5707  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option5707_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option5707	= { FOLLOW_EQUAL_OPERATOR_in_master_option5707_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_master_option5709  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_master_option5709_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_master_option5709	= { FOLLOW_string_literal_in_master_option5709_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_HOST_SYMBOL_in_master_option5714  */
static	ANTLR3_BITWORD FOLLOW_MASTER_HOST_SYMBOL_in_master_option5714_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MASTER_HOST_SYMBOL_in_master_option5714	= { FOLLOW_MASTER_HOST_SYMBOL_in_master_option5714_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option5716  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option5716_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option5716	= { FOLLOW_EQUAL_OPERATOR_in_master_option5716_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_master_option5718  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_master_option5718_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_master_option5718	= { FOLLOW_string_literal_in_master_option5718_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_USER_SYMBOL_in_master_option5723  */
static	ANTLR3_BITWORD FOLLOW_MASTER_USER_SYMBOL_in_master_option5723_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MASTER_USER_SYMBOL_in_master_option5723	= { FOLLOW_MASTER_USER_SYMBOL_in_master_option5723_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option5725  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option5725_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option5725	= { FOLLOW_EQUAL_OPERATOR_in_master_option5725_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_master_option5727  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_master_option5727_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_master_option5727	= { FOLLOW_string_literal_in_master_option5727_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_PASSWORD_SYMBOL_in_master_option5732  */
static	ANTLR3_BITWORD FOLLOW_MASTER_PASSWORD_SYMBOL_in_master_option5732_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MASTER_PASSWORD_SYMBOL_in_master_option5732	= { FOLLOW_MASTER_PASSWORD_SYMBOL_in_master_option5732_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option5734  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option5734_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option5734	= { FOLLOW_EQUAL_OPERATOR_in_master_option5734_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_master_option5736  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_master_option5736_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_master_option5736	= { FOLLOW_string_literal_in_master_option5736_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_PORT_SYMBOL_in_master_option5741  */
static	ANTLR3_BITWORD FOLLOW_MASTER_PORT_SYMBOL_in_master_option5741_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MASTER_PORT_SYMBOL_in_master_option5741	= { FOLLOW_MASTER_PORT_SYMBOL_in_master_option5741_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option5743  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option5743_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option5743	= { FOLLOW_EQUAL_OPERATOR_in_master_option5743_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_master_option5745  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_master_option5745_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_master_option5745	= { FOLLOW_INTEGER_in_master_option5745_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_CONNECT_RETRY_SYMBOL_in_master_option5750  */
static	ANTLR3_BITWORD FOLLOW_MASTER_CONNECT_RETRY_SYMBOL_in_master_option5750_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MASTER_CONNECT_RETRY_SYMBOL_in_master_option5750	= { FOLLOW_MASTER_CONNECT_RETRY_SYMBOL_in_master_option5750_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option5752  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option5752_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option5752	= { FOLLOW_EQUAL_OPERATOR_in_master_option5752_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_master_option5754  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_master_option5754_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_master_option5754	= { FOLLOW_INTEGER_in_master_option5754_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_RETRY_COUNT_SYMBOL_in_master_option5759  */
static	ANTLR3_BITWORD FOLLOW_MASTER_RETRY_COUNT_SYMBOL_in_master_option5759_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MASTER_RETRY_COUNT_SYMBOL_in_master_option5759	= { FOLLOW_MASTER_RETRY_COUNT_SYMBOL_in_master_option5759_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option5761  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option5761_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option5761	= { FOLLOW_EQUAL_OPERATOR_in_master_option5761_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_master_option5763  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_master_option5763_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_master_option5763	= { FOLLOW_INTEGER_in_master_option5763_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_DELAY_SYMBOL_in_master_option5768  */
static	ANTLR3_BITWORD FOLLOW_MASTER_DELAY_SYMBOL_in_master_option5768_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MASTER_DELAY_SYMBOL_in_master_option5768	= { FOLLOW_MASTER_DELAY_SYMBOL_in_master_option5768_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option5770  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option5770_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option5770	= { FOLLOW_EQUAL_OPERATOR_in_master_option5770_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_master_option5772  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_master_option5772_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_master_option5772	= { FOLLOW_INTEGER_in_master_option5772_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_HEARTBEAT_PERIOD_SYMBOL_in_master_option5777  */
static	ANTLR3_BITWORD FOLLOW_MASTER_HEARTBEAT_PERIOD_SYMBOL_in_master_option5777_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MASTER_HEARTBEAT_PERIOD_SYMBOL_in_master_option5777	= { FOLLOW_MASTER_HEARTBEAT_PERIOD_SYMBOL_in_master_option5777_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option5779  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option5779_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option5779	= { FOLLOW_EQUAL_OPERATOR_in_master_option5779_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_master_option5781  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_master_option5781_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_master_option5781	= { FOLLOW_INTEGER_in_master_option5781_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_LOG_FILE_SYMBOL_in_master_option5786  */
static	ANTLR3_BITWORD FOLLOW_MASTER_LOG_FILE_SYMBOL_in_master_option5786_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MASTER_LOG_FILE_SYMBOL_in_master_option5786	= { FOLLOW_MASTER_LOG_FILE_SYMBOL_in_master_option5786_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option5788  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option5788_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option5788	= { FOLLOW_EQUAL_OPERATOR_in_master_option5788_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_master_option5790  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_master_option5790_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_master_option5790	= { FOLLOW_string_literal_in_master_option5790_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_LOG_POS_SYMBOL_in_master_option5795  */
static	ANTLR3_BITWORD FOLLOW_MASTER_LOG_POS_SYMBOL_in_master_option5795_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MASTER_LOG_POS_SYMBOL_in_master_option5795	= { FOLLOW_MASTER_LOG_POS_SYMBOL_in_master_option5795_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option5797  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option5797_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option5797	= { FOLLOW_EQUAL_OPERATOR_in_master_option5797_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_master_option5799  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_master_option5799_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_master_option5799	= { FOLLOW_INTEGER_in_master_option5799_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_AUTO_POSITION_SYMBOL_in_master_option5804  */
static	ANTLR3_BITWORD FOLLOW_MASTER_AUTO_POSITION_SYMBOL_in_master_option5804_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MASTER_AUTO_POSITION_SYMBOL_in_master_option5804	= { FOLLOW_MASTER_AUTO_POSITION_SYMBOL_in_master_option5804_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option5806  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option5806_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option5806	= { FOLLOW_EQUAL_OPERATOR_in_master_option5806_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_master_option5808  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_master_option5808_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_master_option5808	= { FOLLOW_INTEGER_in_master_option5808_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RELAY_LOG_FILE_SYMBOL_in_master_option5813  */
static	ANTLR3_BITWORD FOLLOW_RELAY_LOG_FILE_SYMBOL_in_master_option5813_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_RELAY_LOG_FILE_SYMBOL_in_master_option5813	= { FOLLOW_RELAY_LOG_FILE_SYMBOL_in_master_option5813_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option5815  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option5815_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option5815	= { FOLLOW_EQUAL_OPERATOR_in_master_option5815_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_master_option5817  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_master_option5817_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_master_option5817	= { FOLLOW_string_literal_in_master_option5817_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RELAY_LOG_POS_SYMBOL_in_master_option5822  */
static	ANTLR3_BITWORD FOLLOW_RELAY_LOG_POS_SYMBOL_in_master_option5822_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_RELAY_LOG_POS_SYMBOL_in_master_option5822	= { FOLLOW_RELAY_LOG_POS_SYMBOL_in_master_option5822_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option5824  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option5824_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option5824	= { FOLLOW_EQUAL_OPERATOR_in_master_option5824_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_master_option5826  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_master_option5826_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_master_option5826	= { FOLLOW_INTEGER_in_master_option5826_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_SSL_SYMBOL_in_master_option5831  */
static	ANTLR3_BITWORD FOLLOW_MASTER_SSL_SYMBOL_in_master_option5831_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MASTER_SSL_SYMBOL_in_master_option5831	= { FOLLOW_MASTER_SSL_SYMBOL_in_master_option5831_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option5833  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option5833_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option5833	= { FOLLOW_EQUAL_OPERATOR_in_master_option5833_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_master_option5835  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_master_option5835_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_master_option5835	= { FOLLOW_INTEGER_in_master_option5835_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_SSL_CA_SYMBOL_in_master_option5840  */
static	ANTLR3_BITWORD FOLLOW_MASTER_SSL_CA_SYMBOL_in_master_option5840_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MASTER_SSL_CA_SYMBOL_in_master_option5840	= { FOLLOW_MASTER_SSL_CA_SYMBOL_in_master_option5840_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option5842  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option5842_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option5842	= { FOLLOW_EQUAL_OPERATOR_in_master_option5842_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_master_option5844  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_master_option5844_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_master_option5844	= { FOLLOW_string_literal_in_master_option5844_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_SSL_CAPATH_SYMBOL_in_master_option5849  */
static	ANTLR3_BITWORD FOLLOW_MASTER_SSL_CAPATH_SYMBOL_in_master_option5849_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MASTER_SSL_CAPATH_SYMBOL_in_master_option5849	= { FOLLOW_MASTER_SSL_CAPATH_SYMBOL_in_master_option5849_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option5851  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option5851_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option5851	= { FOLLOW_EQUAL_OPERATOR_in_master_option5851_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_master_option5853  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_master_option5853_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_master_option5853	= { FOLLOW_string_literal_in_master_option5853_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_SSL_CERT_SYMBOL_in_master_option5858  */
static	ANTLR3_BITWORD FOLLOW_MASTER_SSL_CERT_SYMBOL_in_master_option5858_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MASTER_SSL_CERT_SYMBOL_in_master_option5858	= { FOLLOW_MASTER_SSL_CERT_SYMBOL_in_master_option5858_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option5860  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option5860_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option5860	= { FOLLOW_EQUAL_OPERATOR_in_master_option5860_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_master_option5862  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_master_option5862_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_master_option5862	= { FOLLOW_string_literal_in_master_option5862_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_SSL_CRL_SYMBOL_in_master_option5867  */
static	ANTLR3_BITWORD FOLLOW_MASTER_SSL_CRL_SYMBOL_in_master_option5867_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MASTER_SSL_CRL_SYMBOL_in_master_option5867	= { FOLLOW_MASTER_SSL_CRL_SYMBOL_in_master_option5867_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option5869  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option5869_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option5869	= { FOLLOW_EQUAL_OPERATOR_in_master_option5869_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_master_option5871  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_master_option5871_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_master_option5871	= { FOLLOW_string_literal_in_master_option5871_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_SSL_CRLPATH_SYMBOL_in_master_option5876  */
static	ANTLR3_BITWORD FOLLOW_MASTER_SSL_CRLPATH_SYMBOL_in_master_option5876_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MASTER_SSL_CRLPATH_SYMBOL_in_master_option5876	= { FOLLOW_MASTER_SSL_CRLPATH_SYMBOL_in_master_option5876_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option5878  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option5878_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option5878	= { FOLLOW_EQUAL_OPERATOR_in_master_option5878_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_master_option5880  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_master_option5880_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_master_option5880	= { FOLLOW_string_literal_in_master_option5880_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_SSL_KEY_SYMBOL_in_master_option5885  */
static	ANTLR3_BITWORD FOLLOW_MASTER_SSL_KEY_SYMBOL_in_master_option5885_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MASTER_SSL_KEY_SYMBOL_in_master_option5885	= { FOLLOW_MASTER_SSL_KEY_SYMBOL_in_master_option5885_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option5887  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option5887_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option5887	= { FOLLOW_EQUAL_OPERATOR_in_master_option5887_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_master_option5889  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_master_option5889_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_master_option5889	= { FOLLOW_string_literal_in_master_option5889_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_SSL_CIPHER_SYMBOL_in_master_option5894  */
static	ANTLR3_BITWORD FOLLOW_MASTER_SSL_CIPHER_SYMBOL_in_master_option5894_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MASTER_SSL_CIPHER_SYMBOL_in_master_option5894	= { FOLLOW_MASTER_SSL_CIPHER_SYMBOL_in_master_option5894_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option5896  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option5896_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option5896	= { FOLLOW_EQUAL_OPERATOR_in_master_option5896_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_master_option5898  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_master_option5898_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_master_option5898	= { FOLLOW_string_literal_in_master_option5898_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL_in_master_option5903  */
static	ANTLR3_BITWORD FOLLOW_MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL_in_master_option5903_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL_in_master_option5903	= { FOLLOW_MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL_in_master_option5903_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option5905  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option5905_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option5905	= { FOLLOW_EQUAL_OPERATOR_in_master_option5905_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_master_option5907  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_master_option5907_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_master_option5907	= { FOLLOW_INTEGER_in_master_option5907_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IGNORE_SERVER_IDS_SYMBOL_in_master_option5912  */
static	ANTLR3_BITWORD FOLLOW_IGNORE_SERVER_IDS_SYMBOL_in_master_option5912_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_IGNORE_SERVER_IDS_SYMBOL_in_master_option5912	= { FOLLOW_IGNORE_SERVER_IDS_SYMBOL_in_master_option5912_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option5914  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option5914_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option5914	= { FOLLOW_EQUAL_OPERATOR_in_master_option5914_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_server_id_list_in_master_option5916  */
static	ANTLR3_BITWORD FOLLOW_server_id_list_in_master_option5916_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_server_id_list_in_master_option5916	= { FOLLOW_server_id_list_in_master_option5916_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_server_id_list5925  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_server_id_list5925_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBFA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_server_id_list5925	= { FOLLOW_OPEN_PAR_SYMBOL_in_server_id_list5925_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_in_server_id_list5927  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_in_server_id_list5927_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_in_server_id_list5927	= { FOLLOW_identifier_list_in_server_id_list5927_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_server_id_list5930  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_server_id_list5930_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_server_id_list5930	= { FOLLOW_CLOSE_PAR_SYMBOL_in_server_id_list5930_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_START_SYMBOL_in_start_slave5939  */
static	ANTLR3_BITWORD FOLLOW_START_SYMBOL_in_start_slave5939_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_START_SYMBOL_in_start_slave5939	= { FOLLOW_START_SYMBOL_in_start_slave5939_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SLAVE_SYMBOL_in_start_slave5941  */
static	ANTLR3_BITWORD FOLLOW_SLAVE_SYMBOL_in_start_slave5941_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000020280), ANTLR3_UINT64_LIT(0x0000840000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SLAVE_SYMBOL_in_start_slave5941	= { FOLLOW_SLAVE_SYMBOL_in_start_slave5941_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_thread_types_in_start_slave5948  */
static	ANTLR3_BITWORD FOLLOW_thread_types_in_start_slave5948_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_thread_types_in_start_slave5948	= { FOLLOW_thread_types_in_start_slave5948_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_start_slave5955  */
static	ANTLR3_BITWORD FOLLOW_set_in_start_slave5955_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_start_slave5955	= { FOLLOW_set_in_start_slave5955_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_start_slave5963  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_start_slave5963_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_start_slave5963	= { FOLLOW_EQUAL_OPERATOR_in_start_slave5963_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_gtid_set_in_start_slave5965  */
static	ANTLR3_BITWORD FOLLOW_gtid_set_in_start_slave5965_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_gtid_set_in_start_slave5965	= { FOLLOW_gtid_set_in_start_slave5965_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQL_THREAD_SYMBOL_in_start_slave5973  */
static	ANTLR3_BITWORD FOLLOW_SQL_THREAD_SYMBOL_in_start_slave5973_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000040000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SQL_THREAD_SYMBOL_in_start_slave5973	= { FOLLOW_SQL_THREAD_SYMBOL_in_start_slave5973_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNTIL_SYMBOL_in_start_slave5976  */
static	ANTLR3_BITWORD FOLLOW_UNTIL_SYMBOL_in_start_slave5976_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000100) };
static  ANTLR3_BITSET_LIST FOLLOW_UNTIL_SYMBOL_in_start_slave5976	= { FOLLOW_UNTIL_SYMBOL_in_start_slave5976_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_LOG_FILE_SYMBOL_in_start_slave5985  */
static	ANTLR3_BITWORD FOLLOW_MASTER_LOG_FILE_SYMBOL_in_start_slave5985_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MASTER_LOG_FILE_SYMBOL_in_start_slave5985	= { FOLLOW_MASTER_LOG_FILE_SYMBOL_in_start_slave5985_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_start_slave5987  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_start_slave5987_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_start_slave5987	= { FOLLOW_EQUAL_OPERATOR_in_start_slave5987_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_start_slave5989  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_start_slave5989_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_start_slave5989	= { FOLLOW_string_literal_in_start_slave5989_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_start_slave5991  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_start_slave5991_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000008000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_start_slave5991	= { FOLLOW_COMMA_SYMBOL_in_start_slave5991_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_LOG_POS_SYMBOL_in_start_slave5993  */
static	ANTLR3_BITWORD FOLLOW_MASTER_LOG_POS_SYMBOL_in_start_slave5993_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MASTER_LOG_POS_SYMBOL_in_start_slave5993	= { FOLLOW_MASTER_LOG_POS_SYMBOL_in_start_slave5993_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_start_slave5995  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_start_slave5995_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_start_slave5995	= { FOLLOW_EQUAL_OPERATOR_in_start_slave5995_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_start_slave5997  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_start_slave5997_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_start_slave5997	= { FOLLOW_INTEGER_in_start_slave5997_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RELAY_LOG_FILE_SYMBOL_in_start_slave6004  */
static	ANTLR3_BITWORD FOLLOW_RELAY_LOG_FILE_SYMBOL_in_start_slave6004_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_RELAY_LOG_FILE_SYMBOL_in_start_slave6004	= { FOLLOW_RELAY_LOG_FILE_SYMBOL_in_start_slave6004_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_start_slave6006  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_start_slave6006_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_start_slave6006	= { FOLLOW_EQUAL_OPERATOR_in_start_slave6006_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_start_slave6008  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_start_slave6008_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_start_slave6008	= { FOLLOW_string_literal_in_start_slave6008_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_start_slave6010  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_start_slave6010_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_start_slave6010	= { FOLLOW_COMMA_SYMBOL_in_start_slave6010_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RELAY_LOG_POS_SYMBOL_in_start_slave6012  */
static	ANTLR3_BITWORD FOLLOW_RELAY_LOG_POS_SYMBOL_in_start_slave6012_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_RELAY_LOG_POS_SYMBOL_in_start_slave6012	= { FOLLOW_RELAY_LOG_POS_SYMBOL_in_start_slave6012_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_start_slave6014  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_start_slave6014_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_start_slave6014	= { FOLLOW_EQUAL_OPERATOR_in_start_slave6014_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_start_slave6016  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_start_slave6016_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_start_slave6016	= { FOLLOW_INTEGER_in_start_slave6016_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQL_AFTER_MTS_GAPS_SYMBOL_in_start_slave6027  */
static	ANTLR3_BITWORD FOLLOW_SQL_AFTER_MTS_GAPS_SYMBOL_in_start_slave6027_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SQL_AFTER_MTS_GAPS_SYMBOL_in_start_slave6027	= { FOLLOW_SQL_AFTER_MTS_GAPS_SYMBOL_in_start_slave6027_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USER_SYMBOL_in_start_slave6041  */
static	ANTLR3_BITWORD FOLLOW_USER_SYMBOL_in_start_slave6041_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_USER_SYMBOL_in_start_slave6041	= { FOLLOW_USER_SYMBOL_in_start_slave6041_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_start_slave6043  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_start_slave6043_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_start_slave6043	= { FOLLOW_EQUAL_OPERATOR_in_start_slave6043_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_start_slave6045  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_start_slave6045_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_start_slave6045	= { FOLLOW_string_literal_in_start_slave6045_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PASSWORD_SYMBOL_in_start_slave6047  */
static	ANTLR3_BITWORD FOLLOW_PASSWORD_SYMBOL_in_start_slave6047_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PASSWORD_SYMBOL_in_start_slave6047	= { FOLLOW_PASSWORD_SYMBOL_in_start_slave6047_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_start_slave6049  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_start_slave6049_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_start_slave6049	= { FOLLOW_EQUAL_OPERATOR_in_start_slave6049_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_start_slave6051  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_start_slave6051_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_start_slave6051	= { FOLLOW_string_literal_in_start_slave6051_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_AUTH_SYMBOL_in_start_slave6056  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_AUTH_SYMBOL_in_start_slave6056_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_AUTH_SYMBOL_in_start_slave6056	= { FOLLOW_DEFAULT_AUTH_SYMBOL_in_start_slave6056_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_start_slave6058  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_start_slave6058_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_start_slave6058	= { FOLLOW_EQUAL_OPERATOR_in_start_slave6058_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_start_slave6060  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_start_slave6060_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_start_slave6060	= { FOLLOW_string_literal_in_start_slave6060_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PLUGIN_DIR_SYMBOL_in_start_slave6062  */
static	ANTLR3_BITWORD FOLLOW_PLUGIN_DIR_SYMBOL_in_start_slave6062_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PLUGIN_DIR_SYMBOL_in_start_slave6062	= { FOLLOW_PLUGIN_DIR_SYMBOL_in_start_slave6062_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_start_slave6064  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_start_slave6064_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_start_slave6064	= { FOLLOW_EQUAL_OPERATOR_in_start_slave6064_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_start_slave6066  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_start_slave6066_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_start_slave6066	= { FOLLOW_string_literal_in_start_slave6066_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STOP_SYMBOL_in_stop_slave6078  */
static	ANTLR3_BITWORD FOLLOW_STOP_SYMBOL_in_stop_slave6078_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_STOP_SYMBOL_in_stop_slave6078	= { FOLLOW_STOP_SYMBOL_in_stop_slave6078_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SLAVE_SYMBOL_in_stop_slave6080  */
static	ANTLR3_BITWORD FOLLOW_SLAVE_SYMBOL_in_stop_slave6080_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_SLAVE_SYMBOL_in_stop_slave6080	= { FOLLOW_SLAVE_SYMBOL_in_stop_slave6080_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_thread_types_in_stop_slave6082  */
static	ANTLR3_BITWORD FOLLOW_thread_types_in_stop_slave6082_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_thread_types_in_stop_slave6082	= { FOLLOW_thread_types_in_stop_slave6082_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_thread_types6092  */
static	ANTLR3_BITWORD FOLLOW_set_in_thread_types6092_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_thread_types6092	= { FOLLOW_set_in_thread_types6092_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_thread_types6101  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_thread_types6101_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_thread_types6101	= { FOLLOW_COMMA_SYMBOL_in_thread_types6101_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_thread_types6103  */
static	ANTLR3_BITWORD FOLLOW_set_in_thread_types6103_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_thread_types6103	= { FOLLOW_set_in_thread_types6103_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_gtid_set6120  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_gtid_set6120_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_gtid_set6120	= { FOLLOW_string_literal_in_gtid_set6120_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PREPARE_SYMBOL_in_prepared_statement6132  */
static	ANTLR3_BITWORD FOLLOW_PREPARE_SYMBOL_in_prepared_statement6132_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_PREPARE_SYMBOL_in_prepared_statement6132	= { FOLLOW_PREPARE_SYMBOL_in_prepared_statement6132_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_prepared_statement6134  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_prepared_statement6134_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_prepared_statement6134	= { FOLLOW_pure_identifier_in_prepared_statement6134_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_prepared_statement6136  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_prepared_statement6136_bits[]	= { ANTLR3_UINT64_LIT(0x0000000001000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_prepared_statement6136	= { FOLLOW_FROM_SYMBOL_in_prepared_statement6136_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_prepared_statement6139  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_prepared_statement6139_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_prepared_statement6139	= { FOLLOW_string_literal_in_prepared_statement6139_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_variable_in_prepared_statement6143  */
static	ANTLR3_BITWORD FOLLOW_user_variable_in_prepared_statement6143_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_user_variable_in_prepared_statement6143	= { FOLLOW_user_variable_in_prepared_statement6143_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_execute_statement_in_prepared_statement6149  */
static	ANTLR3_BITWORD FOLLOW_execute_statement_in_prepared_statement6149_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_execute_statement_in_prepared_statement6149	= { FOLLOW_execute_statement_in_prepared_statement6149_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_prepared_statement6154  */
static	ANTLR3_BITWORD FOLLOW_set_in_prepared_statement6154_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000008000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_prepared_statement6154	= { FOLLOW_set_in_prepared_statement6154_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PREPARE_SYMBOL_in_prepared_statement6162  */
static	ANTLR3_BITWORD FOLLOW_PREPARE_SYMBOL_in_prepared_statement6162_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_PREPARE_SYMBOL_in_prepared_statement6162	= { FOLLOW_PREPARE_SYMBOL_in_prepared_statement6162_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_prepared_statement6164  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_prepared_statement6164_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_prepared_statement6164	= { FOLLOW_pure_identifier_in_prepared_statement6164_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXECUTE_SYMBOL_in_execute_statement6173  */
static	ANTLR3_BITWORD FOLLOW_EXECUTE_SYMBOL_in_execute_statement6173_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_EXECUTE_SYMBOL_in_execute_statement6173	= { FOLLOW_EXECUTE_SYMBOL_in_execute_statement6173_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_execute_statement6175  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_execute_statement6175_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_execute_statement6175	= { FOLLOW_pure_identifier_in_execute_statement6175_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USING_SYMBOL_in_execute_statement6177  */
static	ANTLR3_BITWORD FOLLOW_USING_SYMBOL_in_execute_statement6177_bits[]	= { ANTLR3_UINT64_LIT(0x0000000001000000) };
static  ANTLR3_BITSET_LIST FOLLOW_USING_SYMBOL_in_execute_statement6177	= { FOLLOW_USING_SYMBOL_in_execute_statement6177_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_execute_var_list_in_execute_statement6179  */
static	ANTLR3_BITWORD FOLLOW_execute_var_list_in_execute_statement6179_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_execute_var_list_in_execute_statement6179	= { FOLLOW_execute_var_list_in_execute_statement6179_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_variable_in_execute_var_list6188  */
static	ANTLR3_BITWORD FOLLOW_user_variable_in_execute_var_list6188_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_user_variable_in_execute_var_list6188	= { FOLLOW_user_variable_in_execute_var_list6188_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_execute_var_list6191  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_execute_var_list6191_bits[]	= { ANTLR3_UINT64_LIT(0x0000000001000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_execute_var_list6191	= { FOLLOW_COMMA_SYMBOL_in_execute_var_list6191_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_variable_in_execute_var_list6193  */
static	ANTLR3_BITWORD FOLLOW_user_variable_in_execute_var_list6193_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_user_variable_in_execute_var_list6193	= { FOLLOW_user_variable_in_execute_var_list6193_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_user_in_account_management_statement6210  */
static	ANTLR3_BITWORD FOLLOW_alter_user_in_account_management_statement6210_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_user_in_account_management_statement6210	= { FOLLOW_alter_user_in_account_management_statement6210_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_user_in_account_management_statement6215  */
static	ANTLR3_BITWORD FOLLOW_create_user_in_account_management_statement6215_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_user_in_account_management_statement6215	= { FOLLOW_create_user_in_account_management_statement6215_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_drop_user_in_account_management_statement6220  */
static	ANTLR3_BITWORD FOLLOW_drop_user_in_account_management_statement6220_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_drop_user_in_account_management_statement6220	= { FOLLOW_drop_user_in_account_management_statement6220_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_grant_proxy_in_account_management_statement6229  */
static	ANTLR3_BITWORD FOLLOW_grant_proxy_in_account_management_statement6229_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_grant_proxy_in_account_management_statement6229	= { FOLLOW_grant_proxy_in_account_management_statement6229_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_grant_in_account_management_statement6234  */
static	ANTLR3_BITWORD FOLLOW_grant_in_account_management_statement6234_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_grant_in_account_management_statement6234	= { FOLLOW_grant_in_account_management_statement6234_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_rename_user_in_account_management_statement6239  */
static	ANTLR3_BITWORD FOLLOW_rename_user_in_account_management_statement6239_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_rename_user_in_account_management_statement6239	= { FOLLOW_rename_user_in_account_management_statement6239_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_revoke_statement_in_account_management_statement6244  */
static	ANTLR3_BITWORD FOLLOW_revoke_statement_in_account_management_statement6244_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_revoke_statement_in_account_management_statement6244	= { FOLLOW_revoke_statement_in_account_management_statement6244_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_password_in_account_management_statement6249  */
static	ANTLR3_BITWORD FOLLOW_set_password_in_account_management_statement6249_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_password_in_account_management_statement6249	= { FOLLOW_set_password_in_account_management_statement6249_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALTER_SYMBOL_in_alter_user6258  */
static	ANTLR3_BITWORD FOLLOW_ALTER_SYMBOL_in_alter_user6258_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000800000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ALTER_SYMBOL_in_alter_user6258	= { FOLLOW_ALTER_SYMBOL_in_alter_user6258_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USER_SYMBOL_in_alter_user6260  */
static	ANTLR3_BITWORD FOLLOW_USER_SYMBOL_in_alter_user6260_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1A92DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_USER_SYMBOL_in_alter_user6260	= { FOLLOW_USER_SYMBOL_in_alter_user6260_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_in_alter_user6262  */
static	ANTLR3_BITWORD FOLLOW_user_in_alter_user6262_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_user_in_alter_user6262	= { FOLLOW_user_in_alter_user6262_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PASSWORD_SYMBOL_in_alter_user6264  */
static	ANTLR3_BITWORD FOLLOW_PASSWORD_SYMBOL_in_alter_user6264_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000200) };
static  ANTLR3_BITSET_LIST FOLLOW_PASSWORD_SYMBOL_in_alter_user6264	= { FOLLOW_PASSWORD_SYMBOL_in_alter_user6264_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXPIRE_SYMBOL_in_alter_user6266  */
static	ANTLR3_BITWORD FOLLOW_EXPIRE_SYMBOL_in_alter_user6266_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EXPIRE_SYMBOL_in_alter_user6266	= { FOLLOW_EXPIRE_SYMBOL_in_alter_user6266_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_alter_user6269  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_alter_user6269_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1A92DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_alter_user6269	= { FOLLOW_COMMA_SYMBOL_in_alter_user6269_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_in_alter_user6271  */
static	ANTLR3_BITWORD FOLLOW_user_in_alter_user6271_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_user_in_alter_user6271	= { FOLLOW_user_in_alter_user6271_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PASSWORD_SYMBOL_in_alter_user6273  */
static	ANTLR3_BITWORD FOLLOW_PASSWORD_SYMBOL_in_alter_user6273_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000200) };
static  ANTLR3_BITSET_LIST FOLLOW_PASSWORD_SYMBOL_in_alter_user6273	= { FOLLOW_PASSWORD_SYMBOL_in_alter_user6273_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXPIRE_SYMBOL_in_alter_user6275  */
static	ANTLR3_BITWORD FOLLOW_EXPIRE_SYMBOL_in_alter_user6275_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EXPIRE_SYMBOL_in_alter_user6275	= { FOLLOW_EXPIRE_SYMBOL_in_alter_user6275_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CREATE_SYMBOL_in_create_user6286  */
static	ANTLR3_BITWORD FOLLOW_CREATE_SYMBOL_in_create_user6286_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000800000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CREATE_SYMBOL_in_create_user6286	= { FOLLOW_CREATE_SYMBOL_in_create_user6286_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USER_SYMBOL_in_create_user6288  */
static	ANTLR3_BITWORD FOLLOW_USER_SYMBOL_in_create_user6288_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1A92DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_USER_SYMBOL_in_create_user6288	= { FOLLOW_USER_SYMBOL_in_create_user6288_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_specification_in_create_user6290  */
static	ANTLR3_BITWORD FOLLOW_user_specification_in_create_user6290_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_user_specification_in_create_user6290	= { FOLLOW_user_specification_in_create_user6290_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DROP_SYMBOL_in_drop_user6299  */
static	ANTLR3_BITWORD FOLLOW_DROP_SYMBOL_in_drop_user6299_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000800000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DROP_SYMBOL_in_drop_user6299	= { FOLLOW_DROP_SYMBOL_in_drop_user6299_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USER_SYMBOL_in_drop_user6301  */
static	ANTLR3_BITWORD FOLLOW_USER_SYMBOL_in_drop_user6301_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1A92DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_USER_SYMBOL_in_drop_user6301	= { FOLLOW_USER_SYMBOL_in_drop_user6301_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_list_in_drop_user6303  */
static	ANTLR3_BITWORD FOLLOW_user_list_in_drop_user6303_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_user_list_in_drop_user6303	= { FOLLOW_user_list_in_drop_user6303_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GRANT_SYMBOL_in_grant6312  */
static	ANTLR3_BITWORD FOLLOW_GRANT_SYMBOL_in_grant6312_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000003000), ANTLR3_UINT64_LIT(0x0002000000000000), ANTLR3_UINT64_LIT(0x0000080000400000), ANTLR3_UINT64_LIT(0x0001000000400024), ANTLR3_UINT64_LIT(0x0000000000080800), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2020002400000000), ANTLR3_UINT64_LIT(0x0018001000000020), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000280000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_GRANT_SYMBOL_in_grant6312	= { FOLLOW_GRANT_SYMBOL_in_grant6312_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_privilege_type_in_grant6314  */
static	ANTLR3_BITWORD FOLLOW_privilege_type_in_grant6314_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0300000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_privilege_type_in_grant6314	= { FOLLOW_privilege_type_in_grant6314_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_with_parentheses_in_grant6316  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_with_parentheses_in_grant6316_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_with_parentheses_in_grant6316	= { FOLLOW_identifier_list_with_parentheses_in_grant6316_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_grant6320  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_grant6320_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000003000), ANTLR3_UINT64_LIT(0x0002000000000000), ANTLR3_UINT64_LIT(0x0000080000400000), ANTLR3_UINT64_LIT(0x0001000000400024), ANTLR3_UINT64_LIT(0x0000000000080800), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2020002400000000), ANTLR3_UINT64_LIT(0x0018001000000020), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000280000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_grant6320	= { FOLLOW_COMMA_SYMBOL_in_grant6320_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_privilege_type_in_grant6322  */
static	ANTLR3_BITWORD FOLLOW_privilege_type_in_grant6322_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0300000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_privilege_type_in_grant6322	= { FOLLOW_privilege_type_in_grant6322_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_with_parentheses_in_grant6324  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_with_parentheses_in_grant6324_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_with_parentheses_in_grant6324	= { FOLLOW_identifier_list_with_parentheses_in_grant6324_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_grant6331  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_grant6331_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000100000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_grant6331	= { FOLLOW_ON_SYMBOL_in_grant6331_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_grant_object_type_in_grant6333  */
static	ANTLR3_BITWORD FOLLOW_grant_object_type_in_grant6333_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7FB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_grant_object_type_in_grant6333	= { FOLLOW_grant_object_type_in_grant6333_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_privilege_level_in_grant6335  */
static	ANTLR3_BITWORD FOLLOW_privilege_level_in_grant6335_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_privilege_level_in_grant6335	= { FOLLOW_privilege_level_in_grant6335_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TO_SYMBOL_in_grant6339  */
static	ANTLR3_BITWORD FOLLOW_TO_SYMBOL_in_grant6339_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1A92DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_TO_SYMBOL_in_grant6339	= { FOLLOW_TO_SYMBOL_in_grant6339_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_specification_in_grant6341  */
static	ANTLR3_BITWORD FOLLOW_user_specification_in_grant6341_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_user_specification_in_grant6341	= { FOLLOW_user_specification_in_grant6341_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_grant6344  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_grant6344_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1A92DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_grant6344	= { FOLLOW_COMMA_SYMBOL_in_grant6344_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_specification_in_grant6346  */
static	ANTLR3_BITWORD FOLLOW_user_specification_in_grant6346_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_user_specification_in_grant6346	= { FOLLOW_user_specification_in_grant6346_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REQUIRE_SYMBOL_in_grant6353  */
static	ANTLR3_BITWORD FOLLOW_REQUIRE_SYMBOL_in_grant6353_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_REQUIRE_SYMBOL_in_grant6353	= { FOLLOW_REQUIRE_SYMBOL_in_grant6353_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NONE_SYMBOL_in_grant6356  */
static	ANTLR3_BITWORD FOLLOW_NONE_SYMBOL_in_grant6356_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_NONE_SYMBOL_in_grant6356	= { FOLLOW_NONE_SYMBOL_in_grant6356_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ssl_option_in_grant6360  */
static	ANTLR3_BITWORD FOLLOW_ssl_option_in_grant6360_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000010002), ANTLR3_UINT64_LIT(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000108000) };
static  ANTLR3_BITSET_LIST FOLLOW_ssl_option_in_grant6360	= { FOLLOW_ssl_option_in_grant6360_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AND_SYMBOL_in_grant6363  */
static	ANTLR3_BITWORD FOLLOW_AND_SYMBOL_in_grant6363_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_AND_SYMBOL_in_grant6363	= { FOLLOW_AND_SYMBOL_in_grant6363_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ssl_option_in_grant6366  */
static	ANTLR3_BITWORD FOLLOW_ssl_option_in_grant6366_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000010002), ANTLR3_UINT64_LIT(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000108000) };
static  ANTLR3_BITSET_LIST FOLLOW_ssl_option_in_grant6366	= { FOLLOW_ssl_option_in_grant6366_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_grant6376  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_grant6376_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0001000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x000C600000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_WITH_SYMBOL_in_grant6376	= { FOLLOW_WITH_SYMBOL_in_grant6376_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_grant_option_in_grant6378  */
static	ANTLR3_BITWORD FOLLOW_grant_option_in_grant6378_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0001000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x000C600000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_grant_option_in_grant6378	= { FOLLOW_grant_option_in_grant6378_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GRANT_SYMBOL_in_grant_proxy6390  */
static	ANTLR3_BITWORD FOLLOW_GRANT_SYMBOL_in_grant_proxy6390_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_GRANT_SYMBOL_in_grant_proxy6390	= { FOLLOW_GRANT_SYMBOL_in_grant_proxy6390_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROXY_SYMBOL_in_grant_proxy6392  */
static	ANTLR3_BITWORD FOLLOW_PROXY_SYMBOL_in_grant_proxy6392_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PROXY_SYMBOL_in_grant_proxy6392	= { FOLLOW_PROXY_SYMBOL_in_grant_proxy6392_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_grant_proxy6394  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_grant_proxy6394_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1A92DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_grant_proxy6394	= { FOLLOW_ON_SYMBOL_in_grant_proxy6394_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_specification_in_grant_proxy6396  */
static	ANTLR3_BITWORD FOLLOW_user_specification_in_grant_proxy6396_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_user_specification_in_grant_proxy6396	= { FOLLOW_user_specification_in_grant_proxy6396_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TO_SYMBOL_in_grant_proxy6398  */
static	ANTLR3_BITWORD FOLLOW_TO_SYMBOL_in_grant_proxy6398_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1A92DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_TO_SYMBOL_in_grant_proxy6398	= { FOLLOW_TO_SYMBOL_in_grant_proxy6398_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_specification_in_grant_proxy6400  */
static	ANTLR3_BITWORD FOLLOW_user_specification_in_grant_proxy6400_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_user_specification_in_grant_proxy6400	= { FOLLOW_user_specification_in_grant_proxy6400_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_grant_proxy6403  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_grant_proxy6403_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1A92DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_grant_proxy6403	= { FOLLOW_COMMA_SYMBOL_in_grant_proxy6403_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_specification_in_grant_proxy6405  */
static	ANTLR3_BITWORD FOLLOW_user_specification_in_grant_proxy6405_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_user_specification_in_grant_proxy6405	= { FOLLOW_user_specification_in_grant_proxy6405_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_grant_proxy6412  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_grant_proxy6412_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0001000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_WITH_SYMBOL_in_grant_proxy6412	= { FOLLOW_WITH_SYMBOL_in_grant_proxy6412_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GRANT_SYMBOL_in_grant_proxy6414  */
static	ANTLR3_BITWORD FOLLOW_GRANT_SYMBOL_in_grant_proxy6414_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x4000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_GRANT_SYMBOL_in_grant_proxy6414	= { FOLLOW_GRANT_SYMBOL_in_grant_proxy6414_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPTION_SYMBOL_in_grant_proxy6416  */
static	ANTLR3_BITWORD FOLLOW_OPTION_SYMBOL_in_grant_proxy6416_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_OPTION_SYMBOL_in_grant_proxy6416	= { FOLLOW_OPTION_SYMBOL_in_grant_proxy6416_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RENAME_SYMBOL_in_rename_user6427  */
static	ANTLR3_BITWORD FOLLOW_RENAME_SYMBOL_in_rename_user6427_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000800000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_RENAME_SYMBOL_in_rename_user6427	= { FOLLOW_RENAME_SYMBOL_in_rename_user6427_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USER_SYMBOL_in_rename_user6429  */
static	ANTLR3_BITWORD FOLLOW_USER_SYMBOL_in_rename_user6429_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1A92DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_USER_SYMBOL_in_rename_user6429	= { FOLLOW_USER_SYMBOL_in_rename_user6429_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_in_rename_user6431  */
static	ANTLR3_BITWORD FOLLOW_user_in_rename_user6431_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_user_in_rename_user6431	= { FOLLOW_user_in_rename_user6431_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TO_SYMBOL_in_rename_user6433  */
static	ANTLR3_BITWORD FOLLOW_TO_SYMBOL_in_rename_user6433_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1A92DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_TO_SYMBOL_in_rename_user6433	= { FOLLOW_TO_SYMBOL_in_rename_user6433_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_in_rename_user6435  */
static	ANTLR3_BITWORD FOLLOW_user_in_rename_user6435_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_user_in_rename_user6435	= { FOLLOW_user_in_rename_user6435_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_rename_user6438  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_rename_user6438_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1A92DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_rename_user6438	= { FOLLOW_COMMA_SYMBOL_in_rename_user6438_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_in_rename_user6440  */
static	ANTLR3_BITWORD FOLLOW_user_in_rename_user6440_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_user_in_rename_user6440	= { FOLLOW_user_in_rename_user6440_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TO_SYMBOL_in_rename_user6442  */
static	ANTLR3_BITWORD FOLLOW_TO_SYMBOL_in_rename_user6442_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1A92DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_TO_SYMBOL_in_rename_user6442	= { FOLLOW_TO_SYMBOL_in_rename_user6442_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_in_rename_user6444  */
static	ANTLR3_BITWORD FOLLOW_user_in_rename_user6444_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_user_in_rename_user6444	= { FOLLOW_user_in_rename_user6444_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REVOKE_SYMBOL_in_revoke_statement6455  */
static	ANTLR3_BITWORD FOLLOW_REVOKE_SYMBOL_in_revoke_statement6455_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000003000), ANTLR3_UINT64_LIT(0x0002000000000000), ANTLR3_UINT64_LIT(0x0000080000400000), ANTLR3_UINT64_LIT(0x0001000000400024), ANTLR3_UINT64_LIT(0x0000000000080800), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2020002400000000), ANTLR3_UINT64_LIT(0x0018001000000020), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000280000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_REVOKE_SYMBOL_in_revoke_statement6455	= { FOLLOW_REVOKE_SYMBOL_in_revoke_statement6455_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_privilege_type_in_revoke_statement6462  */
static	ANTLR3_BITWORD FOLLOW_privilege_type_in_revoke_statement6462_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0300000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_privilege_type_in_revoke_statement6462	= { FOLLOW_privilege_type_in_revoke_statement6462_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_with_parentheses_in_revoke_statement6464  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_with_parentheses_in_revoke_statement6464_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_with_parentheses_in_revoke_statement6464	= { FOLLOW_identifier_list_with_parentheses_in_revoke_statement6464_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_revoke_statement6468  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_revoke_statement6468_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000003000), ANTLR3_UINT64_LIT(0x0002000000000000), ANTLR3_UINT64_LIT(0x0000080000400000), ANTLR3_UINT64_LIT(0x0001000000400024), ANTLR3_UINT64_LIT(0x0000000000080800), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2020002400000000), ANTLR3_UINT64_LIT(0x0018001000000020), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000280000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_revoke_statement6468	= { FOLLOW_COMMA_SYMBOL_in_revoke_statement6468_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_privilege_type_in_revoke_statement6470  */
static	ANTLR3_BITWORD FOLLOW_privilege_type_in_revoke_statement6470_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0300000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_privilege_type_in_revoke_statement6470	= { FOLLOW_privilege_type_in_revoke_statement6470_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_with_parentheses_in_revoke_statement6472  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_with_parentheses_in_revoke_statement6472_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_with_parentheses_in_revoke_statement6472	= { FOLLOW_identifier_list_with_parentheses_in_revoke_statement6472_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_revoke_statement6480  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_revoke_statement6480_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7FB28C), ANTLR3_UINT64_LIT(0x6F9F13BFB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1EDC), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_revoke_statement6480	= { FOLLOW_ON_SYMBOL_in_revoke_statement6480_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_grant_object_type_in_revoke_statement6482  */
static	ANTLR3_BITWORD FOLLOW_grant_object_type_in_revoke_statement6482_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7FB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_grant_object_type_in_revoke_statement6482	= { FOLLOW_grant_object_type_in_revoke_statement6482_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_privilege_level_in_revoke_statement6485  */
static	ANTLR3_BITWORD FOLLOW_privilege_level_in_revoke_statement6485_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_privilege_level_in_revoke_statement6485	= { FOLLOW_privilege_level_in_revoke_statement6485_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_revoke_statement6487  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_revoke_statement6487_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1A92DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_revoke_statement6487	= { FOLLOW_FROM_SYMBOL_in_revoke_statement6487_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_list_in_revoke_statement6489  */
static	ANTLR3_BITWORD FOLLOW_user_list_in_revoke_statement6489_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_user_list_in_revoke_statement6489	= { FOLLOW_user_list_in_revoke_statement6489_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALL_SYMBOL_in_revoke_statement6499  */
static	ANTLR3_BITWORD FOLLOW_ALL_SYMBOL_in_revoke_statement6499_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ALL_SYMBOL_in_revoke_statement6499	= { FOLLOW_ALL_SYMBOL_in_revoke_statement6499_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRIVILEGES_SYMBOL_in_revoke_statement6501  */
static	ANTLR3_BITWORD FOLLOW_PRIVILEGES_SYMBOL_in_revoke_statement6501_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PRIVILEGES_SYMBOL_in_revoke_statement6501	= { FOLLOW_PRIVILEGES_SYMBOL_in_revoke_statement6501_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_revoke_statement6503  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_revoke_statement6503_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0001000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_revoke_statement6503	= { FOLLOW_COMMA_SYMBOL_in_revoke_statement6503_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GRANT_SYMBOL_in_revoke_statement6505  */
static	ANTLR3_BITWORD FOLLOW_GRANT_SYMBOL_in_revoke_statement6505_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x4000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_GRANT_SYMBOL_in_revoke_statement6505	= { FOLLOW_GRANT_SYMBOL_in_revoke_statement6505_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPTION_SYMBOL_in_revoke_statement6507  */
static	ANTLR3_BITWORD FOLLOW_OPTION_SYMBOL_in_revoke_statement6507_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPTION_SYMBOL_in_revoke_statement6507	= { FOLLOW_OPTION_SYMBOL_in_revoke_statement6507_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_revoke_statement6512  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_revoke_statement6512_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1A92DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_revoke_statement6512	= { FOLLOW_FROM_SYMBOL_in_revoke_statement6512_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_list_in_revoke_statement6514  */
static	ANTLR3_BITWORD FOLLOW_user_list_in_revoke_statement6514_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_user_list_in_revoke_statement6514	= { FOLLOW_user_list_in_revoke_statement6514_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROXY_SYMBOL_in_revoke_statement6524  */
static	ANTLR3_BITWORD FOLLOW_PROXY_SYMBOL_in_revoke_statement6524_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PROXY_SYMBOL_in_revoke_statement6524	= { FOLLOW_PROXY_SYMBOL_in_revoke_statement6524_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_revoke_statement6526  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_revoke_statement6526_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1A92DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_revoke_statement6526	= { FOLLOW_ON_SYMBOL_in_revoke_statement6526_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_in_revoke_statement6528  */
static	ANTLR3_BITWORD FOLLOW_user_in_revoke_statement6528_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_user_in_revoke_statement6528	= { FOLLOW_user_in_revoke_statement6528_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_revoke_statement6530  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_revoke_statement6530_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1A92DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_revoke_statement6530	= { FOLLOW_FROM_SYMBOL_in_revoke_statement6530_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_list_in_revoke_statement6532  */
static	ANTLR3_BITWORD FOLLOW_user_list_in_revoke_statement6532_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_user_list_in_revoke_statement6532	= { FOLLOW_user_list_in_revoke_statement6532_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SET_SYMBOL_in_set_password6544  */
static	ANTLR3_BITWORD FOLLOW_SET_SYMBOL_in_set_password6544_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_SET_SYMBOL_in_set_password6544	= { FOLLOW_SET_SYMBOL_in_set_password6544_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PASSWORD_SYMBOL_in_set_password6546  */
static	ANTLR3_BITWORD FOLLOW_PASSWORD_SYMBOL_in_set_password6546_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000200000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0000000200000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PASSWORD_SYMBOL_in_set_password6546	= { FOLLOW_PASSWORD_SYMBOL_in_set_password6546_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_set_password6549  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_set_password6549_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1A92DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_FOR_SYMBOL_in_set_password6549	= { FOLLOW_FOR_SYMBOL_in_set_password6549_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_in_set_password6551  */
static	ANTLR3_BITWORD FOLLOW_user_in_set_password6551_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000200000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_user_in_set_password6551	= { FOLLOW_user_in_set_password6551_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_equal_in_set_password6555  */
static	ANTLR3_BITWORD FOLLOW_equal_in_set_password6555_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0008000004000000), ANTLR3_UINT64_LIT(0x0000000000008000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_equal_in_set_password6555	= { FOLLOW_equal_in_set_password6555_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PASSWORD_SYMBOL_in_set_password6562  */
static	ANTLR3_BITWORD FOLLOW_PASSWORD_SYMBOL_in_set_password6562_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PASSWORD_SYMBOL_in_set_password6562	= { FOLLOW_PASSWORD_SYMBOL_in_set_password6562_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_set_password6564  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_set_password6564_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_set_password6564	= { FOLLOW_OPEN_PAR_SYMBOL_in_set_password6564_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_set_password6566  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_set_password6566_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_set_password6566	= { FOLLOW_string_literal_in_set_password6566_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_set_password6568  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_set_password6568_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_set_password6568	= { FOLLOW_CLOSE_PAR_SYMBOL_in_set_password6568_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OLD_PASSWORD_SYMBOL_in_set_password6574  */
static	ANTLR3_BITWORD FOLLOW_OLD_PASSWORD_SYMBOL_in_set_password6574_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OLD_PASSWORD_SYMBOL_in_set_password6574	= { FOLLOW_OLD_PASSWORD_SYMBOL_in_set_password6574_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_set_password6576  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_set_password6576_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_set_password6576	= { FOLLOW_OPEN_PAR_SYMBOL_in_set_password6576_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_set_password6578  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_set_password6578_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_set_password6578	= { FOLLOW_string_literal_in_set_password6578_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_set_password6580  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_set_password6580_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_set_password6580	= { FOLLOW_CLOSE_PAR_SYMBOL_in_set_password6580_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_set_password6586  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_set_password6586_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_set_password6586	= { FOLLOW_string_literal_in_set_password6586_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALL_SYMBOL_in_privilege_type6617  */
static	ANTLR3_BITWORD FOLLOW_ALL_SYMBOL_in_privilege_type6617_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ALL_SYMBOL_in_privilege_type6617	= { FOLLOW_ALL_SYMBOL_in_privilege_type6617_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRIVILEGES_SYMBOL_in_privilege_type6619  */
static	ANTLR3_BITWORD FOLLOW_PRIVILEGES_SYMBOL_in_privilege_type6619_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PRIVILEGES_SYMBOL_in_privilege_type6619	= { FOLLOW_PRIVILEGES_SYMBOL_in_privilege_type6619_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALTER_SYMBOL_in_privilege_type6625  */
static	ANTLR3_BITWORD FOLLOW_ALTER_SYMBOL_in_privilege_type6625_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000200000) };
static  ANTLR3_BITSET_LIST FOLLOW_ALTER_SYMBOL_in_privilege_type6625	= { FOLLOW_ALTER_SYMBOL_in_privilege_type6625_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ROUTINE_SYMBOL_in_privilege_type6627  */
static	ANTLR3_BITWORD FOLLOW_ROUTINE_SYMBOL_in_privilege_type6627_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ROUTINE_SYMBOL_in_privilege_type6627	= { FOLLOW_ROUTINE_SYMBOL_in_privilege_type6627_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CREATE_SYMBOL_in_privilege_type6633  */
static	ANTLR3_BITWORD FOLLOW_CREATE_SYMBOL_in_privilege_type6633_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000200000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0000800000000008), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_CREATE_SYMBOL_in_privilege_type6633	= { FOLLOW_CREATE_SYMBOL_in_privilege_type6633_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ROUTINE_SYMBOL_in_privilege_type6636  */
static	ANTLR3_BITWORD FOLLOW_ROUTINE_SYMBOL_in_privilege_type6636_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ROUTINE_SYMBOL_in_privilege_type6636	= { FOLLOW_ROUTINE_SYMBOL_in_privilege_type6636_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLESPACE_SYMBOL_in_privilege_type6640  */
static	ANTLR3_BITWORD FOLLOW_TABLESPACE_SYMBOL_in_privilege_type6640_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLESPACE_SYMBOL_in_privilege_type6640	= { FOLLOW_TABLESPACE_SYMBOL_in_privilege_type6640_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TEMPORARY_SYMBOL_in_privilege_type6644  */
static	ANTLR3_BITWORD FOLLOW_TEMPORARY_SYMBOL_in_privilege_type6644_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_TEMPORARY_SYMBOL_in_privilege_type6644	= { FOLLOW_TEMPORARY_SYMBOL_in_privilege_type6644_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLES_SYMBOL_in_privilege_type6646  */
static	ANTLR3_BITWORD FOLLOW_TABLES_SYMBOL_in_privilege_type6646_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLES_SYMBOL_in_privilege_type6646	= { FOLLOW_TABLES_SYMBOL_in_privilege_type6646_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USER_SYMBOL_in_privilege_type6650  */
static	ANTLR3_BITWORD FOLLOW_USER_SYMBOL_in_privilege_type6650_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_USER_SYMBOL_in_privilege_type6650	= { FOLLOW_USER_SYMBOL_in_privilege_type6650_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VIEW_SYMBOL_in_privilege_type6654  */
static	ANTLR3_BITWORD FOLLOW_VIEW_SYMBOL_in_privilege_type6654_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_VIEW_SYMBOL_in_privilege_type6654	= { FOLLOW_VIEW_SYMBOL_in_privilege_type6654_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DELETE_SYMBOL_in_privilege_type6661  */
static	ANTLR3_BITWORD FOLLOW_DELETE_SYMBOL_in_privilege_type6661_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DELETE_SYMBOL_in_privilege_type6661	= { FOLLOW_DELETE_SYMBOL_in_privilege_type6661_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DROP_SYMBOL_in_privilege_type6666  */
static	ANTLR3_BITWORD FOLLOW_DROP_SYMBOL_in_privilege_type6666_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DROP_SYMBOL_in_privilege_type6666	= { FOLLOW_DROP_SYMBOL_in_privilege_type6666_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EVENT_SYMBOL_in_privilege_type6671  */
static	ANTLR3_BITWORD FOLLOW_EVENT_SYMBOL_in_privilege_type6671_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EVENT_SYMBOL_in_privilege_type6671	= { FOLLOW_EVENT_SYMBOL_in_privilege_type6671_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXECUTE_SYMBOL_in_privilege_type6676  */
static	ANTLR3_BITWORD FOLLOW_EXECUTE_SYMBOL_in_privilege_type6676_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EXECUTE_SYMBOL_in_privilege_type6676	= { FOLLOW_EXECUTE_SYMBOL_in_privilege_type6676_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FILE_SYMBOL_in_privilege_type6681  */
static	ANTLR3_BITWORD FOLLOW_FILE_SYMBOL_in_privilege_type6681_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_FILE_SYMBOL_in_privilege_type6681	= { FOLLOW_FILE_SYMBOL_in_privilege_type6681_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GRANT_SYMBOL_in_privilege_type6686  */
static	ANTLR3_BITWORD FOLLOW_GRANT_SYMBOL_in_privilege_type6686_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x4000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_GRANT_SYMBOL_in_privilege_type6686	= { FOLLOW_GRANT_SYMBOL_in_privilege_type6686_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPTION_SYMBOL_in_privilege_type6688  */
static	ANTLR3_BITWORD FOLLOW_OPTION_SYMBOL_in_privilege_type6688_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_OPTION_SYMBOL_in_privilege_type6688	= { FOLLOW_OPTION_SYMBOL_in_privilege_type6688_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INDEX_SYMBOL_in_privilege_type6693  */
static	ANTLR3_BITWORD FOLLOW_INDEX_SYMBOL_in_privilege_type6693_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INDEX_SYMBOL_in_privilege_type6693	= { FOLLOW_INDEX_SYMBOL_in_privilege_type6693_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INSERT_SYMBOL_in_privilege_type6698  */
static	ANTLR3_BITWORD FOLLOW_INSERT_SYMBOL_in_privilege_type6698_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INSERT_SYMBOL_in_privilege_type6698	= { FOLLOW_INSERT_SYMBOL_in_privilege_type6698_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOCK_SYMBOL_in_privilege_type6703  */
static	ANTLR3_BITWORD FOLLOW_LOCK_SYMBOL_in_privilege_type6703_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_LOCK_SYMBOL_in_privilege_type6703	= { FOLLOW_LOCK_SYMBOL_in_privilege_type6703_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLES_SYMBOL_in_privilege_type6705  */
static	ANTLR3_BITWORD FOLLOW_TABLES_SYMBOL_in_privilege_type6705_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLES_SYMBOL_in_privilege_type6705	= { FOLLOW_TABLES_SYMBOL_in_privilege_type6705_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROCESS_SYMBOL_in_privilege_type6710  */
static	ANTLR3_BITWORD FOLLOW_PROCESS_SYMBOL_in_privilege_type6710_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PROCESS_SYMBOL_in_privilege_type6710	= { FOLLOW_PROCESS_SYMBOL_in_privilege_type6710_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROXY_SYMBOL_in_privilege_type6715  */
static	ANTLR3_BITWORD FOLLOW_PROXY_SYMBOL_in_privilege_type6715_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PROXY_SYMBOL_in_privilege_type6715	= { FOLLOW_PROXY_SYMBOL_in_privilege_type6715_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REFERENCES_SYMBOL_in_privilege_type6720  */
static	ANTLR3_BITWORD FOLLOW_REFERENCES_SYMBOL_in_privilege_type6720_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_REFERENCES_SYMBOL_in_privilege_type6720	= { FOLLOW_REFERENCES_SYMBOL_in_privilege_type6720_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RELOAD_SYMBOL_in_privilege_type6725  */
static	ANTLR3_BITWORD FOLLOW_RELOAD_SYMBOL_in_privilege_type6725_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_RELOAD_SYMBOL_in_privilege_type6725	= { FOLLOW_RELOAD_SYMBOL_in_privilege_type6725_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPLICATION_SYMBOL_in_privilege_type6730  */
static	ANTLR3_BITWORD FOLLOW_REPLICATION_SYMBOL_in_privilege_type6730_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_REPLICATION_SYMBOL_in_privilege_type6730	= { FOLLOW_REPLICATION_SYMBOL_in_privilege_type6730_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_privilege_type6732  */
static	ANTLR3_BITWORD FOLLOW_set_in_privilege_type6732_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_privilege_type6732	= { FOLLOW_set_in_privilege_type6732_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SELECT_SYMBOL_in_privilege_type6743  */
static	ANTLR3_BITWORD FOLLOW_SELECT_SYMBOL_in_privilege_type6743_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SELECT_SYMBOL_in_privilege_type6743	= { FOLLOW_SELECT_SYMBOL_in_privilege_type6743_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SHOW_SYMBOL_in_privilege_type6748  */
static	ANTLR3_BITWORD FOLLOW_SHOW_SYMBOL_in_privilege_type6748_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SHOW_SYMBOL_in_privilege_type6748	= { FOLLOW_SHOW_SYMBOL_in_privilege_type6748_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATABASES_SYMBOL_in_privilege_type6750  */
static	ANTLR3_BITWORD FOLLOW_DATABASES_SYMBOL_in_privilege_type6750_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DATABASES_SYMBOL_in_privilege_type6750	= { FOLLOW_DATABASES_SYMBOL_in_privilege_type6750_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SHOW_SYMBOL_in_privilege_type6755  */
static	ANTLR3_BITWORD FOLLOW_SHOW_SYMBOL_in_privilege_type6755_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_SHOW_SYMBOL_in_privilege_type6755	= { FOLLOW_SHOW_SYMBOL_in_privilege_type6755_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VIEW_SYMBOL_in_privilege_type6757  */
static	ANTLR3_BITWORD FOLLOW_VIEW_SYMBOL_in_privilege_type6757_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_VIEW_SYMBOL_in_privilege_type6757	= { FOLLOW_VIEW_SYMBOL_in_privilege_type6757_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SHUTDOWN_SYMBOL_in_privilege_type6762  */
static	ANTLR3_BITWORD FOLLOW_SHUTDOWN_SYMBOL_in_privilege_type6762_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SHUTDOWN_SYMBOL_in_privilege_type6762	= { FOLLOW_SHUTDOWN_SYMBOL_in_privilege_type6762_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SUPER_SYMBOL_in_privilege_type6767  */
static	ANTLR3_BITWORD FOLLOW_SUPER_SYMBOL_in_privilege_type6767_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SUPER_SYMBOL_in_privilege_type6767	= { FOLLOW_SUPER_SYMBOL_in_privilege_type6767_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TRIGGER_SYMBOL_in_privilege_type6772  */
static	ANTLR3_BITWORD FOLLOW_TRIGGER_SYMBOL_in_privilege_type6772_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_TRIGGER_SYMBOL_in_privilege_type6772	= { FOLLOW_TRIGGER_SYMBOL_in_privilege_type6772_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UPDATE_SYMBOL_in_privilege_type6777  */
static	ANTLR3_BITWORD FOLLOW_UPDATE_SYMBOL_in_privilege_type6777_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_UPDATE_SYMBOL_in_privilege_type6777	= { FOLLOW_UPDATE_SYMBOL_in_privilege_type6777_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USAGE_SYMBOL_in_privilege_type6782  */
static	ANTLR3_BITWORD FOLLOW_USAGE_SYMBOL_in_privilege_type6782_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_USAGE_SYMBOL_in_privilege_type6782	= { FOLLOW_USAGE_SYMBOL_in_privilege_type6782_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_OPERATOR_in_privilege_level6791  */
static	ANTLR3_BITWORD FOLLOW_MULT_OPERATOR_in_privilege_level6791_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000004000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MULT_OPERATOR_in_privilege_level6791	= { FOLLOW_MULT_OPERATOR_in_privilege_level6791_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOT_SYMBOL_in_privilege_level6794  */
static	ANTLR3_BITWORD FOLLOW_DOT_SYMBOL_in_privilege_level6794_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_DOT_SYMBOL_in_privilege_level6794	= { FOLLOW_DOT_SYMBOL_in_privilege_level6794_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_OPERATOR_in_privilege_level6796  */
static	ANTLR3_BITWORD FOLLOW_MULT_OPERATOR_in_privilege_level6796_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MULT_OPERATOR_in_privilege_level6796	= { FOLLOW_MULT_OPERATOR_in_privilege_level6796_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_with_wildcard_in_privilege_level6803  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_with_wildcard_in_privilege_level6803_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_with_wildcard_in_privilege_level6803	= { FOLLOW_qualified_identifier_with_wildcard_in_privilege_level6803_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SSL_SYMBOL_in_ssl_option6812  */
static	ANTLR3_BITWORD FOLLOW_SSL_SYMBOL_in_ssl_option6812_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SSL_SYMBOL_in_ssl_option6812	= { FOLLOW_SSL_SYMBOL_in_ssl_option6812_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_X509_SYMBOL_in_ssl_option6817  */
static	ANTLR3_BITWORD FOLLOW_X509_SYMBOL_in_ssl_option6817_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_X509_SYMBOL_in_ssl_option6817	= { FOLLOW_X509_SYMBOL_in_ssl_option6817_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CIPHER_SYMBOL_in_ssl_option6822  */
static	ANTLR3_BITWORD FOLLOW_CIPHER_SYMBOL_in_ssl_option6822_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CIPHER_SYMBOL_in_ssl_option6822	= { FOLLOW_CIPHER_SYMBOL_in_ssl_option6822_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_ssl_option6824  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_ssl_option6824_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_ssl_option6824	= { FOLLOW_string_literal_in_ssl_option6824_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ISSUER_SYMBOL_in_ssl_option6829  */
static	ANTLR3_BITWORD FOLLOW_ISSUER_SYMBOL_in_ssl_option6829_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ISSUER_SYMBOL_in_ssl_option6829	= { FOLLOW_ISSUER_SYMBOL_in_ssl_option6829_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_ssl_option6831  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_ssl_option6831_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_ssl_option6831	= { FOLLOW_string_literal_in_ssl_option6831_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SUBJECT_SYMBOL_in_ssl_option6836  */
static	ANTLR3_BITWORD FOLLOW_SUBJECT_SYMBOL_in_ssl_option6836_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SUBJECT_SYMBOL_in_ssl_option6836	= { FOLLOW_SUBJECT_SYMBOL_in_ssl_option6836_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_ssl_option6838  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_ssl_option6838_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_ssl_option6838	= { FOLLOW_string_literal_in_ssl_option6838_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GRANT_SYMBOL_in_grant_option6847  */
static	ANTLR3_BITWORD FOLLOW_GRANT_SYMBOL_in_grant_option6847_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x4000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_GRANT_SYMBOL_in_grant_option6847	= { FOLLOW_GRANT_SYMBOL_in_grant_option6847_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPTION_SYMBOL_in_grant_option6849  */
static	ANTLR3_BITWORD FOLLOW_OPTION_SYMBOL_in_grant_option6849_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_OPTION_SYMBOL_in_grant_option6849	= { FOLLOW_OPTION_SYMBOL_in_grant_option6849_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAX_QUERIES_PER_HOUR_SYMBOL_in_grant_option6854  */
static	ANTLR3_BITWORD FOLLOW_MAX_QUERIES_PER_HOUR_SYMBOL_in_grant_option6854_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MAX_QUERIES_PER_HOUR_SYMBOL_in_grant_option6854	= { FOLLOW_MAX_QUERIES_PER_HOUR_SYMBOL_in_grant_option6854_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_grant_option6856  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_grant_option6856_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_grant_option6856	= { FOLLOW_INTEGER_in_grant_option6856_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAX_UPDATES_PER_HOUR_SYMBOL_in_grant_option6861  */
static	ANTLR3_BITWORD FOLLOW_MAX_UPDATES_PER_HOUR_SYMBOL_in_grant_option6861_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MAX_UPDATES_PER_HOUR_SYMBOL_in_grant_option6861	= { FOLLOW_MAX_UPDATES_PER_HOUR_SYMBOL_in_grant_option6861_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_grant_option6863  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_grant_option6863_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_grant_option6863	= { FOLLOW_INTEGER_in_grant_option6863_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAX_CONNECTIONS_PER_HOUR_SYMBOL_in_grant_option6868  */
static	ANTLR3_BITWORD FOLLOW_MAX_CONNECTIONS_PER_HOUR_SYMBOL_in_grant_option6868_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MAX_CONNECTIONS_PER_HOUR_SYMBOL_in_grant_option6868	= { FOLLOW_MAX_CONNECTIONS_PER_HOUR_SYMBOL_in_grant_option6868_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_grant_option6870  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_grant_option6870_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_grant_option6870	= { FOLLOW_INTEGER_in_grant_option6870_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAX_USER_CONNECTIONS_SYMBOL_in_grant_option6875  */
static	ANTLR3_BITWORD FOLLOW_MAX_USER_CONNECTIONS_SYMBOL_in_grant_option6875_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MAX_USER_CONNECTIONS_SYMBOL_in_grant_option6875	= { FOLLOW_MAX_USER_CONNECTIONS_SYMBOL_in_grant_option6875_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_grant_option6877  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_grant_option6877_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_grant_option6877	= { FOLLOW_INTEGER_in_grant_option6877_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ANALYZE_SYMBOL_in_table_administration_statement6888  */
static	ANTLR3_BITWORD FOLLOW_ANALYZE_SYMBOL_in_table_administration_statement6888_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020), ANTLR3_UINT64_LIT(0x0000020000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_ANALYZE_SYMBOL_in_table_administration_statement6888	= { FOLLOW_ANALYZE_SYMBOL_in_table_administration_statement6888_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_no_write_to_bin_log_in_table_administration_statement6890  */
static	ANTLR3_BITWORD FOLLOW_no_write_to_bin_log_in_table_administration_statement6890_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_no_write_to_bin_log_in_table_administration_statement6890	= { FOLLOW_no_write_to_bin_log_in_table_administration_statement6890_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_table_administration_statement6893  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_table_administration_statement6893_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_table_administration_statement6893	= { FOLLOW_TABLE_SYMBOL_in_table_administration_statement6893_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_list_in_table_administration_statement6895  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_list_in_table_administration_statement6895_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_list_in_table_administration_statement6895	= { FOLLOW_qualified_identifier_list_in_table_administration_statement6895_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHECK_SYMBOL_in_table_administration_statement6900  */
static	ANTLR3_BITWORD FOLLOW_CHECK_SYMBOL_in_table_administration_statement6900_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_CHECK_SYMBOL_in_table_administration_statement6900	= { FOLLOW_CHECK_SYMBOL_in_table_administration_statement6900_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_table_administration_statement6902  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_table_administration_statement6902_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_table_administration_statement6902	= { FOLLOW_TABLE_SYMBOL_in_table_administration_statement6902_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_list_in_table_administration_statement6904  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_list_in_table_administration_statement6904_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200022000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000020000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_list_in_table_administration_statement6904	= { FOLLOW_qualified_identifier_list_in_table_administration_statement6904_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_check_option_in_table_administration_statement6906  */
static	ANTLR3_BITWORD FOLLOW_check_option_in_table_administration_statement6906_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200022000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000020000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_check_option_in_table_administration_statement6906	= { FOLLOW_check_option_in_table_administration_statement6906_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHECKSUM_SYMBOL_in_table_administration_statement6912  */
static	ANTLR3_BITWORD FOLLOW_CHECKSUM_SYMBOL_in_table_administration_statement6912_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_CHECKSUM_SYMBOL_in_table_administration_statement6912	= { FOLLOW_CHECKSUM_SYMBOL_in_table_administration_statement6912_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_table_administration_statement6914  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_table_administration_statement6914_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_table_administration_statement6914	= { FOLLOW_TABLE_SYMBOL_in_table_administration_statement6914_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_list_in_table_administration_statement6916  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_list_in_table_administration_statement6916_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000020000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_list_in_table_administration_statement6916	= { FOLLOW_qualified_identifier_list_in_table_administration_statement6916_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPTIMIZE_SYMBOL_in_table_administration_statement6930  */
static	ANTLR3_BITWORD FOLLOW_OPTIMIZE_SYMBOL_in_table_administration_statement6930_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020), ANTLR3_UINT64_LIT(0x0000020000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_OPTIMIZE_SYMBOL_in_table_administration_statement6930	= { FOLLOW_OPTIMIZE_SYMBOL_in_table_administration_statement6930_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_no_write_to_bin_log_in_table_administration_statement6932  */
static	ANTLR3_BITWORD FOLLOW_no_write_to_bin_log_in_table_administration_statement6932_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_no_write_to_bin_log_in_table_administration_statement6932	= { FOLLOW_no_write_to_bin_log_in_table_administration_statement6932_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_table_administration_statement6935  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_table_administration_statement6935_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_table_administration_statement6935	= { FOLLOW_TABLE_SYMBOL_in_table_administration_statement6935_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_list_in_table_administration_statement6937  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_list_in_table_administration_statement6937_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_list_in_table_administration_statement6937	= { FOLLOW_qualified_identifier_list_in_table_administration_statement6937_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPAIR_SYMBOL_in_table_administration_statement6942  */
static	ANTLR3_BITWORD FOLLOW_REPAIR_SYMBOL_in_table_administration_statement6942_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020), ANTLR3_UINT64_LIT(0x0000020000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_REPAIR_SYMBOL_in_table_administration_statement6942	= { FOLLOW_REPAIR_SYMBOL_in_table_administration_statement6942_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_no_write_to_bin_log_in_table_administration_statement6944  */
static	ANTLR3_BITWORD FOLLOW_no_write_to_bin_log_in_table_administration_statement6944_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_no_write_to_bin_log_in_table_administration_statement6944	= { FOLLOW_no_write_to_bin_log_in_table_administration_statement6944_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_table_administration_statement6947  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_table_administration_statement6947_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_table_administration_statement6947	= { FOLLOW_TABLE_SYMBOL_in_table_administration_statement6947_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_list_in_table_administration_statement6949  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_list_in_table_administration_statement6949_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000020000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0001000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_list_in_table_administration_statement6949	= { FOLLOW_qualified_identifier_list_in_table_administration_statement6949_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_repair_option_in_table_administration_statement6951  */
static	ANTLR3_BITWORD FOLLOW_repair_option_in_table_administration_statement6951_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000020000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0001000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_repair_option_in_table_administration_statement6951	= { FOLLOW_repair_option_in_table_administration_statement6951_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BACKUP_SYMBOL_in_table_administration_statement6961  */
static	ANTLR3_BITWORD FOLLOW_BACKUP_SYMBOL_in_table_administration_statement6961_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_BACKUP_SYMBOL_in_table_administration_statement6961	= { FOLLOW_BACKUP_SYMBOL_in_table_administration_statement6961_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_table_administration_statement6963  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_table_administration_statement6963_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_table_administration_statement6963	= { FOLLOW_TABLE_SYMBOL_in_table_administration_statement6963_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_identifier_in_table_administration_statement6965  */
static	ANTLR3_BITWORD FOLLOW_table_identifier_in_table_administration_statement6965_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_identifier_in_table_administration_statement6965	= { FOLLOW_table_identifier_in_table_administration_statement6965_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_table_administration_statement6968  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_table_administration_statement6968_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_table_administration_statement6968	= { FOLLOW_COMMA_SYMBOL_in_table_administration_statement6968_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_identifier_in_table_administration_statement6970  */
static	ANTLR3_BITWORD FOLLOW_table_identifier_in_table_administration_statement6970_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_identifier_in_table_administration_statement6970	= { FOLLOW_table_identifier_in_table_administration_statement6970_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TO_SYMBOL_in_table_administration_statement6974  */
static	ANTLR3_BITWORD FOLLOW_TO_SYMBOL_in_table_administration_statement6974_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_TO_SYMBOL_in_table_administration_statement6974	= { FOLLOW_TO_SYMBOL_in_table_administration_statement6974_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_table_administration_statement6976  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_table_administration_statement6976_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_table_administration_statement6976	= { FOLLOW_string_literal_in_table_administration_statement6976_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RESTORE_SYMBOL_in_table_administration_statement6985  */
static	ANTLR3_BITWORD FOLLOW_RESTORE_SYMBOL_in_table_administration_statement6985_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_RESTORE_SYMBOL_in_table_administration_statement6985	= { FOLLOW_RESTORE_SYMBOL_in_table_administration_statement6985_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_table_administration_statement6987  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_table_administration_statement6987_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_table_administration_statement6987	= { FOLLOW_TABLE_SYMBOL_in_table_administration_statement6987_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_identifier_in_table_administration_statement6989  */
static	ANTLR3_BITWORD FOLLOW_table_identifier_in_table_administration_statement6989_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_identifier_in_table_administration_statement6989	= { FOLLOW_table_identifier_in_table_administration_statement6989_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_table_administration_statement6992  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_table_administration_statement6992_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_table_administration_statement6992	= { FOLLOW_COMMA_SYMBOL_in_table_administration_statement6992_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_identifier_in_table_administration_statement6994  */
static	ANTLR3_BITWORD FOLLOW_table_identifier_in_table_administration_statement6994_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_identifier_in_table_administration_statement6994	= { FOLLOW_table_identifier_in_table_administration_statement6994_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_table_administration_statement6998  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_table_administration_statement6998_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_table_administration_statement6998	= { FOLLOW_FROM_SYMBOL_in_table_administration_statement6998_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_table_administration_statement7000  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_table_administration_statement7000_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_table_administration_statement7000	= { FOLLOW_string_literal_in_table_administration_statement7000_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_check_option7009  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_check_option7009_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FOR_SYMBOL_in_check_option7009	= { FOLLOW_FOR_SYMBOL_in_check_option7009_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UPGRADE_SYMBOL_in_check_option7011  */
static	ANTLR3_BITWORD FOLLOW_UPGRADE_SYMBOL_in_check_option7011_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_UPGRADE_SYMBOL_in_check_option7011	= { FOLLOW_UPGRADE_SYMBOL_in_check_option7011_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_QUICK_SYMBOL_in_check_option7015  */
static	ANTLR3_BITWORD FOLLOW_QUICK_SYMBOL_in_check_option7015_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_QUICK_SYMBOL_in_check_option7015	= { FOLLOW_QUICK_SYMBOL_in_check_option7015_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FAST_SYMBOL_in_check_option7019  */
static	ANTLR3_BITWORD FOLLOW_FAST_SYMBOL_in_check_option7019_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_FAST_SYMBOL_in_check_option7019	= { FOLLOW_FAST_SYMBOL_in_check_option7019_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MEDIUM_SYMBOL_in_check_option7023  */
static	ANTLR3_BITWORD FOLLOW_MEDIUM_SYMBOL_in_check_option7023_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MEDIUM_SYMBOL_in_check_option7023	= { FOLLOW_MEDIUM_SYMBOL_in_check_option7023_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXTENDED_SYMBOL_in_check_option7027  */
static	ANTLR3_BITWORD FOLLOW_EXTENDED_SYMBOL_in_check_option7027_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EXTENDED_SYMBOL_in_check_option7027	= { FOLLOW_EXTENDED_SYMBOL_in_check_option7027_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHANGED_SYMBOL_in_check_option7031  */
static	ANTLR3_BITWORD FOLLOW_CHANGED_SYMBOL_in_check_option7031_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CHANGED_SYMBOL_in_check_option7031	= { FOLLOW_CHANGED_SYMBOL_in_check_option7031_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INSTALL_SYMBOL_in_install_uninstall_statment7059  */
static	ANTLR3_BITWORD FOLLOW_INSTALL_SYMBOL_in_install_uninstall_statment7059_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000080000) };
static  ANTLR3_BITSET_LIST FOLLOW_INSTALL_SYMBOL_in_install_uninstall_statment7059	= { FOLLOW_INSTALL_SYMBOL_in_install_uninstall_statment7059_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PLUGIN_SYMBOL_in_install_uninstall_statment7061  */
static	ANTLR3_BITWORD FOLLOW_PLUGIN_SYMBOL_in_install_uninstall_statment7061_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_PLUGIN_SYMBOL_in_install_uninstall_statment7061	= { FOLLOW_PLUGIN_SYMBOL_in_install_uninstall_statment7061_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_install_uninstall_statment7063  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_install_uninstall_statment7063_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_install_uninstall_statment7063	= { FOLLOW_pure_identifier_in_install_uninstall_statment7063_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SONAME_SYMBOL_in_install_uninstall_statment7065  */
static	ANTLR3_BITWORD FOLLOW_SONAME_SYMBOL_in_install_uninstall_statment7065_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SONAME_SYMBOL_in_install_uninstall_statment7065	= { FOLLOW_SONAME_SYMBOL_in_install_uninstall_statment7065_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_install_uninstall_statment7067  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_install_uninstall_statment7067_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_install_uninstall_statment7067	= { FOLLOW_string_literal_in_install_uninstall_statment7067_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNINSTALL_SYMBOL_in_install_uninstall_statment7072  */
static	ANTLR3_BITWORD FOLLOW_UNINSTALL_SYMBOL_in_install_uninstall_statment7072_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000080000) };
static  ANTLR3_BITSET_LIST FOLLOW_UNINSTALL_SYMBOL_in_install_uninstall_statment7072	= { FOLLOW_UNINSTALL_SYMBOL_in_install_uninstall_statment7072_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PLUGIN_SYMBOL_in_install_uninstall_statment7074  */
static	ANTLR3_BITWORD FOLLOW_PLUGIN_SYMBOL_in_install_uninstall_statment7074_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_PLUGIN_SYMBOL_in_install_uninstall_statment7074	= { FOLLOW_PLUGIN_SYMBOL_in_install_uninstall_statment7074_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_install_uninstall_statment7076  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_install_uninstall_statment7076_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_install_uninstall_statment7076	= { FOLLOW_pure_identifier_in_install_uninstall_statment7076_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SET_SYMBOL_in_set_statement7087  */
static	ANTLR3_BITWORD FOLLOW_SET_SYMBOL_in_set_statement7087_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFF868F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBB9C), ANTLR3_UINT64_LIT(0x37A8E503CA2E1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_SET_SYMBOL_in_set_statement7087	= { FOLLOW_SET_SYMBOL_in_set_statement7087_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_option_type_in_set_statement7089  */
static	ANTLR3_BITWORD FOLLOW_option_type_in_set_statement7089_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFF868F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBB9C), ANTLR3_UINT64_LIT(0x37A8E503CA2E1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_option_type_in_set_statement7089	= { FOLLOW_option_type_in_set_statement7089_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TRANSACTION_SYMBOL_in_set_statement7100  */
static	ANTLR3_BITWORD FOLLOW_TRANSACTION_SYMBOL_in_set_statement7100_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000004000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_TRANSACTION_SYMBOL_in_set_statement7100	= { FOLLOW_TRANSACTION_SYMBOL_in_set_statement7100_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_transaction_characteristic_in_set_statement7102  */
static	ANTLR3_BITWORD FOLLOW_set_transaction_characteristic_in_set_statement7102_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_transaction_characteristic_in_set_statement7102	= { FOLLOW_set_transaction_characteristic_in_set_statement7102_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ONE_SHOT_SYMBOL_in_set_statement7109  */
static	ANTLR3_BITWORD FOLLOW_ONE_SHOT_SYMBOL_in_set_statement7109_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFF868F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBB9C), ANTLR3_UINT64_LIT(0x37A8E503CA2E1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_ONE_SHOT_SYMBOL_in_set_statement7109	= { FOLLOW_ONE_SHOT_SYMBOL_in_set_statement7109_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_variable_assignment_in_set_statement7112  */
static	ANTLR3_BITWORD FOLLOW_variable_assignment_in_set_statement7112_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_variable_assignment_in_set_statement7112	= { FOLLOW_variable_assignment_in_set_statement7112_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_set_statement7115  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_set_statement7115_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFF868F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBB9C), ANTLR3_UINT64_LIT(0x37A8E503CA2E1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_set_statement7115	= { FOLLOW_COMMA_SYMBOL_in_set_statement7115_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_option_value_list_in_set_statement7117  */
static	ANTLR3_BITWORD FOLLOW_option_value_list_in_set_statement7117_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_option_value_list_in_set_statement7117	= { FOLLOW_option_value_list_in_set_statement7117_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NAMES_SYMBOL_in_variable_assignment7138  */
static	ANTLR3_BITWORD FOLLOW_NAMES_SYMBOL_in_variable_assignment7138_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000200000), ANTLR3_UINT64_LIT(0x0000000000000180), ANTLR3_UINT64_LIT(0x0800000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_NAMES_SYMBOL_in_variable_assignment7138	= { FOLLOW_NAMES_SYMBOL_in_variable_assignment7138_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_equal_in_variable_assignment7147  */
static	ANTLR3_BITWORD FOLLOW_equal_in_variable_assignment7147_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_equal_in_variable_assignment7147	= { FOLLOW_equal_in_variable_assignment7147_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_variable_assignment7149  */
static	ANTLR3_BITWORD FOLLOW_expression_in_variable_assignment7149_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_variable_assignment7149	= { FOLLOW_expression_in_variable_assignment7149_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_name_or_default_in_variable_assignment7156  */
static	ANTLR3_BITWORD FOLLOW_charset_name_or_default_in_variable_assignment7156_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_name_or_default_in_variable_assignment7156	= { FOLLOW_charset_name_or_default_in_variable_assignment7156_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLLATE_SYMBOL_in_variable_assignment7159  */
static	ANTLR3_BITWORD FOLLOW_COLLATE_SYMBOL_in_variable_assignment7159_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2E1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COLLATE_SYMBOL_in_variable_assignment7159	= { FOLLOW_COLLATE_SYMBOL_in_variable_assignment7159_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_collation_name_or_default_in_variable_assignment7161  */
static	ANTLR3_BITWORD FOLLOW_collation_name_or_default_in_variable_assignment7161_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_collation_name_or_default_in_variable_assignment7161	= { FOLLOW_collation_name_or_default_in_variable_assignment7161_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_variable_name_in_variable_assignment7172  */
static	ANTLR3_BITWORD FOLLOW_variable_name_in_variable_assignment7172_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000200000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_variable_name_in_variable_assignment7172	= { FOLLOW_variable_name_in_variable_assignment7172_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_equal_in_variable_assignment7174  */
static	ANTLR3_BITWORD FOLLOW_equal_in_variable_assignment7174_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF869F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2E1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x273D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_equal_in_variable_assignment7174	= { FOLLOW_equal_in_variable_assignment7174_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_expression_or_default_in_variable_assignment7176  */
static	ANTLR3_BITWORD FOLLOW_set_expression_or_default_in_variable_assignment7176_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_expression_or_default_in_variable_assignment7176	= { FOLLOW_set_expression_or_default_in_variable_assignment7176_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_variable_in_variable_assignment7181  */
static	ANTLR3_BITWORD FOLLOW_user_variable_in_variable_assignment7181_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000200000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_user_variable_in_variable_assignment7181	= { FOLLOW_user_variable_in_variable_assignment7181_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_equal_in_variable_assignment7183  */
static	ANTLR3_BITWORD FOLLOW_equal_in_variable_assignment7183_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_equal_in_variable_assignment7183	= { FOLLOW_equal_in_variable_assignment7183_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_variable_assignment7185  */
static	ANTLR3_BITWORD FOLLOW_expression_in_variable_assignment7185_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_variable_assignment7185	= { FOLLOW_expression_in_variable_assignment7185_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_system_variable_in_variable_assignment7190  */
static	ANTLR3_BITWORD FOLLOW_system_variable_in_variable_assignment7190_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000200000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_system_variable_in_variable_assignment7190	= { FOLLOW_system_variable_in_variable_assignment7190_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_equal_in_variable_assignment7192  */
static	ANTLR3_BITWORD FOLLOW_equal_in_variable_assignment7192_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF869F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2E1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x273D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_equal_in_variable_assignment7192	= { FOLLOW_equal_in_variable_assignment7192_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_expression_or_default_in_variable_assignment7194  */
static	ANTLR3_BITWORD FOLLOW_set_expression_or_default_in_variable_assignment7194_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_expression_or_default_in_variable_assignment7194	= { FOLLOW_set_expression_or_default_in_variable_assignment7194_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_clause_in_variable_assignment7199  */
static	ANTLR3_BITWORD FOLLOW_charset_clause_in_variable_assignment7199_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_clause_in_variable_assignment7199	= { FOLLOW_charset_clause_in_variable_assignment7199_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_set_expression_or_default7208  */
static	ANTLR3_BITWORD FOLLOW_expression_in_set_expression_or_default7208_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_set_expression_or_default7208	= { FOLLOW_expression_in_set_expression_or_default7208_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_set_expression_or_default7213  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_set_expression_or_default7213_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_set_expression_or_default7213	= { FOLLOW_DEFAULT_SYMBOL_in_set_expression_or_default7213_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_set_expression_or_default7218  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_set_expression_or_default7218_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_set_expression_or_default7218	= { FOLLOW_ON_SYMBOL_in_set_expression_or_default7218_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALL_SYMBOL_in_set_expression_or_default7223  */
static	ANTLR3_BITWORD FOLLOW_ALL_SYMBOL_in_set_expression_or_default7223_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ALL_SYMBOL_in_set_expression_or_default7223	= { FOLLOW_ALL_SYMBOL_in_set_expression_or_default7223_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_set_expression_or_default7228  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_set_expression_or_default7228_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_set_expression_or_default7228	= { FOLLOW_BINARY_SYMBOL_in_set_expression_or_default7228_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_option_value_in_option_value_list7237  */
static	ANTLR3_BITWORD FOLLOW_option_value_in_option_value_list7237_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_option_value_in_option_value_list7237	= { FOLLOW_option_value_in_option_value_list7237_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_option_value_list7240  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_option_value_list7240_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFF868F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBB9C), ANTLR3_UINT64_LIT(0x37A8E503CA2E1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_option_value_list7240	= { FOLLOW_COMMA_SYMBOL_in_option_value_list7240_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_option_value_in_option_value_list7242  */
static	ANTLR3_BITWORD FOLLOW_option_value_in_option_value_list7242_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_option_value_in_option_value_list7242	= { FOLLOW_option_value_in_option_value_list7242_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_option_type_in_option_value7253  */
static	ANTLR3_BITWORD FOLLOW_option_type_in_option_value7253_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2E1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_option_type_in_option_value7253	= { FOLLOW_option_type_in_option_value7253_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_variable_name_in_option_value7255  */
static	ANTLR3_BITWORD FOLLOW_variable_name_in_option_value7255_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000200000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_variable_name_in_option_value7255	= { FOLLOW_variable_name_in_option_value7255_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_equal_in_option_value7257  */
static	ANTLR3_BITWORD FOLLOW_equal_in_option_value7257_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF869F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2E1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x273D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_equal_in_option_value7257	= { FOLLOW_equal_in_option_value7257_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_expression_or_default_in_option_value7259  */
static	ANTLR3_BITWORD FOLLOW_set_expression_or_default_in_option_value7259_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_expression_or_default_in_option_value7259	= { FOLLOW_set_expression_or_default_in_option_value7259_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_variable_assignment_in_option_value7264  */
static	ANTLR3_BITWORD FOLLOW_variable_assignment_in_option_value7264_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_variable_assignment_in_option_value7264	= { FOLLOW_variable_assignment_in_option_value7264_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SHOW_SYMBOL_in_show_statement7275  */
static	ANTLR3_BITWORD FOLLOW_SHOW_SYMBOL_in_show_statement7275_bits[]	= { ANTLR3_UINT64_LIT(0x000000C004000000), ANTLR3_UINT64_LIT(0x1002200000280100), ANTLR3_UINT64_LIT(0x1300000000000000), ANTLR3_UINT64_LIT(0x0000C14000000002), ANTLR3_UINT64_LIT(0x0000000000008800), ANTLR3_UINT64_LIT(0x0000020000000020), ANTLR3_UINT64_LIT(0x0400000000000000), ANTLR3_UINT64_LIT(0x0000001B800A0000), ANTLR3_UINT64_LIT(0x0400100000000000), ANTLR3_UINT64_LIT(0x1000010400000000), ANTLR3_UINT64_LIT(0x0800000000080004), ANTLR3_UINT64_LIT(0x0000000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_SHOW_SYMBOL_in_show_statement7275	= { FOLLOW_SHOW_SYMBOL_in_show_statement7275_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AUTHORS_SYMBOL_in_show_statement7283  */
static	ANTLR3_BITWORD FOLLOW_AUTHORS_SYMBOL_in_show_statement7283_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_AUTHORS_SYMBOL_in_show_statement7283	= { FOLLOW_AUTHORS_SYMBOL_in_show_statement7283_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_show_statement7289  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_show_statement7289_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_show_statement7289	= { FOLLOW_BINARY_SYMBOL_in_show_statement7289_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOGS_SYMBOL_in_show_statement7291  */
static	ANTLR3_BITWORD FOLLOW_LOGS_SYMBOL_in_show_statement7291_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_LOGS_SYMBOL_in_show_statement7291	= { FOLLOW_LOGS_SYMBOL_in_show_statement7291_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINLOG_SYMBOL_in_show_statement7297  */
static	ANTLR3_BITWORD FOLLOW_BINLOG_SYMBOL_in_show_statement7297_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BINLOG_SYMBOL_in_show_statement7297	= { FOLLOW_BINLOG_SYMBOL_in_show_statement7297_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EVENTS_SYMBOL_in_show_statement7299  */
static	ANTLR3_BITWORD FOLLOW_EVENTS_SYMBOL_in_show_statement7299_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000), ANTLR3_UINT64_LIT(0x2000000100000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EVENTS_SYMBOL_in_show_statement7299	= { FOLLOW_EVENTS_SYMBOL_in_show_statement7299_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IN_SYMBOL_in_show_statement7302  */
static	ANTLR3_BITWORD FOLLOW_IN_SYMBOL_in_show_statement7302_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_IN_SYMBOL_in_show_statement7302	= { FOLLOW_IN_SYMBOL_in_show_statement7302_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_show_statement7304  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_show_statement7304_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000), ANTLR3_UINT64_LIT(0x2000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_show_statement7304	= { FOLLOW_string_literal_in_show_statement7304_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_show_statement7309  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_show_statement7309_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_show_statement7309	= { FOLLOW_FROM_SYMBOL_in_show_statement7309_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_show_statement7311  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_show_statement7311_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_show_statement7311	= { FOLLOW_INTEGER_in_show_statement7311_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_clause_in_show_statement7315  */
static	ANTLR3_BITWORD FOLLOW_limit_clause_in_show_statement7315_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_clause_in_show_statement7315	= { FOLLOW_limit_clause_in_show_statement7315_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHAR_SYMBOL_in_show_statement7322  */
static	ANTLR3_BITWORD FOLLOW_CHAR_SYMBOL_in_show_statement7322_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CHAR_SYMBOL_in_show_statement7322	= { FOLLOW_CHAR_SYMBOL_in_show_statement7322_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SET_SYMBOL_in_show_statement7324  */
static	ANTLR3_BITWORD FOLLOW_SET_SYMBOL_in_show_statement7324_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_SET_SYMBOL_in_show_statement7324	= { FOLLOW_SET_SYMBOL_in_show_statement7324_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_like_or_where_in_show_statement7326  */
static	ANTLR3_BITWORD FOLLOW_like_or_where_in_show_statement7326_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_like_or_where_in_show_statement7326	= { FOLLOW_like_or_where_in_show_statement7326_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLLATION_SYMBOL_in_show_statement7333  */
static	ANTLR3_BITWORD FOLLOW_COLLATION_SYMBOL_in_show_statement7333_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_COLLATION_SYMBOL_in_show_statement7333	= { FOLLOW_COLLATION_SYMBOL_in_show_statement7333_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_like_or_where_in_show_statement7335  */
static	ANTLR3_BITWORD FOLLOW_like_or_where_in_show_statement7335_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_like_or_where_in_show_statement7335	= { FOLLOW_like_or_where_in_show_statement7335_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FULL_SYMBOL_in_show_statement7342  */
static	ANTLR3_BITWORD FOLLOW_FULL_SYMBOL_in_show_statement7342_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000200000) };
static  ANTLR3_BITSET_LIST FOLLOW_FULL_SYMBOL_in_show_statement7342	= { FOLLOW_FULL_SYMBOL_in_show_statement7342_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLUMNS_SYMBOL_in_show_statement7345  */
static	ANTLR3_BITWORD FOLLOW_COLUMNS_SYMBOL_in_show_statement7345_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COLUMNS_SYMBOL_in_show_statement7345	= { FOLLOW_COLUMNS_SYMBOL_in_show_statement7345_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_show_statement7347  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_show_statement7347_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_show_statement7347	= { FOLLOW_FROM_SYMBOL_in_show_statement7347_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_show_statement7349  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_show_statement7349_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_show_statement7349	= { FOLLOW_pure_identifier_in_show_statement7349_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_show_statement7351  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_show_statement7351_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_show_statement7351	= { FOLLOW_FROM_SYMBOL_in_show_statement7351_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_show_statement7353  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_show_statement7353_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_show_statement7353	= { FOLLOW_pure_identifier_in_show_statement7353_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_like_or_where_in_show_statement7355  */
static	ANTLR3_BITWORD FOLLOW_like_or_where_in_show_statement7355_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_like_or_where_in_show_statement7355	= { FOLLOW_like_or_where_in_show_statement7355_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONTRIBUTORS_SYMBOL_in_show_statement7362  */
static	ANTLR3_BITWORD FOLLOW_CONTRIBUTORS_SYMBOL_in_show_statement7362_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CONTRIBUTORS_SYMBOL_in_show_statement7362	= { FOLLOW_CONTRIBUTORS_SYMBOL_in_show_statement7362_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CREATE_SYMBOL_in_show_statement7368  */
static	ANTLR3_BITWORD FOLLOW_CREATE_SYMBOL_in_show_statement7368_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000004), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000100000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100004), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_CREATE_SYMBOL_in_show_statement7368	= { FOLLOW_CREATE_SYMBOL_in_show_statement7368_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_show_statement7370  */
static	ANTLR3_BITWORD FOLLOW_set_in_show_statement7370_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_show_statement7370	= { FOLLOW_set_in_show_statement7370_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_show_statement7398  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_show_statement7398_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_show_statement7398	= { FOLLOW_qualified_identifier_in_show_statement7398_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATABASES_SYMBOL_in_show_statement7404  */
static	ANTLR3_BITWORD FOLLOW_DATABASES_SYMBOL_in_show_statement7404_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DATABASES_SYMBOL_in_show_statement7404	= { FOLLOW_DATABASES_SYMBOL_in_show_statement7404_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_like_clause_in_show_statement7406  */
static	ANTLR3_BITWORD FOLLOW_like_clause_in_show_statement7406_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_like_clause_in_show_statement7406	= { FOLLOW_like_clause_in_show_statement7406_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENGINE_SYMBOL_in_show_statement7413  */
static	ANTLR3_BITWORD FOLLOW_ENGINE_SYMBOL_in_show_statement7413_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_ENGINE_SYMBOL_in_show_statement7413	= { FOLLOW_ENGINE_SYMBOL_in_show_statement7413_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_show_statement7415  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_show_statement7415_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000040000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_show_statement7415	= { FOLLOW_pure_identifier_in_show_statement7415_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_show_statement7417  */
static	ANTLR3_BITWORD FOLLOW_set_in_show_statement7417_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_show_statement7417	= { FOLLOW_set_in_show_statement7417_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STORAGE_SYMBOL_in_show_statement7429  */
static	ANTLR3_BITWORD FOLLOW_STORAGE_SYMBOL_in_show_statement7429_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_STORAGE_SYMBOL_in_show_statement7429	= { FOLLOW_STORAGE_SYMBOL_in_show_statement7429_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENGINES_SYMBOL_in_show_statement7432  */
static	ANTLR3_BITWORD FOLLOW_ENGINES_SYMBOL_in_show_statement7432_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ENGINES_SYMBOL_in_show_statement7432	= { FOLLOW_ENGINES_SYMBOL_in_show_statement7432_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ERRORS_SYMBOL_in_show_statement7438  */
static	ANTLR3_BITWORD FOLLOW_ERRORS_SYMBOL_in_show_statement7438_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ERRORS_SYMBOL_in_show_statement7438	= { FOLLOW_ERRORS_SYMBOL_in_show_statement7438_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_clause_in_show_statement7440  */
static	ANTLR3_BITWORD FOLLOW_limit_clause_in_show_statement7440_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_clause_in_show_statement7440	= { FOLLOW_limit_clause_in_show_statement7440_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EVENTS_SYMBOL_in_show_statement7447  */
static	ANTLR3_BITWORD FOLLOW_EVENTS_SYMBOL_in_show_statement7447_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EVENTS_SYMBOL_in_show_statement7447	= { FOLLOW_EVENTS_SYMBOL_in_show_statement7447_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FUNCTION_SYMBOL_in_show_statement7453  */
static	ANTLR3_BITWORD FOLLOW_FUNCTION_SYMBOL_in_show_statement7453_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_FUNCTION_SYMBOL_in_show_statement7453	= { FOLLOW_FUNCTION_SYMBOL_in_show_statement7453_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CODE_SYMBOL_in_show_statement7455  */
static	ANTLR3_BITWORD FOLLOW_CODE_SYMBOL_in_show_statement7455_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_CODE_SYMBOL_in_show_statement7455	= { FOLLOW_CODE_SYMBOL_in_show_statement7455_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_show_statement7457  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_show_statement7457_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_show_statement7457	= { FOLLOW_pure_identifier_in_show_statement7457_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FUNCTION_SYMBOL_in_show_statement7463  */
static	ANTLR3_BITWORD FOLLOW_FUNCTION_SYMBOL_in_show_statement7463_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FUNCTION_SYMBOL_in_show_statement7463	= { FOLLOW_FUNCTION_SYMBOL_in_show_statement7463_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STATUS_SYMBOL_in_show_statement7465  */
static	ANTLR3_BITWORD FOLLOW_STATUS_SYMBOL_in_show_statement7465_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_STATUS_SYMBOL_in_show_statement7465	= { FOLLOW_STATUS_SYMBOL_in_show_statement7465_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_like_or_where_in_show_statement7467  */
static	ANTLR3_BITWORD FOLLOW_like_or_where_in_show_statement7467_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_like_or_where_in_show_statement7467	= { FOLLOW_like_or_where_in_show_statement7467_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GRANTS_SYMBOL_in_show_statement7474  */
static	ANTLR3_BITWORD FOLLOW_GRANTS_SYMBOL_in_show_statement7474_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200000000) };
static  ANTLR3_BITSET_LIST FOLLOW_GRANTS_SYMBOL_in_show_statement7474	= { FOLLOW_GRANTS_SYMBOL_in_show_statement7474_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_show_statement7476  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_show_statement7476_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1A92DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_FOR_SYMBOL_in_show_statement7476	= { FOLLOW_FOR_SYMBOL_in_show_statement7476_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_in_show_statement7478  */
static	ANTLR3_BITWORD FOLLOW_user_in_show_statement7478_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_user_in_show_statement7478	= { FOLLOW_user_in_show_statement7478_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INDEX_SYMBOL_in_show_statement7484  */
static	ANTLR3_BITWORD FOLLOW_INDEX_SYMBOL_in_show_statement7484_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INDEX_SYMBOL_in_show_statement7484	= { FOLLOW_INDEX_SYMBOL_in_show_statement7484_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_show_statement7486  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_show_statement7486_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_show_statement7486	= { FOLLOW_FROM_SYMBOL_in_show_statement7486_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_show_statement7488  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_show_statement7488_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_show_statement7488	= { FOLLOW_pure_identifier_in_show_statement7488_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_show_statement7491  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_show_statement7491_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_show_statement7491	= { FOLLOW_FROM_SYMBOL_in_show_statement7491_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_show_statement7493  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_show_statement7493_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_show_statement7493	= { FOLLOW_pure_identifier_in_show_statement7493_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INNODB_SYMBOL_in_show_statement7505  */
static	ANTLR3_BITWORD FOLLOW_INNODB_SYMBOL_in_show_statement7505_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INNODB_SYMBOL_in_show_statement7505	= { FOLLOW_INNODB_SYMBOL_in_show_statement7505_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STATUS_SYMBOL_in_show_statement7507  */
static	ANTLR3_BITWORD FOLLOW_STATUS_SYMBOL_in_show_statement7507_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_STATUS_SYMBOL_in_show_statement7507	= { FOLLOW_STATUS_SYMBOL_in_show_statement7507_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_SYMBOL_in_show_statement7514  */
static	ANTLR3_BITWORD FOLLOW_MASTER_SYMBOL_in_show_statement7514_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MASTER_SYMBOL_in_show_statement7514	= { FOLLOW_MASTER_SYMBOL_in_show_statement7514_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STATUS_SYMBOL_in_show_statement7516  */
static	ANTLR3_BITWORD FOLLOW_STATUS_SYMBOL_in_show_statement7516_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_STATUS_SYMBOL_in_show_statement7516	= { FOLLOW_STATUS_SYMBOL_in_show_statement7516_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_SYMBOL_in_show_statement7522  */
static	ANTLR3_BITWORD FOLLOW_OPEN_SYMBOL_in_show_statement7522_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_SYMBOL_in_show_statement7522	= { FOLLOW_OPEN_SYMBOL_in_show_statement7522_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLES_SYMBOL_in_show_statement7524  */
static	ANTLR3_BITWORD FOLLOW_TABLES_SYMBOL_in_show_statement7524_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000), ANTLR3_UINT64_LIT(0x1000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLES_SYMBOL_in_show_statement7524	= { FOLLOW_TABLES_SYMBOL_in_show_statement7524_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_show_statement7527  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_show_statement7527_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_show_statement7527	= { FOLLOW_FROM_SYMBOL_in_show_statement7527_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_show_statement7529  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_show_statement7529_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_show_statement7529	= { FOLLOW_pure_identifier_in_show_statement7529_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_like_or_where_in_show_statement7533  */
static	ANTLR3_BITWORD FOLLOW_like_or_where_in_show_statement7533_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_like_or_where_in_show_statement7533	= { FOLLOW_like_or_where_in_show_statement7533_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PLUGIN_SYMBOL_in_show_statement7544  */
static	ANTLR3_BITWORD FOLLOW_PLUGIN_SYMBOL_in_show_statement7544_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PLUGIN_SYMBOL_in_show_statement7544	= { FOLLOW_PLUGIN_SYMBOL_in_show_statement7544_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PLUGINS_SYMBOL_in_show_statement7555  */
static	ANTLR3_BITWORD FOLLOW_PLUGINS_SYMBOL_in_show_statement7555_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PLUGINS_SYMBOL_in_show_statement7555	= { FOLLOW_PLUGINS_SYMBOL_in_show_statement7555_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROCEDURE_SYMBOL_in_show_statement7561  */
static	ANTLR3_BITWORD FOLLOW_PROCEDURE_SYMBOL_in_show_statement7561_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_PROCEDURE_SYMBOL_in_show_statement7561	= { FOLLOW_PROCEDURE_SYMBOL_in_show_statement7561_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CODE_SYMBOL_in_show_statement7563  */
static	ANTLR3_BITWORD FOLLOW_CODE_SYMBOL_in_show_statement7563_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_CODE_SYMBOL_in_show_statement7563	= { FOLLOW_CODE_SYMBOL_in_show_statement7563_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_show_statement7565  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_show_statement7565_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_show_statement7565	= { FOLLOW_pure_identifier_in_show_statement7565_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRIVILEGES_SYMBOL_in_show_statement7571  */
static	ANTLR3_BITWORD FOLLOW_PRIVILEGES_SYMBOL_in_show_statement7571_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PRIVILEGES_SYMBOL_in_show_statement7571	= { FOLLOW_PRIVILEGES_SYMBOL_in_show_statement7571_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FULL_SYMBOL_in_show_statement7577  */
static	ANTLR3_BITWORD FOLLOW_FULL_SYMBOL_in_show_statement7577_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FULL_SYMBOL_in_show_statement7577	= { FOLLOW_FULL_SYMBOL_in_show_statement7577_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROCESSLIST_SYMBOL_in_show_statement7580  */
static	ANTLR3_BITWORD FOLLOW_PROCESSLIST_SYMBOL_in_show_statement7580_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PROCESSLIST_SYMBOL_in_show_statement7580	= { FOLLOW_PROCESSLIST_SYMBOL_in_show_statement7580_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROFILE_SYMBOL_in_show_statement7586  */
static	ANTLR3_BITWORD FOLLOW_PROFILE_SYMBOL_in_show_statement7586_bits[]	= { ANTLR3_UINT64_LIT(0x0020000000001002), ANTLR3_UINT64_LIT(0x0001080000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x2000002000000000), ANTLR3_UINT64_LIT(0x0100000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PROFILE_SYMBOL_in_show_statement7586	= { FOLLOW_PROFILE_SYMBOL_in_show_statement7586_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_profile_type_in_show_statement7589  */
static	ANTLR3_BITWORD FOLLOW_profile_type_in_show_statement7589_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x2000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_profile_type_in_show_statement7589	= { FOLLOW_profile_type_in_show_statement7589_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_show_statement7592  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_show_statement7592_bits[]	= { ANTLR3_UINT64_LIT(0x0020000000001000), ANTLR3_UINT64_LIT(0x0001080000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000000000), ANTLR3_UINT64_LIT(0x0100000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_show_statement7592	= { FOLLOW_COMMA_SYMBOL_in_show_statement7592_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_profile_type_in_show_statement7594  */
static	ANTLR3_BITWORD FOLLOW_profile_type_in_show_statement7594_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x2000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_profile_type_in_show_statement7594	= { FOLLOW_profile_type_in_show_statement7594_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_show_statement7601  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_show_statement7601_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FOR_SYMBOL_in_show_statement7601	= { FOLLOW_FOR_SYMBOL_in_show_statement7601_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_QUERY_SYMBOL_in_show_statement7603  */
static	ANTLR3_BITWORD FOLLOW_QUERY_SYMBOL_in_show_statement7603_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_QUERY_SYMBOL_in_show_statement7603	= { FOLLOW_QUERY_SYMBOL_in_show_statement7603_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_show_statement7605  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_show_statement7605_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_show_statement7605	= { FOLLOW_INTEGER_in_show_statement7605_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_clause_in_show_statement7609  */
static	ANTLR3_BITWORD FOLLOW_limit_clause_in_show_statement7609_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_clause_in_show_statement7609	= { FOLLOW_limit_clause_in_show_statement7609_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROFILES_SYMBOL_in_show_statement7616  */
static	ANTLR3_BITWORD FOLLOW_PROFILES_SYMBOL_in_show_statement7616_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PROFILES_SYMBOL_in_show_statement7616	= { FOLLOW_PROFILES_SYMBOL_in_show_statement7616_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SLAVE_SYMBOL_in_show_statement7622  */
static	ANTLR3_BITWORD FOLLOW_SLAVE_SYMBOL_in_show_statement7622_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SLAVE_SYMBOL_in_show_statement7622	= { FOLLOW_SLAVE_SYMBOL_in_show_statement7622_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_show_statement7624  */
static	ANTLR3_BITWORD FOLLOW_set_in_show_statement7624_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_show_statement7624	= { FOLLOW_set_in_show_statement7624_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_option_type_in_show_statement7636  */
static	ANTLR3_BITWORD FOLLOW_option_type_in_show_statement7636_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000400000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_option_type_in_show_statement7636	= { FOLLOW_option_type_in_show_statement7636_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_show_statement7639  */
static	ANTLR3_BITWORD FOLLOW_set_in_show_statement7639_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_show_statement7639	= { FOLLOW_set_in_show_statement7639_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_like_or_where_in_show_statement7647  */
static	ANTLR3_BITWORD FOLLOW_like_or_where_in_show_statement7647_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_like_or_where_in_show_statement7647	= { FOLLOW_like_or_where_in_show_statement7647_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_show_statement7654  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_show_statement7654_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_show_statement7654	= { FOLLOW_TABLE_SYMBOL_in_show_statement7654_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STATUS_SYMBOL_in_show_statement7656  */
static	ANTLR3_BITWORD FOLLOW_STATUS_SYMBOL_in_show_statement7656_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000), ANTLR3_UINT64_LIT(0x1000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_STATUS_SYMBOL_in_show_statement7656	= { FOLLOW_STATUS_SYMBOL_in_show_statement7656_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_show_statement7659  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_show_statement7659_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_show_statement7659	= { FOLLOW_FROM_SYMBOL_in_show_statement7659_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_show_statement7661  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_show_statement7661_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_show_statement7661	= { FOLLOW_pure_identifier_in_show_statement7661_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_like_or_where_in_show_statement7665  */
static	ANTLR3_BITWORD FOLLOW_like_or_where_in_show_statement7665_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_like_or_where_in_show_statement7665	= { FOLLOW_like_or_where_in_show_statement7665_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FULL_SYMBOL_in_show_statement7672  */
static	ANTLR3_BITWORD FOLLOW_FULL_SYMBOL_in_show_statement7672_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FULL_SYMBOL_in_show_statement7672	= { FOLLOW_FULL_SYMBOL_in_show_statement7672_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLES_SYMBOL_in_show_statement7675  */
static	ANTLR3_BITWORD FOLLOW_TABLES_SYMBOL_in_show_statement7675_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000), ANTLR3_UINT64_LIT(0x1000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLES_SYMBOL_in_show_statement7675	= { FOLLOW_TABLES_SYMBOL_in_show_statement7675_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_show_statement7678  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_show_statement7678_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_show_statement7678	= { FOLLOW_FROM_SYMBOL_in_show_statement7678_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_show_statement7680  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_show_statement7680_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_show_statement7680	= { FOLLOW_pure_identifier_in_show_statement7680_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_like_or_where_in_show_statement7684  */
static	ANTLR3_BITWORD FOLLOW_like_or_where_in_show_statement7684_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_like_or_where_in_show_statement7684	= { FOLLOW_like_or_where_in_show_statement7684_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TRIGGERS_SYMBOL_in_show_statement7691  */
static	ANTLR3_BITWORD FOLLOW_TRIGGERS_SYMBOL_in_show_statement7691_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000), ANTLR3_UINT64_LIT(0x1000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_TRIGGERS_SYMBOL_in_show_statement7691	= { FOLLOW_TRIGGERS_SYMBOL_in_show_statement7691_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_show_statement7694  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_show_statement7694_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_show_statement7694	= { FOLLOW_FROM_SYMBOL_in_show_statement7694_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_show_statement7696  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_show_statement7696_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_show_statement7696	= { FOLLOW_pure_identifier_in_show_statement7696_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_like_or_where_in_show_statement7700  */
static	ANTLR3_BITWORD FOLLOW_like_or_where_in_show_statement7700_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_like_or_where_in_show_statement7700	= { FOLLOW_like_or_where_in_show_statement7700_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WARNINGS_SYMBOL_in_show_statement7707  */
static	ANTLR3_BITWORD FOLLOW_WARNINGS_SYMBOL_in_show_statement7707_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_WARNINGS_SYMBOL_in_show_statement7707	= { FOLLOW_WARNINGS_SYMBOL_in_show_statement7707_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_clause_in_show_statement7709  */
static	ANTLR3_BITWORD FOLLOW_limit_clause_in_show_statement7709_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_clause_in_show_statement7709	= { FOLLOW_limit_clause_in_show_statement7709_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALL_SYMBOL_in_profile_type7722  */
static	ANTLR3_BITWORD FOLLOW_ALL_SYMBOL_in_profile_type7722_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ALL_SYMBOL_in_profile_type7722	= { FOLLOW_ALL_SYMBOL_in_profile_type7722_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BLOCK_SYMBOL_in_profile_type7727  */
static	ANTLR3_BITWORD FOLLOW_BLOCK_SYMBOL_in_profile_type7727_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BLOCK_SYMBOL_in_profile_type7727	= { FOLLOW_BLOCK_SYMBOL_in_profile_type7727_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IO_SYMBOL_in_profile_type7729  */
static	ANTLR3_BITWORD FOLLOW_IO_SYMBOL_in_profile_type7729_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_IO_SYMBOL_in_profile_type7729	= { FOLLOW_IO_SYMBOL_in_profile_type7729_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONTEXT_SYMBOL_in_profile_type7734  */
static	ANTLR3_BITWORD FOLLOW_CONTEXT_SYMBOL_in_profile_type7734_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CONTEXT_SYMBOL_in_profile_type7734	= { FOLLOW_CONTEXT_SYMBOL_in_profile_type7734_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SWITCHES_SYMBOL_in_profile_type7736  */
static	ANTLR3_BITWORD FOLLOW_SWITCHES_SYMBOL_in_profile_type7736_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SWITCHES_SYMBOL_in_profile_type7736	= { FOLLOW_SWITCHES_SYMBOL_in_profile_type7736_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CPU_SYMBOL_in_profile_type7741  */
static	ANTLR3_BITWORD FOLLOW_CPU_SYMBOL_in_profile_type7741_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CPU_SYMBOL_in_profile_type7741	= { FOLLOW_CPU_SYMBOL_in_profile_type7741_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IPC_SYMBOL_in_profile_type7746  */
static	ANTLR3_BITWORD FOLLOW_IPC_SYMBOL_in_profile_type7746_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_IPC_SYMBOL_in_profile_type7746	= { FOLLOW_IPC_SYMBOL_in_profile_type7746_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MEMORY_SYMBOL_in_profile_type7751  */
static	ANTLR3_BITWORD FOLLOW_MEMORY_SYMBOL_in_profile_type7751_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MEMORY_SYMBOL_in_profile_type7751	= { FOLLOW_MEMORY_SYMBOL_in_profile_type7751_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PAGE_SYMBOL_in_profile_type7756  */
static	ANTLR3_BITWORD FOLLOW_PAGE_SYMBOL_in_profile_type7756_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_PAGE_SYMBOL_in_profile_type7756	= { FOLLOW_PAGE_SYMBOL_in_profile_type7756_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FAULTS_SYMBOL_in_profile_type7758  */
static	ANTLR3_BITWORD FOLLOW_FAULTS_SYMBOL_in_profile_type7758_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_FAULTS_SYMBOL_in_profile_type7758	= { FOLLOW_FAULTS_SYMBOL_in_profile_type7758_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SOURCE_SYMBOL_in_profile_type7763  */
static	ANTLR3_BITWORD FOLLOW_SOURCE_SYMBOL_in_profile_type7763_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SOURCE_SYMBOL_in_profile_type7763	= { FOLLOW_SOURCE_SYMBOL_in_profile_type7763_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SWAPS_SYMBOL_in_profile_type7768  */
static	ANTLR3_BITWORD FOLLOW_SWAPS_SYMBOL_in_profile_type7768_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SWAPS_SYMBOL_in_profile_type7768	= { FOLLOW_SWAPS_SYMBOL_in_profile_type7768_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINLOG_SYMBOL_in_miscellaneous_statement7779  */
static	ANTLR3_BITWORD FOLLOW_BINLOG_SYMBOL_in_miscellaneous_statement7779_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BINLOG_SYMBOL_in_miscellaneous_statement7779	= { FOLLOW_BINLOG_SYMBOL_in_miscellaneous_statement7779_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_miscellaneous_statement7781  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_miscellaneous_statement7781_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_miscellaneous_statement7781	= { FOLLOW_string_literal_in_miscellaneous_statement7781_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CACHE_SYMBOL_in_miscellaneous_statement7786  */
static	ANTLR3_BITWORD FOLLOW_CACHE_SYMBOL_in_miscellaneous_statement7786_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_CACHE_SYMBOL_in_miscellaneous_statement7786	= { FOLLOW_CACHE_SYMBOL_in_miscellaneous_statement7786_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INDEX_SYMBOL_in_miscellaneous_statement7788  */
static	ANTLR3_BITWORD FOLLOW_INDEX_SYMBOL_in_miscellaneous_statement7788_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_INDEX_SYMBOL_in_miscellaneous_statement7788	= { FOLLOW_INDEX_SYMBOL_in_miscellaneous_statement7788_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_index_list_in_miscellaneous_statement7790  */
static	ANTLR3_BITWORD FOLLOW_table_index_list_in_miscellaneous_statement7790_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000100000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_index_list_in_miscellaneous_statement7790	= { FOLLOW_table_index_list_in_miscellaneous_statement7790_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_miscellaneous_statement7793  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_miscellaneous_statement7793_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_miscellaneous_statement7793	= { FOLLOW_COMMA_SYMBOL_in_miscellaneous_statement7793_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_index_list_in_miscellaneous_statement7795  */
static	ANTLR3_BITWORD FOLLOW_table_index_list_in_miscellaneous_statement7795_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000100000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_index_list_in_miscellaneous_statement7795	= { FOLLOW_table_index_list_in_miscellaneous_statement7795_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_miscellaneous_statement7802  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_miscellaneous_statement7802_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_miscellaneous_statement7802	= { FOLLOW_PARTITION_SYMBOL_in_miscellaneous_statement7802_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_miscellaneous_statement7804  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_miscellaneous_statement7804_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE069F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_miscellaneous_statement7804	= { FOLLOW_OPEN_PAR_SYMBOL_in_miscellaneous_statement7804_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_in_miscellaneous_statement7807  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_in_miscellaneous_statement7807_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_in_miscellaneous_statement7807	= { FOLLOW_identifier_list_in_miscellaneous_statement7807_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALL_SYMBOL_in_miscellaneous_statement7811  */
static	ANTLR3_BITWORD FOLLOW_ALL_SYMBOL_in_miscellaneous_statement7811_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_ALL_SYMBOL_in_miscellaneous_statement7811	= { FOLLOW_ALL_SYMBOL_in_miscellaneous_statement7811_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_miscellaneous_statement7814  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_miscellaneous_statement7814_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000100000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_miscellaneous_statement7814	= { FOLLOW_CLOSE_PAR_SYMBOL_in_miscellaneous_statement7814_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IN_SYMBOL_in_miscellaneous_statement7820  */
static	ANTLR3_BITWORD FOLLOW_IN_SYMBOL_in_miscellaneous_statement7820_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_IN_SYMBOL_in_miscellaneous_statement7820	= { FOLLOW_IN_SYMBOL_in_miscellaneous_statement7820_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_miscellaneous_statement7822  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_miscellaneous_statement7822_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_miscellaneous_statement7822	= { FOLLOW_pure_identifier_in_miscellaneous_statement7822_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FLUSH_SYMBOL_in_miscellaneous_statement7827  */
static	ANTLR3_BITWORD FOLLOW_FLUSH_SYMBOL_in_miscellaneous_statement7827_bits[]	= { ANTLR3_UINT64_LIT(0x0000004000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2200000002000000), ANTLR3_UINT64_LIT(0x2000020000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002020), ANTLR3_UINT64_LIT(0x0000020000000000), ANTLR3_UINT64_LIT(0x0400010080000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x1000000400000000), ANTLR3_UINT64_LIT(0x0000400000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_FLUSH_SYMBOL_in_miscellaneous_statement7827	= { FOLLOW_FLUSH_SYMBOL_in_miscellaneous_statement7827_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_no_write_to_bin_log_in_miscellaneous_statement7829  */
static	ANTLR3_BITWORD FOLLOW_no_write_to_bin_log_in_miscellaneous_statement7829_bits[]	= { ANTLR3_UINT64_LIT(0x0000004000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2200000002000000), ANTLR3_UINT64_LIT(0x2000020000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010080000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x1000000400000000), ANTLR3_UINT64_LIT(0x0000400000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_no_write_to_bin_log_in_miscellaneous_statement7829	= { FOLLOW_no_write_to_bin_log_in_miscellaneous_statement7829_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_flush_option_in_miscellaneous_statement7832  */
static	ANTLR3_BITWORD FOLLOW_flush_option_in_miscellaneous_statement7832_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_flush_option_in_miscellaneous_statement7832	= { FOLLOW_flush_option_in_miscellaneous_statement7832_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_miscellaneous_statement7835  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_miscellaneous_statement7835_bits[]	= { ANTLR3_UINT64_LIT(0x0000004000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2200000002000000), ANTLR3_UINT64_LIT(0x2000020000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400010080000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x1000000400000000), ANTLR3_UINT64_LIT(0x0000400000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_miscellaneous_statement7835	= { FOLLOW_COMMA_SYMBOL_in_miscellaneous_statement7835_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_flush_option_in_miscellaneous_statement7837  */
static	ANTLR3_BITWORD FOLLOW_flush_option_in_miscellaneous_statement7837_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_flush_option_in_miscellaneous_statement7837	= { FOLLOW_flush_option_in_miscellaneous_statement7837_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KILL_SYMBOL_in_miscellaneous_statement7844  */
static	ANTLR3_BITWORD FOLLOW_KILL_SYMBOL_in_miscellaneous_statement7844_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_KILL_SYMBOL_in_miscellaneous_statement7844	= { FOLLOW_KILL_SYMBOL_in_miscellaneous_statement7844_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_miscellaneous_statement7855  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_miscellaneous_statement7855_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_miscellaneous_statement7855	= { FOLLOW_INTEGER_in_miscellaneous_statement7855_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOAD_SYMBOL_in_miscellaneous_statement7860  */
static	ANTLR3_BITWORD FOLLOW_LOAD_SYMBOL_in_miscellaneous_statement7860_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_LOAD_SYMBOL_in_miscellaneous_statement7860	= { FOLLOW_LOAD_SYMBOL_in_miscellaneous_statement7860_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INDEX_SYMBOL_in_miscellaneous_statement7862  */
static	ANTLR3_BITWORD FOLLOW_INDEX_SYMBOL_in_miscellaneous_statement7862_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000020000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INDEX_SYMBOL_in_miscellaneous_statement7862	= { FOLLOW_INDEX_SYMBOL_in_miscellaneous_statement7862_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTO_SYMBOL_in_miscellaneous_statement7864  */
static	ANTLR3_BITWORD FOLLOW_INTO_SYMBOL_in_miscellaneous_statement7864_bits[]	= { ANTLR3_UINT64_LIT(0x1000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INTO_SYMBOL_in_miscellaneous_statement7864	= { FOLLOW_INTO_SYMBOL_in_miscellaneous_statement7864_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CACHE_SYMBOL_in_miscellaneous_statement7866  */
static	ANTLR3_BITWORD FOLLOW_CACHE_SYMBOL_in_miscellaneous_statement7866_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_CACHE_SYMBOL_in_miscellaneous_statement7866	= { FOLLOW_CACHE_SYMBOL_in_miscellaneous_statement7866_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_load_table_index_list_in_miscellaneous_statement7868  */
static	ANTLR3_BITWORD FOLLOW_load_table_index_list_in_miscellaneous_statement7868_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_load_table_index_list_in_miscellaneous_statement7868	= { FOLLOW_load_table_index_list_in_miscellaneous_statement7868_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RESET_SYMBOL_in_miscellaneous_statement7873  */
static	ANTLR3_BITWORD FOLLOW_RESET_SYMBOL_in_miscellaneous_statement7873_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000020000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0400000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_RESET_SYMBOL_in_miscellaneous_statement7873	= { FOLLOW_RESET_SYMBOL_in_miscellaneous_statement7873_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_reset_option_in_miscellaneous_statement7875  */
static	ANTLR3_BITWORD FOLLOW_reset_option_in_miscellaneous_statement7875_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_reset_option_in_miscellaneous_statement7875	= { FOLLOW_reset_option_in_miscellaneous_statement7875_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_miscellaneous_statement7878  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_miscellaneous_statement7878_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000020000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0400000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_miscellaneous_statement7878	= { FOLLOW_COMMA_SYMBOL_in_miscellaneous_statement7878_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_reset_option_in_miscellaneous_statement7880  */
static	ANTLR3_BITWORD FOLLOW_reset_option_in_miscellaneous_statement7880_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_reset_option_in_miscellaneous_statement7880	= { FOLLOW_reset_option_in_miscellaneous_statement7880_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_table_index_list7891  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_table_index_list7891_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000800), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_table_index_list7891	= { FOLLOW_qualified_identifier_in_table_index_list7891_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_with_parentheses_in_table_index_list7903  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_with_parentheses_in_table_index_list7903_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_with_parentheses_in_table_index_list7903	= { FOLLOW_identifier_list_with_parentheses_in_table_index_list7903_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DES_KEY_FILE_SYMBOL_in_flush_option7915  */
static	ANTLR3_BITWORD FOLLOW_DES_KEY_FILE_SYMBOL_in_flush_option7915_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DES_KEY_FILE_SYMBOL_in_flush_option7915	= { FOLLOW_DES_KEY_FILE_SYMBOL_in_flush_option7915_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HOSTS_SYMBOL_in_flush_option7920  */
static	ANTLR3_BITWORD FOLLOW_HOSTS_SYMBOL_in_flush_option7920_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_HOSTS_SYMBOL_in_flush_option7920	= { FOLLOW_HOSTS_SYMBOL_in_flush_option7920_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_log_type_in_flush_option7925  */
static	ANTLR3_BITWORD FOLLOW_log_type_in_flush_option7925_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_log_type_in_flush_option7925	= { FOLLOW_log_type_in_flush_option7925_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOGS_SYMBOL_in_flush_option7928  */
static	ANTLR3_BITWORD FOLLOW_LOGS_SYMBOL_in_flush_option7928_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_LOGS_SYMBOL_in_flush_option7928	= { FOLLOW_LOGS_SYMBOL_in_flush_option7928_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRIVILEGES_SYMBOL_in_flush_option7933  */
static	ANTLR3_BITWORD FOLLOW_PRIVILEGES_SYMBOL_in_flush_option7933_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PRIVILEGES_SYMBOL_in_flush_option7933	= { FOLLOW_PRIVILEGES_SYMBOL_in_flush_option7933_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_QUERY_SYMBOL_in_flush_option7938  */
static	ANTLR3_BITWORD FOLLOW_QUERY_SYMBOL_in_flush_option7938_bits[]	= { ANTLR3_UINT64_LIT(0x1000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_QUERY_SYMBOL_in_flush_option7938	= { FOLLOW_QUERY_SYMBOL_in_flush_option7938_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CACHE_SYMBOL_in_flush_option7940  */
static	ANTLR3_BITWORD FOLLOW_CACHE_SYMBOL_in_flush_option7940_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CACHE_SYMBOL_in_flush_option7940	= { FOLLOW_CACHE_SYMBOL_in_flush_option7940_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STATUS_SYMBOL_in_flush_option7945  */
static	ANTLR3_BITWORD FOLLOW_STATUS_SYMBOL_in_flush_option7945_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_STATUS_SYMBOL_in_flush_option7945	= { FOLLOW_STATUS_SYMBOL_in_flush_option7945_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_flush_tables_in_flush_option7950  */
static	ANTLR3_BITWORD FOLLOW_flush_tables_in_flush_option7950_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_flush_tables_in_flush_option7950	= { FOLLOW_flush_tables_in_flush_option7950_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USER_RESOURCES_SYMBOL_in_flush_option7955  */
static	ANTLR3_BITWORD FOLLOW_USER_RESOURCES_SYMBOL_in_flush_option7955_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_USER_RESOURCES_SYMBOL_in_flush_option7955	= { FOLLOW_USER_RESOURCES_SYMBOL_in_flush_option7955_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_flush_tables7998  */
static	ANTLR3_BITWORD FOLLOW_set_in_flush_tables7998_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F62), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D383E0) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_flush_tables7998	= { FOLLOW_set_in_flush_tables7998_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_flush_tables8011  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_flush_tables8011_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_WITH_SYMBOL_in_flush_tables8011	= { FOLLOW_WITH_SYMBOL_in_flush_tables8011_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_READ_SYMBOL_in_flush_tables8013  */
static	ANTLR3_BITWORD FOLLOW_READ_SYMBOL_in_flush_tables8013_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000100) };
static  ANTLR3_BITSET_LIST FOLLOW_READ_SYMBOL_in_flush_tables8013	= { FOLLOW_READ_SYMBOL_in_flush_tables8013_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOCK_SYMBOL_in_flush_tables8015  */
static	ANTLR3_BITWORD FOLLOW_LOCK_SYMBOL_in_flush_tables8015_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_LOCK_SYMBOL_in_flush_tables8015	= { FOLLOW_LOCK_SYMBOL_in_flush_tables8015_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_in_flush_tables8021  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_in_flush_tables8021_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_in_flush_tables8021	= { FOLLOW_identifier_list_in_flush_tables8021_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_flush_tables_options_in_flush_tables8023  */
static	ANTLR3_BITWORD FOLLOW_flush_tables_options_in_flush_tables8023_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_flush_tables_options_in_flush_tables8023	= { FOLLOW_flush_tables_options_in_flush_tables8023_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_flush_tables_options8041  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_flush_tables_options8041_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_FOR_SYMBOL_in_flush_tables_options8041	= { FOLLOW_FOR_SYMBOL_in_flush_tables_options8041_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXPORT_SYMBOL_in_flush_tables_options8043  */
static	ANTLR3_BITWORD FOLLOW_EXPORT_SYMBOL_in_flush_tables_options8043_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EXPORT_SYMBOL_in_flush_tables_options8043	= { FOLLOW_EXPORT_SYMBOL_in_flush_tables_options8043_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_flush_tables_options8048  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_flush_tables_options8048_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_WITH_SYMBOL_in_flush_tables_options8048	= { FOLLOW_WITH_SYMBOL_in_flush_tables_options8048_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_READ_SYMBOL_in_flush_tables_options8050  */
static	ANTLR3_BITWORD FOLLOW_READ_SYMBOL_in_flush_tables_options8050_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000100) };
static  ANTLR3_BITSET_LIST FOLLOW_READ_SYMBOL_in_flush_tables_options8050	= { FOLLOW_READ_SYMBOL_in_flush_tables_options8050_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOCK_SYMBOL_in_flush_tables_options8052  */
static	ANTLR3_BITWORD FOLLOW_LOCK_SYMBOL_in_flush_tables_options8052_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_LOCK_SYMBOL_in_flush_tables_options8052	= { FOLLOW_LOCK_SYMBOL_in_flush_tables_options8052_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_load_table_index_list8061  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_load_table_index_list8061_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000880), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_load_table_index_list8061	= { FOLLOW_qualified_identifier_in_load_table_index_list8061_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_load_table_index_partion_in_load_table_index_list8063  */
static	ANTLR3_BITWORD FOLLOW_load_table_index_partion_in_load_table_index_list8063_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000880), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_load_table_index_partion_in_load_table_index_list8063	= { FOLLOW_load_table_index_partion_in_load_table_index_list8063_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_with_parentheses_in_load_table_index_list8078  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_with_parentheses_in_load_table_index_list8078_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_with_parentheses_in_load_table_index_list8078	= { FOLLOW_identifier_list_with_parentheses_in_load_table_index_list8078_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IGNORE_SYMBOL_in_load_table_index_list8083  */
static	ANTLR3_BITWORD FOLLOW_IGNORE_SYMBOL_in_load_table_index_list8083_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0008000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_IGNORE_SYMBOL_in_load_table_index_list8083	= { FOLLOW_IGNORE_SYMBOL_in_load_table_index_list8083_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LEAVES_SYMBOL_in_load_table_index_list8085  */
static	ANTLR3_BITWORD FOLLOW_LEAVES_SYMBOL_in_load_table_index_list8085_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_LEAVES_SYMBOL_in_load_table_index_list8085	= { FOLLOW_LEAVES_SYMBOL_in_load_table_index_list8085_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_load_table_index_partion8101  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_load_table_index_partion8101_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_load_table_index_partion8101	= { FOLLOW_PARTITION_SYMBOL_in_load_table_index_partion8101_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_load_table_index_partion8103  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_load_table_index_partion8103_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE069F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_load_table_index_partion8103	= { FOLLOW_OPEN_PAR_SYMBOL_in_load_table_index_partion8103_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_in_load_table_index_partion8106  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_in_load_table_index_partion8106_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_in_load_table_index_partion8106	= { FOLLOW_identifier_list_in_load_table_index_partion8106_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALL_SYMBOL_in_load_table_index_partion8110  */
static	ANTLR3_BITWORD FOLLOW_ALL_SYMBOL_in_load_table_index_partion8110_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_ALL_SYMBOL_in_load_table_index_partion8110	= { FOLLOW_ALL_SYMBOL_in_load_table_index_partion8110_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_load_table_index_partion8113  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_load_table_index_partion8113_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_load_table_index_partion8113	= { FOLLOW_CLOSE_PAR_SYMBOL_in_load_table_index_partion8113_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_SYMBOL_in_reset_option8123  */
static	ANTLR3_BITWORD FOLLOW_MASTER_SYMBOL_in_reset_option8123_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MASTER_SYMBOL_in_reset_option8123	= { FOLLOW_MASTER_SYMBOL_in_reset_option8123_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_QUERY_SYMBOL_in_reset_option8127  */
static	ANTLR3_BITWORD FOLLOW_QUERY_SYMBOL_in_reset_option8127_bits[]	= { ANTLR3_UINT64_LIT(0x1000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_QUERY_SYMBOL_in_reset_option8127	= { FOLLOW_QUERY_SYMBOL_in_reset_option8127_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CACHE_SYMBOL_in_reset_option8129  */
static	ANTLR3_BITWORD FOLLOW_CACHE_SYMBOL_in_reset_option8129_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CACHE_SYMBOL_in_reset_option8129	= { FOLLOW_CACHE_SYMBOL_in_reset_option8129_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SLAVE_SYMBOL_in_reset_option8133  */
static	ANTLR3_BITWORD FOLLOW_SLAVE_SYMBOL_in_reset_option8133_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SLAVE_SYMBOL_in_reset_option8133	= { FOLLOW_SLAVE_SYMBOL_in_reset_option8133_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_describe_command_in_utility_statement8144  */
static	ANTLR3_BITWORD FOLLOW_describe_command_in_utility_statement8144_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA6A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E8801CA35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x263D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B165FF8BAB7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881DC9B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_describe_command_in_utility_statement8144	= { FOLLOW_describe_command_in_utility_statement8144_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_utility_statement8153  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_utility_statement8153_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F62), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_utility_statement8153	= { FOLLOW_qualified_identifier_in_utility_statement8153_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_utility_statement8155  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_utility_statement8155_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_utility_statement8155	= { FOLLOW_text_or_identifier_in_utility_statement8155_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXTENDED_SYMBOL_in_utility_statement8182  */
static	ANTLR3_BITWORD FOLLOW_EXTENDED_SYMBOL_in_utility_statement8182_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000400000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000080000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000080000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EXTENDED_SYMBOL_in_utility_statement8182	= { FOLLOW_EXTENDED_SYMBOL_in_utility_statement8182_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITIONS_SYMBOL_in_utility_statement8195  */
static	ANTLR3_BITWORD FOLLOW_PARTITIONS_SYMBOL_in_utility_statement8195_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000400000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000080000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000080000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITIONS_SYMBOL_in_utility_statement8195	= { FOLLOW_PARTITIONS_SYMBOL_in_utility_statement8195_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FORMAT_SYMBOL_in_utility_statement8208  */
static	ANTLR3_BITWORD FOLLOW_FORMAT_SYMBOL_in_utility_statement8208_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FORMAT_SYMBOL_in_utility_statement8208	= { FOLLOW_FORMAT_SYMBOL_in_utility_statement8208_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_utility_statement8210  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_utility_statement8210_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_utility_statement8210	= { FOLLOW_EQUAL_OPERATOR_in_utility_statement8210_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_utility_statement8212  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_utility_statement8212_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000400000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000080000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000080000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_utility_statement8212	= { FOLLOW_text_or_identifier_in_utility_statement8212_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_explainable_statement_in_utility_statement8221  */
static	ANTLR3_BITWORD FOLLOW_explainable_statement_in_utility_statement8221_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_explainable_statement_in_utility_statement8221	= { FOLLOW_explainable_statement_in_utility_statement8221_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HELP_SYMBOL_in_utility_statement8230  */
static	ANTLR3_BITWORD FOLLOW_HELP_SYMBOL_in_utility_statement8230_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_HELP_SYMBOL_in_utility_statement8230	= { FOLLOW_HELP_SYMBOL_in_utility_statement8230_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_utility_statement8232  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_utility_statement8232_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_utility_statement8232	= { FOLLOW_string_literal_in_utility_statement8232_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USE_SYMBOL_in_utility_statement8237  */
static	ANTLR3_BITWORD FOLLOW_USE_SYMBOL_in_utility_statement8237_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_USE_SYMBOL_in_utility_statement8237	= { FOLLOW_USE_SYMBOL_in_utility_statement8237_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_utility_statement8239  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_utility_statement8239_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_utility_statement8239	= { FOLLOW_pure_identifier_in_utility_statement8239_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_delete_statement_in_explainable_statement8273  */
static	ANTLR3_BITWORD FOLLOW_delete_statement_in_explainable_statement8273_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_delete_statement_in_explainable_statement8273	= { FOLLOW_delete_statement_in_explainable_statement8273_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_insert_statement_in_explainable_statement8280  */
static	ANTLR3_BITWORD FOLLOW_insert_statement_in_explainable_statement8280_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_insert_statement_in_explainable_statement8280	= { FOLLOW_insert_statement_in_explainable_statement8280_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_replace_statement_in_explainable_statement8287  */
static	ANTLR3_BITWORD FOLLOW_replace_statement_in_explainable_statement8287_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_replace_statement_in_explainable_statement8287	= { FOLLOW_replace_statement_in_explainable_statement8287_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_update_statement_in_explainable_statement8294  */
static	ANTLR3_BITWORD FOLLOW_update_statement_in_explainable_statement8294_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_update_statement_in_explainable_statement8294	= { FOLLOW_update_statement_in_explainable_statement8294_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_statement_in_explainable_statement8303  */
static	ANTLR3_BITWORD FOLLOW_select_statement_in_explainable_statement8303_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_select_statement_in_explainable_statement8303	= { FOLLOW_select_statement_in_explainable_statement8303_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_logical_or_expression_in_expression8317  */
static	ANTLR3_BITWORD FOLLOW_logical_or_expression_in_expression8317_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_logical_or_expression_in_expression8317	= { FOLLOW_logical_or_expression_in_expression8317_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_logical_xor_expression_in_logical_or_expression8326  */
static	ANTLR3_BITWORD FOLLOW_logical_xor_expression_in_logical_or_expression8326_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_logical_xor_expression_in_logical_or_expression8326	= { FOLLOW_logical_xor_expression_in_logical_or_expression8326_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_logical_or_expression8342  */
static	ANTLR3_BITWORD FOLLOW_set_in_logical_or_expression8342_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_logical_or_expression8342	= { FOLLOW_set_in_logical_or_expression8342_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_logical_xor_expression_in_logical_or_expression8351  */
static	ANTLR3_BITWORD FOLLOW_logical_xor_expression_in_logical_or_expression8351_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_logical_xor_expression_in_logical_or_expression8351	= { FOLLOW_logical_xor_expression_in_logical_or_expression8351_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_logical_and_expression_in_logical_xor_expression8362  */
static	ANTLR3_BITWORD FOLLOW_logical_and_expression_in_logical_xor_expression8362_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000001000000) };
static  ANTLR3_BITSET_LIST FOLLOW_logical_and_expression_in_logical_xor_expression8362	= { FOLLOW_logical_and_expression_in_logical_xor_expression8362_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_XOR_SYMBOL_in_logical_xor_expression8378  */
static	ANTLR3_BITWORD FOLLOW_XOR_SYMBOL_in_logical_xor_expression8378_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_XOR_SYMBOL_in_logical_xor_expression8378	= { FOLLOW_XOR_SYMBOL_in_logical_xor_expression8378_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_logical_and_expression_in_logical_xor_expression8381  */
static	ANTLR3_BITWORD FOLLOW_logical_and_expression_in_logical_xor_expression8381_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000001000000) };
static  ANTLR3_BITSET_LIST FOLLOW_logical_and_expression_in_logical_xor_expression8381	= { FOLLOW_logical_and_expression_in_logical_xor_expression8381_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_logical_not_expression_in_logical_and_expression8392  */
static	ANTLR3_BITWORD FOLLOW_logical_not_expression_in_logical_and_expression8392_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000010002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000400) };
static  ANTLR3_BITSET_LIST FOLLOW_logical_not_expression_in_logical_and_expression8392	= { FOLLOW_logical_not_expression_in_logical_and_expression8392_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_logical_and_expression8408  */
static	ANTLR3_BITWORD FOLLOW_set_in_logical_and_expression8408_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_logical_and_expression8408	= { FOLLOW_set_in_logical_and_expression8408_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_logical_not_expression_in_logical_and_expression8417  */
static	ANTLR3_BITWORD FOLLOW_logical_not_expression_in_logical_and_expression8417_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000010002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000400) };
static  ANTLR3_BITSET_LIST FOLLOW_logical_not_expression_in_logical_and_expression8417	= { FOLLOW_logical_not_expression_in_logical_and_expression8417_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NOT_SYMBOL_in_logical_not_expression8428  */
static	ANTLR3_BITWORD FOLLOW_NOT_SYMBOL_in_logical_not_expression8428_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_NOT_SYMBOL_in_logical_not_expression8428	= { FOLLOW_NOT_SYMBOL_in_logical_not_expression8428_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_logical_not_expression_in_logical_not_expression8431  */
static	ANTLR3_BITWORD FOLLOW_logical_not_expression_in_logical_not_expression8431_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_logical_not_expression_in_logical_not_expression8431	= { FOLLOW_logical_not_expression_in_logical_not_expression8431_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_boolean_primary_expression_in_logical_not_expression8436  */
static	ANTLR3_BITWORD FOLLOW_boolean_primary_expression_in_logical_not_expression8436_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_boolean_primary_expression_in_logical_not_expression8436	= { FOLLOW_boolean_primary_expression_in_logical_not_expression8436_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_predicate_in_boolean_primary_expression8445  */
static	ANTLR3_BITWORD FOLLOW_predicate_in_boolean_primary_expression8445_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0006000000000000), ANTLR3_UINT64_LIT(0x0140010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000081800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_predicate_in_boolean_primary_expression8445	= { FOLLOW_predicate_in_boolean_primary_expression8445_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_comparison_operator_in_boolean_primary_expression8467  */
static	ANTLR3_BITWORD FOLLOW_comparison_operator_in_boolean_primary_expression8467_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF869F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35C7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_comparison_operator_in_boolean_primary_expression8467	= { FOLLOW_comparison_operator_in_boolean_primary_expression8467_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_boolean_primary_expression8481  */
static	ANTLR3_BITWORD FOLLOW_set_in_boolean_primary_expression8481_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_boolean_primary_expression8481	= { FOLLOW_set_in_boolean_primary_expression8481_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_subquery_in_boolean_primary_expression8489  */
static	ANTLR3_BITWORD FOLLOW_subquery_in_boolean_primary_expression8489_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0006000000000000), ANTLR3_UINT64_LIT(0x0140010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000081800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_subquery_in_boolean_primary_expression8489	= { FOLLOW_subquery_in_boolean_primary_expression8489_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_predicate_in_boolean_primary_expression8497  */
static	ANTLR3_BITWORD FOLLOW_predicate_in_boolean_primary_expression8497_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0006000000000000), ANTLR3_UINT64_LIT(0x0140010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000081800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_predicate_in_boolean_primary_expression8497	= { FOLLOW_predicate_in_boolean_primary_expression8497_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IS_SYMBOL_in_boolean_primary_expression8526  */
static	ANTLR3_BITWORD FOLLOW_IS_SYMBOL_in_boolean_primary_expression8526_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000142000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000400000) };
static  ANTLR3_BITSET_LIST FOLLOW_IS_SYMBOL_in_boolean_primary_expression8526	= { FOLLOW_IS_SYMBOL_in_boolean_primary_expression8526_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NOT_SYMBOL_in_boolean_primary_expression8529  */
static	ANTLR3_BITWORD FOLLOW_NOT_SYMBOL_in_boolean_primary_expression8529_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000140000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000400000) };
static  ANTLR3_BITSET_LIST FOLLOW_NOT_SYMBOL_in_boolean_primary_expression8529	= { FOLLOW_NOT_SYMBOL_in_boolean_primary_expression8529_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_null_literal_in_boolean_primary_expression8534  */
static	ANTLR3_BITWORD FOLLOW_null_literal_in_boolean_primary_expression8534_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0006000000000000), ANTLR3_UINT64_LIT(0x0140010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000081800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_null_literal_in_boolean_primary_expression8534	= { FOLLOW_null_literal_in_boolean_primary_expression8534_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FALSE_SYMBOL_in_boolean_primary_expression8538  */
static	ANTLR3_BITWORD FOLLOW_FALSE_SYMBOL_in_boolean_primary_expression8538_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0006000000000000), ANTLR3_UINT64_LIT(0x0140010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000081800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FALSE_SYMBOL_in_boolean_primary_expression8538	= { FOLLOW_FALSE_SYMBOL_in_boolean_primary_expression8538_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TRUE_SYMBOL_in_boolean_primary_expression8542  */
static	ANTLR3_BITWORD FOLLOW_TRUE_SYMBOL_in_boolean_primary_expression8542_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0006000000000000), ANTLR3_UINT64_LIT(0x0140010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000081800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_TRUE_SYMBOL_in_boolean_primary_expression8542	= { FOLLOW_TRUE_SYMBOL_in_boolean_primary_expression8542_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNKNOWN_SYMBOL_in_boolean_primary_expression8546  */
static	ANTLR3_BITWORD FOLLOW_UNKNOWN_SYMBOL_in_boolean_primary_expression8546_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0006000000000000), ANTLR3_UINT64_LIT(0x0140010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000081800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_UNKNOWN_SYMBOL_in_boolean_primary_expression8546	= { FOLLOW_UNKNOWN_SYMBOL_in_boolean_primary_expression8546_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_bitwise_or_expression_in_predicate8563  */
static	ANTLR3_BITWORD FOLLOW_bitwise_or_expression_in_predicate8563_bits[]	= { ANTLR3_UINT64_LIT(0x0000001000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000100000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000000000), ANTLR3_UINT64_LIT(0x0040000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_bitwise_or_expression_in_predicate8563	= { FOLLOW_bitwise_or_expression_in_predicate8563_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NOT_SYMBOL_in_predicate8584  */
static	ANTLR3_BITWORD FOLLOW_NOT_SYMBOL_in_predicate8584_bits[]	= { ANTLR3_UINT64_LIT(0x0000001000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000100000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0040000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_NOT_SYMBOL_in_predicate8584	= { FOLLOW_NOT_SYMBOL_in_predicate8584_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BETWEEN_SYMBOL_in_predicate8598  */
static	ANTLR3_BITWORD FOLLOW_BETWEEN_SYMBOL_in_predicate8598_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35C7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_BETWEEN_SYMBOL_in_predicate8598	= { FOLLOW_BETWEEN_SYMBOL_in_predicate8598_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_bitwise_or_expression_in_predicate8601  */
static	ANTLR3_BITWORD FOLLOW_bitwise_or_expression_in_predicate8601_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_bitwise_or_expression_in_predicate8601	= { FOLLOW_bitwise_or_expression_in_predicate8601_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AND_SYMBOL_in_predicate8603  */
static	ANTLR3_BITWORD FOLLOW_AND_SYMBOL_in_predicate8603_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35C7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_AND_SYMBOL_in_predicate8603	= { FOLLOW_AND_SYMBOL_in_predicate8603_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_predicate_in_predicate8605  */
static	ANTLR3_BITWORD FOLLOW_predicate_in_predicate8605_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_predicate_in_predicate8605	= { FOLLOW_predicate_in_predicate8605_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LIKE_SYMBOL_in_predicate8614  */
static	ANTLR3_BITWORD FOLLOW_LIKE_SYMBOL_in_predicate8614_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35C7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_LIKE_SYMBOL_in_predicate8614	= { FOLLOW_LIKE_SYMBOL_in_predicate8614_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_unary_expression_in_predicate8617  */
static	ANTLR3_BITWORD FOLLOW_unary_expression_in_predicate8617_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_unary_expression_in_predicate8617	= { FOLLOW_unary_expression_in_predicate8617_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ESCAPE_SYMBOL_in_predicate8633  */
static	ANTLR3_BITWORD FOLLOW_ESCAPE_SYMBOL_in_predicate8633_bits[]	= { ANTLR3_UINT64_LIT(0x56E786CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8841CA37C), ANTLR3_UINT64_LIT(0x4F8FEEFFFFD022A2), ANTLR3_UINT64_LIT(0x263D35C3CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9EFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_ESCAPE_SYMBOL_in_predicate8633	= { FOLLOW_ESCAPE_SYMBOL_in_predicate8633_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_primary_in_predicate8635  */
static	ANTLR3_BITWORD FOLLOW_primary_in_predicate8635_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_primary_in_predicate8635	= { FOLLOW_primary_in_predicate8635_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REGEXP_SYMBOL_in_predicate8646  */
static	ANTLR3_BITWORD FOLLOW_REGEXP_SYMBOL_in_predicate8646_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35C7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_REGEXP_SYMBOL_in_predicate8646	= { FOLLOW_REGEXP_SYMBOL_in_predicate8646_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_bitwise_or_expression_in_predicate8649  */
static	ANTLR3_BITWORD FOLLOW_bitwise_or_expression_in_predicate8649_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_bitwise_or_expression_in_predicate8649	= { FOLLOW_bitwise_or_expression_in_predicate8649_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IN_SYMBOL_in_predicate8658  */
static	ANTLR3_BITWORD FOLLOW_IN_SYMBOL_in_predicate8658_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_IN_SYMBOL_in_predicate8658	= { FOLLOW_IN_SYMBOL_in_predicate8658_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_subquery_in_predicate8663  */
static	ANTLR3_BITWORD FOLLOW_subquery_in_predicate8663_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_subquery_in_predicate8663	= { FOLLOW_subquery_in_predicate8663_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_with_parentheses_in_predicate8667  */
static	ANTLR3_BITWORD FOLLOW_expression_list_with_parentheses_in_predicate8667_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_with_parentheses_in_predicate8667	= { FOLLOW_expression_list_with_parentheses_in_predicate8667_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SOUNDS_SYMBOL_in_predicate8687  */
static	ANTLR3_BITWORD FOLLOW_SOUNDS_SYMBOL_in_predicate8687_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SOUNDS_SYMBOL_in_predicate8687	= { FOLLOW_SOUNDS_SYMBOL_in_predicate8687_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LIKE_SYMBOL_in_predicate8690  */
static	ANTLR3_BITWORD FOLLOW_LIKE_SYMBOL_in_predicate8690_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35C7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_LIKE_SYMBOL_in_predicate8690	= { FOLLOW_LIKE_SYMBOL_in_predicate8690_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_bitwise_or_expression_in_predicate8692  */
static	ANTLR3_BITWORD FOLLOW_bitwise_or_expression_in_predicate8692_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_bitwise_or_expression_in_predicate8692	= { FOLLOW_bitwise_or_expression_in_predicate8692_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_bitwise_and_expression_in_bitwise_or_expression8706  */
static	ANTLR3_BITWORD FOLLOW_bitwise_and_expression_in_bitwise_or_expression8706_bits[]	= { ANTLR3_UINT64_LIT(0x0000200000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_bitwise_and_expression_in_bitwise_or_expression8706	= { FOLLOW_bitwise_and_expression_in_bitwise_or_expression8706_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BITWISE_OR_OPERATOR_in_bitwise_or_expression8722  */
static	ANTLR3_BITWORD FOLLOW_BITWISE_OR_OPERATOR_in_bitwise_or_expression8722_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35C7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_BITWISE_OR_OPERATOR_in_bitwise_or_expression8722	= { FOLLOW_BITWISE_OR_OPERATOR_in_bitwise_or_expression8722_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_bitwise_and_expression_in_bitwise_or_expression8725  */
static	ANTLR3_BITWORD FOLLOW_bitwise_and_expression_in_bitwise_or_expression8725_bits[]	= { ANTLR3_UINT64_LIT(0x0000200000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_bitwise_and_expression_in_bitwise_or_expression8725	= { FOLLOW_bitwise_and_expression_in_bitwise_or_expression8725_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_shift_expression_in_bitwise_and_expression8736  */
static	ANTLR3_BITWORD FOLLOW_shift_expression_in_bitwise_and_expression8736_bits[]	= { ANTLR3_UINT64_LIT(0x0000080000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_shift_expression_in_bitwise_and_expression8736	= { FOLLOW_shift_expression_in_bitwise_and_expression8736_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BITWISE_AND_OPERATOR_in_bitwise_and_expression8752  */
static	ANTLR3_BITWORD FOLLOW_BITWISE_AND_OPERATOR_in_bitwise_and_expression8752_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35C7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_BITWISE_AND_OPERATOR_in_bitwise_and_expression8752	= { FOLLOW_BITWISE_AND_OPERATOR_in_bitwise_and_expression8752_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_shift_expression_in_bitwise_and_expression8755  */
static	ANTLR3_BITWORD FOLLOW_shift_expression_in_bitwise_and_expression8755_bits[]	= { ANTLR3_UINT64_LIT(0x0000080000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_shift_expression_in_bitwise_and_expression8755	= { FOLLOW_shift_expression_in_bitwise_and_expression8755_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_additive_expression_in_shift_expression8766  */
static	ANTLR3_BITWORD FOLLOW_additive_expression_in_shift_expression8766_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0006000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_additive_expression_in_shift_expression8766	= { FOLLOW_additive_expression_in_shift_expression8766_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_shift_expression8782  */
static	ANTLR3_BITWORD FOLLOW_set_in_shift_expression8782_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35C7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_shift_expression8782	= { FOLLOW_set_in_shift_expression8782_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_additive_expression_in_shift_expression8791  */
static	ANTLR3_BITWORD FOLLOW_additive_expression_in_shift_expression8791_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0006000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_additive_expression_in_shift_expression8791	= { FOLLOW_additive_expression_in_shift_expression8791_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_multiplicative_expression_in_additive_expression8802  */
static	ANTLR3_BITWORD FOLLOW_multiplicative_expression_in_additive_expression8802_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_multiplicative_expression_in_additive_expression8802	= { FOLLOW_multiplicative_expression_in_additive_expression8802_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_additive_expression8818  */
static	ANTLR3_BITWORD FOLLOW_set_in_additive_expression8818_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35C7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_additive_expression8818	= { FOLLOW_set_in_additive_expression8818_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_multiplicative_expression_in_additive_expression8827  */
static	ANTLR3_BITWORD FOLLOW_multiplicative_expression_in_additive_expression8827_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_multiplicative_expression_in_additive_expression8827	= { FOLLOW_multiplicative_expression_in_additive_expression8827_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_bitwise_xor_expression_in_multiplicative_expression8838  */
static	ANTLR3_BITWORD FOLLOW_bitwise_xor_expression_in_multiplicative_expression8838_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000003000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000020C00) };
static  ANTLR3_BITSET_LIST FOLLOW_bitwise_xor_expression_in_multiplicative_expression8838	= { FOLLOW_bitwise_xor_expression_in_multiplicative_expression8838_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_multiplication_operator_in_multiplicative_expression8854  */
static	ANTLR3_BITWORD FOLLOW_multiplication_operator_in_multiplicative_expression8854_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35C7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_multiplication_operator_in_multiplicative_expression8854	= { FOLLOW_multiplication_operator_in_multiplicative_expression8854_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_bitwise_xor_expression_in_multiplicative_expression8857  */
static	ANTLR3_BITWORD FOLLOW_bitwise_xor_expression_in_multiplicative_expression8857_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000003000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000020C00) };
static  ANTLR3_BITSET_LIST FOLLOW_bitwise_xor_expression_in_multiplicative_expression8857	= { FOLLOW_bitwise_xor_expression_in_multiplicative_expression8857_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_concat_expression_in_bitwise_xor_expression8868  */
static	ANTLR3_BITWORD FOLLOW_concat_expression_in_bitwise_xor_expression8868_bits[]	= { ANTLR3_UINT64_LIT(0x0000400000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_concat_expression_in_bitwise_xor_expression8868	= { FOLLOW_concat_expression_in_bitwise_xor_expression8868_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BITWISE_XOR_OPERATOR_in_bitwise_xor_expression8884  */
static	ANTLR3_BITWORD FOLLOW_BITWISE_XOR_OPERATOR_in_bitwise_xor_expression8884_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35C7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_BITWISE_XOR_OPERATOR_in_bitwise_xor_expression8884	= { FOLLOW_BITWISE_XOR_OPERATOR_in_bitwise_xor_expression8884_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_concat_expression_in_bitwise_xor_expression8887  */
static	ANTLR3_BITWORD FOLLOW_concat_expression_in_bitwise_xor_expression8887_bits[]	= { ANTLR3_UINT64_LIT(0x0000400000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_concat_expression_in_bitwise_xor_expression8887	= { FOLLOW_concat_expression_in_bitwise_xor_expression8887_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_unary_expression_in_concat_expression8899  */
static	ANTLR3_BITWORD FOLLOW_unary_expression_in_concat_expression8899_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000200000000) };
static  ANTLR3_BITSET_LIST FOLLOW_unary_expression_in_concat_expression8899	= { FOLLOW_unary_expression_in_concat_expression8899_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONCAT_PIPES_SYMBOL_in_concat_expression8915  */
static	ANTLR3_BITWORD FOLLOW_CONCAT_PIPES_SYMBOL_in_concat_expression8915_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35C7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_CONCAT_PIPES_SYMBOL_in_concat_expression8915	= { FOLLOW_CONCAT_PIPES_SYMBOL_in_concat_expression8915_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_unary_expression_in_concat_expression8918  */
static	ANTLR3_BITWORD FOLLOW_unary_expression_in_concat_expression8918_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000200000000) };
static  ANTLR3_BITSET_LIST FOLLOW_unary_expression_in_concat_expression8918	= { FOLLOW_unary_expression_in_concat_expression8918_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_unary_expression8929  */
static	ANTLR3_BITWORD FOLLOW_set_in_unary_expression8929_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35C7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_unary_expression8929	= { FOLLOW_set_in_unary_expression8929_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_unary_expression_in_unary_expression8942  */
static	ANTLR3_BITWORD FOLLOW_unary_expression_in_unary_expression8942_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_unary_expression_in_unary_expression8942	= { FOLLOW_unary_expression_in_unary_expression8942_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_not_expression_in_unary_expression8947  */
static	ANTLR3_BITWORD FOLLOW_not_expression_in_unary_expression8947_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_not_expression_in_unary_expression8947	= { FOLLOW_not_expression_in_unary_expression8947_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_not2_rule_in_not_expression8956  */
static	ANTLR3_BITWORD FOLLOW_not2_rule_in_not_expression8956_bits[]	= { ANTLR3_UINT64_LIT(0x56E786CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0x4F8FEEFFFFD022A2), ANTLR3_UINT64_LIT(0x263D35C3CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9EFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_not2_rule_in_not_expression8956	= { FOLLOW_not2_rule_in_not_expression8956_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_interval_expression_in_not_expression8959  */
static	ANTLR3_BITWORD FOLLOW_interval_expression_in_not_expression8959_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_interval_expression_in_not_expression8959	= { FOLLOW_interval_expression_in_not_expression8959_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTERVAL_SYMBOL_in_interval_expression8968  */
static	ANTLR3_BITWORD FOLLOW_INTERVAL_SYMBOL_in_interval_expression8968_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_INTERVAL_SYMBOL_in_interval_expression8968	= { FOLLOW_INTERVAL_SYMBOL_in_interval_expression8968_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_interval_function_in_interval_expression9000  */
static	ANTLR3_BITWORD FOLLOW_interval_function_in_interval_expression9000_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_interval_function_in_interval_expression9000	= { FOLLOW_interval_function_in_interval_expression9000_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_interval_time_span_in_interval_expression9007  */
static	ANTLR3_BITWORD FOLLOW_interval_time_span_in_interval_expression9007_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_interval_time_span_in_interval_expression9007	= { FOLLOW_interval_time_span_in_interval_expression9007_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_primary_in_interval_expression9016  */
static	ANTLR3_BITWORD FOLLOW_primary_in_interval_expression9016_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_primary_in_interval_expression9016	= { FOLLOW_primary_in_interval_expression9016_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_interval_function9025  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_interval_function9025_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_interval_function9025	= { FOLLOW_OPEN_PAR_SYMBOL_in_interval_function9025_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_interval_function9027  */
static	ANTLR3_BITWORD FOLLOW_expression_in_interval_function9027_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_interval_function9027	= { FOLLOW_expression_in_interval_function9027_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_interval_function9030  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_interval_function9030_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_interval_function9030	= { FOLLOW_COMMA_SYMBOL_in_interval_function9030_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_interval_function9032  */
static	ANTLR3_BITWORD FOLLOW_expression_in_interval_function9032_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_interval_function9032	= { FOLLOW_expression_in_interval_function9032_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_interval_function9036  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_interval_function9036_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_interval_function9036	= { FOLLOW_CLOSE_PAR_SYMBOL_in_interval_function9036_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_interval_in_interval_time_span9068  */
static	ANTLR3_BITWORD FOLLOW_interval_in_interval_time_span9068_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_interval_in_interval_time_span9068	= { FOLLOW_interval_in_interval_time_span9068_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_temporal_literal_in_primary9100  */
static	ANTLR3_BITWORD FOLLOW_temporal_literal_in_primary9100_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_temporal_literal_in_primary9100	= { FOLLOW_temporal_literal_in_primary9100_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_literal_in_primary9106  */
static	ANTLR3_BITWORD FOLLOW_literal_in_primary9106_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_literal_in_primary9106	= { FOLLOW_literal_in_primary9106_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_name_in_primary9112  */
static	ANTLR3_BITWORD FOLLOW_field_name_in_primary9112_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_field_name_in_primary9112	= { FOLLOW_field_name_in_primary9112_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_function_call_expression_in_primary9118  */
static	ANTLR3_BITWORD FOLLOW_function_call_expression_in_primary9118_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_function_call_expression_in_primary9118	= { FOLLOW_function_call_expression_in_primary9118_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_generic_function_call_in_primary9132  */
static	ANTLR3_BITWORD FOLLOW_generic_function_call_in_primary9132_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_generic_function_call_in_primary9132	= { FOLLOW_generic_function_call_in_primary9132_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARAM_MARKER_in_primary9138  */
static	ANTLR3_BITWORD FOLLOW_PARAM_MARKER_in_primary9138_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARAM_MARKER_in_primary9138	= { FOLLOW_PARAM_MARKER_in_primary9138_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_variable_in_primary9144  */
static	ANTLR3_BITWORD FOLLOW_variable_in_primary9144_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_variable_in_primary9144	= { FOLLOW_variable_in_primary9144_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_subquery_in_primary9152  */
static	ANTLR3_BITWORD FOLLOW_subquery_in_primary9152_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_subquery_in_primary9152	= { FOLLOW_subquery_in_primary9152_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXISTS_SYMBOL_in_primary9158  */
static	ANTLR3_BITWORD FOLLOW_EXISTS_SYMBOL_in_primary9158_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EXISTS_SYMBOL_in_primary9158	= { FOLLOW_EXISTS_SYMBOL_in_primary9158_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_subquery_in_primary9160  */
static	ANTLR3_BITWORD FOLLOW_subquery_in_primary9160_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_subquery_in_primary9160	= { FOLLOW_subquery_in_primary9160_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ROW_SYMBOL_in_primary9166  */
static	ANTLR3_BITWORD FOLLOW_ROW_SYMBOL_in_primary9166_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ROW_SYMBOL_in_primary9166	= { FOLLOW_ROW_SYMBOL_in_primary9166_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_with_parentheses_in_primary9169  */
static	ANTLR3_BITWORD FOLLOW_expression_list_with_parentheses_in_primary9169_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_with_parentheses_in_primary9169	= { FOLLOW_expression_list_with_parentheses_in_primary9169_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_732_in_primary9175  */
static	ANTLR3_BITWORD FOLLOW_732_in_primary9175_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_732_in_primary9175	= { FOLLOW_732_in_primary9175_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_primary9177  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_primary9177_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_primary9177	= { FOLLOW_identifier_in_primary9177_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_primary9179  */
static	ANTLR3_BITWORD FOLLOW_expression_in_primary9179_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000020000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_primary9179	= { FOLLOW_expression_in_primary9179_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_733_in_primary9181  */
static	ANTLR3_BITWORD FOLLOW_733_in_primary9181_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_733_in_primary9181	= { FOLLOW_733_in_primary9181_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_match_expression_in_primary9187  */
static	ANTLR3_BITWORD FOLLOW_match_expression_in_primary9187_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_match_expression_in_primary9187	= { FOLLOW_match_expression_in_primary9187_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_case_expression_in_primary9193  */
static	ANTLR3_BITWORD FOLLOW_case_expression_in_primary9193_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_case_expression_in_primary9193	= { FOLLOW_case_expression_in_primary9193_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_cast_expression_in_primary9199  */
static	ANTLR3_BITWORD FOLLOW_cast_expression_in_primary9199_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_cast_expression_in_primary9199	= { FOLLOW_cast_expression_in_primary9199_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLLATE_SYMBOL_in_primary9221  */
static	ANTLR3_BITWORD FOLLOW_COLLATE_SYMBOL_in_primary9221_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COLLATE_SYMBOL_in_primary9221	= { FOLLOW_COLLATE_SYMBOL_in_primary9221_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_primary9223  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_primary9223_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_primary9223	= { FOLLOW_text_or_identifier_in_primary9223_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_function_call_in_function_call_expression9300  */
static	ANTLR3_BITWORD FOLLOW_function_call_in_function_call_expression9300_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_function_call_in_function_call_expression9300	= { FOLLOW_function_call_in_function_call_expression9300_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHAR_SYMBOL_in_function_call9319  */
static	ANTLR3_BITWORD FOLLOW_CHAR_SYMBOL_in_function_call9319_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CHAR_SYMBOL_in_function_call9319	= { FOLLOW_CHAR_SYMBOL_in_function_call9319_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_function_call9321  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_function_call9321_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_function_call9321	= { FOLLOW_OPEN_PAR_SYMBOL_in_function_call9321_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_in_function_call9323  */
static	ANTLR3_BITWORD FOLLOW_expression_list_in_function_call9323_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_in_function_call9323	= { FOLLOW_expression_list_in_function_call9323_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USING_SYMBOL_in_function_call9326  */
static	ANTLR3_BITWORD FOLLOW_USING_SYMBOL_in_function_call9326_bits[]	= { ANTLR3_UINT64_LIT(0x56E200CAFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_USING_SYMBOL_in_function_call9326	= { FOLLOW_USING_SYMBOL_in_function_call9326_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_name_in_function_call9328  */
static	ANTLR3_BITWORD FOLLOW_charset_name_in_function_call9328_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_name_in_function_call9328	= { FOLLOW_charset_name_in_function_call9328_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9332  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9332_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9332	= { FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9332_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CURRENT_USER_SYMBOL_in_function_call9337  */
static	ANTLR3_BITWORD FOLLOW_CURRENT_USER_SYMBOL_in_function_call9337_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CURRENT_USER_SYMBOL_in_function_call9337	= { FOLLOW_CURRENT_USER_SYMBOL_in_function_call9337_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_parentheses_in_function_call9339  */
static	ANTLR3_BITWORD FOLLOW_parentheses_in_function_call9339_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_parentheses_in_function_call9339	= { FOLLOW_parentheses_in_function_call9339_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATE_SYMBOL_in_function_call9345  */
static	ANTLR3_BITWORD FOLLOW_DATE_SYMBOL_in_function_call9345_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DATE_SYMBOL_in_function_call9345	= { FOLLOW_DATE_SYMBOL_in_function_call9345_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_function_call9347  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_function_call9347_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_function_call9347	= { FOLLOW_OPEN_PAR_SYMBOL_in_function_call9347_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9349  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9349_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9349	= { FOLLOW_expression_in_function_call9349_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9351  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9351_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9351	= { FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9351_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DAY_SYMBOL_in_function_call9356  */
static	ANTLR3_BITWORD FOLLOW_DAY_SYMBOL_in_function_call9356_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DAY_SYMBOL_in_function_call9356	= { FOLLOW_DAY_SYMBOL_in_function_call9356_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_function_call9358  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_function_call9358_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_function_call9358	= { FOLLOW_OPEN_PAR_SYMBOL_in_function_call9358_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9360  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9360_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9360	= { FOLLOW_expression_in_function_call9360_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9362  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9362_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9362	= { FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9362_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HOUR_SYMBOL_in_function_call9367  */
static	ANTLR3_BITWORD FOLLOW_HOUR_SYMBOL_in_function_call9367_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_HOUR_SYMBOL_in_function_call9367	= { FOLLOW_HOUR_SYMBOL_in_function_call9367_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_function_call9369  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_function_call9369_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_function_call9369	= { FOLLOW_OPEN_PAR_SYMBOL_in_function_call9369_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9371  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9371_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9371	= { FOLLOW_expression_in_function_call9371_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9373  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9373_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9373	= { FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9373_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INSERT_SYMBOL_in_function_call9378  */
static	ANTLR3_BITWORD FOLLOW_INSERT_SYMBOL_in_function_call9378_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INSERT_SYMBOL_in_function_call9378	= { FOLLOW_INSERT_SYMBOL_in_function_call9378_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_function_call9380  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_function_call9380_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_function_call9380	= { FOLLOW_OPEN_PAR_SYMBOL_in_function_call9380_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9382  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9382_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9382	= { FOLLOW_expression_in_function_call9382_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_function_call9384  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_function_call9384_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_function_call9384	= { FOLLOW_COMMA_SYMBOL_in_function_call9384_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9386  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9386_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9386	= { FOLLOW_expression_in_function_call9386_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_function_call9388  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_function_call9388_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_function_call9388	= { FOLLOW_COMMA_SYMBOL_in_function_call9388_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9390  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9390_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9390	= { FOLLOW_expression_in_function_call9390_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_function_call9392  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_function_call9392_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_function_call9392	= { FOLLOW_COMMA_SYMBOL_in_function_call9392_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9394  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9394_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9394	= { FOLLOW_expression_in_function_call9394_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9396  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9396_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9396	= { FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9396_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LEFT_SYMBOL_in_function_call9403  */
static	ANTLR3_BITWORD FOLLOW_LEFT_SYMBOL_in_function_call9403_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_LEFT_SYMBOL_in_function_call9403	= { FOLLOW_LEFT_SYMBOL_in_function_call9403_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_function_call9405  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_function_call9405_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_function_call9405	= { FOLLOW_OPEN_PAR_SYMBOL_in_function_call9405_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9407  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9407_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9407	= { FOLLOW_expression_in_function_call9407_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_function_call9409  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_function_call9409_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_function_call9409	= { FOLLOW_COMMA_SYMBOL_in_function_call9409_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_function_call9411  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_function_call9411_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_function_call9411	= { FOLLOW_INTEGER_in_function_call9411_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9413  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9413_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9413	= { FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9413_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MINUTE_SYMBOL_in_function_call9418  */
static	ANTLR3_BITWORD FOLLOW_MINUTE_SYMBOL_in_function_call9418_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MINUTE_SYMBOL_in_function_call9418	= { FOLLOW_MINUTE_SYMBOL_in_function_call9418_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_function_call9420  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_function_call9420_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_function_call9420	= { FOLLOW_OPEN_PAR_SYMBOL_in_function_call9420_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9422  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9422_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9422	= { FOLLOW_expression_in_function_call9422_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9424  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9424_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9424	= { FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9424_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MONTH_SYMBOL_in_function_call9429  */
static	ANTLR3_BITWORD FOLLOW_MONTH_SYMBOL_in_function_call9429_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MONTH_SYMBOL_in_function_call9429	= { FOLLOW_MONTH_SYMBOL_in_function_call9429_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_function_call9431  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_function_call9431_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_function_call9431	= { FOLLOW_OPEN_PAR_SYMBOL_in_function_call9431_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9433  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9433_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9433	= { FOLLOW_expression_in_function_call9433_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9435  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9435_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9435	= { FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9435_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RIGHT_SYMBOL_in_function_call9440  */
static	ANTLR3_BITWORD FOLLOW_RIGHT_SYMBOL_in_function_call9440_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_RIGHT_SYMBOL_in_function_call9440	= { FOLLOW_RIGHT_SYMBOL_in_function_call9440_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_function_call9442  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_function_call9442_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_function_call9442	= { FOLLOW_OPEN_PAR_SYMBOL_in_function_call9442_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9444  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9444_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9444	= { FOLLOW_expression_in_function_call9444_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_function_call9446  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_function_call9446_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_function_call9446	= { FOLLOW_COMMA_SYMBOL_in_function_call9446_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_function_call9448  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_function_call9448_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_function_call9448	= { FOLLOW_INTEGER_in_function_call9448_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9450  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9450_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9450	= { FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9450_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SECOND_SYMBOL_in_function_call9455  */
static	ANTLR3_BITWORD FOLLOW_SECOND_SYMBOL_in_function_call9455_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SECOND_SYMBOL_in_function_call9455	= { FOLLOW_SECOND_SYMBOL_in_function_call9455_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_function_call9457  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_function_call9457_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_function_call9457	= { FOLLOW_OPEN_PAR_SYMBOL_in_function_call9457_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9459  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9459_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9459	= { FOLLOW_expression_in_function_call9459_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9461  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9461_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9461	= { FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9461_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TIME_SYMBOL_in_function_call9466  */
static	ANTLR3_BITWORD FOLLOW_TIME_SYMBOL_in_function_call9466_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_TIME_SYMBOL_in_function_call9466	= { FOLLOW_TIME_SYMBOL_in_function_call9466_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_function_call9468  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_function_call9468_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_function_call9468	= { FOLLOW_OPEN_PAR_SYMBOL_in_function_call9468_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9470  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9470_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9470	= { FOLLOW_expression_in_function_call9470_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9472  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9472_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9472	= { FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9472_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TIMESTAMP_SYMBOL_in_function_call9477  */
static	ANTLR3_BITWORD FOLLOW_TIMESTAMP_SYMBOL_in_function_call9477_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_TIMESTAMP_SYMBOL_in_function_call9477	= { FOLLOW_TIMESTAMP_SYMBOL_in_function_call9477_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_function_call9479  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_function_call9479_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_function_call9479	= { FOLLOW_OPEN_PAR_SYMBOL_in_function_call9479_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9481  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9481_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9481	= { FOLLOW_expression_in_function_call9481_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_function_call9484  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_function_call9484_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_function_call9484	= { FOLLOW_COMMA_SYMBOL_in_function_call9484_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9486  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9486_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9486	= { FOLLOW_expression_in_function_call9486_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9490  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9490_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9490	= { FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9490_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_trim_function_in_function_call9495  */
static	ANTLR3_BITWORD FOLLOW_trim_function_in_function_call9495_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_trim_function_in_function_call9495	= { FOLLOW_trim_function_in_function_call9495_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USER_SYMBOL_in_function_call9500  */
static	ANTLR3_BITWORD FOLLOW_USER_SYMBOL_in_function_call9500_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_USER_SYMBOL_in_function_call9500	= { FOLLOW_USER_SYMBOL_in_function_call9500_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_parentheses_in_function_call9502  */
static	ANTLR3_BITWORD FOLLOW_parentheses_in_function_call9502_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_parentheses_in_function_call9502	= { FOLLOW_parentheses_in_function_call9502_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VALUES_SYMBOL_in_function_call9507  */
static	ANTLR3_BITWORD FOLLOW_VALUES_SYMBOL_in_function_call9507_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_VALUES_SYMBOL_in_function_call9507	= { FOLLOW_VALUES_SYMBOL_in_function_call9507_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_function_call9509  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_function_call9509_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_function_call9509	= { FOLLOW_OPEN_PAR_SYMBOL_in_function_call9509_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9511  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9511_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9511	= { FOLLOW_expression_in_function_call9511_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9513  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9513_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9513	= { FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9513_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_YEAR_SYMBOL_in_function_call9518  */
static	ANTLR3_BITWORD FOLLOW_YEAR_SYMBOL_in_function_call9518_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_YEAR_SYMBOL_in_function_call9518	= { FOLLOW_YEAR_SYMBOL_in_function_call9518_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_function_call9520  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_function_call9520_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_function_call9520	= { FOLLOW_OPEN_PAR_SYMBOL_in_function_call9520_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9522  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9522_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9522	= { FOLLOW_expression_in_function_call9522_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9524  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9524_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9524	= { FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9524_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_function_call9532  */
static	ANTLR3_BITWORD FOLLOW_set_in_function_call9532_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_function_call9532	= { FOLLOW_set_in_function_call9532_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_function_call9540  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_function_call9540_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_function_call9540	= { FOLLOW_OPEN_PAR_SYMBOL_in_function_call9540_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9542  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9542_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9542	= { FOLLOW_expression_in_function_call9542_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_function_call9544  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_function_call9544_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_function_call9544	= { FOLLOW_COMMA_SYMBOL_in_function_call9544_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9546  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9546_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9546	= { FOLLOW_expression_in_function_call9546_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9548  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9548_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9548	= { FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9548_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CURDATE_SYMBOL_in_function_call9553  */
static	ANTLR3_BITWORD FOLLOW_CURDATE_SYMBOL_in_function_call9553_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CURDATE_SYMBOL_in_function_call9553	= { FOLLOW_CURDATE_SYMBOL_in_function_call9553_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_parentheses_in_function_call9555  */
static	ANTLR3_BITWORD FOLLOW_parentheses_in_function_call9555_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_parentheses_in_function_call9555	= { FOLLOW_parentheses_in_function_call9555_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CURTIME_SYMBOL_in_function_call9561  */
static	ANTLR3_BITWORD FOLLOW_CURTIME_SYMBOL_in_function_call9561_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CURTIME_SYMBOL_in_function_call9561	= { FOLLOW_CURTIME_SYMBOL_in_function_call9561_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_time_function_parameters_in_function_call9563  */
static	ANTLR3_BITWORD FOLLOW_time_function_parameters_in_function_call9563_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_time_function_parameters_in_function_call9563	= { FOLLOW_time_function_parameters_in_function_call9563_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_function_call9569  */
static	ANTLR3_BITWORD FOLLOW_set_in_function_call9569_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_function_call9569	= { FOLLOW_set_in_function_call9569_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_function_call9577  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_function_call9577_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_function_call9577	= { FOLLOW_OPEN_PAR_SYMBOL_in_function_call9577_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9579  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9579_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9579	= { FOLLOW_expression_in_function_call9579_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_function_call9581  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_function_call9581_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_function_call9581	= { FOLLOW_COMMA_SYMBOL_in_function_call9581_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTERVAL_SYMBOL_in_function_call9583  */
static	ANTLR3_BITWORD FOLLOW_INTERVAL_SYMBOL_in_function_call9583_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_INTERVAL_SYMBOL_in_function_call9583	= { FOLLOW_INTERVAL_SYMBOL_in_function_call9583_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_interval_in_function_call9585  */
static	ANTLR3_BITWORD FOLLOW_interval_in_function_call9585_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_interval_in_function_call9585	= { FOLLOW_interval_in_function_call9585_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9587  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9587_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9587	= { FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9587_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXTRACT_SYMBOL_in_function_call9592  */
static	ANTLR3_BITWORD FOLLOW_EXTRACT_SYMBOL_in_function_call9592_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EXTRACT_SYMBOL_in_function_call9592	= { FOLLOW_EXTRACT_SYMBOL_in_function_call9592_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_function_call9594  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_function_call9594_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000F80), ANTLR3_UINT64_LIT(0x8000000800000000), ANTLR3_UINT64_LIT(0x0000000000000007), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0000000000001007), ANTLR3_UINT64_LIT(0x0000008000000000), ANTLR3_UINT64_LIT(0x0000000300000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000006000100) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_function_call9594	= { FOLLOW_OPEN_PAR_SYMBOL_in_function_call9594_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_interval_unit_in_function_call9596  */
static	ANTLR3_BITWORD FOLLOW_interval_unit_in_function_call9596_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_interval_unit_in_function_call9596	= { FOLLOW_interval_unit_in_function_call9596_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_function_call9598  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_function_call9598_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_function_call9598	= { FOLLOW_FROM_SYMBOL_in_function_call9598_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9600  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9600_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9600	= { FOLLOW_expression_in_function_call9600_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9602  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9602_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9602	= { FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9602_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GET_FORMAT_SYMBOL_in_function_call9607  */
static	ANTLR3_BITWORD FOLLOW_GET_FORMAT_SYMBOL_in_function_call9607_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_GET_FORMAT_SYMBOL_in_function_call9607	= { FOLLOW_GET_FORMAT_SYMBOL_in_function_call9607_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_function_call9609  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_function_call9609_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000021), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001800) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_function_call9609	= { FOLLOW_OPEN_PAR_SYMBOL_in_function_call9609_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_date_time_type_in_function_call9611  */
static	ANTLR3_BITWORD FOLLOW_date_time_type_in_function_call9611_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_date_time_type_in_function_call9611	= { FOLLOW_date_time_type_in_function_call9611_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_function_call9614  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_function_call9614_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_function_call9614	= { FOLLOW_COMMA_SYMBOL_in_function_call9614_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9616  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9616_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9616	= { FOLLOW_expression_in_function_call9616_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9618  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9618_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9618	= { FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9618_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NOW_SYMBOL_in_function_call9623  */
static	ANTLR3_BITWORD FOLLOW_NOW_SYMBOL_in_function_call9623_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_NOW_SYMBOL_in_function_call9623	= { FOLLOW_NOW_SYMBOL_in_function_call9623_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_time_function_parameters_in_function_call9625  */
static	ANTLR3_BITWORD FOLLOW_time_function_parameters_in_function_call9625_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_time_function_parameters_in_function_call9625	= { FOLLOW_time_function_parameters_in_function_call9625_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_POSITION_SYMBOL_in_function_call9631  */
static	ANTLR3_BITWORD FOLLOW_POSITION_SYMBOL_in_function_call9631_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_POSITION_SYMBOL_in_function_call9631	= { FOLLOW_POSITION_SYMBOL_in_function_call9631_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_function_call9633  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_function_call9633_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35C7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_function_call9633	= { FOLLOW_OPEN_PAR_SYMBOL_in_function_call9633_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_bitwise_or_expression_in_function_call9635  */
static	ANTLR3_BITWORD FOLLOW_bitwise_or_expression_in_function_call9635_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000100000000) };
static  ANTLR3_BITSET_LIST FOLLOW_bitwise_or_expression_in_function_call9635	= { FOLLOW_bitwise_or_expression_in_function_call9635_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IN_SYMBOL_in_function_call9637  */
static	ANTLR3_BITWORD FOLLOW_IN_SYMBOL_in_function_call9637_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_IN_SYMBOL_in_function_call9637	= { FOLLOW_IN_SYMBOL_in_function_call9637_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9639  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9639_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9639	= { FOLLOW_expression_in_function_call9639_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9641  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9641_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9641	= { FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9641_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_substring_function_in_function_call9646  */
static	ANTLR3_BITWORD FOLLOW_substring_function_in_function_call9646_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_substring_function_in_function_call9646	= { FOLLOW_substring_function_in_function_call9646_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SYSDATE_SYMBOL_in_function_call9651  */
static	ANTLR3_BITWORD FOLLOW_SYSDATE_SYMBOL_in_function_call9651_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SYSDATE_SYMBOL_in_function_call9651	= { FOLLOW_SYSDATE_SYMBOL_in_function_call9651_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_time_function_parameters_in_function_call9653  */
static	ANTLR3_BITWORD FOLLOW_time_function_parameters_in_function_call9653_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_time_function_parameters_in_function_call9653	= { FOLLOW_time_function_parameters_in_function_call9653_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_function_call9659  */
static	ANTLR3_BITWORD FOLLOW_set_in_function_call9659_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_function_call9659	= { FOLLOW_set_in_function_call9659_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_function_call9667  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_function_call9667_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000000800000000), ANTLR3_UINT64_LIT(0x0000000000000004), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0000000000001004), ANTLR3_UINT64_LIT(0x0000008000000000), ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000100) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_function_call9667	= { FOLLOW_OPEN_PAR_SYMBOL_in_function_call9667_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_interval_timestamp_unit_in_function_call9669  */
static	ANTLR3_BITWORD FOLLOW_interval_timestamp_unit_in_function_call9669_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_interval_timestamp_unit_in_function_call9669	= { FOLLOW_interval_timestamp_unit_in_function_call9669_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_function_call9671  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_function_call9671_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_function_call9671	= { FOLLOW_COMMA_SYMBOL_in_function_call9671_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9673  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9673_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9673	= { FOLLOW_expression_in_function_call9673_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_function_call9675  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_function_call9675_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_function_call9675	= { FOLLOW_COMMA_SYMBOL_in_function_call9675_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9677  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9677_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9677	= { FOLLOW_expression_in_function_call9677_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9679  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9679_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9679	= { FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9679_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UTC_DATE_SYMBOL_in_function_call9684  */
static	ANTLR3_BITWORD FOLLOW_UTC_DATE_SYMBOL_in_function_call9684_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_UTC_DATE_SYMBOL_in_function_call9684	= { FOLLOW_UTC_DATE_SYMBOL_in_function_call9684_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_parentheses_in_function_call9686  */
static	ANTLR3_BITWORD FOLLOW_parentheses_in_function_call9686_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_parentheses_in_function_call9686	= { FOLLOW_parentheses_in_function_call9686_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UTC_TIME_SYMBOL_in_function_call9692  */
static	ANTLR3_BITWORD FOLLOW_UTC_TIME_SYMBOL_in_function_call9692_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_UTC_TIME_SYMBOL_in_function_call9692	= { FOLLOW_UTC_TIME_SYMBOL_in_function_call9692_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_time_function_parameters_in_function_call9694  */
static	ANTLR3_BITWORD FOLLOW_time_function_parameters_in_function_call9694_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_time_function_parameters_in_function_call9694	= { FOLLOW_time_function_parameters_in_function_call9694_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UTC_TIMESTAMP_SYMBOL_in_function_call9700  */
static	ANTLR3_BITWORD FOLLOW_UTC_TIMESTAMP_SYMBOL_in_function_call9700_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_UTC_TIMESTAMP_SYMBOL_in_function_call9700	= { FOLLOW_UTC_TIMESTAMP_SYMBOL_in_function_call9700_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_time_function_parameters_in_function_call9702  */
static	ANTLR3_BITWORD FOLLOW_time_function_parameters_in_function_call9702_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_time_function_parameters_in_function_call9702	= { FOLLOW_time_function_parameters_in_function_call9702_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ASCII_SYMBOL_in_function_call9711  */
static	ANTLR3_BITWORD FOLLOW_ASCII_SYMBOL_in_function_call9711_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ASCII_SYMBOL_in_function_call9711	= { FOLLOW_ASCII_SYMBOL_in_function_call9711_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_function_call9713  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_function_call9713_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_function_call9713	= { FOLLOW_OPEN_PAR_SYMBOL_in_function_call9713_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9715  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9715_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9715	= { FOLLOW_expression_in_function_call9715_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9717  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9717_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9717	= { FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9717_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHARSET_SYMBOL_in_function_call9722  */
static	ANTLR3_BITWORD FOLLOW_CHARSET_SYMBOL_in_function_call9722_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CHARSET_SYMBOL_in_function_call9722	= { FOLLOW_CHARSET_SYMBOL_in_function_call9722_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_function_call9724  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_function_call9724_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_function_call9724	= { FOLLOW_OPEN_PAR_SYMBOL_in_function_call9724_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9726  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9726_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9726	= { FOLLOW_expression_in_function_call9726_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9728  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9728_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9728	= { FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9728_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COALESCE_SYMBOL_in_function_call9733  */
static	ANTLR3_BITWORD FOLLOW_COALESCE_SYMBOL_in_function_call9733_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COALESCE_SYMBOL_in_function_call9733	= { FOLLOW_COALESCE_SYMBOL_in_function_call9733_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_with_parentheses_in_function_call9735  */
static	ANTLR3_BITWORD FOLLOW_expression_list_with_parentheses_in_function_call9735_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_with_parentheses_in_function_call9735	= { FOLLOW_expression_list_with_parentheses_in_function_call9735_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLLATION_SYMBOL_in_function_call9740  */
static	ANTLR3_BITWORD FOLLOW_COLLATION_SYMBOL_in_function_call9740_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COLLATION_SYMBOL_in_function_call9740	= { FOLLOW_COLLATION_SYMBOL_in_function_call9740_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_function_call9742  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_function_call9742_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_function_call9742	= { FOLLOW_OPEN_PAR_SYMBOL_in_function_call9742_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9744  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9744_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9744	= { FOLLOW_expression_in_function_call9744_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9746  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9746_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9746	= { FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9746_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATABASE_SYMBOL_in_function_call9751  */
static	ANTLR3_BITWORD FOLLOW_DATABASE_SYMBOL_in_function_call9751_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DATABASE_SYMBOL_in_function_call9751	= { FOLLOW_DATABASE_SYMBOL_in_function_call9751_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_parentheses_in_function_call9753  */
static	ANTLR3_BITWORD FOLLOW_parentheses_in_function_call9753_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_parentheses_in_function_call9753	= { FOLLOW_parentheses_in_function_call9753_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IF_SYMBOL_in_function_call9758  */
static	ANTLR3_BITWORD FOLLOW_IF_SYMBOL_in_function_call9758_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_IF_SYMBOL_in_function_call9758	= { FOLLOW_IF_SYMBOL_in_function_call9758_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_function_call9760  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_function_call9760_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_function_call9760	= { FOLLOW_OPEN_PAR_SYMBOL_in_function_call9760_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9762  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9762_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9762	= { FOLLOW_expression_in_function_call9762_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_function_call9764  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_function_call9764_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_function_call9764	= { FOLLOW_COMMA_SYMBOL_in_function_call9764_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9766  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9766_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9766	= { FOLLOW_expression_in_function_call9766_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_function_call9768  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_function_call9768_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_function_call9768	= { FOLLOW_COMMA_SYMBOL_in_function_call9768_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9770  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9770_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9770	= { FOLLOW_expression_in_function_call9770_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9772  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9772_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9772	= { FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9772_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FORMAT_SYMBOL_in_function_call9777  */
static	ANTLR3_BITWORD FOLLOW_FORMAT_SYMBOL_in_function_call9777_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FORMAT_SYMBOL_in_function_call9777	= { FOLLOW_FORMAT_SYMBOL_in_function_call9777_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_function_call9779  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_function_call9779_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_function_call9779	= { FOLLOW_OPEN_PAR_SYMBOL_in_function_call9779_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9781  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9781_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9781	= { FOLLOW_expression_in_function_call9781_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_function_call9783  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_function_call9783_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_function_call9783	= { FOLLOW_COMMA_SYMBOL_in_function_call9783_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9785  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9785_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9785	= { FOLLOW_expression_in_function_call9785_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_function_call9788  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_function_call9788_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_function_call9788	= { FOLLOW_COMMA_SYMBOL_in_function_call9788_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9790  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9790_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9790	= { FOLLOW_expression_in_function_call9790_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9794  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9794_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9794	= { FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9794_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MICROSECOND_SYMBOL_in_function_call9799  */
static	ANTLR3_BITWORD FOLLOW_MICROSECOND_SYMBOL_in_function_call9799_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MICROSECOND_SYMBOL_in_function_call9799	= { FOLLOW_MICROSECOND_SYMBOL_in_function_call9799_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_function_call9801  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_function_call9801_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_function_call9801	= { FOLLOW_OPEN_PAR_SYMBOL_in_function_call9801_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9803  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9803_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9803	= { FOLLOW_expression_in_function_call9803_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9805  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9805_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9805	= { FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9805_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MOD_SYMBOL_in_function_call9810  */
static	ANTLR3_BITWORD FOLLOW_MOD_SYMBOL_in_function_call9810_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MOD_SYMBOL_in_function_call9810	= { FOLLOW_MOD_SYMBOL_in_function_call9810_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_function_call9812  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_function_call9812_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_function_call9812	= { FOLLOW_OPEN_PAR_SYMBOL_in_function_call9812_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9814  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9814_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9814	= { FOLLOW_expression_in_function_call9814_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_function_call9816  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_function_call9816_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_function_call9816	= { FOLLOW_COMMA_SYMBOL_in_function_call9816_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9818  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9818_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9818	= { FOLLOW_expression_in_function_call9818_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9820  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9820_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9820	= { FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9820_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OLD_PASSWORD_SYMBOL_in_function_call9825  */
static	ANTLR3_BITWORD FOLLOW_OLD_PASSWORD_SYMBOL_in_function_call9825_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OLD_PASSWORD_SYMBOL_in_function_call9825	= { FOLLOW_OLD_PASSWORD_SYMBOL_in_function_call9825_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_function_call9827  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_function_call9827_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_function_call9827	= { FOLLOW_OPEN_PAR_SYMBOL_in_function_call9827_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9829  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9829_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9829	= { FOLLOW_expression_in_function_call9829_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9831  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9831_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9831	= { FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9831_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PASSWORD_SYMBOL_in_function_call9836  */
static	ANTLR3_BITWORD FOLLOW_PASSWORD_SYMBOL_in_function_call9836_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PASSWORD_SYMBOL_in_function_call9836	= { FOLLOW_PASSWORD_SYMBOL_in_function_call9836_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_function_call9838  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_function_call9838_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_function_call9838	= { FOLLOW_OPEN_PAR_SYMBOL_in_function_call9838_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9840  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9840_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9840	= { FOLLOW_expression_in_function_call9840_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9842  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9842_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9842	= { FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9842_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_QUARTER_SYMBOL_in_function_call9847  */
static	ANTLR3_BITWORD FOLLOW_QUARTER_SYMBOL_in_function_call9847_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_QUARTER_SYMBOL_in_function_call9847	= { FOLLOW_QUARTER_SYMBOL_in_function_call9847_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_function_call9849  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_function_call9849_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_function_call9849	= { FOLLOW_OPEN_PAR_SYMBOL_in_function_call9849_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9851  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9851_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9851	= { FOLLOW_expression_in_function_call9851_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9853  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9853_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9853	= { FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9853_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPEAT_SYMBOL_in_function_call9858  */
static	ANTLR3_BITWORD FOLLOW_REPEAT_SYMBOL_in_function_call9858_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_REPEAT_SYMBOL_in_function_call9858	= { FOLLOW_REPEAT_SYMBOL_in_function_call9858_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_function_call9860  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_function_call9860_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_function_call9860	= { FOLLOW_OPEN_PAR_SYMBOL_in_function_call9860_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9862  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9862_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9862	= { FOLLOW_expression_in_function_call9862_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_function_call9864  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_function_call9864_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_function_call9864	= { FOLLOW_COMMA_SYMBOL_in_function_call9864_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9866  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9866_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9866	= { FOLLOW_expression_in_function_call9866_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9868  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9868_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9868	= { FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9868_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPLACE_SYMBOL_in_function_call9873  */
static	ANTLR3_BITWORD FOLLOW_REPLACE_SYMBOL_in_function_call9873_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_REPLACE_SYMBOL_in_function_call9873	= { FOLLOW_REPLACE_SYMBOL_in_function_call9873_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_function_call9875  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_function_call9875_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_function_call9875	= { FOLLOW_OPEN_PAR_SYMBOL_in_function_call9875_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9877  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9877_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9877	= { FOLLOW_expression_in_function_call9877_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_function_call9879  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_function_call9879_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_function_call9879	= { FOLLOW_COMMA_SYMBOL_in_function_call9879_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9881  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9881_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9881	= { FOLLOW_expression_in_function_call9881_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_function_call9883  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_function_call9883_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_function_call9883	= { FOLLOW_COMMA_SYMBOL_in_function_call9883_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9885  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9885_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9885	= { FOLLOW_expression_in_function_call9885_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9887  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9887_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9887	= { FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9887_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REVERSE_SYMBOL_in_function_call9892  */
static	ANTLR3_BITWORD FOLLOW_REVERSE_SYMBOL_in_function_call9892_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_REVERSE_SYMBOL_in_function_call9892	= { FOLLOW_REVERSE_SYMBOL_in_function_call9892_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_function_call9894  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_function_call9894_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_function_call9894	= { FOLLOW_OPEN_PAR_SYMBOL_in_function_call9894_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9896  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9896_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9896	= { FOLLOW_expression_in_function_call9896_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9898  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9898_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9898	= { FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9898_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ROW_COUNT_SYMBOL_in_function_call9903  */
static	ANTLR3_BITWORD FOLLOW_ROW_COUNT_SYMBOL_in_function_call9903_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ROW_COUNT_SYMBOL_in_function_call9903	= { FOLLOW_ROW_COUNT_SYMBOL_in_function_call9903_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_parentheses_in_function_call9905  */
static	ANTLR3_BITWORD FOLLOW_parentheses_in_function_call9905_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_parentheses_in_function_call9905	= { FOLLOW_parentheses_in_function_call9905_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TRUNCATE_SYMBOL_in_function_call9910  */
static	ANTLR3_BITWORD FOLLOW_TRUNCATE_SYMBOL_in_function_call9910_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_TRUNCATE_SYMBOL_in_function_call9910	= { FOLLOW_TRUNCATE_SYMBOL_in_function_call9910_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_function_call9912  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_function_call9912_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_function_call9912	= { FOLLOW_OPEN_PAR_SYMBOL_in_function_call9912_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9914  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9914_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9914	= { FOLLOW_expression_in_function_call9914_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_function_call9916  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_function_call9916_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_function_call9916	= { FOLLOW_COMMA_SYMBOL_in_function_call9916_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9918  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9918_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9918	= { FOLLOW_expression_in_function_call9918_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9920  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9920_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9920	= { FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9920_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WEEK_SYMBOL_in_function_call9925  */
static	ANTLR3_BITWORD FOLLOW_WEEK_SYMBOL_in_function_call9925_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_WEEK_SYMBOL_in_function_call9925	= { FOLLOW_WEEK_SYMBOL_in_function_call9925_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_function_call9927  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_function_call9927_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_function_call9927	= { FOLLOW_OPEN_PAR_SYMBOL_in_function_call9927_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9929  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9929_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9929	= { FOLLOW_expression_in_function_call9929_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_function_call9932  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_function_call9932_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_function_call9932	= { FOLLOW_COMMA_SYMBOL_in_function_call9932_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9934  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9934_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9934	= { FOLLOW_expression_in_function_call9934_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9938  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9938_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9938	= { FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9938_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WEIGHT_STRING_SYMBOL_in_function_call9947  */
static	ANTLR3_BITWORD FOLLOW_WEIGHT_STRING_SYMBOL_in_function_call9947_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_WEIGHT_STRING_SYMBOL_in_function_call9947	= { FOLLOW_WEIGHT_STRING_SYMBOL_in_function_call9947_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_function_call9949  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_function_call9949_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_function_call9949	= { FOLLOW_OPEN_PAR_SYMBOL_in_function_call9949_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_function_call9951  */
static	ANTLR3_BITWORD FOLLOW_expression_in_function_call9951_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000400000), ANTLR3_UINT64_LIT(0x0000000002004000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_function_call9951	= { FOLLOW_expression_in_function_call9951_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AS_SYMBOL_in_function_call9961  */
static	ANTLR3_BITWORD FOLLOW_AS_SYMBOL_in_function_call9961_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000100) };
static  ANTLR3_BITSET_LIST FOLLOW_AS_SYMBOL_in_function_call9961	= { FOLLOW_AS_SYMBOL_in_function_call9961_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHAR_SYMBOL_in_function_call9963  */
static	ANTLR3_BITWORD FOLLOW_CHAR_SYMBOL_in_function_call9963_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CHAR_SYMBOL_in_function_call9963	= { FOLLOW_CHAR_SYMBOL_in_function_call9963_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_function_call9965  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_function_call9965_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_function_call9965	= { FOLLOW_field_length_in_function_call9965_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_weight_string_levels_in_function_call9969  */
static	ANTLR3_BITWORD FOLLOW_weight_string_levels_in_function_call9969_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_weight_string_levels_in_function_call9969	= { FOLLOW_weight_string_levels_in_function_call9969_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AS_SYMBOL_in_function_call9977  */
static	ANTLR3_BITWORD FOLLOW_AS_SYMBOL_in_function_call9977_bits[]	= { ANTLR3_UINT64_LIT(0x0000004000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_AS_SYMBOL_in_function_call9977	= { FOLLOW_AS_SYMBOL_in_function_call9977_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_function_call9979  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_function_call9979_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_function_call9979	= { FOLLOW_BINARY_SYMBOL_in_function_call9979_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_function_call9981  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_function_call9981_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_function_call9981	= { FOLLOW_field_length_in_function_call9981_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_function_call9988  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_function_call9988_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_function_call9988	= { FOLLOW_COMMA_SYMBOL_in_function_call9988_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_function_call9990  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_function_call9990_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_function_call9990	= { FOLLOW_INTEGER_in_function_call9990_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_function_call9992  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_function_call9992_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_function_call9992	= { FOLLOW_COMMA_SYMBOL_in_function_call9992_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_function_call9994  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_function_call9994_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_function_call9994	= { FOLLOW_INTEGER_in_function_call9994_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_function_call9996  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_function_call9996_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_function_call9996	= { FOLLOW_COMMA_SYMBOL_in_function_call9996_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_function_call9998  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_function_call9998_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_function_call9998	= { FOLLOW_INTEGER_in_function_call9998_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_function_call10006  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_function_call10006_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_function_call10006	= { FOLLOW_CLOSE_PAR_SYMBOL_in_function_call10006_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_geometry_function_in_function_call10011  */
static	ANTLR3_BITWORD FOLLOW_geometry_function_in_function_call10011_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_geometry_function_in_function_call10011	= { FOLLOW_geometry_function_in_function_call10011_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_aggregate_function_in_function_call10016  */
static	ANTLR3_BITWORD FOLLOW_aggregate_function_in_function_call10016_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_aggregate_function_in_function_call10016	= { FOLLOW_aggregate_function_in_function_call10016_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_time_function_parameters10025  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_time_function_parameters10025_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_time_function_parameters10025	= { FOLLOW_OPEN_PAR_SYMBOL_in_time_function_parameters10025_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_fractional_precision_in_time_function_parameters10027  */
static	ANTLR3_BITWORD FOLLOW_fractional_precision_in_time_function_parameters10027_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_fractional_precision_in_time_function_parameters10027	= { FOLLOW_fractional_precision_in_time_function_parameters10027_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_time_function_parameters10030  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_time_function_parameters10030_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_time_function_parameters10030	= { FOLLOW_CLOSE_PAR_SYMBOL_in_time_function_parameters10030_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_fractional_precision10043  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_fractional_precision10043_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_fractional_precision10043	= { FOLLOW_INTEGER_in_fractional_precision10043_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LEVEL_SYMBOL_in_weight_string_levels10052  */
static	ANTLR3_BITWORD FOLLOW_LEVEL_SYMBOL_in_weight_string_levels10052_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_LEVEL_SYMBOL_in_weight_string_levels10052	= { FOLLOW_LEVEL_SYMBOL_in_weight_string_levels10052_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_weight_string_levels10061  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_weight_string_levels10061_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_weight_string_levels10061	= { FOLLOW_INTEGER_in_weight_string_levels10061_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MINUS_OPERATOR_in_weight_string_levels10063  */
static	ANTLR3_BITWORD FOLLOW_MINUS_OPERATOR_in_weight_string_levels10063_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MINUS_OPERATOR_in_weight_string_levels10063	= { FOLLOW_MINUS_OPERATOR_in_weight_string_levels10063_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_weight_string_levels10065  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_weight_string_levels10065_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_weight_string_levels10065	= { FOLLOW_INTEGER_in_weight_string_levels10065_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_weight_string_level_list_item_in_weight_string_levels10072  */
static	ANTLR3_BITWORD FOLLOW_weight_string_level_list_item_in_weight_string_levels10072_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_weight_string_level_list_item_in_weight_string_levels10072	= { FOLLOW_weight_string_level_list_item_in_weight_string_levels10072_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_weight_string_levels10075  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_weight_string_levels10075_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_weight_string_levels10075	= { FOLLOW_COMMA_SYMBOL_in_weight_string_levels10075_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_weight_string_level_list_item_in_weight_string_levels10077  */
static	ANTLR3_BITWORD FOLLOW_weight_string_level_list_item_in_weight_string_levels10077_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_weight_string_level_list_item_in_weight_string_levels10077	= { FOLLOW_weight_string_level_list_item_in_weight_string_levels10077_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_weight_string_level_list_item10092  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_weight_string_level_list_item10092_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000080002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000001000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_weight_string_level_list_item10092	= { FOLLOW_INTEGER_in_weight_string_level_list_item10092_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_weight_string_level_list_item10101  */
static	ANTLR3_BITWORD FOLLOW_set_in_weight_string_level_list_item10101_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_weight_string_level_list_item10101	= { FOLLOW_set_in_weight_string_level_list_item10101_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REVERSE_SYMBOL_in_weight_string_level_list_item10109  */
static	ANTLR3_BITWORD FOLLOW_REVERSE_SYMBOL_in_weight_string_level_list_item10109_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_REVERSE_SYMBOL_in_weight_string_level_list_item10109	= { FOLLOW_REVERSE_SYMBOL_in_weight_string_level_list_item10109_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REVERSE_SYMBOL_in_weight_string_level_list_item10117  */
static	ANTLR3_BITWORD FOLLOW_REVERSE_SYMBOL_in_weight_string_level_list_item10117_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_REVERSE_SYMBOL_in_weight_string_level_list_item10117	= { FOLLOW_REVERSE_SYMBOL_in_weight_string_level_list_item10117_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_generic_function_call10131  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_generic_function_call10131_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_generic_function_call10131	= { FOLLOW_qualified_identifier_in_generic_function_call10131_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_generic_function_call10133  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_generic_function_call10133_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBFB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_generic_function_call10133	= { FOLLOW_OPEN_PAR_SYMBOL_in_generic_function_call10133_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_in_generic_function_call10135  */
static	ANTLR3_BITWORD FOLLOW_expression_list_in_generic_function_call10135_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_in_generic_function_call10135	= { FOLLOW_expression_list_in_generic_function_call10135_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_generic_function_call10138  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_generic_function_call10138_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_generic_function_call10138	= { FOLLOW_CLOSE_PAR_SYMBOL_in_generic_function_call10138_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TRIM_SYMBOL_in_trim_function10189  */
static	ANTLR3_BITWORD FOLLOW_TRIM_SYMBOL_in_trim_function10189_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_TRIM_SYMBOL_in_trim_function10189	= { FOLLOW_TRIM_SYMBOL_in_trim_function10189_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_trim_function10191  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_trim_function10191_bits[]	= { ANTLR3_UINT64_LIT(0x57E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AF20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EE1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_trim_function10191	= { FOLLOW_OPEN_PAR_SYMBOL_in_trim_function10191_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_trim_function10198  */
static	ANTLR3_BITWORD FOLLOW_expression_in_trim_function10198_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_trim_function10198	= { FOLLOW_expression_in_trim_function10198_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_trim_function10201  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_trim_function10201_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_trim_function10201	= { FOLLOW_FROM_SYMBOL_in_trim_function10201_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_trim_function10203  */
static	ANTLR3_BITWORD FOLLOW_expression_in_trim_function10203_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_trim_function10203	= { FOLLOW_expression_in_trim_function10203_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LEADING_SYMBOL_in_trim_function10211  */
static	ANTLR3_BITWORD FOLLOW_LEADING_SYMBOL_in_trim_function10211_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF5523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_LEADING_SYMBOL_in_trim_function10211	= { FOLLOW_LEADING_SYMBOL_in_trim_function10211_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_trim_function10213  */
static	ANTLR3_BITWORD FOLLOW_expression_in_trim_function10213_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_trim_function10213	= { FOLLOW_expression_in_trim_function10213_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_trim_function10216  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_trim_function10216_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_trim_function10216	= { FOLLOW_FROM_SYMBOL_in_trim_function10216_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_trim_function10218  */
static	ANTLR3_BITWORD FOLLOW_expression_in_trim_function10218_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_trim_function10218	= { FOLLOW_expression_in_trim_function10218_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TRAILING_SYMBOL_in_trim_function10224  */
static	ANTLR3_BITWORD FOLLOW_TRAILING_SYMBOL_in_trim_function10224_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF5523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_TRAILING_SYMBOL_in_trim_function10224	= { FOLLOW_TRAILING_SYMBOL_in_trim_function10224_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_trim_function10226  */
static	ANTLR3_BITWORD FOLLOW_expression_in_trim_function10226_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_trim_function10226	= { FOLLOW_expression_in_trim_function10226_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_trim_function10229  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_trim_function10229_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_trim_function10229	= { FOLLOW_FROM_SYMBOL_in_trim_function10229_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_trim_function10231  */
static	ANTLR3_BITWORD FOLLOW_expression_in_trim_function10231_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_trim_function10231	= { FOLLOW_expression_in_trim_function10231_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BOTH_SYMBOL_in_trim_function10237  */
static	ANTLR3_BITWORD FOLLOW_BOTH_SYMBOL_in_trim_function10237_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF5523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_BOTH_SYMBOL_in_trim_function10237	= { FOLLOW_BOTH_SYMBOL_in_trim_function10237_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_trim_function10239  */
static	ANTLR3_BITWORD FOLLOW_expression_in_trim_function10239_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_trim_function10239	= { FOLLOW_expression_in_trim_function10239_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_trim_function10242  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_trim_function10242_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_trim_function10242	= { FOLLOW_FROM_SYMBOL_in_trim_function10242_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_trim_function10244  */
static	ANTLR3_BITWORD FOLLOW_expression_in_trim_function10244_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_trim_function10244	= { FOLLOW_expression_in_trim_function10244_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_trim_function10250  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_trim_function10250_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_trim_function10250	= { FOLLOW_CLOSE_PAR_SYMBOL_in_trim_function10250_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SUBSTRING_SYMBOL_in_substring_function10259  */
static	ANTLR3_BITWORD FOLLOW_SUBSTRING_SYMBOL_in_substring_function10259_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SUBSTRING_SYMBOL_in_substring_function10259	= { FOLLOW_SUBSTRING_SYMBOL_in_substring_function10259_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_substring_function10261  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_substring_function10261_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_substring_function10261	= { FOLLOW_OPEN_PAR_SYMBOL_in_substring_function10261_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_substring_function10263  */
static	ANTLR3_BITWORD FOLLOW_expression_in_substring_function10263_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_substring_function10263	= { FOLLOW_expression_in_substring_function10263_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_substring_function10270  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_substring_function10270_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_substring_function10270	= { FOLLOW_COMMA_SYMBOL_in_substring_function10270_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_substring_function10272  */
static	ANTLR3_BITWORD FOLLOW_expression_in_substring_function10272_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_substring_function10272	= { FOLLOW_expression_in_substring_function10272_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_substring_function10275  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_substring_function10275_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_substring_function10275	= { FOLLOW_COMMA_SYMBOL_in_substring_function10275_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_substring_function10277  */
static	ANTLR3_BITWORD FOLLOW_expression_in_substring_function10277_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_substring_function10277	= { FOLLOW_expression_in_substring_function10277_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_substring_function10285  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_substring_function10285_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_substring_function10285	= { FOLLOW_FROM_SYMBOL_in_substring_function10285_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_substring_function10287  */
static	ANTLR3_BITWORD FOLLOW_expression_in_substring_function10287_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_substring_function10287	= { FOLLOW_expression_in_substring_function10287_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_substring_function10290  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_substring_function10290_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_FOR_SYMBOL_in_substring_function10290	= { FOLLOW_FOR_SYMBOL_in_substring_function10290_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_substring_function10292  */
static	ANTLR3_BITWORD FOLLOW_expression_in_substring_function10292_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_substring_function10292	= { FOLLOW_expression_in_substring_function10292_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_substring_function10300  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_substring_function10300_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_substring_function10300	= { FOLLOW_CLOSE_PAR_SYMBOL_in_substring_function10300_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONTAINS_SYMBOL_in_geometry_function10310  */
static	ANTLR3_BITWORD FOLLOW_CONTAINS_SYMBOL_in_geometry_function10310_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CONTAINS_SYMBOL_in_geometry_function10310	= { FOLLOW_CONTAINS_SYMBOL_in_geometry_function10310_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_geometry_function10312  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_geometry_function10312_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_geometry_function10312	= { FOLLOW_OPEN_PAR_SYMBOL_in_geometry_function10312_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_geometry_function10314  */
static	ANTLR3_BITWORD FOLLOW_expression_in_geometry_function10314_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_geometry_function10314	= { FOLLOW_expression_in_geometry_function10314_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_geometry_function10316  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_geometry_function10316_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_geometry_function10316	= { FOLLOW_COMMA_SYMBOL_in_geometry_function10316_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_geometry_function10318  */
static	ANTLR3_BITWORD FOLLOW_expression_in_geometry_function10318_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_geometry_function10318	= { FOLLOW_expression_in_geometry_function10318_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_geometry_function10320  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_geometry_function10320_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_geometry_function10320	= { FOLLOW_CLOSE_PAR_SYMBOL_in_geometry_function10320_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GEOMETRYCOLLECTION_SYMBOL_in_geometry_function10325  */
static	ANTLR3_BITWORD FOLLOW_GEOMETRYCOLLECTION_SYMBOL_in_geometry_function10325_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_GEOMETRYCOLLECTION_SYMBOL_in_geometry_function10325	= { FOLLOW_GEOMETRYCOLLECTION_SYMBOL_in_geometry_function10325_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_with_parentheses_in_geometry_function10327  */
static	ANTLR3_BITWORD FOLLOW_expression_list_with_parentheses_in_geometry_function10327_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_with_parentheses_in_geometry_function10327	= { FOLLOW_expression_list_with_parentheses_in_geometry_function10327_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LINESTRING_SYMBOL_in_geometry_function10332  */
static	ANTLR3_BITWORD FOLLOW_LINESTRING_SYMBOL_in_geometry_function10332_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_LINESTRING_SYMBOL_in_geometry_function10332	= { FOLLOW_LINESTRING_SYMBOL_in_geometry_function10332_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_with_parentheses_in_geometry_function10334  */
static	ANTLR3_BITWORD FOLLOW_expression_list_with_parentheses_in_geometry_function10334_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_with_parentheses_in_geometry_function10334	= { FOLLOW_expression_list_with_parentheses_in_geometry_function10334_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULTILINESTRING_SYMBOL_in_geometry_function10339  */
static	ANTLR3_BITWORD FOLLOW_MULTILINESTRING_SYMBOL_in_geometry_function10339_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MULTILINESTRING_SYMBOL_in_geometry_function10339	= { FOLLOW_MULTILINESTRING_SYMBOL_in_geometry_function10339_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_with_parentheses_in_geometry_function10341  */
static	ANTLR3_BITWORD FOLLOW_expression_list_with_parentheses_in_geometry_function10341_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_with_parentheses_in_geometry_function10341	= { FOLLOW_expression_list_with_parentheses_in_geometry_function10341_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULTIPOINT_SYMBOL_in_geometry_function10346  */
static	ANTLR3_BITWORD FOLLOW_MULTIPOINT_SYMBOL_in_geometry_function10346_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MULTIPOINT_SYMBOL_in_geometry_function10346	= { FOLLOW_MULTIPOINT_SYMBOL_in_geometry_function10346_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_with_parentheses_in_geometry_function10348  */
static	ANTLR3_BITWORD FOLLOW_expression_list_with_parentheses_in_geometry_function10348_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_with_parentheses_in_geometry_function10348	= { FOLLOW_expression_list_with_parentheses_in_geometry_function10348_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULTIPOLYGON_SYMBOL_in_geometry_function10353  */
static	ANTLR3_BITWORD FOLLOW_MULTIPOLYGON_SYMBOL_in_geometry_function10353_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MULTIPOLYGON_SYMBOL_in_geometry_function10353	= { FOLLOW_MULTIPOLYGON_SYMBOL_in_geometry_function10353_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_with_parentheses_in_geometry_function10355  */
static	ANTLR3_BITWORD FOLLOW_expression_list_with_parentheses_in_geometry_function10355_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_with_parentheses_in_geometry_function10355	= { FOLLOW_expression_list_with_parentheses_in_geometry_function10355_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_POINT_SYMBOL_in_geometry_function10360  */
static	ANTLR3_BITWORD FOLLOW_POINT_SYMBOL_in_geometry_function10360_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_POINT_SYMBOL_in_geometry_function10360	= { FOLLOW_POINT_SYMBOL_in_geometry_function10360_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_geometry_function10362  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_geometry_function10362_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_geometry_function10362	= { FOLLOW_OPEN_PAR_SYMBOL_in_geometry_function10362_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_geometry_function10364  */
static	ANTLR3_BITWORD FOLLOW_expression_in_geometry_function10364_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_geometry_function10364	= { FOLLOW_expression_in_geometry_function10364_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_geometry_function10366  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_geometry_function10366_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_geometry_function10366	= { FOLLOW_COMMA_SYMBOL_in_geometry_function10366_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_geometry_function10368  */
static	ANTLR3_BITWORD FOLLOW_expression_in_geometry_function10368_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_geometry_function10368	= { FOLLOW_expression_in_geometry_function10368_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_geometry_function10370  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_geometry_function10370_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_geometry_function10370	= { FOLLOW_CLOSE_PAR_SYMBOL_in_geometry_function10370_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_POLYGON_SYMBOL_in_geometry_function10375  */
static	ANTLR3_BITWORD FOLLOW_POLYGON_SYMBOL_in_geometry_function10375_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_POLYGON_SYMBOL_in_geometry_function10375	= { FOLLOW_POLYGON_SYMBOL_in_geometry_function10375_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_with_parentheses_in_geometry_function10377  */
static	ANTLR3_BITWORD FOLLOW_expression_list_with_parentheses_in_geometry_function10377_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_with_parentheses_in_geometry_function10377	= { FOLLOW_expression_list_with_parentheses_in_geometry_function10377_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AVG_SYMBOL_in_aggregate_function10386  */
static	ANTLR3_BITWORD FOLLOW_AVG_SYMBOL_in_aggregate_function10386_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_AVG_SYMBOL_in_aggregate_function10386	= { FOLLOW_AVG_SYMBOL_in_aggregate_function10386_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10388  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10388_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E54BCA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10388	= { FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10388_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DISTINCT_SYMBOL_in_aggregate_function10390  */
static	ANTLR3_BITWORD FOLLOW_DISTINCT_SYMBOL_in_aggregate_function10390_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_DISTINCT_SYMBOL_in_aggregate_function10390	= { FOLLOW_DISTINCT_SYMBOL_in_aggregate_function10390_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_aggregate_function10393  */
static	ANTLR3_BITWORD FOLLOW_expression_in_aggregate_function10393_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_aggregate_function10393	= { FOLLOW_expression_in_aggregate_function10393_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10395  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10395_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10395	= { FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10395_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BIT_AND_SYMBOL_in_aggregate_function10400  */
static	ANTLR3_BITWORD FOLLOW_BIT_AND_SYMBOL_in_aggregate_function10400_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BIT_AND_SYMBOL_in_aggregate_function10400	= { FOLLOW_BIT_AND_SYMBOL_in_aggregate_function10400_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10402  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10402_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10402	= { FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10402_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_aggregate_function10404  */
static	ANTLR3_BITWORD FOLLOW_expression_in_aggregate_function10404_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_aggregate_function10404	= { FOLLOW_expression_in_aggregate_function10404_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10406  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10406_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10406	= { FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10406_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BIT_OR_SYMBOL_in_aggregate_function10411  */
static	ANTLR3_BITWORD FOLLOW_BIT_OR_SYMBOL_in_aggregate_function10411_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BIT_OR_SYMBOL_in_aggregate_function10411	= { FOLLOW_BIT_OR_SYMBOL_in_aggregate_function10411_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10413  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10413_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10413	= { FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10413_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_aggregate_function10415  */
static	ANTLR3_BITWORD FOLLOW_expression_in_aggregate_function10415_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_aggregate_function10415	= { FOLLOW_expression_in_aggregate_function10415_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10417  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10417_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10417	= { FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10417_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BIT_XOR_SYMBOL_in_aggregate_function10422  */
static	ANTLR3_BITWORD FOLLOW_BIT_XOR_SYMBOL_in_aggregate_function10422_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BIT_XOR_SYMBOL_in_aggregate_function10422	= { FOLLOW_BIT_XOR_SYMBOL_in_aggregate_function10422_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10424  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10424_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10424	= { FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10424_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_aggregate_function10426  */
static	ANTLR3_BITWORD FOLLOW_expression_in_aggregate_function10426_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_aggregate_function10426	= { FOLLOW_expression_in_aggregate_function10426_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10428  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10428_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10428	= { FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10428_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_count_function_in_aggregate_function10433  */
static	ANTLR3_BITWORD FOLLOW_count_function_in_aggregate_function10433_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_count_function_in_aggregate_function10433	= { FOLLOW_count_function_in_aggregate_function10433_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MIN_SYMBOL_in_aggregate_function10438  */
static	ANTLR3_BITWORD FOLLOW_MIN_SYMBOL_in_aggregate_function10438_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MIN_SYMBOL_in_aggregate_function10438	= { FOLLOW_MIN_SYMBOL_in_aggregate_function10438_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10440  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10440_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E54BCA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10440	= { FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10440_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DISTINCT_SYMBOL_in_aggregate_function10442  */
static	ANTLR3_BITWORD FOLLOW_DISTINCT_SYMBOL_in_aggregate_function10442_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_DISTINCT_SYMBOL_in_aggregate_function10442	= { FOLLOW_DISTINCT_SYMBOL_in_aggregate_function10442_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_aggregate_function10445  */
static	ANTLR3_BITWORD FOLLOW_expression_in_aggregate_function10445_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_aggregate_function10445	= { FOLLOW_expression_in_aggregate_function10445_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10447  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10447_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10447	= { FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10447_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAX_SYMBOL_in_aggregate_function10452  */
static	ANTLR3_BITWORD FOLLOW_MAX_SYMBOL_in_aggregate_function10452_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MAX_SYMBOL_in_aggregate_function10452	= { FOLLOW_MAX_SYMBOL_in_aggregate_function10452_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10454  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10454_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E54BCA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10454	= { FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10454_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DISTINCT_SYMBOL_in_aggregate_function10456  */
static	ANTLR3_BITWORD FOLLOW_DISTINCT_SYMBOL_in_aggregate_function10456_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_DISTINCT_SYMBOL_in_aggregate_function10456	= { FOLLOW_DISTINCT_SYMBOL_in_aggregate_function10456_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_aggregate_function10459  */
static	ANTLR3_BITWORD FOLLOW_expression_in_aggregate_function10459_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_aggregate_function10459	= { FOLLOW_expression_in_aggregate_function10459_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10461  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10461_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10461	= { FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10461_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STD_SYMBOL_in_aggregate_function10466  */
static	ANTLR3_BITWORD FOLLOW_STD_SYMBOL_in_aggregate_function10466_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_STD_SYMBOL_in_aggregate_function10466	= { FOLLOW_STD_SYMBOL_in_aggregate_function10466_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10468  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10468_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10468	= { FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10468_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_aggregate_function10470  */
static	ANTLR3_BITWORD FOLLOW_expression_in_aggregate_function10470_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_aggregate_function10470	= { FOLLOW_expression_in_aggregate_function10470_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10472  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10472_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10472	= { FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10472_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VARIANCE_SYMBOL_in_aggregate_function10477  */
static	ANTLR3_BITWORD FOLLOW_VARIANCE_SYMBOL_in_aggregate_function10477_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_VARIANCE_SYMBOL_in_aggregate_function10477	= { FOLLOW_VARIANCE_SYMBOL_in_aggregate_function10477_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10479  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10479_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10479	= { FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10479_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_aggregate_function10481  */
static	ANTLR3_BITWORD FOLLOW_expression_in_aggregate_function10481_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_aggregate_function10481	= { FOLLOW_expression_in_aggregate_function10481_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10483  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10483_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10483	= { FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10483_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STDDEV_SAMP_SYMBOL_in_aggregate_function10488  */
static	ANTLR3_BITWORD FOLLOW_STDDEV_SAMP_SYMBOL_in_aggregate_function10488_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_STDDEV_SAMP_SYMBOL_in_aggregate_function10488	= { FOLLOW_STDDEV_SAMP_SYMBOL_in_aggregate_function10488_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10490  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10490_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10490	= { FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10490_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_aggregate_function10492  */
static	ANTLR3_BITWORD FOLLOW_expression_in_aggregate_function10492_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_aggregate_function10492	= { FOLLOW_expression_in_aggregate_function10492_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10494  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10494_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10494	= { FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10494_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VAR_SAMP_SYMBOL_in_aggregate_function10499  */
static	ANTLR3_BITWORD FOLLOW_VAR_SAMP_SYMBOL_in_aggregate_function10499_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_VAR_SAMP_SYMBOL_in_aggregate_function10499	= { FOLLOW_VAR_SAMP_SYMBOL_in_aggregate_function10499_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10501  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10501_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10501	= { FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10501_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_aggregate_function10503  */
static	ANTLR3_BITWORD FOLLOW_expression_in_aggregate_function10503_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_aggregate_function10503	= { FOLLOW_expression_in_aggregate_function10503_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10505  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10505_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10505	= { FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10505_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SUM_SYMBOL_in_aggregate_function10510  */
static	ANTLR3_BITWORD FOLLOW_SUM_SYMBOL_in_aggregate_function10510_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SUM_SYMBOL_in_aggregate_function10510	= { FOLLOW_SUM_SYMBOL_in_aggregate_function10510_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10512  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10512_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E54BCA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10512	= { FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10512_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DISTINCT_SYMBOL_in_aggregate_function10514  */
static	ANTLR3_BITWORD FOLLOW_DISTINCT_SYMBOL_in_aggregate_function10514_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_DISTINCT_SYMBOL_in_aggregate_function10514	= { FOLLOW_DISTINCT_SYMBOL_in_aggregate_function10514_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_aggregate_function10517  */
static	ANTLR3_BITWORD FOLLOW_expression_in_aggregate_function10517_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_aggregate_function10517	= { FOLLOW_expression_in_aggregate_function10517_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10519  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10519_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10519	= { FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10519_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GROUP_CONCAT_SYMBOL_in_aggregate_function10524  */
static	ANTLR3_BITWORD FOLLOW_GROUP_CONCAT_SYMBOL_in_aggregate_function10524_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_GROUP_CONCAT_SYMBOL_in_aggregate_function10524	= { FOLLOW_GROUP_CONCAT_SYMBOL_in_aggregate_function10524_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10526  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10526_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E54BCA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10526	= { FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10526_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DISTINCT_SYMBOL_in_aggregate_function10528  */
static	ANTLR3_BITWORD FOLLOW_DISTINCT_SYMBOL_in_aggregate_function10528_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_DISTINCT_SYMBOL_in_aggregate_function10528	= { FOLLOW_DISTINCT_SYMBOL_in_aggregate_function10528_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_in_aggregate_function10531  */
static	ANTLR3_BITWORD FOLLOW_expression_list_in_aggregate_function10531_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_in_aggregate_function10531	= { FOLLOW_expression_list_in_aggregate_function10531_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_order_by_clause_in_aggregate_function10533  */
static	ANTLR3_BITWORD FOLLOW_order_by_clause_in_aggregate_function10533_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_order_by_clause_in_aggregate_function10533	= { FOLLOW_order_by_clause_in_aggregate_function10533_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEPARATOR_SYMBOL_in_aggregate_function10537  */
static	ANTLR3_BITWORD FOLLOW_SEPARATOR_SYMBOL_in_aggregate_function10537_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SEPARATOR_SYMBOL_in_aggregate_function10537	= { FOLLOW_SEPARATOR_SYMBOL_in_aggregate_function10537_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_aggregate_function10539  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_aggregate_function10539_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_aggregate_function10539	= { FOLLOW_string_literal_in_aggregate_function10539_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10543  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10543_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10543	= { FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10543_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COUNT_SYMBOL_in_count_function10552  */
static	ANTLR3_BITWORD FOLLOW_COUNT_SYMBOL_in_count_function10552_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COUNT_SYMBOL_in_count_function10552	= { FOLLOW_COUNT_SYMBOL_in_count_function10552_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_count_function10554  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_count_function10554_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF869F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E54BCA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7FBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_count_function10554	= { FOLLOW_OPEN_PAR_SYMBOL_in_count_function10554_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALL_SYMBOL_in_count_function10561  */
static	ANTLR3_BITWORD FOLLOW_ALL_SYMBOL_in_count_function10561_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_ALL_SYMBOL_in_count_function10561	= { FOLLOW_ALL_SYMBOL_in_count_function10561_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_OPERATOR_in_count_function10564  */
static	ANTLR3_BITWORD FOLLOW_MULT_OPERATOR_in_count_function10564_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_MULT_OPERATOR_in_count_function10564	= { FOLLOW_MULT_OPERATOR_in_count_function10564_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_count_function10566  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_count_function10566_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_count_function10566	= { FOLLOW_CLOSE_PAR_SYMBOL_in_count_function10566_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DISTINCT_SYMBOL_in_count_function10572  */
static	ANTLR3_BITWORD FOLLOW_DISTINCT_SYMBOL_in_count_function10572_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_DISTINCT_SYMBOL_in_count_function10572	= { FOLLOW_DISTINCT_SYMBOL_in_count_function10572_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_in_count_function10575  */
static	ANTLR3_BITWORD FOLLOW_expression_list_in_count_function10575_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_in_count_function10575	= { FOLLOW_expression_list_in_count_function10575_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_count_function10577  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_count_function10577_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_count_function10577	= { FOLLOW_CLOSE_PAR_SYMBOL_in_count_function10577_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_aliased_expression_in_aliased_expression_list10589  */
static	ANTLR3_BITWORD FOLLOW_aliased_expression_in_aliased_expression_list10589_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_aliased_expression_in_aliased_expression_list10589	= { FOLLOW_aliased_expression_in_aliased_expression_list10589_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_aliased_expression_list10592  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_aliased_expression_list10592_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_aliased_expression_list10592	= { FOLLOW_COMMA_SYMBOL_in_aliased_expression_list10592_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_aliased_expression_in_aliased_expression_list10594  */
static	ANTLR3_BITWORD FOLLOW_aliased_expression_in_aliased_expression_list10594_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_aliased_expression_in_aliased_expression_list10594	= { FOLLOW_aliased_expression_in_aliased_expression_list10594_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_aliased_expression10605  */
static	ANTLR3_BITWORD FOLLOW_expression_in_aliased_expression10605_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE468F62), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_aliased_expression10605	= { FOLLOW_expression_in_aliased_expression10605_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_alias_in_aliased_expression10607  */
static	ANTLR3_BITWORD FOLLOW_select_alias_in_aliased_expression10607_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_select_alias_in_aliased_expression10607	= { FOLLOW_select_alias_in_aliased_expression10607_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_variable_in_variable10628  */
static	ANTLR3_BITWORD FOLLOW_user_variable_in_variable10628_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000200002) };
static  ANTLR3_BITSET_LIST FOLLOW_user_variable_in_variable10628	= { FOLLOW_user_variable_in_variable10628_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ASSIGN_OPERATOR_in_variable10631  */
static	ANTLR3_BITWORD FOLLOW_ASSIGN_OPERATOR_in_variable10631_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_ASSIGN_OPERATOR_in_variable10631	= { FOLLOW_ASSIGN_OPERATOR_in_variable10631_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_variable10634  */
static	ANTLR3_BITWORD FOLLOW_expression_in_variable10634_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_variable10634	= { FOLLOW_expression_in_variable10634_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_system_variable_in_variable10641  */
static	ANTLR3_BITWORD FOLLOW_system_variable_in_variable10641_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_system_variable_in_variable10641	= { FOLLOW_system_variable_in_variable10641_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AT_SIGN_SYMBOL_in_user_variable10650  */
static	ANTLR3_BITWORD FOLLOW_AT_SIGN_SYMBOL_in_user_variable10650_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_AT_SIGN_SYMBOL_in_user_variable10650	= { FOLLOW_AT_SIGN_SYMBOL_in_user_variable10650_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_at_variable_identifier_in_user_variable10652  */
static	ANTLR3_BITWORD FOLLOW_at_variable_identifier_in_user_variable10652_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_at_variable_identifier_in_user_variable10652	= { FOLLOW_at_variable_identifier_in_user_variable10652_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AT_AT_SIGN_SYMBOL_in_system_variable10662  */
static	ANTLR3_BITWORD FOLLOW_AT_AT_SIGN_SYMBOL_in_system_variable10662_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2E1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_AT_AT_SIGN_SYMBOL_in_system_variable10662	= { FOLLOW_AT_AT_SIGN_SYMBOL_in_system_variable10662_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_option_type_in_system_variable10678  */
static	ANTLR3_BITWORD FOLLOW_option_type_in_system_variable10678_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000004000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_option_type_in_system_variable10678	= { FOLLOW_option_type_in_system_variable10678_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOT_SYMBOL_in_system_variable10680  */
static	ANTLR3_BITWORD FOLLOW_DOT_SYMBOL_in_system_variable10680_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2E1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_DOT_SYMBOL_in_system_variable10680	= { FOLLOW_DOT_SYMBOL_in_system_variable10680_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_variable_name_in_system_variable10684  */
static	ANTLR3_BITWORD FOLLOW_variable_name_in_system_variable10684_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_variable_name_in_system_variable10684	= { FOLLOW_variable_name_in_system_variable10684_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_variable_name10693  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_variable_name10693_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000004000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_variable_name10693	= { FOLLOW_identifier_in_variable_name10693_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOT_SYMBOL_in_variable_name10696  */
static	ANTLR3_BITWORD FOLLOW_DOT_SYMBOL_in_variable_name10696_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_DOT_SYMBOL_in_variable_name10696	= { FOLLOW_DOT_SYMBOL_in_variable_name10696_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_variable_name10698  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_variable_name10698_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_variable_name10698	= { FOLLOW_identifier_in_variable_name10698_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_variable_name10709  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_variable_name10709_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000004000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_variable_name10709	= { FOLLOW_DEFAULT_SYMBOL_in_variable_name10709_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOT_SYMBOL_in_variable_name10711  */
static	ANTLR3_BITWORD FOLLOW_DOT_SYMBOL_in_variable_name10711_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_DOT_SYMBOL_in_variable_name10711	= { FOLLOW_DOT_SYMBOL_in_variable_name10711_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_variable_name10713  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_variable_name10713_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_variable_name10713	= { FOLLOW_identifier_in_variable_name10713_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MATCH_SYMBOL_in_match_expression10722  */
static	ANTLR3_BITWORD FOLLOW_MATCH_SYMBOL_in_match_expression10722_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MATCH_SYMBOL_in_match_expression10722	= { FOLLOW_MATCH_SYMBOL_in_match_expression10722_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_match_expression10725  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_match_expression10725_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_match_expression10725	= { FOLLOW_OPEN_PAR_SYMBOL_in_match_expression10725_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_name_list_in_match_expression10727  */
static	ANTLR3_BITWORD FOLLOW_field_name_list_in_match_expression10727_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_field_name_list_in_match_expression10727	= { FOLLOW_field_name_list_in_match_expression10727_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_match_expression10729  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_match_expression10729_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000200) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_match_expression10729	= { FOLLOW_CLOSE_PAR_SYMBOL_in_match_expression10729_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AGAINST_SYMBOL_in_match_expression10731  */
static	ANTLR3_BITWORD FOLLOW_AGAINST_SYMBOL_in_match_expression10731_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_AGAINST_SYMBOL_in_match_expression10731	= { FOLLOW_AGAINST_SYMBOL_in_match_expression10731_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_match_expression10733  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_match_expression10733_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35C7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_match_expression10733	= { FOLLOW_OPEN_PAR_SYMBOL_in_match_expression10733_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_bitwise_or_expression_in_match_expression10735  */
static	ANTLR3_BITWORD FOLLOW_bitwise_or_expression_in_match_expression10735_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000100000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_bitwise_or_expression_in_match_expression10735	= { FOLLOW_bitwise_or_expression_in_match_expression10735_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IN_SYMBOL_in_match_expression10744  */
static	ANTLR3_BITWORD FOLLOW_IN_SYMBOL_in_match_expression10744_bits[]	= { ANTLR3_UINT64_LIT(0x0040000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_IN_SYMBOL_in_match_expression10744	= { FOLLOW_IN_SYMBOL_in_match_expression10744_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BOOLEAN_SYMBOL_in_match_expression10746  */
static	ANTLR3_BITWORD FOLLOW_BOOLEAN_SYMBOL_in_match_expression10746_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_BOOLEAN_SYMBOL_in_match_expression10746	= { FOLLOW_BOOLEAN_SYMBOL_in_match_expression10746_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MODE_SYMBOL_in_match_expression10748  */
static	ANTLR3_BITWORD FOLLOW_MODE_SYMBOL_in_match_expression10748_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_MODE_SYMBOL_in_match_expression10748	= { FOLLOW_MODE_SYMBOL_in_match_expression10748_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IN_SYMBOL_in_match_expression10756  */
static	ANTLR3_BITWORD FOLLOW_IN_SYMBOL_in_match_expression10756_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000800000) };
static  ANTLR3_BITSET_LIST FOLLOW_IN_SYMBOL_in_match_expression10756	= { FOLLOW_IN_SYMBOL_in_match_expression10756_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NATURAL_SYMBOL_in_match_expression10758  */
static	ANTLR3_BITWORD FOLLOW_NATURAL_SYMBOL_in_match_expression10758_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0001000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_NATURAL_SYMBOL_in_match_expression10758	= { FOLLOW_NATURAL_SYMBOL_in_match_expression10758_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LANGUAGE_SYMBOL_in_match_expression10760  */
static	ANTLR3_BITWORD FOLLOW_LANGUAGE_SYMBOL_in_match_expression10760_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_LANGUAGE_SYMBOL_in_match_expression10760	= { FOLLOW_LANGUAGE_SYMBOL_in_match_expression10760_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MODE_SYMBOL_in_match_expression10762  */
static	ANTLR3_BITWORD FOLLOW_MODE_SYMBOL_in_match_expression10762_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_MODE_SYMBOL_in_match_expression10762	= { FOLLOW_MODE_SYMBOL_in_match_expression10762_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_match_expression10767  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_match_expression10767_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_WITH_SYMBOL_in_match_expression10767	= { FOLLOW_WITH_SYMBOL_in_match_expression10767_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_QUERY_SYMBOL_in_match_expression10769  */
static	ANTLR3_BITWORD FOLLOW_QUERY_SYMBOL_in_match_expression10769_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000100) };
static  ANTLR3_BITSET_LIST FOLLOW_QUERY_SYMBOL_in_match_expression10769	= { FOLLOW_QUERY_SYMBOL_in_match_expression10769_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXPANSION_SYMBOL_in_match_expression10771  */
static	ANTLR3_BITWORD FOLLOW_EXPANSION_SYMBOL_in_match_expression10771_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_EXPANSION_SYMBOL_in_match_expression10771	= { FOLLOW_EXPANSION_SYMBOL_in_match_expression10771_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_match_expression10781  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_match_expression10781_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_match_expression10781	= { FOLLOW_CLOSE_PAR_SYMBOL_in_match_expression10781_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CASE_SYMBOL_in_case_expression10791  */
static	ANTLR3_BITWORD FOLLOW_CASE_SYMBOL_in_case_expression10791_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D307E0) };
static  ANTLR3_BITSET_LIST FOLLOW_CASE_SYMBOL_in_case_expression10791	= { FOLLOW_CASE_SYMBOL_in_case_expression10791_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_case_expression10793  */
static	ANTLR3_BITWORD FOLLOW_expression_in_case_expression10793_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000400) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_case_expression10793	= { FOLLOW_expression_in_case_expression10793_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_when_expression_in_case_expression10797  */
static	ANTLR3_BITWORD FOLLOW_when_expression_in_case_expression10797_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000100) };
static  ANTLR3_BITSET_LIST FOLLOW_when_expression_in_case_expression10797	= { FOLLOW_when_expression_in_case_expression10797_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_then_expression_in_case_expression10799  */
static	ANTLR3_BITWORD FOLLOW_then_expression_in_case_expression10799_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0084000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000400) };
static  ANTLR3_BITSET_LIST FOLLOW_then_expression_in_case_expression10799	= { FOLLOW_then_expression_in_case_expression10799_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_else_expression_in_case_expression10803  */
static	ANTLR3_BITWORD FOLLOW_else_expression_in_case_expression10803_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_else_expression_in_case_expression10803	= { FOLLOW_else_expression_in_case_expression10803_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_END_SYMBOL_in_case_expression10806  */
static	ANTLR3_BITWORD FOLLOW_END_SYMBOL_in_case_expression10806_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_END_SYMBOL_in_case_expression10806	= { FOLLOW_END_SYMBOL_in_case_expression10806_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WHEN_SYMBOL_in_when_expression10815  */
static	ANTLR3_BITWORD FOLLOW_WHEN_SYMBOL_in_when_expression10815_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_WHEN_SYMBOL_in_when_expression10815	= { FOLLOW_WHEN_SYMBOL_in_when_expression10815_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_when_expression10818  */
static	ANTLR3_BITWORD FOLLOW_expression_in_when_expression10818_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_when_expression10818	= { FOLLOW_expression_in_when_expression10818_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_THEN_SYMBOL_in_then_expression10827  */
static	ANTLR3_BITWORD FOLLOW_THEN_SYMBOL_in_then_expression10827_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_THEN_SYMBOL_in_then_expression10827	= { FOLLOW_THEN_SYMBOL_in_then_expression10827_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_then_expression10830  */
static	ANTLR3_BITWORD FOLLOW_expression_in_then_expression10830_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_then_expression10830	= { FOLLOW_expression_in_then_expression10830_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ELSE_SYMBOL_in_else_expression10839  */
static	ANTLR3_BITWORD FOLLOW_ELSE_SYMBOL_in_else_expression10839_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_ELSE_SYMBOL_in_else_expression10839	= { FOLLOW_ELSE_SYMBOL_in_else_expression10839_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_else_expression10842  */
static	ANTLR3_BITWORD FOLLOW_expression_in_else_expression10842_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_else_expression10842	= { FOLLOW_expression_in_else_expression10842_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_cast_expression10851  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_cast_expression10851_bits[]	= { ANTLR3_UINT64_LIT(0x56E786CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8841CA37C), ANTLR3_UINT64_LIT(0x4F8FEEFFFFD022A2), ANTLR3_UINT64_LIT(0x263D35C3CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9EFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_cast_expression10851	= { FOLLOW_BINARY_SYMBOL_in_cast_expression10851_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_primary_in_cast_expression10853  */
static	ANTLR3_BITWORD FOLLOW_primary_in_cast_expression10853_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_primary_in_cast_expression10853	= { FOLLOW_primary_in_cast_expression10853_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CAST_SYMBOL_in_cast_expression10858  */
static	ANTLR3_BITWORD FOLLOW_CAST_SYMBOL_in_cast_expression10858_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CAST_SYMBOL_in_cast_expression10858	= { FOLLOW_CAST_SYMBOL_in_cast_expression10858_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_cast_expression10860  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_cast_expression10860_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_cast_expression10860	= { FOLLOW_OPEN_PAR_SYMBOL_in_cast_expression10860_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_cast_expression10862  */
static	ANTLR3_BITWORD FOLLOW_expression_in_cast_expression10862_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000400000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_cast_expression10862	= { FOLLOW_expression_in_cast_expression10862_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AS_SYMBOL_in_cast_expression10864  */
static	ANTLR3_BITWORD FOLLOW_AS_SYMBOL_in_cast_expression10864_bits[]	= { ANTLR3_UINT64_LIT(0x0000004000000000), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000000004021), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0040000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000020000001000) };
static  ANTLR3_BITSET_LIST FOLLOW_AS_SYMBOL_in_cast_expression10864	= { FOLLOW_AS_SYMBOL_in_cast_expression10864_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_cast_type_in_cast_expression10866  */
static	ANTLR3_BITWORD FOLLOW_cast_type_in_cast_expression10866_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_cast_type_in_cast_expression10866	= { FOLLOW_cast_type_in_cast_expression10866_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_cast_expression10868  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_cast_expression10868_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_cast_expression10868	= { FOLLOW_CLOSE_PAR_SYMBOL_in_cast_expression10868_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONVERT_SYMBOL_in_cast_expression10873  */
static	ANTLR3_BITWORD FOLLOW_CONVERT_SYMBOL_in_cast_expression10873_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CONVERT_SYMBOL_in_cast_expression10873	= { FOLLOW_CONVERT_SYMBOL_in_cast_expression10873_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_cast_expression10875  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_cast_expression10875_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_cast_expression10875	= { FOLLOW_OPEN_PAR_SYMBOL_in_cast_expression10875_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_cast_expression10877  */
static	ANTLR3_BITWORD FOLLOW_expression_in_cast_expression10877_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_cast_expression10877	= { FOLLOW_expression_in_cast_expression10877_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_cast_expression10880  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_cast_expression10880_bits[]	= { ANTLR3_UINT64_LIT(0x0000004000000000), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000000004021), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0040000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000020000001000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_cast_expression10880	= { FOLLOW_COMMA_SYMBOL_in_cast_expression10880_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_cast_type_in_cast_expression10882  */
static	ANTLR3_BITWORD FOLLOW_cast_type_in_cast_expression10882_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_cast_type_in_cast_expression10882	= { FOLLOW_cast_type_in_cast_expression10882_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USING_SYMBOL_in_cast_expression10886  */
static	ANTLR3_BITWORD FOLLOW_USING_SYMBOL_in_cast_expression10886_bits[]	= { ANTLR3_UINT64_LIT(0x56E200CAFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_USING_SYMBOL_in_cast_expression10886	= { FOLLOW_USING_SYMBOL_in_cast_expression10886_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_name_in_cast_expression10888  */
static	ANTLR3_BITWORD FOLLOW_charset_name_in_cast_expression10888_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_name_in_cast_expression10888	= { FOLLOW_charset_name_in_cast_expression10888_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_cast_expression10891  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_cast_expression10891_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_cast_expression10891	= { FOLLOW_CLOSE_PAR_SYMBOL_in_cast_expression10891_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_cast_type10900  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_cast_type10900_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_cast_type10900	= { FOLLOW_BINARY_SYMBOL_in_cast_type10900_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_cast_type10902  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_cast_type10902_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_cast_type10902	= { FOLLOW_field_length_in_cast_type10902_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHAR_SYMBOL_in_cast_type10908  */
static	ANTLR3_BITWORD FOLLOW_CHAR_SYMBOL_in_cast_type10908_bits[]	= { ANTLR3_UINT64_LIT(0x0400004000040002), ANTLR3_UINT64_LIT(0x0000000000000180), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CHAR_SYMBOL_in_cast_type10908	= { FOLLOW_CHAR_SYMBOL_in_cast_type10908_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_cast_type10910  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_cast_type10910_bits[]	= { ANTLR3_UINT64_LIT(0x0400004000040002), ANTLR3_UINT64_LIT(0x0000000000000180), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_cast_type10910	= { FOLLOW_field_length_in_cast_type10910_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_encoding_in_cast_type10913  */
static	ANTLR3_BITWORD FOLLOW_encoding_in_cast_type10913_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_encoding_in_cast_type10913	= { FOLLOW_encoding_in_cast_type10913_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NCHAR_SYMBOL_in_cast_type10919  */
static	ANTLR3_BITWORD FOLLOW_NCHAR_SYMBOL_in_cast_type10919_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_NCHAR_SYMBOL_in_cast_type10919	= { FOLLOW_NCHAR_SYMBOL_in_cast_type10919_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_cast_type10921  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_cast_type10921_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_cast_type10921	= { FOLLOW_field_length_in_cast_type10921_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SIGNED_SYMBOL_in_cast_type10927  */
static	ANTLR3_BITWORD FOLLOW_SIGNED_SYMBOL_in_cast_type10927_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SIGNED_SYMBOL_in_cast_type10927	= { FOLLOW_SIGNED_SYMBOL_in_cast_type10927_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_SYMBOL_in_cast_type10929  */
static	ANTLR3_BITWORD FOLLOW_INT_SYMBOL_in_cast_type10929_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INT_SYMBOL_in_cast_type10929	= { FOLLOW_INT_SYMBOL_in_cast_type10929_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNSIGNED_SYMBOL_in_cast_type10935  */
static	ANTLR3_BITWORD FOLLOW_UNSIGNED_SYMBOL_in_cast_type10935_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000) };
static  ANTLR3_BITSET_LIST FOLLOW_UNSIGNED_SYMBOL_in_cast_type10935	= { FOLLOW_UNSIGNED_SYMBOL_in_cast_type10935_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_SYMBOL_in_cast_type10937  */
static	ANTLR3_BITWORD FOLLOW_INT_SYMBOL_in_cast_type10937_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INT_SYMBOL_in_cast_type10937	= { FOLLOW_INT_SYMBOL_in_cast_type10937_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATE_SYMBOL_in_cast_type10943  */
static	ANTLR3_BITWORD FOLLOW_DATE_SYMBOL_in_cast_type10943_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DATE_SYMBOL_in_cast_type10943	= { FOLLOW_DATE_SYMBOL_in_cast_type10943_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TIME_SYMBOL_in_cast_type10948  */
static	ANTLR3_BITWORD FOLLOW_TIME_SYMBOL_in_cast_type10948_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_TIME_SYMBOL_in_cast_type10948	= { FOLLOW_TIME_SYMBOL_in_cast_type10948_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_type_datetime_precision_in_cast_type10950  */
static	ANTLR3_BITWORD FOLLOW_type_datetime_precision_in_cast_type10950_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_type_datetime_precision_in_cast_type10950	= { FOLLOW_type_datetime_precision_in_cast_type10950_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATETIME_SYMBOL_in_cast_type10956  */
static	ANTLR3_BITWORD FOLLOW_DATETIME_SYMBOL_in_cast_type10956_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DATETIME_SYMBOL_in_cast_type10956	= { FOLLOW_DATETIME_SYMBOL_in_cast_type10956_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_type_datetime_precision_in_cast_type10958  */
static	ANTLR3_BITWORD FOLLOW_type_datetime_precision_in_cast_type10958_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_type_datetime_precision_in_cast_type10958	= { FOLLOW_type_datetime_precision_in_cast_type10958_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DECIMAL_SYMBOL_in_cast_type10964  */
static	ANTLR3_BITWORD FOLLOW_DECIMAL_SYMBOL_in_cast_type10964_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DECIMAL_SYMBOL_in_cast_type10964	= { FOLLOW_DECIMAL_SYMBOL_in_cast_type10964_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_float_options_in_cast_type10966  */
static	ANTLR3_BITWORD FOLLOW_float_options_in_cast_type10966_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_float_options_in_cast_type10966	= { FOLLOW_float_options_in_cast_type10966_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ASCII_SYMBOL_in_encoding10976  */
static	ANTLR3_BITWORD FOLLOW_ASCII_SYMBOL_in_encoding10976_bits[]	= { ANTLR3_UINT64_LIT(0x0000004000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ASCII_SYMBOL_in_encoding10976	= { FOLLOW_ASCII_SYMBOL_in_encoding10976_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_encoding10978  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_encoding10978_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_encoding10978	= { FOLLOW_BINARY_SYMBOL_in_encoding10978_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_encoding10984  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_encoding10984_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000040002), ANTLR3_UINT64_LIT(0x0000000000000180), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_encoding10984	= { FOLLOW_BINARY_SYMBOL_in_encoding10984_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ASCII_SYMBOL_in_encoding10987  */
static	ANTLR3_BITWORD FOLLOW_ASCII_SYMBOL_in_encoding10987_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ASCII_SYMBOL_in_encoding10987	= { FOLLOW_ASCII_SYMBOL_in_encoding10987_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNICODE_SYMBOL_in_encoding10991  */
static	ANTLR3_BITWORD FOLLOW_UNICODE_SYMBOL_in_encoding10991_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_UNICODE_SYMBOL_in_encoding10991	= { FOLLOW_UNICODE_SYMBOL_in_encoding10991_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_in_encoding10995  */
static	ANTLR3_BITWORD FOLLOW_charset_in_encoding10995_bits[]	= { ANTLR3_UINT64_LIT(0x56E200CAFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_in_encoding10995	= { FOLLOW_charset_in_encoding10995_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_name_in_encoding10997  */
static	ANTLR3_BITWORD FOLLOW_charset_name_in_encoding10997_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_name_in_encoding10997	= { FOLLOW_charset_name_in_encoding10997_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNICODE_SYMBOL_in_encoding11004  */
static	ANTLR3_BITWORD FOLLOW_UNICODE_SYMBOL_in_encoding11004_bits[]	= { ANTLR3_UINT64_LIT(0x0000004000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_UNICODE_SYMBOL_in_encoding11004	= { FOLLOW_UNICODE_SYMBOL_in_encoding11004_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_encoding11006  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_encoding11006_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_encoding11006	= { FOLLOW_BINARY_SYMBOL_in_encoding11006_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BYTE_SYMBOL_in_encoding11012  */
static	ANTLR3_BITWORD FOLLOW_BYTE_SYMBOL_in_encoding11012_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BYTE_SYMBOL_in_encoding11012	= { FOLLOW_BYTE_SYMBOL_in_encoding11012_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_in_encoding11017  */
static	ANTLR3_BITWORD FOLLOW_charset_in_encoding11017_bits[]	= { ANTLR3_UINT64_LIT(0x56E200CAFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_in_encoding11017	= { FOLLOW_charset_in_encoding11017_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_name_in_encoding11019  */
static	ANTLR3_BITWORD FOLLOW_charset_name_in_encoding11019_bits[]	= { ANTLR3_UINT64_LIT(0x0000004000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_name_in_encoding11019	= { FOLLOW_charset_name_in_encoding11019_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_encoding11021  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_encoding11021_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_encoding11021	= { FOLLOW_BINARY_SYMBOL_in_encoding11021_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHAR_SYMBOL_in_charset11031  */
static	ANTLR3_BITWORD FOLLOW_CHAR_SYMBOL_in_charset11031_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CHAR_SYMBOL_in_charset11031	= { FOLLOW_CHAR_SYMBOL_in_charset11031_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SET_SYMBOL_in_charset11033  */
static	ANTLR3_BITWORD FOLLOW_SET_SYMBOL_in_charset11033_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SET_SYMBOL_in_charset11033	= { FOLLOW_SET_SYMBOL_in_charset11033_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHARSET_SYMBOL_in_charset11037  */
static	ANTLR3_BITWORD FOLLOW_CHARSET_SYMBOL_in_charset11037_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CHARSET_SYMBOL_in_charset11037	= { FOLLOW_CHARSET_SYMBOL_in_charset11037_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_interval11118  */
static	ANTLR3_BITWORD FOLLOW_expression_in_interval11118_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000F80), ANTLR3_UINT64_LIT(0x8000000800000000), ANTLR3_UINT64_LIT(0x0000000000000007), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0000000000001007), ANTLR3_UINT64_LIT(0x0000008000000000), ANTLR3_UINT64_LIT(0x0000000300000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000006000100) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_interval11118	= { FOLLOW_expression_in_interval11118_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_interval_unit_in_interval11120  */
static	ANTLR3_BITWORD FOLLOW_interval_unit_in_interval11120_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_interval_unit_in_interval11120	= { FOLLOW_interval_unit_in_interval11120_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_interval_timestamp_unit_in_interval_unit11130  */
static	ANTLR3_BITWORD FOLLOW_interval_timestamp_unit_in_interval_unit11130_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_interval_timestamp_unit_in_interval_unit11130	= { FOLLOW_interval_timestamp_unit_in_interval_unit11130_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SECOND_MICROSECOND_SYMBOL_in_interval_unit11135  */
static	ANTLR3_BITWORD FOLLOW_SECOND_MICROSECOND_SYMBOL_in_interval_unit11135_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SECOND_MICROSECOND_SYMBOL_in_interval_unit11135	= { FOLLOW_SECOND_MICROSECOND_SYMBOL_in_interval_unit11135_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MINUTE_MICROSECOND_SYMBOL_in_interval_unit11140  */
static	ANTLR3_BITWORD FOLLOW_MINUTE_MICROSECOND_SYMBOL_in_interval_unit11140_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MINUTE_MICROSECOND_SYMBOL_in_interval_unit11140	= { FOLLOW_MINUTE_MICROSECOND_SYMBOL_in_interval_unit11140_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MINUTE_SECOND_SYMBOL_in_interval_unit11145  */
static	ANTLR3_BITWORD FOLLOW_MINUTE_SECOND_SYMBOL_in_interval_unit11145_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MINUTE_SECOND_SYMBOL_in_interval_unit11145	= { FOLLOW_MINUTE_SECOND_SYMBOL_in_interval_unit11145_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HOUR_MICROSECOND_SYMBOL_in_interval_unit11150  */
static	ANTLR3_BITWORD FOLLOW_HOUR_MICROSECOND_SYMBOL_in_interval_unit11150_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_HOUR_MICROSECOND_SYMBOL_in_interval_unit11150	= { FOLLOW_HOUR_MICROSECOND_SYMBOL_in_interval_unit11150_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HOUR_SECOND_SYMBOL_in_interval_unit11155  */
static	ANTLR3_BITWORD FOLLOW_HOUR_SECOND_SYMBOL_in_interval_unit11155_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_HOUR_SECOND_SYMBOL_in_interval_unit11155	= { FOLLOW_HOUR_SECOND_SYMBOL_in_interval_unit11155_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HOUR_MINUTE_SYMBOL_in_interval_unit11160  */
static	ANTLR3_BITWORD FOLLOW_HOUR_MINUTE_SYMBOL_in_interval_unit11160_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_HOUR_MINUTE_SYMBOL_in_interval_unit11160	= { FOLLOW_HOUR_MINUTE_SYMBOL_in_interval_unit11160_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DAY_MICROSECOND_SYMBOL_in_interval_unit11165  */
static	ANTLR3_BITWORD FOLLOW_DAY_MICROSECOND_SYMBOL_in_interval_unit11165_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DAY_MICROSECOND_SYMBOL_in_interval_unit11165	= { FOLLOW_DAY_MICROSECOND_SYMBOL_in_interval_unit11165_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DAY_SECOND_SYMBOL_in_interval_unit11170  */
static	ANTLR3_BITWORD FOLLOW_DAY_SECOND_SYMBOL_in_interval_unit11170_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DAY_SECOND_SYMBOL_in_interval_unit11170	= { FOLLOW_DAY_SECOND_SYMBOL_in_interval_unit11170_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DAY_MINUTE_SYMBOL_in_interval_unit11175  */
static	ANTLR3_BITWORD FOLLOW_DAY_MINUTE_SYMBOL_in_interval_unit11175_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DAY_MINUTE_SYMBOL_in_interval_unit11175	= { FOLLOW_DAY_MINUTE_SYMBOL_in_interval_unit11175_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DAY_HOUR_SYMBOL_in_interval_unit11180  */
static	ANTLR3_BITWORD FOLLOW_DAY_HOUR_SYMBOL_in_interval_unit11180_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DAY_HOUR_SYMBOL_in_interval_unit11180	= { FOLLOW_DAY_HOUR_SYMBOL_in_interval_unit11180_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_YEAR_MONTH_SYMBOL_in_interval_unit11185  */
static	ANTLR3_BITWORD FOLLOW_YEAR_MONTH_SYMBOL_in_interval_unit11185_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_YEAR_MONTH_SYMBOL_in_interval_unit11185	= { FOLLOW_YEAR_MONTH_SYMBOL_in_interval_unit11185_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MICROSECOND_SYMBOL_in_interval_timestamp_unit11195  */
static	ANTLR3_BITWORD FOLLOW_MICROSECOND_SYMBOL_in_interval_timestamp_unit11195_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MICROSECOND_SYMBOL_in_interval_timestamp_unit11195	= { FOLLOW_MICROSECOND_SYMBOL_in_interval_timestamp_unit11195_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FRAC_SECOND_SYMBOL_in_interval_timestamp_unit11204  */
static	ANTLR3_BITWORD FOLLOW_FRAC_SECOND_SYMBOL_in_interval_timestamp_unit11204_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_FRAC_SECOND_SYMBOL_in_interval_timestamp_unit11204	= { FOLLOW_FRAC_SECOND_SYMBOL_in_interval_timestamp_unit11204_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SECOND_SYMBOL_in_interval_timestamp_unit11209  */
static	ANTLR3_BITWORD FOLLOW_SECOND_SYMBOL_in_interval_timestamp_unit11209_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SECOND_SYMBOL_in_interval_timestamp_unit11209	= { FOLLOW_SECOND_SYMBOL_in_interval_timestamp_unit11209_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MINUTE_SYMBOL_in_interval_timestamp_unit11214  */
static	ANTLR3_BITWORD FOLLOW_MINUTE_SYMBOL_in_interval_timestamp_unit11214_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MINUTE_SYMBOL_in_interval_timestamp_unit11214	= { FOLLOW_MINUTE_SYMBOL_in_interval_timestamp_unit11214_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HOUR_SYMBOL_in_interval_timestamp_unit11219  */
static	ANTLR3_BITWORD FOLLOW_HOUR_SYMBOL_in_interval_timestamp_unit11219_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_HOUR_SYMBOL_in_interval_timestamp_unit11219	= { FOLLOW_HOUR_SYMBOL_in_interval_timestamp_unit11219_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DAY_SYMBOL_in_interval_timestamp_unit11224  */
static	ANTLR3_BITWORD FOLLOW_DAY_SYMBOL_in_interval_timestamp_unit11224_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DAY_SYMBOL_in_interval_timestamp_unit11224	= { FOLLOW_DAY_SYMBOL_in_interval_timestamp_unit11224_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WEEK_SYMBOL_in_interval_timestamp_unit11232  */
static	ANTLR3_BITWORD FOLLOW_WEEK_SYMBOL_in_interval_timestamp_unit11232_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_WEEK_SYMBOL_in_interval_timestamp_unit11232	= { FOLLOW_WEEK_SYMBOL_in_interval_timestamp_unit11232_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MONTH_SYMBOL_in_interval_timestamp_unit11237  */
static	ANTLR3_BITWORD FOLLOW_MONTH_SYMBOL_in_interval_timestamp_unit11237_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MONTH_SYMBOL_in_interval_timestamp_unit11237	= { FOLLOW_MONTH_SYMBOL_in_interval_timestamp_unit11237_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_QUARTER_SYMBOL_in_interval_timestamp_unit11242  */
static	ANTLR3_BITWORD FOLLOW_QUARTER_SYMBOL_in_interval_timestamp_unit11242_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_QUARTER_SYMBOL_in_interval_timestamp_unit11242	= { FOLLOW_QUARTER_SYMBOL_in_interval_timestamp_unit11242_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_YEAR_SYMBOL_in_interval_timestamp_unit11247  */
static	ANTLR3_BITWORD FOLLOW_YEAR_SYMBOL_in_interval_timestamp_unit11247_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_YEAR_SYMBOL_in_interval_timestamp_unit11247	= { FOLLOW_YEAR_SYMBOL_in_interval_timestamp_unit11247_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_expression_list_with_parentheses11256  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_expression_list_with_parentheses11256_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_expression_list_with_parentheses11256	= { FOLLOW_OPEN_PAR_SYMBOL_in_expression_list_with_parentheses11256_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_in_expression_list_with_parentheses11258  */
static	ANTLR3_BITWORD FOLLOW_expression_list_in_expression_list_with_parentheses11258_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_in_expression_list_with_parentheses11258	= { FOLLOW_expression_list_in_expression_list_with_parentheses11258_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_expression_list_with_parentheses11260  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_expression_list_with_parentheses11260_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_expression_list_with_parentheses11260	= { FOLLOW_CLOSE_PAR_SYMBOL_in_expression_list_with_parentheses11260_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_expression_list11281  */
static	ANTLR3_BITWORD FOLLOW_expression_in_expression_list11281_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_expression_list11281	= { FOLLOW_expression_in_expression_list11281_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_expression_list11284  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_expression_list11284_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_expression_list11284	= { FOLLOW_COMMA_SYMBOL_in_expression_list11284_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_expression_list11286  */
static	ANTLR3_BITWORD FOLLOW_expression_in_expression_list11286_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_expression_list11286	= { FOLLOW_expression_in_expression_list11286_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_expression_list_with_direction11297  */
static	ANTLR3_BITWORD FOLLOW_expression_in_expression_list_with_direction11297_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000080002), ANTLR3_UINT64_LIT(0x0000000002000000), ANTLR3_UINT64_LIT(0x0000000001000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_expression_list_with_direction11297	= { FOLLOW_expression_in_expression_list_with_direction11297_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_direction_in_expression_list_with_direction11299  */
static	ANTLR3_BITWORD FOLLOW_direction_in_expression_list_with_direction11299_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_direction_in_expression_list_with_direction11299	= { FOLLOW_direction_in_expression_list_with_direction11299_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_expression_list_with_direction11303  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_expression_list_with_direction11303_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_expression_list_with_direction11303	= { FOLLOW_COMMA_SYMBOL_in_expression_list_with_direction11303_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_expression_list_with_direction11305  */
static	ANTLR3_BITWORD FOLLOW_expression_in_expression_list_with_direction11305_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000080002), ANTLR3_UINT64_LIT(0x0000000002000000), ANTLR3_UINT64_LIT(0x0000000001000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_expression_list_with_direction11305	= { FOLLOW_expression_in_expression_list_with_direction11305_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_direction_in_expression_list_with_direction11307  */
static	ANTLR3_BITWORD FOLLOW_direction_in_expression_list_with_direction11307_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_direction_in_expression_list_with_direction11307	= { FOLLOW_direction_in_expression_list_with_direction11307_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_statement_in_compound_statement11323  */
static	ANTLR3_BITWORD FOLLOW_statement_in_compound_statement11323_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_statement_in_compound_statement11323	= { FOLLOW_statement_in_compound_statement11323_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_label_in_compound_statement11328  */
static	ANTLR3_BITWORD FOLLOW_label_in_compound_statement11328_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000040000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000008), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000) };
static  ANTLR3_BITSET_LIST FOLLOW_label_in_compound_statement11328	= { FOLLOW_label_in_compound_statement11328_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_begin_end_block_in_compound_statement11340  */
static	ANTLR3_BITWORD FOLLOW_begin_end_block_in_compound_statement11340_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_begin_end_block_in_compound_statement11340	= { FOLLOW_begin_end_block_in_compound_statement11340_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_loop_block_in_compound_statement11347  */
static	ANTLR3_BITWORD FOLLOW_loop_block_in_compound_statement11347_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_loop_block_in_compound_statement11347	= { FOLLOW_loop_block_in_compound_statement11347_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_repeat_until_block_in_compound_statement11354  */
static	ANTLR3_BITWORD FOLLOW_repeat_until_block_in_compound_statement11354_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_repeat_until_block_in_compound_statement11354	= { FOLLOW_repeat_until_block_in_compound_statement11354_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_while_do_block_in_compound_statement11361  */
static	ANTLR3_BITWORD FOLLOW_while_do_block_in_compound_statement11361_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_while_do_block_in_compound_statement11361	= { FOLLOW_while_do_block_in_compound_statement11361_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_case_statement_in_compound_statement11370  */
static	ANTLR3_BITWORD FOLLOW_case_statement_in_compound_statement11370_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_case_statement_in_compound_statement11370	= { FOLLOW_case_statement_in_compound_statement11370_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_statement_in_compound_statement11375  */
static	ANTLR3_BITWORD FOLLOW_if_statement_in_compound_statement11375_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_if_statement_in_compound_statement11375	= { FOLLOW_if_statement_in_compound_statement11375_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_iterate_statement_in_compound_statement11380  */
static	ANTLR3_BITWORD FOLLOW_iterate_statement_in_compound_statement11380_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_iterate_statement_in_compound_statement11380	= { FOLLOW_iterate_statement_in_compound_statement11380_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_leave_statement_in_compound_statement11386  */
static	ANTLR3_BITWORD FOLLOW_leave_statement_in_compound_statement11386_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_leave_statement_in_compound_statement11386	= { FOLLOW_leave_statement_in_compound_statement11386_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_return_statement_in_compound_statement11391  */
static	ANTLR3_BITWORD FOLLOW_return_statement_in_compound_statement11391_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_return_statement_in_compound_statement11391	= { FOLLOW_return_statement_in_compound_statement11391_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_cursor_open_in_compound_statement11398  */
static	ANTLR3_BITWORD FOLLOW_cursor_open_in_compound_statement11398_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_cursor_open_in_compound_statement11398	= { FOLLOW_cursor_open_in_compound_statement11398_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_cursor_fetch_in_compound_statement11403  */
static	ANTLR3_BITWORD FOLLOW_cursor_fetch_in_compound_statement11403_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_cursor_fetch_in_compound_statement11403	= { FOLLOW_cursor_fetch_in_compound_statement11403_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_cursor_close_in_compound_statement11408  */
static	ANTLR3_BITWORD FOLLOW_cursor_close_in_compound_statement11408_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_cursor_close_in_compound_statement11408	= { FOLLOW_cursor_close_in_compound_statement11408_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_get_diagnostics_in_compound_statement11419  */
static	ANTLR3_BITWORD FOLLOW_get_diagnostics_in_compound_statement11419_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_get_diagnostics_in_compound_statement11419	= { FOLLOW_get_diagnostics_in_compound_statement11419_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_signal_statement_in_compound_statement11428  */
static	ANTLR3_BITWORD FOLLOW_signal_statement_in_compound_statement11428_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_signal_statement_in_compound_statement11428	= { FOLLOW_signal_statement_in_compound_statement11428_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_resignal_statement_in_compound_statement11437  */
static	ANTLR3_BITWORD FOLLOW_resignal_statement_in_compound_statement11437_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_resignal_statement_in_compound_statement11437	= { FOLLOW_resignal_statement_in_compound_statement11437_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_in_compound_statement_list11447  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_in_compound_statement_list11447_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_compound_statement_in_compound_statement_list11447	= { FOLLOW_compound_statement_in_compound_statement_list11447_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEMICOLON_SYMBOL_in_compound_statement_list11449  */
static	ANTLR3_BITWORD FOLLOW_SEMICOLON_SYMBOL_in_compound_statement_list11449_bits[]	= { ANTLR3_UINT64_LIT(0x72E2008AFE02AF62), ANTLR3_UINT64_LIT(0xC12B29F5F0EBBE3D), ANTLR3_UINT64_LIT(0x3728ED03CBEA1821), ANTLR3_UINT64_LIT(0x2161FF4421CE692F), ANTLR3_UINT64_LIT(0x849AA2E8801CA37C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD423A6), ANTLR3_UINT64_LIT(0x0E3D2103CA7DB28C), ANTLR3_UINT64_LIT(0xBF9F13FEB86FBC60), ANTLR3_UINT64_LIT(0x28B953125FF9FBBF), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0883CD93378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D113E0) };
static  ANTLR3_BITSET_LIST FOLLOW_SEMICOLON_SYMBOL_in_compound_statement_list11449	= { FOLLOW_SEMICOLON_SYMBOL_in_compound_statement_list11449_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_label_identifier_in_label11460  */
static	ANTLR3_BITWORD FOLLOW_label_identifier_in_label11460_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_label_identifier_in_label11460	= { FOLLOW_label_identifier_in_label11460_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLON_SYMBOL_in_label11462  */
static	ANTLR3_BITWORD FOLLOW_COLON_SYMBOL_in_label11462_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_COLON_SYMBOL_in_label11462	= { FOLLOW_COLON_SYMBOL_in_label11462_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_label_identifier11471  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_label_identifier11471_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_label_identifier11471	= { FOLLOW_pure_identifier_in_label_identifier11471_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_keyword_sp_in_label_identifier11475  */
static	ANTLR3_BITWORD FOLLOW_keyword_sp_in_label_identifier11475_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_keyword_sp_in_label_identifier11475	= { FOLLOW_keyword_sp_in_label_identifier11475_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BEGIN_SYMBOL_in_begin_end_block11487  */
static	ANTLR3_BITWORD FOLLOW_BEGIN_SYMBOL_in_begin_end_block11487_bits[]	= { ANTLR3_UINT64_LIT(0x72E2008AFE02AF60), ANTLR3_UINT64_LIT(0xC12B29F5F0EBBE3D), ANTLR3_UINT64_LIT(0x3728ED03CBEA9821), ANTLR3_UINT64_LIT(0x2161FF4421CE692F), ANTLR3_UINT64_LIT(0x849AA2E8801CA37C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD423A6), ANTLR3_UINT64_LIT(0x0E3D2103CA7DB28C), ANTLR3_UINT64_LIT(0xBF9F13FEB86FBC60), ANTLR3_UINT64_LIT(0x28B953125FF9FBBF), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0883CD93378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D113E0) };
static  ANTLR3_BITSET_LIST FOLLOW_BEGIN_SYMBOL_in_begin_end_block11487	= { FOLLOW_BEGIN_SYMBOL_in_begin_end_block11487_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_declarations_in_begin_end_block11489  */
static	ANTLR3_BITWORD FOLLOW_declarations_in_begin_end_block11489_bits[]	= { ANTLR3_UINT64_LIT(0x72E2008AFE02AF60), ANTLR3_UINT64_LIT(0xC12B29F5F0EBBE3D), ANTLR3_UINT64_LIT(0x3728ED03CBEA1821), ANTLR3_UINT64_LIT(0x2161FF4421CE692F), ANTLR3_UINT64_LIT(0x849AA2E8801CA37C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD423A6), ANTLR3_UINT64_LIT(0x0E3D2103CA7DB28C), ANTLR3_UINT64_LIT(0xBF9F13FEB86FBC60), ANTLR3_UINT64_LIT(0x28B953125FF9FBBF), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0883CD93378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D113E0) };
static  ANTLR3_BITSET_LIST FOLLOW_declarations_in_begin_end_block11489	= { FOLLOW_declarations_in_begin_end_block11489_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_list_in_begin_end_block11491  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_list_in_begin_end_block11491_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_compound_statement_list_in_begin_end_block11491	= { FOLLOW_compound_statement_list_in_begin_end_block11491_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_END_SYMBOL_in_begin_end_block11493  */
static	ANTLR3_BITWORD FOLLOW_END_SYMBOL_in_begin_end_block11493_bits[]	= { ANTLR3_UINT64_LIT(0x42E200827E028F62), ANTLR3_UINT64_LIT(0xC12929F5D0EB381C), ANTLR3_UINT64_LIT(0x3728E103CA2A0821), ANTLR3_UINT64_LIT(0x2040DF4401C6690F), ANTLR3_UINT64_LIT(0x848A20E88004A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x003D2103CA7DB28C), ANTLR3_UINT64_LIT(0x2F9F13BEB06F9C60), ANTLR3_UINT64_LIT(0x2891130257F0B825), ANTLR3_UINT64_LIT(0x79E1F907A0025B83), ANTLR3_UINT64_LIT(0x0881C483370C1ED8), ANTLR3_UINT64_LIT(0x00000000049103E0) };
static  ANTLR3_BITSET_LIST FOLLOW_END_SYMBOL_in_begin_end_block11493	= { FOLLOW_END_SYMBOL_in_begin_end_block11493_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_label_identifier_in_begin_end_block11495  */
static	ANTLR3_BITWORD FOLLOW_label_identifier_in_begin_end_block11495_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_label_identifier_in_begin_end_block11495	= { FOLLOW_label_identifier_in_begin_end_block11495_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOOP_SYMBOL_in_loop_block11505  */
static	ANTLR3_BITWORD FOLLOW_LOOP_SYMBOL_in_loop_block11505_bits[]	= { ANTLR3_UINT64_LIT(0x72E2008AFE02AF60), ANTLR3_UINT64_LIT(0xC12B29F5F0EBBE3D), ANTLR3_UINT64_LIT(0x3728ED03CBEA1821), ANTLR3_UINT64_LIT(0x2161FF4421CE692F), ANTLR3_UINT64_LIT(0x849AA2E8801CA37C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD423A6), ANTLR3_UINT64_LIT(0x0E3D2103CA7DB28C), ANTLR3_UINT64_LIT(0xBF9F13FEB86FBC60), ANTLR3_UINT64_LIT(0x28B953125FF9FBBF), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0883CD93378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D113E0) };
static  ANTLR3_BITSET_LIST FOLLOW_LOOP_SYMBOL_in_loop_block11505	= { FOLLOW_LOOP_SYMBOL_in_loop_block11505_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_list_in_loop_block11507  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_list_in_loop_block11507_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_compound_statement_list_in_loop_block11507	= { FOLLOW_compound_statement_list_in_loop_block11507_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_END_SYMBOL_in_loop_block11509  */
static	ANTLR3_BITWORD FOLLOW_END_SYMBOL_in_loop_block11509_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_END_SYMBOL_in_loop_block11509	= { FOLLOW_END_SYMBOL_in_loop_block11509_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOOP_SYMBOL_in_loop_block11511  */
static	ANTLR3_BITWORD FOLLOW_LOOP_SYMBOL_in_loop_block11511_bits[]	= { ANTLR3_UINT64_LIT(0x42E200827E028F62), ANTLR3_UINT64_LIT(0xC12929F5D0EB381C), ANTLR3_UINT64_LIT(0x3728E103CA2A0821), ANTLR3_UINT64_LIT(0x2040DF4401C6690F), ANTLR3_UINT64_LIT(0x848A20E88004A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x003D2103CA7DB28C), ANTLR3_UINT64_LIT(0x2F9F13BEB06F9C60), ANTLR3_UINT64_LIT(0x2891130257F0B825), ANTLR3_UINT64_LIT(0x79E1F907A0025B83), ANTLR3_UINT64_LIT(0x0881C483370C1ED8), ANTLR3_UINT64_LIT(0x00000000049103E0) };
static  ANTLR3_BITSET_LIST FOLLOW_LOOP_SYMBOL_in_loop_block11511	= { FOLLOW_LOOP_SYMBOL_in_loop_block11511_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_label_identifier_in_loop_block11513  */
static	ANTLR3_BITWORD FOLLOW_label_identifier_in_loop_block11513_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_label_identifier_in_loop_block11513	= { FOLLOW_label_identifier_in_loop_block11513_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPEAT_SYMBOL_in_repeat_until_block11523  */
static	ANTLR3_BITWORD FOLLOW_REPEAT_SYMBOL_in_repeat_until_block11523_bits[]	= { ANTLR3_UINT64_LIT(0x72E2008AFE02AF60), ANTLR3_UINT64_LIT(0xC12B29F5F0EBBE3D), ANTLR3_UINT64_LIT(0x3728ED03CBEA1821), ANTLR3_UINT64_LIT(0x2161FF4421CE692F), ANTLR3_UINT64_LIT(0x849AA2E8801CA37C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD423A6), ANTLR3_UINT64_LIT(0x0E3D2103CA7DB28C), ANTLR3_UINT64_LIT(0xBF9F13FEB86FBC60), ANTLR3_UINT64_LIT(0x28B953125FF9FBBF), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0883CD93378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D113E0) };
static  ANTLR3_BITSET_LIST FOLLOW_REPEAT_SYMBOL_in_repeat_until_block11523	= { FOLLOW_REPEAT_SYMBOL_in_repeat_until_block11523_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_list_in_repeat_until_block11525  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_list_in_repeat_until_block11525_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000040000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_compound_statement_list_in_repeat_until_block11525	= { FOLLOW_compound_statement_list_in_repeat_until_block11525_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNTIL_SYMBOL_in_repeat_until_block11527  */
static	ANTLR3_BITWORD FOLLOW_UNTIL_SYMBOL_in_repeat_until_block11527_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_UNTIL_SYMBOL_in_repeat_until_block11527	= { FOLLOW_UNTIL_SYMBOL_in_repeat_until_block11527_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_repeat_until_block11529  */
static	ANTLR3_BITWORD FOLLOW_expression_in_repeat_until_block11529_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_repeat_until_block11529	= { FOLLOW_expression_in_repeat_until_block11529_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_END_SYMBOL_in_repeat_until_block11531  */
static	ANTLR3_BITWORD FOLLOW_END_SYMBOL_in_repeat_until_block11531_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000008) };
static  ANTLR3_BITSET_LIST FOLLOW_END_SYMBOL_in_repeat_until_block11531	= { FOLLOW_END_SYMBOL_in_repeat_until_block11531_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPEAT_SYMBOL_in_repeat_until_block11533  */
static	ANTLR3_BITWORD FOLLOW_REPEAT_SYMBOL_in_repeat_until_block11533_bits[]	= { ANTLR3_UINT64_LIT(0x42E200827E028F62), ANTLR3_UINT64_LIT(0xC12929F5D0EB381C), ANTLR3_UINT64_LIT(0x3728E103CA2A0821), ANTLR3_UINT64_LIT(0x2040DF4401C6690F), ANTLR3_UINT64_LIT(0x848A20E88004A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x003D2103CA7DB28C), ANTLR3_UINT64_LIT(0x2F9F13BEB06F9C60), ANTLR3_UINT64_LIT(0x2891130257F0B825), ANTLR3_UINT64_LIT(0x79E1F907A0025B83), ANTLR3_UINT64_LIT(0x0881C483370C1ED8), ANTLR3_UINT64_LIT(0x00000000049103E0) };
static  ANTLR3_BITSET_LIST FOLLOW_REPEAT_SYMBOL_in_repeat_until_block11533	= { FOLLOW_REPEAT_SYMBOL_in_repeat_until_block11533_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_label_identifier_in_repeat_until_block11535  */
static	ANTLR3_BITWORD FOLLOW_label_identifier_in_repeat_until_block11535_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_label_identifier_in_repeat_until_block11535	= { FOLLOW_label_identifier_in_repeat_until_block11535_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WHILE_SYMBOL_in_while_do_block11545  */
static	ANTLR3_BITWORD FOLLOW_WHILE_SYMBOL_in_while_do_block11545_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_WHILE_SYMBOL_in_while_do_block11545	= { FOLLOW_WHILE_SYMBOL_in_while_do_block11545_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_while_do_block11547  */
static	ANTLR3_BITWORD FOLLOW_expression_in_while_do_block11547_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000040000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_while_do_block11547	= { FOLLOW_expression_in_while_do_block11547_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DO_SYMBOL_in_while_do_block11549  */
static	ANTLR3_BITWORD FOLLOW_DO_SYMBOL_in_while_do_block11549_bits[]	= { ANTLR3_UINT64_LIT(0x72E2008AFE02AF60), ANTLR3_UINT64_LIT(0xC12B29F5F0EBBE3D), ANTLR3_UINT64_LIT(0x3728ED03CBEA1821), ANTLR3_UINT64_LIT(0x2161FF4421CE692F), ANTLR3_UINT64_LIT(0x849AA2E8801CA37C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD423A6), ANTLR3_UINT64_LIT(0x0E3D2103CA7DB28C), ANTLR3_UINT64_LIT(0xBF9F13FEB86FBC60), ANTLR3_UINT64_LIT(0x28B953125FF9FBBF), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0883CD93378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D113E0) };
static  ANTLR3_BITSET_LIST FOLLOW_DO_SYMBOL_in_while_do_block11549	= { FOLLOW_DO_SYMBOL_in_while_do_block11549_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_list_in_while_do_block11551  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_list_in_while_do_block11551_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_compound_statement_list_in_while_do_block11551	= { FOLLOW_compound_statement_list_in_while_do_block11551_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_END_SYMBOL_in_while_do_block11553  */
static	ANTLR3_BITWORD FOLLOW_END_SYMBOL_in_while_do_block11553_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000) };
static  ANTLR3_BITSET_LIST FOLLOW_END_SYMBOL_in_while_do_block11553	= { FOLLOW_END_SYMBOL_in_while_do_block11553_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WHILE_SYMBOL_in_while_do_block11555  */
static	ANTLR3_BITWORD FOLLOW_WHILE_SYMBOL_in_while_do_block11555_bits[]	= { ANTLR3_UINT64_LIT(0x42E200827E028F62), ANTLR3_UINT64_LIT(0xC12929F5D0EB381C), ANTLR3_UINT64_LIT(0x3728E103CA2A0821), ANTLR3_UINT64_LIT(0x2040DF4401C6690F), ANTLR3_UINT64_LIT(0x848A20E88004A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x003D2103CA7DB28C), ANTLR3_UINT64_LIT(0x2F9F13BEB06F9C60), ANTLR3_UINT64_LIT(0x2891130257F0B825), ANTLR3_UINT64_LIT(0x79E1F907A0025B83), ANTLR3_UINT64_LIT(0x0881C483370C1ED8), ANTLR3_UINT64_LIT(0x00000000049103E0) };
static  ANTLR3_BITSET_LIST FOLLOW_WHILE_SYMBOL_in_while_do_block11555	= { FOLLOW_WHILE_SYMBOL_in_while_do_block11555_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_label_identifier_in_while_do_block11557  */
static	ANTLR3_BITWORD FOLLOW_label_identifier_in_while_do_block11557_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_label_identifier_in_while_do_block11557	= { FOLLOW_label_identifier_in_while_do_block11557_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DECLARE_SYMBOL_in_declarations11582  */
static	ANTLR3_BITWORD FOLLOW_DECLARE_SYMBOL_in_declarations11582_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_DECLARE_SYMBOL_in_declarations11582	= { FOLLOW_DECLARE_SYMBOL_in_declarations11582_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_declarations11584  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_declarations11584_bits[]	= { ANTLR3_UINT64_LIT(0x00CA006000000000), ANTLR3_UINT64_LIT(0x0000000802000100), ANTLR3_UINT64_LIT(0x0400020000004021), ANTLR3_UINT64_LIT(0x00000C0011000000), ANTLR3_UINT64_LIT(0x8000000048000000), ANTLR3_UINT64_LIT(0x007000000002C000), ANTLR3_UINT64_LIT(0x000140000241A000), ANTLR3_UINT64_LIT(0x0000800000600000), ANTLR3_UINT64_LIT(0x1000420000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x050000000000F840), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_declarations11584	= { FOLLOW_identifier_in_declarations11584_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_variable_declaration_in_declarations11587  */
static	ANTLR3_BITWORD FOLLOW_variable_declaration_in_declarations11587_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_variable_declaration_in_declarations11587	= { FOLLOW_variable_declaration_in_declarations11587_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_condition_declaration_in_declarations11591  */
static	ANTLR3_BITWORD FOLLOW_condition_declaration_in_declarations11591_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_condition_declaration_in_declarations11591	= { FOLLOW_condition_declaration_in_declarations11591_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_cursor_declaration_in_declarations11598  */
static	ANTLR3_BITWORD FOLLOW_cursor_declaration_in_declarations11598_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_cursor_declaration_in_declarations11598	= { FOLLOW_cursor_declaration_in_declarations11598_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_handler_declaration_in_declarations11601  */
static	ANTLR3_BITWORD FOLLOW_handler_declaration_in_declarations11601_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_handler_declaration_in_declarations11601	= { FOLLOW_handler_declaration_in_declarations11601_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_variable_declaration11612  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_variable_declaration11612_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_variable_declaration11612	= { FOLLOW_COMMA_SYMBOL_in_variable_declaration11612_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_variable_declaration11614  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_variable_declaration11614_bits[]	= { ANTLR3_UINT64_LIT(0x00CA006000000000), ANTLR3_UINT64_LIT(0x0000000002000100), ANTLR3_UINT64_LIT(0x0400020000004021), ANTLR3_UINT64_LIT(0x00000C0011000000), ANTLR3_UINT64_LIT(0x8000000048000000), ANTLR3_UINT64_LIT(0x007000000002C000), ANTLR3_UINT64_LIT(0x000140000241A000), ANTLR3_UINT64_LIT(0x0000800000600000), ANTLR3_UINT64_LIT(0x1000420000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x050000000000F840), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_variable_declaration11614	= { FOLLOW_identifier_in_variable_declaration11614_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_data_type_in_variable_declaration11618  */
static	ANTLR3_BITWORD FOLLOW_data_type_in_variable_declaration11618_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000040000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_data_type_in_variable_declaration11618	= { FOLLOW_data_type_in_variable_declaration11618_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_variable_declaration11621  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_variable_declaration11621_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_variable_declaration11621	= { FOLLOW_DEFAULT_SYMBOL_in_variable_declaration11621_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_variable_declaration11623  */
static	ANTLR3_BITWORD FOLLOW_expression_in_variable_declaration11623_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_variable_declaration11623	= { FOLLOW_expression_in_variable_declaration11623_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEMICOLON_SYMBOL_in_variable_declaration11627  */
static	ANTLR3_BITWORD FOLLOW_SEMICOLON_SYMBOL_in_variable_declaration11627_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SEMICOLON_SYMBOL_in_variable_declaration11627	= { FOLLOW_SEMICOLON_SYMBOL_in_variable_declaration11627_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONDITION_SYMBOL_in_condition_declaration11636  */
static	ANTLR3_BITWORD FOLLOW_CONDITION_SYMBOL_in_condition_declaration11636_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CONDITION_SYMBOL_in_condition_declaration11636	= { FOLLOW_CONDITION_SYMBOL_in_condition_declaration11636_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_condition_declaration11638  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_condition_declaration11638_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_FOR_SYMBOL_in_condition_declaration11638	= { FOLLOW_FOR_SYMBOL_in_condition_declaration11638_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_condition_declaration11641  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_condition_declaration11641_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_condition_declaration11641	= { FOLLOW_INTEGER_in_condition_declaration11641_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQLSTATE_SYMBOL_in_condition_declaration11645  */
static	ANTLR3_BITWORD FOLLOW_SQLSTATE_SYMBOL_in_condition_declaration11645_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SQLSTATE_SYMBOL_in_condition_declaration11645	= { FOLLOW_SQLSTATE_SYMBOL_in_condition_declaration11645_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VALUE_SYMBOL_in_condition_declaration11647  */
static	ANTLR3_BITWORD FOLLOW_VALUE_SYMBOL_in_condition_declaration11647_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_VALUE_SYMBOL_in_condition_declaration11647	= { FOLLOW_VALUE_SYMBOL_in_condition_declaration11647_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_condition_declaration11650  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_condition_declaration11650_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_condition_declaration11650	= { FOLLOW_string_literal_in_condition_declaration11650_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEMICOLON_SYMBOL_in_condition_declaration11653  */
static	ANTLR3_BITWORD FOLLOW_SEMICOLON_SYMBOL_in_condition_declaration11653_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SEMICOLON_SYMBOL_in_condition_declaration11653	= { FOLLOW_SEMICOLON_SYMBOL_in_condition_declaration11653_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DECLARE_SYMBOL_in_cursor_declaration11662  */
static	ANTLR3_BITWORD FOLLOW_DECLARE_SYMBOL_in_cursor_declaration11662_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_DECLARE_SYMBOL_in_cursor_declaration11662	= { FOLLOW_DECLARE_SYMBOL_in_cursor_declaration11662_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_cursor_declaration11664  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_cursor_declaration11664_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_cursor_declaration11664	= { FOLLOW_identifier_in_cursor_declaration11664_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CURSOR_SYMBOL_in_cursor_declaration11666  */
static	ANTLR3_BITWORD FOLLOW_CURSOR_SYMBOL_in_cursor_declaration11666_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CURSOR_SYMBOL_in_cursor_declaration11666	= { FOLLOW_CURSOR_SYMBOL_in_cursor_declaration11666_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEMICOLON_SYMBOL_in_cursor_declaration11668  */
static	ANTLR3_BITWORD FOLLOW_SEMICOLON_SYMBOL_in_cursor_declaration11668_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SEMICOLON_SYMBOL_in_cursor_declaration11668	= { FOLLOW_SEMICOLON_SYMBOL_in_cursor_declaration11668_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DECLARE_SYMBOL_in_handler_declaration11677  */
static	ANTLR3_BITWORD FOLLOW_DECLARE_SYMBOL_in_handler_declaration11677_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DECLARE_SYMBOL_in_handler_declaration11677	= { FOLLOW_DECLARE_SYMBOL_in_handler_declaration11677_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_handler_declaration11679  */
static	ANTLR3_BITWORD FOLLOW_set_in_handler_declaration11679_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0020000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_handler_declaration11679	= { FOLLOW_set_in_handler_declaration11679_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HANDLER_SYMBOL_in_handler_declaration11691  */
static	ANTLR3_BITWORD FOLLOW_HANDLER_SYMBOL_in_handler_declaration11691_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200000000) };
static  ANTLR3_BITSET_LIST FOLLOW_HANDLER_SYMBOL_in_handler_declaration11691	= { FOLLOW_HANDLER_SYMBOL_in_handler_declaration11691_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_handler_declaration11695  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_handler_declaration11695_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88414A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D21A3CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025BF3), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_FOR_SYMBOL_in_handler_declaration11695	= { FOLLOW_FOR_SYMBOL_in_handler_declaration11695_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_handler_condition_in_handler_declaration11697  */
static	ANTLR3_BITWORD FOLLOW_handler_condition_in_handler_declaration11697_bits[]	= { ANTLR3_UINT64_LIT(0x72E2008AFE02AF60), ANTLR3_UINT64_LIT(0xC12B29F5F2EBBE3D), ANTLR3_UINT64_LIT(0x3728ED03CBEA1821), ANTLR3_UINT64_LIT(0x2161FF4421CE692F), ANTLR3_UINT64_LIT(0x849AA2E8801CA37C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD423A6), ANTLR3_UINT64_LIT(0x0E3D2103CA7DB28C), ANTLR3_UINT64_LIT(0xBF9F13FEB86FBC60), ANTLR3_UINT64_LIT(0x28B953125FF9FBBF), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0883CD93378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D113E0) };
static  ANTLR3_BITSET_LIST FOLLOW_handler_condition_in_handler_declaration11697	= { FOLLOW_handler_condition_in_handler_declaration11697_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_handler_declaration11700  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_handler_declaration11700_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88414A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D21A3CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025BF3), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_handler_declaration11700	= { FOLLOW_COMMA_SYMBOL_in_handler_declaration11700_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_handler_condition_in_handler_declaration11702  */
static	ANTLR3_BITWORD FOLLOW_handler_condition_in_handler_declaration11702_bits[]	= { ANTLR3_UINT64_LIT(0x72E2008AFE02AF60), ANTLR3_UINT64_LIT(0xC12B29F5F2EBBE3D), ANTLR3_UINT64_LIT(0x3728ED03CBEA1821), ANTLR3_UINT64_LIT(0x2161FF4421CE692F), ANTLR3_UINT64_LIT(0x849AA2E8801CA37C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD423A6), ANTLR3_UINT64_LIT(0x0E3D2103CA7DB28C), ANTLR3_UINT64_LIT(0xBF9F13FEB86FBC60), ANTLR3_UINT64_LIT(0x28B953125FF9FBBF), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0883CD93378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D113E0) };
static  ANTLR3_BITSET_LIST FOLLOW_handler_condition_in_handler_declaration11702	= { FOLLOW_handler_condition_in_handler_declaration11702_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_in_handler_declaration11706  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_in_handler_declaration11706_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_compound_statement_in_handler_declaration11706	= { FOLLOW_compound_statement_in_handler_declaration11706_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEMICOLON_SYMBOL_in_handler_declaration11708  */
static	ANTLR3_BITWORD FOLLOW_SEMICOLON_SYMBOL_in_handler_declaration11708_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SEMICOLON_SYMBOL_in_handler_declaration11708	= { FOLLOW_SEMICOLON_SYMBOL_in_handler_declaration11708_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_handler_condition11717  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_handler_condition11717_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_handler_condition11717	= { FOLLOW_INTEGER_in_handler_condition11717_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQLSTATE_SYMBOL_in_handler_condition11722  */
static	ANTLR3_BITWORD FOLLOW_SQLSTATE_SYMBOL_in_handler_condition11722_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SQLSTATE_SYMBOL_in_handler_condition11722	= { FOLLOW_SQLSTATE_SYMBOL_in_handler_condition11722_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VALUE_SYMBOL_in_handler_condition11724  */
static	ANTLR3_BITWORD FOLLOW_VALUE_SYMBOL_in_handler_condition11724_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_VALUE_SYMBOL_in_handler_condition11724	= { FOLLOW_VALUE_SYMBOL_in_handler_condition11724_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_handler_condition11727  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_handler_condition11727_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_handler_condition11727	= { FOLLOW_string_literal_in_handler_condition11727_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_handler_condition11732  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_handler_condition11732_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_handler_condition11732	= { FOLLOW_identifier_in_handler_condition11732_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQLWARNING_SYMBOL_in_handler_condition11737  */
static	ANTLR3_BITWORD FOLLOW_SQLWARNING_SYMBOL_in_handler_condition11737_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SQLWARNING_SYMBOL_in_handler_condition11737	= { FOLLOW_SQLWARNING_SYMBOL_in_handler_condition11737_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NOT_SYMBOL_in_handler_condition11742  */
static	ANTLR3_BITWORD FOLLOW_NOT_SYMBOL_in_handler_condition11742_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_NOT_SYMBOL_in_handler_condition11742	= { FOLLOW_NOT_SYMBOL_in_handler_condition11742_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOUND_SYMBOL_in_handler_condition11744  */
static	ANTLR3_BITWORD FOLLOW_FOUND_SYMBOL_in_handler_condition11744_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_FOUND_SYMBOL_in_handler_condition11744	= { FOLLOW_FOUND_SYMBOL_in_handler_condition11744_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQLEXCEPTION_SYMBOL_in_handler_condition11749  */
static	ANTLR3_BITWORD FOLLOW_SQLEXCEPTION_SYMBOL_in_handler_condition11749_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SQLEXCEPTION_SYMBOL_in_handler_condition11749	= { FOLLOW_SQLEXCEPTION_SYMBOL_in_handler_condition11749_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CASE_SYMBOL_in_case_statement11759  */
static	ANTLR3_BITWORD FOLLOW_CASE_SYMBOL_in_case_statement11759_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D307E0) };
static  ANTLR3_BITSET_LIST FOLLOW_CASE_SYMBOL_in_case_statement11759	= { FOLLOW_CASE_SYMBOL_in_case_statement11759_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_case_statement11761  */
static	ANTLR3_BITWORD FOLLOW_expression_in_case_statement11761_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000400) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_case_statement11761	= { FOLLOW_expression_in_case_statement11761_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_when_expression_in_case_statement11765  */
static	ANTLR3_BITWORD FOLLOW_when_expression_in_case_statement11765_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000100) };
static  ANTLR3_BITSET_LIST FOLLOW_when_expression_in_case_statement11765	= { FOLLOW_when_expression_in_case_statement11765_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_then_statement_in_case_statement11767  */
static	ANTLR3_BITWORD FOLLOW_then_statement_in_case_statement11767_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0084000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000400) };
static  ANTLR3_BITSET_LIST FOLLOW_then_statement_in_case_statement11767	= { FOLLOW_then_statement_in_case_statement11767_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_else_statement_in_case_statement11771  */
static	ANTLR3_BITWORD FOLLOW_else_statement_in_case_statement11771_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_else_statement_in_case_statement11771	= { FOLLOW_else_statement_in_case_statement11771_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_END_SYMBOL_in_case_statement11774  */
static	ANTLR3_BITWORD FOLLOW_END_SYMBOL_in_case_statement11774_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_END_SYMBOL_in_case_statement11774	= { FOLLOW_END_SYMBOL_in_case_statement11774_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CASE_SYMBOL_in_case_statement11776  */
static	ANTLR3_BITWORD FOLLOW_CASE_SYMBOL_in_case_statement11776_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CASE_SYMBOL_in_case_statement11776	= { FOLLOW_CASE_SYMBOL_in_case_statement11776_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_THEN_SYMBOL_in_then_statement11785  */
static	ANTLR3_BITWORD FOLLOW_THEN_SYMBOL_in_then_statement11785_bits[]	= { ANTLR3_UINT64_LIT(0x72E2008AFE02AF60), ANTLR3_UINT64_LIT(0xC12B29F5F0EBBE3D), ANTLR3_UINT64_LIT(0x3728ED03CBEA1821), ANTLR3_UINT64_LIT(0x2161FF4421CE692F), ANTLR3_UINT64_LIT(0x849AA2E8801CA37C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD423A6), ANTLR3_UINT64_LIT(0x0E3D2103CA7DB28C), ANTLR3_UINT64_LIT(0xBF9F13FEB86FBC60), ANTLR3_UINT64_LIT(0x28B953125FF9FBBF), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0883CD93378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D113E0) };
static  ANTLR3_BITSET_LIST FOLLOW_THEN_SYMBOL_in_then_statement11785	= { FOLLOW_THEN_SYMBOL_in_then_statement11785_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_list_in_then_statement11788  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_list_in_then_statement11788_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_compound_statement_list_in_then_statement11788	= { FOLLOW_compound_statement_list_in_then_statement11788_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ELSE_SYMBOL_in_else_statement11797  */
static	ANTLR3_BITWORD FOLLOW_ELSE_SYMBOL_in_else_statement11797_bits[]	= { ANTLR3_UINT64_LIT(0x72E2008AFE02AF60), ANTLR3_UINT64_LIT(0xC12B29F5F0EBBE3D), ANTLR3_UINT64_LIT(0x3728ED03CBEA1821), ANTLR3_UINT64_LIT(0x2161FF4421CE692F), ANTLR3_UINT64_LIT(0x849AA2E8801CA37C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD423A6), ANTLR3_UINT64_LIT(0x0E3D2103CA7DB28C), ANTLR3_UINT64_LIT(0xBF9F13FEB86FBC60), ANTLR3_UINT64_LIT(0x28B953125FF9FBBF), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0883CD93378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D113E0) };
static  ANTLR3_BITSET_LIST FOLLOW_ELSE_SYMBOL_in_else_statement11797	= { FOLLOW_ELSE_SYMBOL_in_else_statement11797_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_list_in_else_statement11800  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_list_in_else_statement11800_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_compound_statement_list_in_else_statement11800	= { FOLLOW_compound_statement_list_in_else_statement11800_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IF_SYMBOL_in_if_statement11809  */
static	ANTLR3_BITWORD FOLLOW_IF_SYMBOL_in_if_statement11809_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_IF_SYMBOL_in_if_statement11809	= { FOLLOW_IF_SYMBOL_in_if_statement11809_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_body_in_if_statement11811  */
static	ANTLR3_BITWORD FOLLOW_if_body_in_if_statement11811_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_if_body_in_if_statement11811	= { FOLLOW_if_body_in_if_statement11811_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_END_SYMBOL_in_if_statement11813  */
static	ANTLR3_BITWORD FOLLOW_END_SYMBOL_in_if_statement11813_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_END_SYMBOL_in_if_statement11813	= { FOLLOW_END_SYMBOL_in_if_statement11813_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IF_SYMBOL_in_if_statement11815  */
static	ANTLR3_BITWORD FOLLOW_IF_SYMBOL_in_if_statement11815_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_IF_SYMBOL_in_if_statement11815	= { FOLLOW_IF_SYMBOL_in_if_statement11815_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_if_body11824  */
static	ANTLR3_BITWORD FOLLOW_expression_in_if_body11824_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000100) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_if_body11824	= { FOLLOW_expression_in_if_body11824_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_then_statement_in_if_body11826  */
static	ANTLR3_BITWORD FOLLOW_then_statement_in_if_body11826_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0006000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_then_statement_in_if_body11826	= { FOLLOW_then_statement_in_if_body11826_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ELSEIF_SYMBOL_in_if_body11829  */
static	ANTLR3_BITWORD FOLLOW_ELSEIF_SYMBOL_in_if_body11829_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_ELSEIF_SYMBOL_in_if_body11829	= { FOLLOW_ELSEIF_SYMBOL_in_if_body11829_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_body_in_if_body11831  */
static	ANTLR3_BITWORD FOLLOW_if_body_in_if_body11831_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_if_body_in_if_body11831	= { FOLLOW_if_body_in_if_body11831_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ELSE_SYMBOL_in_if_body11835  */
static	ANTLR3_BITWORD FOLLOW_ELSE_SYMBOL_in_if_body11835_bits[]	= { ANTLR3_UINT64_LIT(0x72E2008AFE02AF60), ANTLR3_UINT64_LIT(0xC12B29F5F0EBBE3D), ANTLR3_UINT64_LIT(0x3728ED03CBEA1821), ANTLR3_UINT64_LIT(0x2161FF4421CE692F), ANTLR3_UINT64_LIT(0x849AA2E8801CA37C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD423A6), ANTLR3_UINT64_LIT(0x0E3D2103CA7DB28C), ANTLR3_UINT64_LIT(0xBF9F13FEB86FBC60), ANTLR3_UINT64_LIT(0x28B953125FF9FBBF), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0883CD93378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D113E0) };
static  ANTLR3_BITSET_LIST FOLLOW_ELSE_SYMBOL_in_if_body11835	= { FOLLOW_ELSE_SYMBOL_in_if_body11835_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_list_in_if_body11837  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_list_in_if_body11837_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_compound_statement_list_in_if_body11837	= { FOLLOW_compound_statement_list_in_if_body11837_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ITERATE_SYMBOL_in_iterate_statement11848  */
static	ANTLR3_BITWORD FOLLOW_ITERATE_SYMBOL_in_iterate_statement11848_bits[]	= { ANTLR3_UINT64_LIT(0x42E200827E028F60), ANTLR3_UINT64_LIT(0xC12929F5D0EB381C), ANTLR3_UINT64_LIT(0x3728E103CA2A0821), ANTLR3_UINT64_LIT(0x2040DF4401C6690F), ANTLR3_UINT64_LIT(0x848A20E88004A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x003D2103CA7DB28C), ANTLR3_UINT64_LIT(0x2F9F13BEB06F9C60), ANTLR3_UINT64_LIT(0x2891130257F0B825), ANTLR3_UINT64_LIT(0x79E1F907A0025B83), ANTLR3_UINT64_LIT(0x0881C483370C1ED8), ANTLR3_UINT64_LIT(0x00000000049103E0) };
static  ANTLR3_BITSET_LIST FOLLOW_ITERATE_SYMBOL_in_iterate_statement11848	= { FOLLOW_ITERATE_SYMBOL_in_iterate_statement11848_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_label_identifier_in_iterate_statement11850  */
static	ANTLR3_BITWORD FOLLOW_label_identifier_in_iterate_statement11850_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_label_identifier_in_iterate_statement11850	= { FOLLOW_label_identifier_in_iterate_statement11850_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LEAVE_SYMBOL_in_leave_statement11859  */
static	ANTLR3_BITWORD FOLLOW_LEAVE_SYMBOL_in_leave_statement11859_bits[]	= { ANTLR3_UINT64_LIT(0x42E200827E028F60), ANTLR3_UINT64_LIT(0xC12929F5D0EB381C), ANTLR3_UINT64_LIT(0x3728E103CA2A0821), ANTLR3_UINT64_LIT(0x2040DF4401C6690F), ANTLR3_UINT64_LIT(0x848A20E88004A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x003D2103CA7DB28C), ANTLR3_UINT64_LIT(0x2F9F13BEB06F9C60), ANTLR3_UINT64_LIT(0x2891130257F0B825), ANTLR3_UINT64_LIT(0x79E1F907A0025B83), ANTLR3_UINT64_LIT(0x0881C483370C1ED8), ANTLR3_UINT64_LIT(0x00000000049103E0) };
static  ANTLR3_BITSET_LIST FOLLOW_LEAVE_SYMBOL_in_leave_statement11859	= { FOLLOW_LEAVE_SYMBOL_in_leave_statement11859_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_label_identifier_in_leave_statement11861  */
static	ANTLR3_BITWORD FOLLOW_label_identifier_in_leave_statement11861_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_label_identifier_in_leave_statement11861	= { FOLLOW_label_identifier_in_leave_statement11861_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RETURN_SYMBOL_in_return_statement11870  */
static	ANTLR3_BITWORD FOLLOW_RETURN_SYMBOL_in_return_statement11870_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_RETURN_SYMBOL_in_return_statement11870	= { FOLLOW_RETURN_SYMBOL_in_return_statement11870_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_return_statement11872  */
static	ANTLR3_BITWORD FOLLOW_expression_in_return_statement11872_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_return_statement11872	= { FOLLOW_expression_in_return_statement11872_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GET_SYMBOL_in_get_diagnostics11881  */
static	ANTLR3_BITWORD FOLLOW_GET_SYMBOL_in_get_diagnostics11881_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000008000000) };
static  ANTLR3_BITSET_LIST FOLLOW_GET_SYMBOL_in_get_diagnostics11881	= { FOLLOW_GET_SYMBOL_in_get_diagnostics11881_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CURRENT_SYMBOL_in_get_diagnostics11883  */
static	ANTLR3_BITWORD FOLLOW_CURRENT_SYMBOL_in_get_diagnostics11883_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000008000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CURRENT_SYMBOL_in_get_diagnostics11883	= { FOLLOW_CURRENT_SYMBOL_in_get_diagnostics11883_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DIAGNOSTICS_SYMBOL_in_get_diagnostics11886  */
static	ANTLR3_BITWORD FOLLOW_DIAGNOSTICS_SYMBOL_in_get_diagnostics11886_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFF868F60), ANTLR3_UINT64_LIT(0xC1292DFDF8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_DIAGNOSTICS_SYMBOL_in_get_diagnostics11886	= { FOLLOW_DIAGNOSTICS_SYMBOL_in_get_diagnostics11886_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_statement_information_item_in_get_diagnostics11893  */
static	ANTLR3_BITWORD FOLLOW_statement_information_item_in_get_diagnostics11893_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_statement_information_item_in_get_diagnostics11893	= { FOLLOW_statement_information_item_in_get_diagnostics11893_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_get_diagnostics11896  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_get_diagnostics11896_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFF868F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_get_diagnostics11896	= { FOLLOW_COMMA_SYMBOL_in_get_diagnostics11896_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_statement_information_item_in_get_diagnostics11898  */
static	ANTLR3_BITWORD FOLLOW_statement_information_item_in_get_diagnostics11898_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_statement_information_item_in_get_diagnostics11898	= { FOLLOW_statement_information_item_in_get_diagnostics11898_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONDITION_SYMBOL_in_get_diagnostics11906  */
static	ANTLR3_BITWORD FOLLOW_CONDITION_SYMBOL_in_get_diagnostics11906_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CONDITION_SYMBOL_in_get_diagnostics11906	= { FOLLOW_CONDITION_SYMBOL_in_get_diagnostics11906_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_get_diagnostics11908  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_get_diagnostics11908_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFF868F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_get_diagnostics11908	= { FOLLOW_INTEGER_in_get_diagnostics11908_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_condition_information_item_in_get_diagnostics11910  */
static	ANTLR3_BITWORD FOLLOW_condition_information_item_in_get_diagnostics11910_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_condition_information_item_in_get_diagnostics11910	= { FOLLOW_condition_information_item_in_get_diagnostics11910_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_get_diagnostics11913  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_get_diagnostics11913_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFF868F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_get_diagnostics11913	= { FOLLOW_COMMA_SYMBOL_in_get_diagnostics11913_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_condition_information_item_in_get_diagnostics11915  */
static	ANTLR3_BITWORD FOLLOW_condition_information_item_in_get_diagnostics11915_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_condition_information_item_in_get_diagnostics11915	= { FOLLOW_condition_information_item_in_get_diagnostics11915_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_variable_in_statement_information_item11930  */
static	ANTLR3_BITWORD FOLLOW_variable_in_statement_information_item11930_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_variable_in_statement_information_item11930	= { FOLLOW_variable_in_statement_information_item11930_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_statement_information_item11934  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_statement_information_item11934_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_statement_information_item11934	= { FOLLOW_identifier_in_statement_information_item11934_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_statement_information_item11937  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_statement_information_item11937_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000800000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_statement_information_item11937	= { FOLLOW_EQUAL_OPERATOR_in_statement_information_item11937_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_statement_information_item11939  */
static	ANTLR3_BITWORD FOLLOW_set_in_statement_information_item11939_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_statement_information_item11939	= { FOLLOW_set_in_statement_information_item11939_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_variable_in_condition_information_item11955  */
static	ANTLR3_BITWORD FOLLOW_variable_in_condition_information_item11955_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_variable_in_condition_information_item11955	= { FOLLOW_variable_in_condition_information_item11955_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_condition_information_item11959  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_condition_information_item11959_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_condition_information_item11959	= { FOLLOW_identifier_in_condition_information_item11959_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_condition_information_item11962  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_condition_information_item11962_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x010001C000801004), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400000000000000), ANTLR3_UINT64_LIT(0x0000000000080000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040001000), ANTLR3_UINT64_LIT(0x4000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_condition_information_item11962	= { FOLLOW_EQUAL_OPERATOR_in_condition_information_item11962_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_condition_information_item_name_in_condition_information_item11964  */
static	ANTLR3_BITWORD FOLLOW_condition_information_item_name_in_condition_information_item11964_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_condition_information_item_name_in_condition_information_item11964	= { FOLLOW_condition_information_item_name_in_condition_information_item11964_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SIGNAL_SYMBOL_in_signal_statement12042  */
static	ANTLR3_BITWORD FOLLOW_SIGNAL_SYMBOL_in_signal_statement12042_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_SIGNAL_SYMBOL_in_signal_statement12042	= { FOLLOW_SIGNAL_SYMBOL_in_signal_statement12042_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQLSTATE_SYMBOL_in_signal_statement12045  */
static	ANTLR3_BITWORD FOLLOW_SQLSTATE_SYMBOL_in_signal_statement12045_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_SQLSTATE_SYMBOL_in_signal_statement12045	= { FOLLOW_SQLSTATE_SYMBOL_in_signal_statement12045_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VALUE_SYMBOL_in_signal_statement12047  */
static	ANTLR3_BITWORD FOLLOW_VALUE_SYMBOL_in_signal_statement12047_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_VALUE_SYMBOL_in_signal_statement12047	= { FOLLOW_VALUE_SYMBOL_in_signal_statement12047_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_signal_statement12050  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_signal_statement12050_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_signal_statement12050	= { FOLLOW_text_or_identifier_in_signal_statement12050_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SET_SYMBOL_in_signal_statement12056  */
static	ANTLR3_BITWORD FOLLOW_SET_SYMBOL_in_signal_statement12056_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x010001C000801004), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400000000000000), ANTLR3_UINT64_LIT(0x0000000000080000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040001000), ANTLR3_UINT64_LIT(0x4000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SET_SYMBOL_in_signal_statement12056	= { FOLLOW_SET_SYMBOL_in_signal_statement12056_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_signal_information_item_in_signal_statement12058  */
static	ANTLR3_BITWORD FOLLOW_signal_information_item_in_signal_statement12058_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_signal_information_item_in_signal_statement12058	= { FOLLOW_signal_information_item_in_signal_statement12058_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_signal_statement12061  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_signal_statement12061_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x010001C000801004), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400000000000000), ANTLR3_UINT64_LIT(0x0000000000080000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040001000), ANTLR3_UINT64_LIT(0x4000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_signal_statement12061	= { FOLLOW_COMMA_SYMBOL_in_signal_statement12061_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_signal_information_item_in_signal_statement12063  */
static	ANTLR3_BITWORD FOLLOW_signal_information_item_in_signal_statement12063_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_signal_information_item_in_signal_statement12063	= { FOLLOW_signal_information_item_in_signal_statement12063_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RESIGNAL_SYMBOL_in_resignal_statement12076  */
static	ANTLR3_BITWORD FOLLOW_RESIGNAL_SYMBOL_in_resignal_statement12076_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_RESIGNAL_SYMBOL_in_resignal_statement12076	= { FOLLOW_RESIGNAL_SYMBOL_in_resignal_statement12076_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQLSTATE_SYMBOL_in_resignal_statement12079  */
static	ANTLR3_BITWORD FOLLOW_SQLSTATE_SYMBOL_in_resignal_statement12079_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_SQLSTATE_SYMBOL_in_resignal_statement12079	= { FOLLOW_SQLSTATE_SYMBOL_in_resignal_statement12079_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VALUE_SYMBOL_in_resignal_statement12081  */
static	ANTLR3_BITWORD FOLLOW_VALUE_SYMBOL_in_resignal_statement12081_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_VALUE_SYMBOL_in_resignal_statement12081	= { FOLLOW_VALUE_SYMBOL_in_resignal_statement12081_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_resignal_statement12084  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_resignal_statement12084_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_resignal_statement12084	= { FOLLOW_text_or_identifier_in_resignal_statement12084_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SET_SYMBOL_in_resignal_statement12091  */
static	ANTLR3_BITWORD FOLLOW_SET_SYMBOL_in_resignal_statement12091_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x010001C000801004), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400000000000000), ANTLR3_UINT64_LIT(0x0000000000080000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040001000), ANTLR3_UINT64_LIT(0x4000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SET_SYMBOL_in_resignal_statement12091	= { FOLLOW_SET_SYMBOL_in_resignal_statement12091_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_signal_information_item_in_resignal_statement12093  */
static	ANTLR3_BITWORD FOLLOW_signal_information_item_in_resignal_statement12093_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_signal_information_item_in_resignal_statement12093	= { FOLLOW_signal_information_item_in_resignal_statement12093_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_resignal_statement12096  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_resignal_statement12096_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x010001C000801004), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400000000000000), ANTLR3_UINT64_LIT(0x0000000000080000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040001000), ANTLR3_UINT64_LIT(0x4000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_resignal_statement12096	= { FOLLOW_COMMA_SYMBOL_in_resignal_statement12096_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_signal_information_item_in_resignal_statement12098  */
static	ANTLR3_BITWORD FOLLOW_signal_information_item_in_resignal_statement12098_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_signal_information_item_in_resignal_statement12098	= { FOLLOW_signal_information_item_in_resignal_statement12098_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_condition_information_item_name_in_signal_information_item12111  */
static	ANTLR3_BITWORD FOLLOW_condition_information_item_name_in_signal_information_item12111_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_condition_information_item_name_in_signal_information_item12111	= { FOLLOW_condition_information_item_name_in_signal_information_item12111_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_signal_information_item12113  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_signal_information_item12113_bits[]	= { ANTLR3_UINT64_LIT(0x0000060000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0C00000002010000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000140004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080400000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_signal_information_item12113	= { FOLLOW_EQUAL_OPERATOR_in_signal_information_item12113_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_literal_in_signal_information_item12115  */
static	ANTLR3_BITWORD FOLLOW_literal_in_signal_information_item12115_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_literal_in_signal_information_item12115	= { FOLLOW_literal_in_signal_information_item12115_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_SYMBOL_in_cursor_close12124  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_SYMBOL_in_cursor_close12124_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_SYMBOL_in_cursor_close12124	= { FOLLOW_CLOSE_SYMBOL_in_cursor_close12124_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_cursor_close12126  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_cursor_close12126_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_cursor_close12126	= { FOLLOW_identifier_in_cursor_close12126_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FETCH_SYMBOL_in_cursor_fetch12135  */
static	ANTLR3_BITWORD FOLLOW_FETCH_SYMBOL_in_cursor_fetch12135_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_FETCH_SYMBOL_in_cursor_fetch12135	= { FOLLOW_FETCH_SYMBOL_in_cursor_fetch12135_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_cursor_fetch12137  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_cursor_fetch12137_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000020000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_cursor_fetch12137	= { FOLLOW_identifier_in_cursor_fetch12137_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTO_SYMBOL_in_cursor_fetch12139  */
static	ANTLR3_BITWORD FOLLOW_INTO_SYMBOL_in_cursor_fetch12139_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_INTO_SYMBOL_in_cursor_fetch12139	= { FOLLOW_INTO_SYMBOL_in_cursor_fetch12139_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_cursor_fetch12141  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_cursor_fetch12141_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_cursor_fetch12141	= { FOLLOW_identifier_in_cursor_fetch12141_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_cursor_fetch12144  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_cursor_fetch12144_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_cursor_fetch12144	= { FOLLOW_COMMA_SYMBOL_in_cursor_fetch12144_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_cursor_fetch12146  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_cursor_fetch12146_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_cursor_fetch12146	= { FOLLOW_identifier_in_cursor_fetch12146_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_SYMBOL_in_cursor_open12157  */
static	ANTLR3_BITWORD FOLLOW_OPEN_SYMBOL_in_cursor_open12157_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_SYMBOL_in_cursor_open12157	= { FOLLOW_OPEN_SYMBOL_in_cursor_open12157_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_cursor_open12159  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_cursor_open12159_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_cursor_open12159	= { FOLLOW_identifier_in_cursor_open12159_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AT_SYMBOL_in_schedule12171  */
static	ANTLR3_BITWORD FOLLOW_AT_SYMBOL_in_schedule12171_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_AT_SYMBOL_in_schedule12171	= { FOLLOW_AT_SYMBOL_in_schedule12171_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_schedule12173  */
static	ANTLR3_BITWORD FOLLOW_expression_in_schedule12173_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_schedule12173	= { FOLLOW_expression_in_schedule12173_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PLUS_OPERATOR_in_schedule12176  */
static	ANTLR3_BITWORD FOLLOW_PLUS_OPERATOR_in_schedule12176_bits[]	= { ANTLR3_UINT64_LIT(0x56E786CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0x4F8FEEFFFFD022A2), ANTLR3_UINT64_LIT(0x263D35C3CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9EFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_PLUS_OPERATOR_in_schedule12176	= { FOLLOW_PLUS_OPERATOR_in_schedule12176_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_interval_expression_in_schedule12178  */
static	ANTLR3_BITWORD FOLLOW_interval_expression_in_schedule12178_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_interval_expression_in_schedule12178	= { FOLLOW_interval_expression_in_schedule12178_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EVERY_SYMBOL_in_schedule12185  */
static	ANTLR3_BITWORD FOLLOW_EVERY_SYMBOL_in_schedule12185_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_EVERY_SYMBOL_in_schedule12185	= { FOLLOW_EVERY_SYMBOL_in_schedule12185_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_interval_in_schedule12187  */
static	ANTLR3_BITWORD FOLLOW_interval_in_schedule12187_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000020000000) };
static  ANTLR3_BITSET_LIST FOLLOW_interval_in_schedule12187	= { FOLLOW_interval_in_schedule12187_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STARTS_SYMBOL_in_schedule12192  */
static	ANTLR3_BITWORD FOLLOW_STARTS_SYMBOL_in_schedule12192_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_STARTS_SYMBOL_in_schedule12192	= { FOLLOW_STARTS_SYMBOL_in_schedule12192_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_schedule12194  */
static	ANTLR3_BITWORD FOLLOW_expression_in_schedule12194_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_schedule12194	= { FOLLOW_expression_in_schedule12194_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PLUS_OPERATOR_in_schedule12197  */
static	ANTLR3_BITWORD FOLLOW_PLUS_OPERATOR_in_schedule12197_bits[]	= { ANTLR3_UINT64_LIT(0x56E786CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0x4F8FEEFFFFD022A2), ANTLR3_UINT64_LIT(0x263D35C3CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9EFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_PLUS_OPERATOR_in_schedule12197	= { FOLLOW_PLUS_OPERATOR_in_schedule12197_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_interval_expression_in_schedule12199  */
static	ANTLR3_BITWORD FOLLOW_interval_expression_in_schedule12199_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_interval_expression_in_schedule12199	= { FOLLOW_interval_expression_in_schedule12199_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENDS_SYMBOL_in_schedule12208  */
static	ANTLR3_BITWORD FOLLOW_ENDS_SYMBOL_in_schedule12208_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_ENDS_SYMBOL_in_schedule12208	= { FOLLOW_ENDS_SYMBOL_in_schedule12208_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_schedule12210  */
static	ANTLR3_BITWORD FOLLOW_expression_in_schedule12210_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_schedule12210	= { FOLLOW_expression_in_schedule12210_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PLUS_OPERATOR_in_schedule12213  */
static	ANTLR3_BITWORD FOLLOW_PLUS_OPERATOR_in_schedule12213_bits[]	= { ANTLR3_UINT64_LIT(0x56E786CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0x4F8FEEFFFFD022A2), ANTLR3_UINT64_LIT(0x263D35C3CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9EFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_PLUS_OPERATOR_in_schedule12213	= { FOLLOW_PLUS_OPERATOR_in_schedule12213_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_interval_expression_in_schedule12215  */
static	ANTLR3_BITWORD FOLLOW_interval_expression_in_schedule12215_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_interval_expression_in_schedule12215	= { FOLLOW_interval_expression_in_schedule12215_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HOST_SYMBOL_in_server_option12229  */
static	ANTLR3_BITWORD FOLLOW_HOST_SYMBOL_in_server_option12229_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_HOST_SYMBOL_in_server_option12229	= { FOLLOW_HOST_SYMBOL_in_server_option12229_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_server_option12231  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_server_option12231_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_server_option12231	= { FOLLOW_string_literal_in_server_option12231_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATABASE_SYMBOL_in_server_option12236  */
static	ANTLR3_BITWORD FOLLOW_DATABASE_SYMBOL_in_server_option12236_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DATABASE_SYMBOL_in_server_option12236	= { FOLLOW_DATABASE_SYMBOL_in_server_option12236_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_server_option12238  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_server_option12238_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_server_option12238	= { FOLLOW_string_literal_in_server_option12238_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USER_SYMBOL_in_server_option12243  */
static	ANTLR3_BITWORD FOLLOW_USER_SYMBOL_in_server_option12243_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_USER_SYMBOL_in_server_option12243	= { FOLLOW_USER_SYMBOL_in_server_option12243_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_server_option12245  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_server_option12245_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_server_option12245	= { FOLLOW_string_literal_in_server_option12245_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PASSWORD_SYMBOL_in_server_option12250  */
static	ANTLR3_BITWORD FOLLOW_PASSWORD_SYMBOL_in_server_option12250_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PASSWORD_SYMBOL_in_server_option12250	= { FOLLOW_PASSWORD_SYMBOL_in_server_option12250_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_server_option12252  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_server_option12252_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_server_option12252	= { FOLLOW_string_literal_in_server_option12252_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SOCKET_SYMBOL_in_server_option12257  */
static	ANTLR3_BITWORD FOLLOW_SOCKET_SYMBOL_in_server_option12257_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SOCKET_SYMBOL_in_server_option12257	= { FOLLOW_SOCKET_SYMBOL_in_server_option12257_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_server_option12259  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_server_option12259_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_server_option12259	= { FOLLOW_string_literal_in_server_option12259_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OWNER_SYMBOL_in_server_option12264  */
static	ANTLR3_BITWORD FOLLOW_OWNER_SYMBOL_in_server_option12264_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OWNER_SYMBOL_in_server_option12264	= { FOLLOW_OWNER_SYMBOL_in_server_option12264_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_server_option12266  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_server_option12266_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_server_option12266	= { FOLLOW_string_literal_in_server_option12266_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PORT_SYMBOL_in_server_option12271  */
static	ANTLR3_BITWORD FOLLOW_PORT_SYMBOL_in_server_option12271_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PORT_SYMBOL_in_server_option12271	= { FOLLOW_PORT_SYMBOL_in_server_option12271_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_server_option12273  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_server_option12273_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_server_option12273	= { FOLLOW_INTEGER_in_server_option12273_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_database_option12282  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_database_option12282_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000040100) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_database_option12282	= { FOLLOW_DEFAULT_SYMBOL_in_database_option12282_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHAR_SYMBOL_in_database_option12292  */
static	ANTLR3_BITWORD FOLLOW_CHAR_SYMBOL_in_database_option12292_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CHAR_SYMBOL_in_database_option12292	= { FOLLOW_CHAR_SYMBOL_in_database_option12292_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SET_SYMBOL_in_database_option12294  */
static	ANTLR3_BITWORD FOLLOW_SET_SYMBOL_in_database_option12294_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000180), ANTLR3_UINT64_LIT(0x0800000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_SET_SYMBOL_in_database_option12294	= { FOLLOW_SET_SYMBOL_in_database_option12294_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_database_option12296  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_database_option12296_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000180), ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_database_option12296	= { FOLLOW_EQUAL_OPERATOR_in_database_option12296_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_name_or_default_in_database_option12299  */
static	ANTLR3_BITWORD FOLLOW_charset_name_or_default_in_database_option12299_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_name_or_default_in_database_option12299	= { FOLLOW_charset_name_or_default_in_database_option12299_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLLATE_SYMBOL_in_database_option12306  */
static	ANTLR3_BITWORD FOLLOW_COLLATE_SYMBOL_in_database_option12306_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x3FA8E503CA2E1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COLLATE_SYMBOL_in_database_option12306	= { FOLLOW_COLLATE_SYMBOL_in_database_option12306_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_database_option12308  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_database_option12308_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2E1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_database_option12308	= { FOLLOW_EQUAL_OPERATOR_in_database_option12308_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_collation_name_or_default_in_database_option12311  */
static	ANTLR3_BITWORD FOLLOW_collation_name_or_default_in_database_option12311_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_collation_name_or_default_in_database_option12311	= { FOLLOW_collation_name_or_default_in_database_option12311_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_data_type_in_column_definition12324  */
static	ANTLR3_BITWORD FOLLOW_data_type_in_column_definition12324_bits[]	= { ANTLR3_UINT64_LIT(0x0000000010000002), ANTLR3_UINT64_LIT(0x0000000008400000), ANTLR3_UINT64_LIT(0x0000000000040000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000142000000000), ANTLR3_UINT64_LIT(0x0020000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000004000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_data_type_in_column_definition12324	= { FOLLOW_data_type_in_column_definition12324_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_option_in_column_definition12326  */
static	ANTLR3_BITWORD FOLLOW_column_option_in_column_definition12326_bits[]	= { ANTLR3_UINT64_LIT(0x0000000010000002), ANTLR3_UINT64_LIT(0x0000000008400000), ANTLR3_UINT64_LIT(0x0000000000040000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000142000000000), ANTLR3_UINT64_LIT(0x0020000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000004000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_column_option_in_column_definition12326	= { FOLLOW_column_option_in_column_definition12326_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_reference_definition_in_column_definition12329  */
static	ANTLR3_BITWORD FOLLOW_reference_definition_in_column_definition12329_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_reference_definition_in_column_definition12329	= { FOLLOW_reference_definition_in_column_definition12329_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NOT_SYMBOL_in_column_option12339  */
static	ANTLR3_BITWORD FOLLOW_NOT_SYMBOL_in_column_option12339_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000140000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_NOT_SYMBOL_in_column_option12339	= { FOLLOW_NOT_SYMBOL_in_column_option12339_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_null_literal_in_column_option12342  */
static	ANTLR3_BITWORD FOLLOW_null_literal_in_column_option12342_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_null_literal_in_column_option12342	= { FOLLOW_null_literal_in_column_option12342_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_column_option12347  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_column_option12347_bits[]	= { ANTLR3_UINT64_LIT(0x0000060000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0C00000002010000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000144004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080400000) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_column_option12347	= { FOLLOW_DEFAULT_SYMBOL_in_column_option12347_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_literal_in_column_option12350  */
static	ANTLR3_BITWORD FOLLOW_literal_in_column_option12350_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_literal_in_column_option12350	= { FOLLOW_literal_in_column_option12350_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NOW_SYMBOL_in_column_option12354  */
static	ANTLR3_BITWORD FOLLOW_NOW_SYMBOL_in_column_option12354_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_NOW_SYMBOL_in_column_option12354	= { FOLLOW_NOW_SYMBOL_in_column_option12354_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AUTO_INCREMENT_SYMBOL_in_column_option12360  */
static	ANTLR3_BITWORD FOLLOW_AUTO_INCREMENT_SYMBOL_in_column_option12360_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_AUTO_INCREMENT_SYMBOL_in_column_option12360	= { FOLLOW_AUTO_INCREMENT_SYMBOL_in_column_option12360_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNIQUE_SYMBOL_in_column_option12367  */
static	ANTLR3_BITWORD FOLLOW_UNIQUE_SYMBOL_in_column_option12367_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_UNIQUE_SYMBOL_in_column_option12367	= { FOLLOW_UNIQUE_SYMBOL_in_column_option12367_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_column_option12372  */
static	ANTLR3_BITWORD FOLLOW_set_in_column_option12372_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_column_option12372	= { FOLLOW_set_in_column_option12372_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEY_SYMBOL_in_column_option12380  */
static	ANTLR3_BITWORD FOLLOW_KEY_SYMBOL_in_column_option12380_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_KEY_SYMBOL_in_column_option12380	= { FOLLOW_KEY_SYMBOL_in_column_option12380_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEY_SYMBOL_in_column_option12385  */
static	ANTLR3_BITWORD FOLLOW_KEY_SYMBOL_in_column_option12385_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_KEY_SYMBOL_in_column_option12385	= { FOLLOW_KEY_SYMBOL_in_column_option12385_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMENT_SYMBOL_in_column_option12390  */
static	ANTLR3_BITWORD FOLLOW_COMMENT_SYMBOL_in_column_option12390_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMENT_SYMBOL_in_column_option12390	= { FOLLOW_COMMENT_SYMBOL_in_column_option12390_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_column_option12392  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_column_option12392_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_column_option12392	= { FOLLOW_string_literal_in_column_option12392_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLUMN_FORMAT_SYMBOL_in_column_option12397  */
static	ANTLR3_BITWORD FOLLOW_COLUMN_FORMAT_SYMBOL_in_column_option12397_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000800000040000), ANTLR3_UINT64_LIT(0x0000000001000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COLUMN_FORMAT_SYMBOL_in_column_option12397	= { FOLLOW_COLUMN_FORMAT_SYMBOL_in_column_option12397_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_column_option12399  */
static	ANTLR3_BITWORD FOLLOW_set_in_column_option12399_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_column_option12399	= { FOLLOW_set_in_column_option12399_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STORAGE_SYMBOL_in_column_option12414  */
static	ANTLR3_BITWORD FOLLOW_STORAGE_SYMBOL_in_column_option12414_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200040000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_STORAGE_SYMBOL_in_column_option12414	= { FOLLOW_STORAGE_SYMBOL_in_column_option12414_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_column_option12416  */
static	ANTLR3_BITWORD FOLLOW_set_in_column_option12416_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_column_option12416	= { FOLLOW_set_in_column_option12416_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REFERENCES_SYMBOL_in_reference_definition12435  */
static	ANTLR3_BITWORD FOLLOW_REFERENCES_SYMBOL_in_reference_definition12435_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_REFERENCES_SYMBOL_in_reference_definition12435	= { FOLLOW_REFERENCES_SYMBOL_in_reference_definition12435_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_reference_definition12437  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_reference_definition12437_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_reference_definition12437	= { FOLLOW_identifier_in_reference_definition12437_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_reference_definition12439  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_reference_definition12439_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_reference_definition12439	= { FOLLOW_OPEN_PAR_SYMBOL_in_reference_definition12439_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_column_in_reference_definition12441  */
static	ANTLR3_BITWORD FOLLOW_index_column_in_reference_definition12441_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002004000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_column_in_reference_definition12441	= { FOLLOW_index_column_in_reference_definition12441_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_reference_definition12444  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_reference_definition12444_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_reference_definition12444	= { FOLLOW_COMMA_SYMBOL_in_reference_definition12444_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_column_in_reference_definition12446  */
static	ANTLR3_BITWORD FOLLOW_index_column_in_reference_definition12446_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_column_in_reference_definition12446	= { FOLLOW_index_column_in_reference_definition12446_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_reference_definition12450  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_reference_definition12450_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000080000000000), ANTLR3_UINT64_LIT(0x0100000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_reference_definition12450	= { FOLLOW_CLOSE_PAR_SYMBOL_in_reference_definition12450_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MATCH_SYMBOL_in_reference_definition12455  */
static	ANTLR3_BITWORD FOLLOW_MATCH_SYMBOL_in_reference_definition12455_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000004000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000400), ANTLR3_UINT64_LIT(0x0080000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MATCH_SYMBOL_in_reference_definition12455	= { FOLLOW_MATCH_SYMBOL_in_reference_definition12455_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_reference_definition12457  */
static	ANTLR3_BITWORD FOLLOW_set_in_reference_definition12457_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_reference_definition12457	= { FOLLOW_set_in_reference_definition12457_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_reference_definition12474  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_reference_definition12474_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000400000) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_reference_definition12474	= { FOLLOW_ON_SYMBOL_in_reference_definition12474_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DELETE_SYMBOL_in_reference_definition12476  */
static	ANTLR3_BITWORD FOLLOW_DELETE_SYMBOL_in_reference_definition12476_bits[]	= { ANTLR3_UINT64_LIT(0x8000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000400) };
static  ANTLR3_BITSET_LIST FOLLOW_DELETE_SYMBOL_in_reference_definition12476	= { FOLLOW_DELETE_SYMBOL_in_reference_definition12476_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_reference_option_in_reference_definition12478  */
static	ANTLR3_BITWORD FOLLOW_reference_option_in_reference_definition12478_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_reference_option_in_reference_definition12478	= { FOLLOW_reference_option_in_reference_definition12478_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_reference_definition12485  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_reference_definition12485_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000080000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_reference_definition12485	= { FOLLOW_ON_SYMBOL_in_reference_definition12485_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UPDATE_SYMBOL_in_reference_definition12487  */
static	ANTLR3_BITWORD FOLLOW_UPDATE_SYMBOL_in_reference_definition12487_bits[]	= { ANTLR3_UINT64_LIT(0x8000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000400) };
static  ANTLR3_BITSET_LIST FOLLOW_UPDATE_SYMBOL_in_reference_definition12487	= { FOLLOW_UPDATE_SYMBOL_in_reference_definition12487_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_reference_option_in_reference_definition12489  */
static	ANTLR3_BITWORD FOLLOW_reference_option_in_reference_definition12489_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_reference_option_in_reference_definition12489	= { FOLLOW_reference_option_in_reference_definition12489_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_index_columns12500  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_index_columns12500_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_index_columns12500	= { FOLLOW_OPEN_PAR_SYMBOL_in_index_columns12500_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_column_in_index_columns12502  */
static	ANTLR3_BITWORD FOLLOW_index_column_in_index_columns12502_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002004000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_column_in_index_columns12502	= { FOLLOW_index_column_in_index_columns12502_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_index_columns12505  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_index_columns12505_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_index_columns12505	= { FOLLOW_COMMA_SYMBOL_in_index_columns12505_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_column_in_index_columns12507  */
static	ANTLR3_BITWORD FOLLOW_index_column_in_index_columns12507_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002004000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_column_in_index_columns12507	= { FOLLOW_index_column_in_index_columns12507_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_index_columns12511  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_index_columns12511_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_index_columns12511	= { FOLLOW_CLOSE_PAR_SYMBOL_in_index_columns12511_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_index_column12520  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_index_column12520_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000080002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000001000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_index_column12520	= { FOLLOW_identifier_in_index_column12520_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_index_column12522  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_index_column12522_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000080002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000001000000) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_index_column12522	= { FOLLOW_field_length_in_index_column12522_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_direction_in_index_column12525  */
static	ANTLR3_BITWORD FOLLOW_direction_in_index_column12525_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_direction_in_index_column12525	= { FOLLOW_direction_in_index_column12525_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_index_type12535  */
static	ANTLR3_BITWORD FOLLOW_set_in_index_type12535_bits[]	= { ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0040000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_index_type12535	= { FOLLOW_set_in_index_type12535_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_index_type12543  */
static	ANTLR3_BITWORD FOLLOW_set_in_index_type12543_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_index_type12543	= { FOLLOW_set_in_index_type12543_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEY_BLOCK_SIZE_SYMBOL_in_index_option12558  */
static	ANTLR3_BITWORD FOLLOW_KEY_BLOCK_SIZE_SYMBOL_in_index_option12558_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_KEY_BLOCK_SIZE_SYMBOL_in_index_option12558	= { FOLLOW_KEY_BLOCK_SIZE_SYMBOL_in_index_option12558_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_index_option12560  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_index_option12560_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_index_option12560	= { FOLLOW_EQUAL_OPERATOR_in_index_option12560_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_index_option12563  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_index_option12563_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_index_option12563	= { FOLLOW_INTEGER_in_index_option12563_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_type_in_index_option12568  */
static	ANTLR3_BITWORD FOLLOW_index_type_in_index_option12568_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_index_type_in_index_option12568	= { FOLLOW_index_type_in_index_option12568_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_index_option12573  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_index_option12573_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000200) };
static  ANTLR3_BITSET_LIST FOLLOW_WITH_SYMBOL_in_index_option12573	= { FOLLOW_WITH_SYMBOL_in_index_option12573_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARSER_SYMBOL_in_index_option12575  */
static	ANTLR3_BITWORD FOLLOW_PARSER_SYMBOL_in_index_option12575_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_PARSER_SYMBOL_in_index_option12575	= { FOLLOW_PARSER_SYMBOL_in_index_option12575_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_index_option12577  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_index_option12577_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_index_option12577	= { FOLLOW_identifier_in_index_option12577_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMENT_SYMBOL_in_index_option12586  */
static	ANTLR3_BITWORD FOLLOW_COMMENT_SYMBOL_in_index_option12586_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMENT_SYMBOL_in_index_option12586	= { FOLLOW_COMMENT_SYMBOL_in_index_option12586_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_index_option12588  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_index_option12588_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_index_option12588	= { FOLLOW_string_literal_in_index_option12588_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RESTRICT_SYMBOL_in_reference_option12597  */
static	ANTLR3_BITWORD FOLLOW_RESTRICT_SYMBOL_in_reference_option12597_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_RESTRICT_SYMBOL_in_reference_option12597	= { FOLLOW_RESTRICT_SYMBOL_in_reference_option12597_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CASCADE_SYMBOL_in_reference_option12601  */
static	ANTLR3_BITWORD FOLLOW_CASCADE_SYMBOL_in_reference_option12601_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CASCADE_SYMBOL_in_reference_option12601	= { FOLLOW_CASCADE_SYMBOL_in_reference_option12601_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SET_SYMBOL_in_reference_option12605  */
static	ANTLR3_BITWORD FOLLOW_SET_SYMBOL_in_reference_option12605_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000140000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SET_SYMBOL_in_reference_option12605	= { FOLLOW_SET_SYMBOL_in_reference_option12605_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_null_literal_in_reference_option12607  */
static	ANTLR3_BITWORD FOLLOW_null_literal_in_reference_option12607_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_null_literal_in_reference_option12607	= { FOLLOW_null_literal_in_reference_option12607_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NO_SYMBOL_in_reference_option12611  */
static	ANTLR3_BITWORD FOLLOW_NO_SYMBOL_in_reference_option12611_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_NO_SYMBOL_in_reference_option12611	= { FOLLOW_NO_SYMBOL_in_reference_option12611_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ACTION_SYMBOL_in_reference_option12613  */
static	ANTLR3_BITWORD FOLLOW_ACTION_SYMBOL_in_reference_option12613_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ACTION_SYMBOL_in_reference_option12613	= { FOLLOW_ACTION_SYMBOL_in_reference_option12613_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_integer_type_in_data_type12622  */
static	ANTLR3_BITWORD FOLLOW_integer_type_in_data_type12622_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0040000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000020000000000), ANTLR3_UINT64_LIT(0x0000000008000000) };
static  ANTLR3_BITSET_LIST FOLLOW_integer_type_in_data_type12622	= { FOLLOW_integer_type_in_data_type12622_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_data_type12624  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_data_type12624_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0040000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000020000000000), ANTLR3_UINT64_LIT(0x0000000008000000) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_data_type12624	= { FOLLOW_field_length_in_data_type12624_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_options_in_data_type12627  */
static	ANTLR3_BITWORD FOLLOW_field_options_in_data_type12627_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_options_in_data_type12627	= { FOLLOW_field_options_in_data_type12627_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REAL_SYMBOL_in_data_type12635  */
static	ANTLR3_BITWORD FOLLOW_REAL_SYMBOL_in_data_type12635_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0040000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000020000000000), ANTLR3_UINT64_LIT(0x0000000008000000) };
static  ANTLR3_BITSET_LIST FOLLOW_REAL_SYMBOL_in_data_type12635	= { FOLLOW_REAL_SYMBOL_in_data_type12635_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOUBLE_SYMBOL_in_data_type12639  */
static	ANTLR3_BITWORD FOLLOW_DOUBLE_SYMBOL_in_data_type12639_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0040000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000020000000000), ANTLR3_UINT64_LIT(0x0000000008000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DOUBLE_SYMBOL_in_data_type12639	= { FOLLOW_DOUBLE_SYMBOL_in_data_type12639_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRECISION_SYMBOL_in_data_type12641  */
static	ANTLR3_BITWORD FOLLOW_PRECISION_SYMBOL_in_data_type12641_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0040000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000020000000000), ANTLR3_UINT64_LIT(0x0000000008000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PRECISION_SYMBOL_in_data_type12641	= { FOLLOW_PRECISION_SYMBOL_in_data_type12641_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_precision_in_data_type12645  */
static	ANTLR3_BITWORD FOLLOW_precision_in_data_type12645_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0040000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000020000000000), ANTLR3_UINT64_LIT(0x0000000008000000) };
static  ANTLR3_BITSET_LIST FOLLOW_precision_in_data_type12645	= { FOLLOW_precision_in_data_type12645_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_options_in_data_type12648  */
static	ANTLR3_BITWORD FOLLOW_field_options_in_data_type12648_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_options_in_data_type12648	= { FOLLOW_field_options_in_data_type12648_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FLOAT_SYMBOL_in_data_type12654  */
static	ANTLR3_BITWORD FOLLOW_FLOAT_SYMBOL_in_data_type12654_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0040000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000020000000000), ANTLR3_UINT64_LIT(0x0000000008000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FLOAT_SYMBOL_in_data_type12654	= { FOLLOW_FLOAT_SYMBOL_in_data_type12654_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_float_options_in_data_type12656  */
static	ANTLR3_BITWORD FOLLOW_float_options_in_data_type12656_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0040000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000020000000000), ANTLR3_UINT64_LIT(0x0000000008000000) };
static  ANTLR3_BITSET_LIST FOLLOW_float_options_in_data_type12656	= { FOLLOW_float_options_in_data_type12656_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_options_in_data_type12659  */
static	ANTLR3_BITWORD FOLLOW_field_options_in_data_type12659_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_options_in_data_type12659	= { FOLLOW_field_options_in_data_type12659_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BIT_SYMBOL_in_data_type12667  */
static	ANTLR3_BITWORD FOLLOW_BIT_SYMBOL_in_data_type12667_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BIT_SYMBOL_in_data_type12667	= { FOLLOW_BIT_SYMBOL_in_data_type12667_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_data_type12669  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_data_type12669_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_data_type12669	= { FOLLOW_field_length_in_data_type12669_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BOOL_SYMBOL_in_data_type12675  */
static	ANTLR3_BITWORD FOLLOW_BOOL_SYMBOL_in_data_type12675_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BOOL_SYMBOL_in_data_type12675	= { FOLLOW_BOOL_SYMBOL_in_data_type12675_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BOOLEAN_SYMBOL_in_data_type12680  */
static	ANTLR3_BITWORD FOLLOW_BOOLEAN_SYMBOL_in_data_type12680_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BOOLEAN_SYMBOL_in_data_type12680	= { FOLLOW_BOOLEAN_SYMBOL_in_data_type12680_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_nchar_literal_in_data_type12687  */
static	ANTLR3_BITWORD FOLLOW_nchar_literal_in_data_type12687_bits[]	= { ANTLR3_UINT64_LIT(0x0000004000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_nchar_literal_in_data_type12687	= { FOLLOW_nchar_literal_in_data_type12687_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_data_type12689  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_data_type12689_bits[]	= { ANTLR3_UINT64_LIT(0x0000004000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_data_type12689	= { FOLLOW_field_length_in_data_type12689_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_data_type12692  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_data_type12692_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_data_type12692	= { FOLLOW_BINARY_SYMBOL_in_data_type12692_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_data_type12698  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_data_type12698_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_data_type12698	= { FOLLOW_BINARY_SYMBOL_in_data_type12698_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_data_type12700  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_data_type12700_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_data_type12700	= { FOLLOW_field_length_in_data_type12700_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_varchar_literal_in_data_type12706  */
static	ANTLR3_BITWORD FOLLOW_varchar_literal_in_data_type12706_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_varchar_literal_in_data_type12706	= { FOLLOW_varchar_literal_in_data_type12706_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_data_type12708  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_data_type12708_bits[]	= { ANTLR3_UINT64_LIT(0x0000004000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_data_type12708	= { FOLLOW_field_length_in_data_type12708_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_data_type12710  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_data_type12710_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_data_type12710	= { FOLLOW_BINARY_SYMBOL_in_data_type12710_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_nvarchar_literal_in_data_type12716  */
static	ANTLR3_BITWORD FOLLOW_nvarchar_literal_in_data_type12716_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_nvarchar_literal_in_data_type12716	= { FOLLOW_nvarchar_literal_in_data_type12716_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_data_type12718  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_data_type12718_bits[]	= { ANTLR3_UINT64_LIT(0x0000004000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_data_type12718	= { FOLLOW_field_length_in_data_type12718_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_data_type12720  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_data_type12720_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_data_type12720	= { FOLLOW_BINARY_SYMBOL_in_data_type12720_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VARBINARY_SYMBOL_in_data_type12727  */
static	ANTLR3_BITWORD FOLLOW_VARBINARY_SYMBOL_in_data_type12727_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_VARBINARY_SYMBOL_in_data_type12727	= { FOLLOW_VARBINARY_SYMBOL_in_data_type12727_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_data_type12729  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_data_type12729_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_data_type12729	= { FOLLOW_field_length_in_data_type12729_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_YEAR_SYMBOL_in_data_type12735  */
static	ANTLR3_BITWORD FOLLOW_YEAR_SYMBOL_in_data_type12735_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0040000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000020000000000), ANTLR3_UINT64_LIT(0x0000000008000000) };
static  ANTLR3_BITSET_LIST FOLLOW_YEAR_SYMBOL_in_data_type12735	= { FOLLOW_YEAR_SYMBOL_in_data_type12735_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_data_type12737  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_data_type12737_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0040000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000020000000000), ANTLR3_UINT64_LIT(0x0000000008000000) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_data_type12737	= { FOLLOW_field_length_in_data_type12737_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_options_in_data_type12740  */
static	ANTLR3_BITWORD FOLLOW_field_options_in_data_type12740_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_options_in_data_type12740	= { FOLLOW_field_options_in_data_type12740_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATE_SYMBOL_in_data_type12746  */
static	ANTLR3_BITWORD FOLLOW_DATE_SYMBOL_in_data_type12746_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DATE_SYMBOL_in_data_type12746	= { FOLLOW_DATE_SYMBOL_in_data_type12746_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TIME_SYMBOL_in_data_type12751  */
static	ANTLR3_BITWORD FOLLOW_TIME_SYMBOL_in_data_type12751_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_TIME_SYMBOL_in_data_type12751	= { FOLLOW_TIME_SYMBOL_in_data_type12751_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_type_datetime_precision_in_data_type12753  */
static	ANTLR3_BITWORD FOLLOW_type_datetime_precision_in_data_type12753_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_type_datetime_precision_in_data_type12753	= { FOLLOW_type_datetime_precision_in_data_type12753_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TIMESTAMP_SYMBOL_in_data_type12759  */
static	ANTLR3_BITWORD FOLLOW_TIMESTAMP_SYMBOL_in_data_type12759_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_TIMESTAMP_SYMBOL_in_data_type12759	= { FOLLOW_TIMESTAMP_SYMBOL_in_data_type12759_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_type_datetime_precision_in_data_type12761  */
static	ANTLR3_BITWORD FOLLOW_type_datetime_precision_in_data_type12761_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_type_datetime_precision_in_data_type12761	= { FOLLOW_type_datetime_precision_in_data_type12761_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATETIME_SYMBOL_in_data_type12767  */
static	ANTLR3_BITWORD FOLLOW_DATETIME_SYMBOL_in_data_type12767_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DATETIME_SYMBOL_in_data_type12767	= { FOLLOW_DATETIME_SYMBOL_in_data_type12767_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_type_datetime_precision_in_data_type12769  */
static	ANTLR3_BITWORD FOLLOW_type_datetime_precision_in_data_type12769_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_type_datetime_precision_in_data_type12769	= { FOLLOW_type_datetime_precision_in_data_type12769_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TINYBLOB_SYMBOL_in_data_type12776  */
static	ANTLR3_BITWORD FOLLOW_TINYBLOB_SYMBOL_in_data_type12776_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_TINYBLOB_SYMBOL_in_data_type12776	= { FOLLOW_TINYBLOB_SYMBOL_in_data_type12776_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BLOB_SYMBOL_in_data_type12781  */
static	ANTLR3_BITWORD FOLLOW_BLOB_SYMBOL_in_data_type12781_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BLOB_SYMBOL_in_data_type12781	= { FOLLOW_BLOB_SYMBOL_in_data_type12781_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_data_type12783  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_data_type12783_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_data_type12783	= { FOLLOW_field_length_in_data_type12783_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MEDIUMBLOB_SYMBOL_in_data_type12789  */
static	ANTLR3_BITWORD FOLLOW_MEDIUMBLOB_SYMBOL_in_data_type12789_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MEDIUMBLOB_SYMBOL_in_data_type12789	= { FOLLOW_MEDIUMBLOB_SYMBOL_in_data_type12789_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LONGBLOB_SYMBOL_in_data_type12794  */
static	ANTLR3_BITWORD FOLLOW_LONGBLOB_SYMBOL_in_data_type12794_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_LONGBLOB_SYMBOL_in_data_type12794	= { FOLLOW_LONGBLOB_SYMBOL_in_data_type12794_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LONG_SYMBOL_in_data_type12799  */
static	ANTLR3_BITWORD FOLLOW_LONG_SYMBOL_in_data_type12799_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_LONG_SYMBOL_in_data_type12799	= { FOLLOW_LONG_SYMBOL_in_data_type12799_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VARBINARY_SYMBOL_in_data_type12801  */
static	ANTLR3_BITWORD FOLLOW_VARBINARY_SYMBOL_in_data_type12801_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_VARBINARY_SYMBOL_in_data_type12801	= { FOLLOW_VARBINARY_SYMBOL_in_data_type12801_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LONG_SYMBOL_in_data_type12806  */
static	ANTLR3_BITWORD FOLLOW_LONG_SYMBOL_in_data_type12806_bits[]	= { ANTLR3_UINT64_LIT(0x0000004000000002), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_LONG_SYMBOL_in_data_type12806	= { FOLLOW_LONG_SYMBOL_in_data_type12806_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_varchar_literal_in_data_type12808  */
static	ANTLR3_BITWORD FOLLOW_varchar_literal_in_data_type12808_bits[]	= { ANTLR3_UINT64_LIT(0x0000004000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_varchar_literal_in_data_type12808	= { FOLLOW_varchar_literal_in_data_type12808_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_data_type12811  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_data_type12811_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_data_type12811	= { FOLLOW_BINARY_SYMBOL_in_data_type12811_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TINYTEXT_SYMBOL_in_data_type12818  */
static	ANTLR3_BITWORD FOLLOW_TINYTEXT_SYMBOL_in_data_type12818_bits[]	= { ANTLR3_UINT64_LIT(0x0000004000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_TINYTEXT_SYMBOL_in_data_type12818	= { FOLLOW_TINYTEXT_SYMBOL_in_data_type12818_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_data_type12820  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_data_type12820_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_data_type12820	= { FOLLOW_BINARY_SYMBOL_in_data_type12820_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TEXT_SYMBOL_in_data_type12826  */
static	ANTLR3_BITWORD FOLLOW_TEXT_SYMBOL_in_data_type12826_bits[]	= { ANTLR3_UINT64_LIT(0x0000004000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_TEXT_SYMBOL_in_data_type12826	= { FOLLOW_TEXT_SYMBOL_in_data_type12826_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_data_type12828  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_data_type12828_bits[]	= { ANTLR3_UINT64_LIT(0x0000004000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_data_type12828	= { FOLLOW_field_length_in_data_type12828_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_data_type12831  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_data_type12831_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_data_type12831	= { FOLLOW_BINARY_SYMBOL_in_data_type12831_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MEDIUMTEXT_SYMBOL_in_data_type12837  */
static	ANTLR3_BITWORD FOLLOW_MEDIUMTEXT_SYMBOL_in_data_type12837_bits[]	= { ANTLR3_UINT64_LIT(0x0000004000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MEDIUMTEXT_SYMBOL_in_data_type12837	= { FOLLOW_MEDIUMTEXT_SYMBOL_in_data_type12837_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_data_type12839  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_data_type12839_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_data_type12839	= { FOLLOW_BINARY_SYMBOL_in_data_type12839_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LONGTEXT_SYMBOL_in_data_type12845  */
static	ANTLR3_BITWORD FOLLOW_LONGTEXT_SYMBOL_in_data_type12845_bits[]	= { ANTLR3_UINT64_LIT(0x0000004000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_LONGTEXT_SYMBOL_in_data_type12845	= { FOLLOW_LONGTEXT_SYMBOL_in_data_type12845_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_data_type12847  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_data_type12847_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_data_type12847	= { FOLLOW_BINARY_SYMBOL_in_data_type12847_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DECIMAL_SYMBOL_in_data_type12855  */
static	ANTLR3_BITWORD FOLLOW_DECIMAL_SYMBOL_in_data_type12855_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0040000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000020000000000), ANTLR3_UINT64_LIT(0x0000000008000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DECIMAL_SYMBOL_in_data_type12855	= { FOLLOW_DECIMAL_SYMBOL_in_data_type12855_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_float_options_in_data_type12857  */
static	ANTLR3_BITWORD FOLLOW_float_options_in_data_type12857_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0040000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000020000000000), ANTLR3_UINT64_LIT(0x0000000008000000) };
static  ANTLR3_BITSET_LIST FOLLOW_float_options_in_data_type12857	= { FOLLOW_float_options_in_data_type12857_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_options_in_data_type12860  */
static	ANTLR3_BITWORD FOLLOW_field_options_in_data_type12860_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_options_in_data_type12860	= { FOLLOW_field_options_in_data_type12860_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NUMERIC_SYMBOL_in_data_type12866  */
static	ANTLR3_BITWORD FOLLOW_NUMERIC_SYMBOL_in_data_type12866_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0040000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000020000000000), ANTLR3_UINT64_LIT(0x0000000008000000) };
static  ANTLR3_BITSET_LIST FOLLOW_NUMERIC_SYMBOL_in_data_type12866	= { FOLLOW_NUMERIC_SYMBOL_in_data_type12866_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_float_options_in_data_type12868  */
static	ANTLR3_BITWORD FOLLOW_float_options_in_data_type12868_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0040000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000020000000000), ANTLR3_UINT64_LIT(0x0000000008000000) };
static  ANTLR3_BITSET_LIST FOLLOW_float_options_in_data_type12868	= { FOLLOW_float_options_in_data_type12868_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_options_in_data_type12871  */
static	ANTLR3_BITWORD FOLLOW_field_options_in_data_type12871_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_options_in_data_type12871	= { FOLLOW_field_options_in_data_type12871_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FIXED_SYMBOL_in_data_type12877  */
static	ANTLR3_BITWORD FOLLOW_FIXED_SYMBOL_in_data_type12877_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0040000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000020000000000), ANTLR3_UINT64_LIT(0x0000000008000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FIXED_SYMBOL_in_data_type12877	= { FOLLOW_FIXED_SYMBOL_in_data_type12877_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_float_options_in_data_type12879  */
static	ANTLR3_BITWORD FOLLOW_float_options_in_data_type12879_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0040000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000020000000000), ANTLR3_UINT64_LIT(0x0000000008000000) };
static  ANTLR3_BITSET_LIST FOLLOW_float_options_in_data_type12879	= { FOLLOW_float_options_in_data_type12879_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_options_in_data_type12882  */
static	ANTLR3_BITWORD FOLLOW_field_options_in_data_type12882_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_options_in_data_type12882	= { FOLLOW_field_options_in_data_type12882_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENUM_SYMBOL_in_data_type12890  */
static	ANTLR3_BITWORD FOLLOW_ENUM_SYMBOL_in_data_type12890_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ENUM_SYMBOL_in_data_type12890	= { FOLLOW_ENUM_SYMBOL_in_data_type12890_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_list_in_data_type12892  */
static	ANTLR3_BITWORD FOLLOW_string_list_in_data_type12892_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_list_in_data_type12892	= { FOLLOW_string_list_in_data_type12892_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SET_SYMBOL_in_data_type12897  */
static	ANTLR3_BITWORD FOLLOW_SET_SYMBOL_in_data_type12897_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SET_SYMBOL_in_data_type12897	= { FOLLOW_SET_SYMBOL_in_data_type12897_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_list_in_data_type12899  */
static	ANTLR3_BITWORD FOLLOW_string_list_in_data_type12899_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_list_in_data_type12899	= { FOLLOW_string_list_in_data_type12899_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SERIAL_SYMBOL_in_data_type12904  */
static	ANTLR3_BITWORD FOLLOW_SERIAL_SYMBOL_in_data_type12904_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SERIAL_SYMBOL_in_data_type12904	= { FOLLOW_SERIAL_SYMBOL_in_data_type12904_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_spatial_type_in_data_type12909  */
static	ANTLR3_BITWORD FOLLOW_spatial_type_in_data_type12909_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_spatial_type_in_data_type12909	= { FOLLOW_spatial_type_in_data_type12909_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_field_length12918  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_field_length12918_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_field_length12918	= { FOLLOW_OPEN_PAR_SYMBOL_in_field_length12918_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_field_length12920  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_field_length12920_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_field_length12920	= { FOLLOW_INTEGER_in_field_length12920_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_field_length12922  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_field_length12922_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_field_length12922	= { FOLLOW_CLOSE_PAR_SYMBOL_in_field_length12922_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_type_datetime_precision12955  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_type_datetime_precision12955_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_type_datetime_precision12955	= { FOLLOW_OPEN_PAR_SYMBOL_in_type_datetime_precision12955_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_type_datetime_precision12957  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_type_datetime_precision12957_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_type_datetime_precision12957	= { FOLLOW_INTEGER_in_type_datetime_precision12957_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_type_datetime_precision12959  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_type_datetime_precision12959_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_type_datetime_precision12959	= { FOLLOW_CLOSE_PAR_SYMBOL_in_type_datetime_precision12959_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_charset_name12968  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_charset_name12968_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_charset_name12968	= { FOLLOW_text_or_identifier_in_charset_name12968_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_charset_name12973  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_charset_name12973_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_charset_name12973	= { FOLLOW_BINARY_SYMBOL_in_charset_name12973_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_in_charset_name_or_default12982  */
static	ANTLR3_BITWORD FOLLOW_charset_in_charset_name_or_default12982_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_in_charset_name_or_default12982	= { FOLLOW_charset_in_charset_name_or_default12982_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_charset_name_or_default12987  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_charset_name_or_default12987_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_charset_name_or_default12987	= { FOLLOW_DEFAULT_SYMBOL_in_charset_name_or_default12987_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_collation_name_or_default12996  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_collation_name_or_default12996_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_collation_name_or_default12996	= { FOLLOW_text_or_identifier_in_collation_name_or_default12996_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_collation_name_or_default13001  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_collation_name_or_default13001_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_collation_name_or_default13001	= { FOLLOW_DEFAULT_SYMBOL_in_collation_name_or_default13001_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_table_option_in_alter_table_options13054  */
static	ANTLR3_BITWORD FOLLOW_create_table_option_in_alter_table_options13054_bits[]	= { ANTLR3_UINT64_LIT(0x0000000030000002), ANTLR3_UINT64_LIT(0x8000001008040380), ANTLR3_UINT64_LIT(0x0200000000240000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000040800), ANTLR3_UINT64_LIT(0x0000800000000000), ANTLR3_UINT64_LIT(0x0000000000000008), ANTLR3_UINT64_LIT(0x0000000000008020), ANTLR3_UINT64_LIT(0x0000000001000000), ANTLR3_UINT64_LIT(0x2800010380000000), ANTLR3_UINT64_LIT(0x0000002002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_create_table_option_in_alter_table_options13054	= { FOLLOW_create_table_option_in_alter_table_options13054_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_table_option_in_create_table_options13064  */
static	ANTLR3_BITWORD FOLLOW_create_table_option_in_create_table_options13064_bits[]	= { ANTLR3_UINT64_LIT(0x0000000030000002), ANTLR3_UINT64_LIT(0x800000100A040380), ANTLR3_UINT64_LIT(0x0200000000240000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000040800), ANTLR3_UINT64_LIT(0x0000800000000000), ANTLR3_UINT64_LIT(0x0000000000000008), ANTLR3_UINT64_LIT(0x0000000000008020), ANTLR3_UINT64_LIT(0x0000000001000000), ANTLR3_UINT64_LIT(0x2800010380000000), ANTLR3_UINT64_LIT(0x0000002002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_create_table_option_in_create_table_options13064	= { FOLLOW_create_table_option_in_create_table_options13064_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_create_table_options13067  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_create_table_options13067_bits[]	= { ANTLR3_UINT64_LIT(0x0000000030000000), ANTLR3_UINT64_LIT(0x8000001008040380), ANTLR3_UINT64_LIT(0x0200000000240000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000040800), ANTLR3_UINT64_LIT(0x0000800000000000), ANTLR3_UINT64_LIT(0x0000000000000008), ANTLR3_UINT64_LIT(0x0000000000008020), ANTLR3_UINT64_LIT(0x0000000001000000), ANTLR3_UINT64_LIT(0x2800010380000000), ANTLR3_UINT64_LIT(0x0000002002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_create_table_options13067	= { FOLLOW_COMMA_SYMBOL_in_create_table_options13067_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_table_option_in_create_table_options13070  */
static	ANTLR3_BITWORD FOLLOW_create_table_option_in_create_table_options13070_bits[]	= { ANTLR3_UINT64_LIT(0x0000000030000002), ANTLR3_UINT64_LIT(0x800000100A040380), ANTLR3_UINT64_LIT(0x0200000000240000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000040800), ANTLR3_UINT64_LIT(0x0000800000000000), ANTLR3_UINT64_LIT(0x0000000000000008), ANTLR3_UINT64_LIT(0x0000000000008020), ANTLR3_UINT64_LIT(0x0000000001000000), ANTLR3_UINT64_LIT(0x2800010380000000), ANTLR3_UINT64_LIT(0x0000002002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_create_table_option_in_create_table_options13070	= { FOLLOW_create_table_option_in_create_table_options13070_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENGINE_SYMBOL_in_create_table_option13083  */
static	ANTLR3_BITWORD FOLLOW_ENGINE_SYMBOL_in_create_table_option13083_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x3FA8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_ENGINE_SYMBOL_in_create_table_option13083	= { FOLLOW_ENGINE_SYMBOL_in_create_table_option13083_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TYPE_SYMBOL_in_create_table_option13091  */
static	ANTLR3_BITWORD FOLLOW_TYPE_SYMBOL_in_create_table_option13091_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x3FA8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_TYPE_SYMBOL_in_create_table_option13091	= { FOLLOW_TYPE_SYMBOL_in_create_table_option13091_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option13094  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option13094_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option13094	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option13094_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_create_table_option13097  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_create_table_option13097_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_create_table_option13097	= { FOLLOW_text_or_identifier_in_create_table_option13097_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAX_ROWS_SYMBOL_in_create_table_option13102  */
static	ANTLR3_BITWORD FOLLOW_MAX_ROWS_SYMBOL_in_create_table_option13102_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_MAX_ROWS_SYMBOL_in_create_table_option13102	= { FOLLOW_MAX_ROWS_SYMBOL_in_create_table_option13102_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option13104  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option13104_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option13104	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option13104_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_int_or_param_marker_in_create_table_option13107  */
static	ANTLR3_BITWORD FOLLOW_int_or_param_marker_in_create_table_option13107_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_int_or_param_marker_in_create_table_option13107	= { FOLLOW_int_or_param_marker_in_create_table_option13107_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MIN_ROWS_SYMBOL_in_create_table_option13112  */
static	ANTLR3_BITWORD FOLLOW_MIN_ROWS_SYMBOL_in_create_table_option13112_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_MIN_ROWS_SYMBOL_in_create_table_option13112	= { FOLLOW_MIN_ROWS_SYMBOL_in_create_table_option13112_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option13114  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option13114_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option13114	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option13114_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_int_or_param_marker_in_create_table_option13117  */
static	ANTLR3_BITWORD FOLLOW_int_or_param_marker_in_create_table_option13117_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_int_or_param_marker_in_create_table_option13117	= { FOLLOW_int_or_param_marker_in_create_table_option13117_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AVG_ROW_LENGTH_SYMBOL_in_create_table_option13122  */
static	ANTLR3_BITWORD FOLLOW_AVG_ROW_LENGTH_SYMBOL_in_create_table_option13122_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_AVG_ROW_LENGTH_SYMBOL_in_create_table_option13122	= { FOLLOW_AVG_ROW_LENGTH_SYMBOL_in_create_table_option13122_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option13124  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option13124_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option13124	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option13124_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_int_or_param_marker_in_create_table_option13127  */
static	ANTLR3_BITWORD FOLLOW_int_or_param_marker_in_create_table_option13127_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_int_or_param_marker_in_create_table_option13127	= { FOLLOW_int_or_param_marker_in_create_table_option13127_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PASSWORD_SYMBOL_in_create_table_option13132  */
static	ANTLR3_BITWORD FOLLOW_PASSWORD_SYMBOL_in_create_table_option13132_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PASSWORD_SYMBOL_in_create_table_option13132	= { FOLLOW_PASSWORD_SYMBOL_in_create_table_option13132_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option13134  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option13134_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option13134	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option13134_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_param_marker_in_create_table_option13137  */
static	ANTLR3_BITWORD FOLLOW_text_or_param_marker_in_create_table_option13137_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_param_marker_in_create_table_option13137	= { FOLLOW_text_or_param_marker_in_create_table_option13137_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMENT_SYMBOL_in_create_table_option13142  */
static	ANTLR3_BITWORD FOLLOW_COMMENT_SYMBOL_in_create_table_option13142_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMENT_SYMBOL_in_create_table_option13142	= { FOLLOW_COMMENT_SYMBOL_in_create_table_option13142_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option13144  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option13144_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option13144	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option13144_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_param_marker_in_create_table_option13147  */
static	ANTLR3_BITWORD FOLLOW_text_or_param_marker_in_create_table_option13147_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_param_marker_in_create_table_option13147	= { FOLLOW_text_or_param_marker_in_create_table_option13147_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AUTO_INCREMENT_SYMBOL_in_create_table_option13152  */
static	ANTLR3_BITWORD FOLLOW_AUTO_INCREMENT_SYMBOL_in_create_table_option13152_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_AUTO_INCREMENT_SYMBOL_in_create_table_option13152	= { FOLLOW_AUTO_INCREMENT_SYMBOL_in_create_table_option13152_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option13154  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option13154_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option13154	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option13154_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_int_or_param_marker_in_create_table_option13157  */
static	ANTLR3_BITWORD FOLLOW_int_or_param_marker_in_create_table_option13157_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_int_or_param_marker_in_create_table_option13157	= { FOLLOW_int_or_param_marker_in_create_table_option13157_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PACK_KEYS_SYMBOL_in_create_table_option13162  */
static	ANTLR3_BITWORD FOLLOW_PACK_KEYS_SYMBOL_in_create_table_option13162_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000010040000) };
static  ANTLR3_BITSET_LIST FOLLOW_PACK_KEYS_SYMBOL_in_create_table_option13162	= { FOLLOW_PACK_KEYS_SYMBOL_in_create_table_option13162_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option13164  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option13164_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010040000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option13164	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option13164_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_create_table_option13167  */
static	ANTLR3_BITWORD FOLLOW_set_in_create_table_option13167_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_create_table_option13167	= { FOLLOW_set_in_create_table_option13167_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_create_table_option13182  */
static	ANTLR3_BITWORD FOLLOW_set_in_create_table_option13182_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000040000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_create_table_option13182	= { FOLLOW_set_in_create_table_option13182_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option13196  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option13196_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000040000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option13196	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option13196_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_int_or_param_marker_in_create_table_option13200  */
static	ANTLR3_BITWORD FOLLOW_int_or_param_marker_in_create_table_option13200_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_int_or_param_marker_in_create_table_option13200	= { FOLLOW_int_or_param_marker_in_create_table_option13200_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_create_table_option13204  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_create_table_option13204_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_create_table_option13204	= { FOLLOW_DEFAULT_SYMBOL_in_create_table_option13204_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_create_table_option13210  */
static	ANTLR3_BITWORD FOLLOW_set_in_create_table_option13210_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_create_table_option13210	= { FOLLOW_set_in_create_table_option13210_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option13218  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option13218_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option13218	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option13218_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DIGIT_in_create_table_option13221  */
static	ANTLR3_BITWORD FOLLOW_DIGIT_in_create_table_option13221_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DIGIT_in_create_table_option13221	= { FOLLOW_DIGIT_in_create_table_option13221_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DELAY_KEY_WRITE_SYMBOL_in_create_table_option13227  */
static	ANTLR3_BITWORD FOLLOW_DELAY_KEY_WRITE_SYMBOL_in_create_table_option13227_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DELAY_KEY_WRITE_SYMBOL_in_create_table_option13227	= { FOLLOW_DELAY_KEY_WRITE_SYMBOL_in_create_table_option13227_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option13229  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option13229_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option13229	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option13229_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DIGIT_in_create_table_option13232  */
static	ANTLR3_BITWORD FOLLOW_DIGIT_in_create_table_option13232_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DIGIT_in_create_table_option13232	= { FOLLOW_DIGIT_in_create_table_option13232_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ROW_FORMAT_SYMBOL_in_create_table_option13237  */
static	ANTLR3_BITWORD FOLLOW_ROW_FORMAT_SYMBOL_in_create_table_option13237_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000140000000), ANTLR3_UINT64_LIT(0x0800800000040000), ANTLR3_UINT64_LIT(0x0000000001000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ROW_FORMAT_SYMBOL_in_create_table_option13237	= { FOLLOW_ROW_FORMAT_SYMBOL_in_create_table_option13237_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option13239  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option13239_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000140000000), ANTLR3_UINT64_LIT(0x0000800000040000), ANTLR3_UINT64_LIT(0x0000000001000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option13239	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option13239_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_create_table_option13242  */
static	ANTLR3_BITWORD FOLLOW_set_in_create_table_option13242_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_create_table_option13242	= { FOLLOW_set_in_create_table_option13242_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNION_SYMBOL_in_create_table_option13269  */
static	ANTLR3_BITWORD FOLLOW_UNION_SYMBOL_in_create_table_option13269_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_UNION_SYMBOL_in_create_table_option13269	= { FOLLOW_UNION_SYMBOL_in_create_table_option13269_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option13271  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option13271_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option13271	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option13271_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_create_table_option13274  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_create_table_option13274_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_create_table_option13274	= { FOLLOW_OPEN_PAR_SYMBOL_in_create_table_option13274_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_list_in_create_table_option13276  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_list_in_create_table_option13276_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_list_in_create_table_option13276	= { FOLLOW_qualified_identifier_list_in_create_table_option13276_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_option13278  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_option13278_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_option13278	= { FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_option13278_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_create_table_option13283  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_create_table_option13283_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000040180) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_create_table_option13283	= { FOLLOW_DEFAULT_SYMBOL_in_create_table_option13283_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLLATE_SYMBOL_in_create_table_option13293  */
static	ANTLR3_BITWORD FOLLOW_COLLATE_SYMBOL_in_create_table_option13293_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x3FA8E503CA2E1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COLLATE_SYMBOL_in_create_table_option13293	= { FOLLOW_COLLATE_SYMBOL_in_create_table_option13293_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option13295  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option13295_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2E1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option13295	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option13295_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_collation_name_or_default_in_create_table_option13298  */
static	ANTLR3_BITWORD FOLLOW_collation_name_or_default_in_create_table_option13298_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_collation_name_or_default_in_create_table_option13298	= { FOLLOW_collation_name_or_default_in_create_table_option13298_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_in_create_table_option13305  */
static	ANTLR3_BITWORD FOLLOW_charset_in_create_table_option13305_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000180), ANTLR3_UINT64_LIT(0x0800000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_in_create_table_option13305	= { FOLLOW_charset_in_create_table_option13305_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option13307  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option13307_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000180), ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option13307	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option13307_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_name_or_default_in_create_table_option13310  */
static	ANTLR3_BITWORD FOLLOW_charset_name_or_default_in_create_table_option13310_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_name_or_default_in_create_table_option13310	= { FOLLOW_charset_name_or_default_in_create_table_option13310_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INSERT_METHOD_SYMBOL_in_create_table_option13320  */
static	ANTLR3_BITWORD FOLLOW_INSERT_METHOD_SYMBOL_in_create_table_option13320_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0000000000800000), ANTLR3_UINT64_LIT(0x0002000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INSERT_METHOD_SYMBOL_in_create_table_option13320	= { FOLLOW_INSERT_METHOD_SYMBOL_in_create_table_option13320_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option13322  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option13322_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000800000), ANTLR3_UINT64_LIT(0x0002000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option13322	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option13322_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_create_table_option13325  */
static	ANTLR3_BITWORD FOLLOW_set_in_create_table_option13325_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_create_table_option13325	= { FOLLOW_set_in_create_table_option13325_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATA_SYMBOL_in_create_table_option13340  */
static	ANTLR3_BITWORD FOLLOW_DATA_SYMBOL_in_create_table_option13340_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DATA_SYMBOL_in_create_table_option13340	= { FOLLOW_DATA_SYMBOL_in_create_table_option13340_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DIRECTORY_SYMBOL_in_create_table_option13342  */
static	ANTLR3_BITWORD FOLLOW_DIRECTORY_SYMBOL_in_create_table_option13342_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DIRECTORY_SYMBOL_in_create_table_option13342	= { FOLLOW_DIRECTORY_SYMBOL_in_create_table_option13342_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option13344  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option13344_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option13344	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option13344_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_param_marker_in_create_table_option13347  */
static	ANTLR3_BITWORD FOLLOW_text_or_param_marker_in_create_table_option13347_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_param_marker_in_create_table_option13347	= { FOLLOW_text_or_param_marker_in_create_table_option13347_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INDEX_SYMBOL_in_create_table_option13352  */
static	ANTLR3_BITWORD FOLLOW_INDEX_SYMBOL_in_create_table_option13352_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INDEX_SYMBOL_in_create_table_option13352	= { FOLLOW_INDEX_SYMBOL_in_create_table_option13352_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DIRECTORY_SYMBOL_in_create_table_option13354  */
static	ANTLR3_BITWORD FOLLOW_DIRECTORY_SYMBOL_in_create_table_option13354_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DIRECTORY_SYMBOL_in_create_table_option13354	= { FOLLOW_DIRECTORY_SYMBOL_in_create_table_option13354_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option13356  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option13356_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option13356	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option13356_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_param_marker_in_create_table_option13359  */
static	ANTLR3_BITWORD FOLLOW_text_or_param_marker_in_create_table_option13359_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_param_marker_in_create_table_option13359	= { FOLLOW_text_or_param_marker_in_create_table_option13359_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLESPACE_SYMBOL_in_create_table_option13364  */
static	ANTLR3_BITWORD FOLLOW_TABLESPACE_SYMBOL_in_create_table_option13364_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLESPACE_SYMBOL_in_create_table_option13364	= { FOLLOW_TABLESPACE_SYMBOL_in_create_table_option13364_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_create_table_option13366  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_create_table_option13366_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_create_table_option13366	= { FOLLOW_identifier_in_create_table_option13366_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STORAGE_SYMBOL_in_create_table_option13371  */
static	ANTLR3_BITWORD FOLLOW_STORAGE_SYMBOL_in_create_table_option13371_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_STORAGE_SYMBOL_in_create_table_option13371	= { FOLLOW_STORAGE_SYMBOL_in_create_table_option13371_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_create_table_option13373  */
static	ANTLR3_BITWORD FOLLOW_set_in_create_table_option13373_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_create_table_option13373	= { FOLLOW_set_in_create_table_option13373_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONNECTION_SYMBOL_in_create_table_option13384  */
static	ANTLR3_BITWORD FOLLOW_CONNECTION_SYMBOL_in_create_table_option13384_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CONNECTION_SYMBOL_in_create_table_option13384	= { FOLLOW_CONNECTION_SYMBOL_in_create_table_option13384_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option13386  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option13386_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option13386	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option13386_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_param_marker_in_create_table_option13389  */
static	ANTLR3_BITWORD FOLLOW_text_or_param_marker_in_create_table_option13389_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_param_marker_in_create_table_option13389	= { FOLLOW_text_or_param_marker_in_create_table_option13389_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEY_BLOCK_SIZE_SYMBOL_in_create_table_option13394  */
static	ANTLR3_BITWORD FOLLOW_KEY_BLOCK_SIZE_SYMBOL_in_create_table_option13394_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_KEY_BLOCK_SIZE_SYMBOL_in_create_table_option13394	= { FOLLOW_KEY_BLOCK_SIZE_SYMBOL_in_create_table_option13394_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option13396  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option13396_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option13396	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option13396_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_int_or_param_marker_in_create_table_option13399  */
static	ANTLR3_BITWORD FOLLOW_int_or_param_marker_in_create_table_option13399_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_int_or_param_marker_in_create_table_option13399	= { FOLLOW_int_or_param_marker_in_create_table_option13399_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_partitioning13413  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_partitioning13413_bits[]	= { ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_partitioning13413	= { FOLLOW_PARTITION_SYMBOL_in_partitioning13413_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_partitioning13415  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_partitioning13415_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0040000000000000), ANTLR3_UINT64_LIT(0x4000400000000000), ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000040000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0001000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_partitioning13415	= { FOLLOW_BY_SYMBOL_in_partitioning13415_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LINEAR_SYMBOL_in_partitioning13424  */
static	ANTLR3_BITWORD FOLLOW_LINEAR_SYMBOL_in_partitioning13424_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0040000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_LINEAR_SYMBOL_in_partitioning13424	= { FOLLOW_LINEAR_SYMBOL_in_partitioning13424_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HASH_SYMBOL_in_partitioning13427  */
static	ANTLR3_BITWORD FOLLOW_HASH_SYMBOL_in_partitioning13427_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_HASH_SYMBOL_in_partitioning13427	= { FOLLOW_HASH_SYMBOL_in_partitioning13427_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_partitioning13429  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_partitioning13429_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_partitioning13429	= { FOLLOW_OPEN_PAR_SYMBOL_in_partitioning13429_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_partitioning13431  */
static	ANTLR3_BITWORD FOLLOW_expression_in_partitioning13431_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_partitioning13431	= { FOLLOW_expression_in_partitioning13431_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning13433  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning13433_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0001000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning13433	= { FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning13433_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LINEAR_SYMBOL_in_partitioning13440  */
static	ANTLR3_BITWORD FOLLOW_LINEAR_SYMBOL_in_partitioning13440_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_LINEAR_SYMBOL_in_partitioning13440	= { FOLLOW_LINEAR_SYMBOL_in_partitioning13440_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEY_SYMBOL_in_partitioning13443  */
static	ANTLR3_BITWORD FOLLOW_KEY_SYMBOL_in_partitioning13443_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_KEY_SYMBOL_in_partitioning13443	= { FOLLOW_KEY_SYMBOL_in_partitioning13443_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_with_parentheses_in_partitioning13445  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_with_parentheses_in_partitioning13445_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0001000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_with_parentheses_in_partitioning13445	= { FOLLOW_identifier_list_with_parentheses_in_partitioning13445_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_partitioning13452  */
static	ANTLR3_BITWORD FOLLOW_set_in_partitioning13452_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000200000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_partitioning13452	= { FOLLOW_set_in_partitioning13452_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_partitioning13472  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_partitioning13472_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_partitioning13472	= { FOLLOW_OPEN_PAR_SYMBOL_in_partitioning13472_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_partitioning13474  */
static	ANTLR3_BITWORD FOLLOW_expression_in_partitioning13474_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_partitioning13474	= { FOLLOW_expression_in_partitioning13474_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning13476  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning13476_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0001000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning13476	= { FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning13476_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLUMNS_SYMBOL_in_partitioning13489  */
static	ANTLR3_BITWORD FOLLOW_COLUMNS_SYMBOL_in_partitioning13489_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COLUMNS_SYMBOL_in_partitioning13489	= { FOLLOW_COLUMNS_SYMBOL_in_partitioning13489_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_with_parentheses_in_partitioning13491  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_with_parentheses_in_partitioning13491_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0001000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_with_parentheses_in_partitioning13491	= { FOLLOW_identifier_list_with_parentheses_in_partitioning13491_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITIONS_SYMBOL_in_partitioning13507  */
static	ANTLR3_BITWORD FOLLOW_PARTITIONS_SYMBOL_in_partitioning13507_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITIONS_SYMBOL_in_partitioning13507	= { FOLLOW_PARTITIONS_SYMBOL_in_partitioning13507_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_partitioning13509  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_partitioning13509_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0001000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_partitioning13509	= { FOLLOW_INTEGER_in_partitioning13509_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SUBPARTITION_SYMBOL_in_partitioning13520  */
static	ANTLR3_BITWORD FOLLOW_SUBPARTITION_SYMBOL_in_partitioning13520_bits[]	= { ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SUBPARTITION_SYMBOL_in_partitioning13520	= { FOLLOW_SUBPARTITION_SYMBOL_in_partitioning13520_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_partitioning13522  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_partitioning13522_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0040000000000000), ANTLR3_UINT64_LIT(0x4000400000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000800000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_partitioning13522	= { FOLLOW_BY_SYMBOL_in_partitioning13522_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LINEAR_SYMBOL_in_partitioning13533  */
static	ANTLR3_BITWORD FOLLOW_LINEAR_SYMBOL_in_partitioning13533_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0040000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_LINEAR_SYMBOL_in_partitioning13533	= { FOLLOW_LINEAR_SYMBOL_in_partitioning13533_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HASH_SYMBOL_in_partitioning13536  */
static	ANTLR3_BITWORD FOLLOW_HASH_SYMBOL_in_partitioning13536_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_HASH_SYMBOL_in_partitioning13536	= { FOLLOW_HASH_SYMBOL_in_partitioning13536_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_partitioning13538  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_partitioning13538_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_partitioning13538	= { FOLLOW_OPEN_PAR_SYMBOL_in_partitioning13538_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_partitioning13540  */
static	ANTLR3_BITWORD FOLLOW_expression_in_partitioning13540_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_partitioning13540	= { FOLLOW_expression_in_partitioning13540_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning13542  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning13542_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000800000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning13542	= { FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning13542_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LINEAR_SYMBOL_in_partitioning13550  */
static	ANTLR3_BITWORD FOLLOW_LINEAR_SYMBOL_in_partitioning13550_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_LINEAR_SYMBOL_in_partitioning13550	= { FOLLOW_LINEAR_SYMBOL_in_partitioning13550_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEY_SYMBOL_in_partitioning13553  */
static	ANTLR3_BITWORD FOLLOW_KEY_SYMBOL_in_partitioning13553_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_KEY_SYMBOL_in_partitioning13553	= { FOLLOW_KEY_SYMBOL_in_partitioning13553_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_with_parentheses_in_partitioning13555  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_with_parentheses_in_partitioning13555_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000800000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_with_parentheses_in_partitioning13555	= { FOLLOW_identifier_list_with_parentheses_in_partitioning13555_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SUBPARTITIONS_SYMBOL_in_partitioning13567  */
static	ANTLR3_BITWORD FOLLOW_SUBPARTITIONS_SYMBOL_in_partitioning13567_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SUBPARTITIONS_SYMBOL_in_partitioning13567	= { FOLLOW_SUBPARTITIONS_SYMBOL_in_partitioning13567_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_partitioning13569  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_partitioning13569_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_partitioning13569	= { FOLLOW_INTEGER_in_partitioning13569_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partition_definitions_in_partitioning13586  */
static	ANTLR3_BITWORD FOLLOW_partition_definitions_in_partitioning13586_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_partition_definitions_in_partitioning13586	= { FOLLOW_partition_definitions_in_partitioning13586_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_partition_definitions13596  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_partition_definitions13596_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_partition_definitions13596	= { FOLLOW_OPEN_PAR_SYMBOL_in_partition_definitions13596_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partition_definition_in_partition_definitions13598  */
static	ANTLR3_BITWORD FOLLOW_partition_definition_in_partition_definitions13598_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002004000) };
static  ANTLR3_BITSET_LIST FOLLOW_partition_definition_in_partition_definitions13598	= { FOLLOW_partition_definition_in_partition_definitions13598_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_partition_definitions13601  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_partition_definitions13601_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_partition_definitions13601	= { FOLLOW_COMMA_SYMBOL_in_partition_definitions13601_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partition_definition_in_partition_definitions13603  */
static	ANTLR3_BITWORD FOLLOW_partition_definition_in_partition_definitions13603_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002004000) };
static  ANTLR3_BITSET_LIST FOLLOW_partition_definition_in_partition_definitions13603	= { FOLLOW_partition_definition_in_partition_definitions13603_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_partition_definitions13607  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_partition_definitions13607_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_partition_definitions13607	= { FOLLOW_CLOSE_PAR_SYMBOL_in_partition_definitions13607_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_partition_definition13616  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_partition_definition13616_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_partition_definition13616	= { FOLLOW_PARTITION_SYMBOL_in_partition_definition13616_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_partition_definition13618  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_partition_definition13618_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x8000000008000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000800000000000), ANTLR3_UINT64_LIT(0x0200000100000008), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800010000000000), ANTLR3_UINT64_LIT(0x0040000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_partition_definition13618	= { FOLLOW_identifier_in_partition_definition13618_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VALUES_SYMBOL_in_partition_definition13625  */
static	ANTLR3_BITWORD FOLLOW_VALUES_SYMBOL_in_partition_definition13625_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000100000000) };
static  ANTLR3_BITSET_LIST FOLLOW_VALUES_SYMBOL_in_partition_definition13625	= { FOLLOW_VALUES_SYMBOL_in_partition_definition13625_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LESS_SYMBOL_in_partition_definition13634  */
static	ANTLR3_BITWORD FOLLOW_LESS_SYMBOL_in_partition_definition13634_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_LESS_SYMBOL_in_partition_definition13634	= { FOLLOW_LESS_SYMBOL_in_partition_definition13634_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_THAN_SYMBOL_in_partition_definition13636  */
static	ANTLR3_BITWORD FOLLOW_THAN_SYMBOL_in_partition_definition13636_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_THAN_SYMBOL_in_partition_definition13636	= { FOLLOW_THAN_SYMBOL_in_partition_definition13636_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partition_value_list_in_partition_definition13639  */
static	ANTLR3_BITWORD FOLLOW_partition_value_list_in_partition_definition13639_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x8000000008000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000800000000000), ANTLR3_UINT64_LIT(0x0200000100000008), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800010000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_partition_value_list_in_partition_definition13639	= { FOLLOW_partition_value_list_in_partition_definition13639_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAXVALUE_SYMBOL_in_partition_definition13643  */
static	ANTLR3_BITWORD FOLLOW_MAXVALUE_SYMBOL_in_partition_definition13643_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x8000000008000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000800000000000), ANTLR3_UINT64_LIT(0x0200000100000008), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800010000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MAXVALUE_SYMBOL_in_partition_definition13643	= { FOLLOW_MAXVALUE_SYMBOL_in_partition_definition13643_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IN_SYMBOL_in_partition_definition13651  */
static	ANTLR3_BITWORD FOLLOW_IN_SYMBOL_in_partition_definition13651_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_IN_SYMBOL_in_partition_definition13651	= { FOLLOW_IN_SYMBOL_in_partition_definition13651_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partition_value_list_in_partition_definition13653  */
static	ANTLR3_BITWORD FOLLOW_partition_value_list_in_partition_definition13653_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x8000000008000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000800000000000), ANTLR3_UINT64_LIT(0x0200000100000008), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800010000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_partition_value_list_in_partition_definition13653	= { FOLLOW_partition_value_list_in_partition_definition13653_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STORAGE_SYMBOL_in_partition_definition13665  */
static	ANTLR3_BITWORD FOLLOW_STORAGE_SYMBOL_in_partition_definition13665_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_STORAGE_SYMBOL_in_partition_definition13665	= { FOLLOW_STORAGE_SYMBOL_in_partition_definition13665_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENGINE_SYMBOL_in_partition_definition13668  */
static	ANTLR3_BITWORD FOLLOW_ENGINE_SYMBOL_in_partition_definition13668_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_ENGINE_SYMBOL_in_partition_definition13668	= { FOLLOW_ENGINE_SYMBOL_in_partition_definition13668_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_partition_definition13670  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_partition_definition13670_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_partition_definition13670	= { FOLLOW_EQUAL_OPERATOR_in_partition_definition13670_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IDENTIFIER_in_partition_definition13673  */
static	ANTLR3_BITWORD FOLLOW_IDENTIFIER_in_partition_definition13673_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x8000000008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000800000000000), ANTLR3_UINT64_LIT(0x0200000100000008), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_IDENTIFIER_in_partition_definition13673	= { FOLLOW_IDENTIFIER_in_partition_definition13673_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMENT_SYMBOL_in_partition_definition13679  */
static	ANTLR3_BITWORD FOLLOW_COMMENT_SYMBOL_in_partition_definition13679_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMENT_SYMBOL_in_partition_definition13679	= { FOLLOW_COMMENT_SYMBOL_in_partition_definition13679_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_partition_definition13681  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_partition_definition13681_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_partition_definition13681	= { FOLLOW_EQUAL_OPERATOR_in_partition_definition13681_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_partition_definition13684  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_partition_definition13684_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x8000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000800000000000), ANTLR3_UINT64_LIT(0x0200000100000008), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_partition_definition13684	= { FOLLOW_string_literal_in_partition_definition13684_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATA_SYMBOL_in_partition_definition13690  */
static	ANTLR3_BITWORD FOLLOW_DATA_SYMBOL_in_partition_definition13690_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DATA_SYMBOL_in_partition_definition13690	= { FOLLOW_DATA_SYMBOL_in_partition_definition13690_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DIRECTORY_SYMBOL_in_partition_definition13692  */
static	ANTLR3_BITWORD FOLLOW_DIRECTORY_SYMBOL_in_partition_definition13692_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DIRECTORY_SYMBOL_in_partition_definition13692	= { FOLLOW_DIRECTORY_SYMBOL_in_partition_definition13692_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_partition_definition13694  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_partition_definition13694_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_partition_definition13694	= { FOLLOW_EQUAL_OPERATOR_in_partition_definition13694_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_partition_definition13697  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_partition_definition13697_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000800000000000), ANTLR3_UINT64_LIT(0x0200000100000008), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_partition_definition13697	= { FOLLOW_string_literal_in_partition_definition13697_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INDEX_SYMBOL_in_partition_definition13703  */
static	ANTLR3_BITWORD FOLLOW_INDEX_SYMBOL_in_partition_definition13703_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INDEX_SYMBOL_in_partition_definition13703	= { FOLLOW_INDEX_SYMBOL_in_partition_definition13703_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DIRECTORY_SYMBOL_in_partition_definition13705  */
static	ANTLR3_BITWORD FOLLOW_DIRECTORY_SYMBOL_in_partition_definition13705_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DIRECTORY_SYMBOL_in_partition_definition13705	= { FOLLOW_DIRECTORY_SYMBOL_in_partition_definition13705_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_partition_definition13707  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_partition_definition13707_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_partition_definition13707	= { FOLLOW_EQUAL_OPERATOR_in_partition_definition13707_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_partition_definition13710  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_partition_definition13710_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000800000000000), ANTLR3_UINT64_LIT(0x0200000100000008), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_partition_definition13710	= { FOLLOW_string_literal_in_partition_definition13710_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAX_ROWS_SYMBOL_in_partition_definition13716  */
static	ANTLR3_BITWORD FOLLOW_MAX_ROWS_SYMBOL_in_partition_definition13716_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MAX_ROWS_SYMBOL_in_partition_definition13716	= { FOLLOW_MAX_ROWS_SYMBOL_in_partition_definition13716_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_partition_definition13718  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_partition_definition13718_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_partition_definition13718	= { FOLLOW_EQUAL_OPERATOR_in_partition_definition13718_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_partition_definition13721  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_partition_definition13721_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000100000008), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_partition_definition13721	= { FOLLOW_INTEGER_in_partition_definition13721_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MIN_ROWS_SYMBOL_in_partition_definition13727  */
static	ANTLR3_BITWORD FOLLOW_MIN_ROWS_SYMBOL_in_partition_definition13727_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MIN_ROWS_SYMBOL_in_partition_definition13727	= { FOLLOW_MIN_ROWS_SYMBOL_in_partition_definition13727_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_partition_definition13729  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_partition_definition13729_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_partition_definition13729	= { FOLLOW_EQUAL_OPERATOR_in_partition_definition13729_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_partition_definition13732  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_partition_definition13732_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000100000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_partition_definition13732	= { FOLLOW_INTEGER_in_partition_definition13732_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLESPACE_SYMBOL_in_partition_definition13738  */
static	ANTLR3_BITWORD FOLLOW_TABLESPACE_SYMBOL_in_partition_definition13738_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x3FA8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLESPACE_SYMBOL_in_partition_definition13738	= { FOLLOW_TABLESPACE_SYMBOL_in_partition_definition13738_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_partition_definition13740  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_partition_definition13740_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_partition_definition13740	= { FOLLOW_EQUAL_OPERATOR_in_partition_definition13740_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_partition_definition13743  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_partition_definition13743_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000100000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_partition_definition13743	= { FOLLOW_identifier_in_partition_definition13743_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NODEGROUP_SYMBOL_in_partition_definition13749  */
static	ANTLR3_BITWORD FOLLOW_NODEGROUP_SYMBOL_in_partition_definition13749_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x3FA8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_NODEGROUP_SYMBOL_in_partition_definition13749	= { FOLLOW_NODEGROUP_SYMBOL_in_partition_definition13749_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_partition_definition13751  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_partition_definition13751_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_partition_definition13751	= { FOLLOW_EQUAL_OPERATOR_in_partition_definition13751_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_partition_definition13754  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_partition_definition13754_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_partition_definition13754	= { FOLLOW_identifier_in_partition_definition13754_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_partition_definition13760  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_partition_definition13760_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0001000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_partition_definition13760	= { FOLLOW_OPEN_PAR_SYMBOL_in_partition_definition13760_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_subpartition_definition_in_partition_definition13762  */
static	ANTLR3_BITWORD FOLLOW_subpartition_definition_in_partition_definition13762_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002004000) };
static  ANTLR3_BITSET_LIST FOLLOW_subpartition_definition_in_partition_definition13762	= { FOLLOW_subpartition_definition_in_partition_definition13762_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_partition_definition13765  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_partition_definition13765_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0001000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_partition_definition13765	= { FOLLOW_COMMA_SYMBOL_in_partition_definition13765_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_subpartition_definition_in_partition_definition13767  */
static	ANTLR3_BITWORD FOLLOW_subpartition_definition_in_partition_definition13767_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002004000) };
static  ANTLR3_BITSET_LIST FOLLOW_subpartition_definition_in_partition_definition13767	= { FOLLOW_subpartition_definition_in_partition_definition13767_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_partition_definition13771  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_partition_definition13771_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_partition_definition13771	= { FOLLOW_CLOSE_PAR_SYMBOL_in_partition_definition13771_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SUBPARTITION_SYMBOL_in_subpartition_definition13782  */
static	ANTLR3_BITWORD FOLLOW_SUBPARTITION_SYMBOL_in_subpartition_definition13782_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_SUBPARTITION_SYMBOL_in_subpartition_definition13782	= { FOLLOW_SUBPARTITION_SYMBOL_in_subpartition_definition13782_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_subpartition_definition13784  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_subpartition_definition13784_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x8000000008000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000800000000000), ANTLR3_UINT64_LIT(0x0000000100000008), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800010000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_subpartition_definition13784	= { FOLLOW_identifier_in_subpartition_definition13784_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STORAGE_SYMBOL_in_subpartition_definition13789  */
static	ANTLR3_BITWORD FOLLOW_STORAGE_SYMBOL_in_subpartition_definition13789_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_STORAGE_SYMBOL_in_subpartition_definition13789	= { FOLLOW_STORAGE_SYMBOL_in_subpartition_definition13789_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENGINE_SYMBOL_in_subpartition_definition13792  */
static	ANTLR3_BITWORD FOLLOW_ENGINE_SYMBOL_in_subpartition_definition13792_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_ENGINE_SYMBOL_in_subpartition_definition13792	= { FOLLOW_ENGINE_SYMBOL_in_subpartition_definition13792_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_subpartition_definition13794  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_subpartition_definition13794_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_subpartition_definition13794	= { FOLLOW_EQUAL_OPERATOR_in_subpartition_definition13794_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IDENTIFIER_in_subpartition_definition13797  */
static	ANTLR3_BITWORD FOLLOW_IDENTIFIER_in_subpartition_definition13797_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x8000000008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000800000000000), ANTLR3_UINT64_LIT(0x0000000100000008), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_IDENTIFIER_in_subpartition_definition13797	= { FOLLOW_IDENTIFIER_in_subpartition_definition13797_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMENT_SYMBOL_in_subpartition_definition13804  */
static	ANTLR3_BITWORD FOLLOW_COMMENT_SYMBOL_in_subpartition_definition13804_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMENT_SYMBOL_in_subpartition_definition13804	= { FOLLOW_COMMENT_SYMBOL_in_subpartition_definition13804_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_subpartition_definition13806  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_subpartition_definition13806_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_subpartition_definition13806	= { FOLLOW_EQUAL_OPERATOR_in_subpartition_definition13806_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_subpartition_definition13809  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_subpartition_definition13809_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x8000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000800000000000), ANTLR3_UINT64_LIT(0x0000000100000008), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_subpartition_definition13809	= { FOLLOW_string_literal_in_subpartition_definition13809_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATA_SYMBOL_in_subpartition_definition13816  */
static	ANTLR3_BITWORD FOLLOW_DATA_SYMBOL_in_subpartition_definition13816_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DATA_SYMBOL_in_subpartition_definition13816	= { FOLLOW_DATA_SYMBOL_in_subpartition_definition13816_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DIRECTORY_SYMBOL_in_subpartition_definition13818  */
static	ANTLR3_BITWORD FOLLOW_DIRECTORY_SYMBOL_in_subpartition_definition13818_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DIRECTORY_SYMBOL_in_subpartition_definition13818	= { FOLLOW_DIRECTORY_SYMBOL_in_subpartition_definition13818_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_subpartition_definition13820  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_subpartition_definition13820_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_subpartition_definition13820	= { FOLLOW_EQUAL_OPERATOR_in_subpartition_definition13820_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_subpartition_definition13823  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_subpartition_definition13823_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000800000000000), ANTLR3_UINT64_LIT(0x0000000100000008), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_subpartition_definition13823	= { FOLLOW_string_literal_in_subpartition_definition13823_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INDEX_SYMBOL_in_subpartition_definition13830  */
static	ANTLR3_BITWORD FOLLOW_INDEX_SYMBOL_in_subpartition_definition13830_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INDEX_SYMBOL_in_subpartition_definition13830	= { FOLLOW_INDEX_SYMBOL_in_subpartition_definition13830_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DIRECTORY_SYMBOL_in_subpartition_definition13832  */
static	ANTLR3_BITWORD FOLLOW_DIRECTORY_SYMBOL_in_subpartition_definition13832_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DIRECTORY_SYMBOL_in_subpartition_definition13832	= { FOLLOW_DIRECTORY_SYMBOL_in_subpartition_definition13832_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_subpartition_definition13834  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_subpartition_definition13834_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_subpartition_definition13834	= { FOLLOW_EQUAL_OPERATOR_in_subpartition_definition13834_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_subpartition_definition13837  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_subpartition_definition13837_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000800000000000), ANTLR3_UINT64_LIT(0x0000000100000008), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_subpartition_definition13837	= { FOLLOW_string_literal_in_subpartition_definition13837_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAX_ROWS_SYMBOL_in_subpartition_definition13844  */
static	ANTLR3_BITWORD FOLLOW_MAX_ROWS_SYMBOL_in_subpartition_definition13844_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MAX_ROWS_SYMBOL_in_subpartition_definition13844	= { FOLLOW_MAX_ROWS_SYMBOL_in_subpartition_definition13844_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_subpartition_definition13846  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_subpartition_definition13846_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_subpartition_definition13846	= { FOLLOW_EQUAL_OPERATOR_in_subpartition_definition13846_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_subpartition_definition13849  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_subpartition_definition13849_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000100000008), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_subpartition_definition13849	= { FOLLOW_INTEGER_in_subpartition_definition13849_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MIN_ROWS_SYMBOL_in_subpartition_definition13856  */
static	ANTLR3_BITWORD FOLLOW_MIN_ROWS_SYMBOL_in_subpartition_definition13856_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MIN_ROWS_SYMBOL_in_subpartition_definition13856	= { FOLLOW_MIN_ROWS_SYMBOL_in_subpartition_definition13856_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_subpartition_definition13858  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_subpartition_definition13858_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_subpartition_definition13858	= { FOLLOW_EQUAL_OPERATOR_in_subpartition_definition13858_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_subpartition_definition13861  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_subpartition_definition13861_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000100000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_subpartition_definition13861	= { FOLLOW_INTEGER_in_subpartition_definition13861_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLESPACE_SYMBOL_in_subpartition_definition13868  */
static	ANTLR3_BITWORD FOLLOW_TABLESPACE_SYMBOL_in_subpartition_definition13868_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x3FA8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLESPACE_SYMBOL_in_subpartition_definition13868	= { FOLLOW_TABLESPACE_SYMBOL_in_subpartition_definition13868_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_subpartition_definition13870  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_subpartition_definition13870_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_subpartition_definition13870	= { FOLLOW_EQUAL_OPERATOR_in_subpartition_definition13870_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_subpartition_definition13873  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_subpartition_definition13873_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000100000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_subpartition_definition13873	= { FOLLOW_identifier_in_subpartition_definition13873_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NODEGROUP_SYMBOL_in_subpartition_definition13880  */
static	ANTLR3_BITWORD FOLLOW_NODEGROUP_SYMBOL_in_subpartition_definition13880_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x3FA8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_NODEGROUP_SYMBOL_in_subpartition_definition13880	= { FOLLOW_NODEGROUP_SYMBOL_in_subpartition_definition13880_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_subpartition_definition13882  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_subpartition_definition13882_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_subpartition_definition13882	= { FOLLOW_EQUAL_OPERATOR_in_subpartition_definition13882_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_subpartition_definition13885  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_subpartition_definition13885_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_subpartition_definition13885	= { FOLLOW_identifier_in_subpartition_definition13885_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_partition_value_list13896  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_partition_value_list13896_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FFEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_partition_value_list13896	= { FOLLOW_OPEN_PAR_SYMBOL_in_partition_value_list13896_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_partition_value_list13899  */
static	ANTLR3_BITWORD FOLLOW_expression_in_partition_value_list13899_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_partition_value_list13899	= { FOLLOW_expression_in_partition_value_list13899_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAXVALUE_SYMBOL_in_partition_value_list13903  */
static	ANTLR3_BITWORD FOLLOW_MAXVALUE_SYMBOL_in_partition_value_list13903_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002004000) };
static  ANTLR3_BITSET_LIST FOLLOW_MAXVALUE_SYMBOL_in_partition_value_list13903	= { FOLLOW_MAXVALUE_SYMBOL_in_partition_value_list13903_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_partition_value_list13907  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_partition_value_list13907_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FFEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_partition_value_list13907	= { FOLLOW_COMMA_SYMBOL_in_partition_value_list13907_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_partition_value_list13910  */
static	ANTLR3_BITWORD FOLLOW_expression_in_partition_value_list13910_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002004000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_partition_value_list13910	= { FOLLOW_expression_in_partition_value_list13910_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAXVALUE_SYMBOL_in_partition_value_list13914  */
static	ANTLR3_BITWORD FOLLOW_MAXVALUE_SYMBOL_in_partition_value_list13914_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002004000) };
static  ANTLR3_BITSET_LIST FOLLOW_MAXVALUE_SYMBOL_in_partition_value_list13914	= { FOLLOW_MAXVALUE_SYMBOL_in_partition_value_list13914_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_partition_value_list13919  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_partition_value_list13919_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_partition_value_list13919	= { FOLLOW_CLOSE_PAR_SYMBOL_in_partition_value_list13919_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFINER_SYMBOL_in_definer_clause13928  */
static	ANTLR3_BITWORD FOLLOW_DEFINER_SYMBOL_in_definer_clause13928_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFINER_SYMBOL_in_definer_clause13928	= { FOLLOW_DEFINER_SYMBOL_in_definer_clause13928_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_definer_clause13930  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_definer_clause13930_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1A92DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_definer_clause13930	= { FOLLOW_EQUAL_OPERATOR_in_definer_clause13930_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_in_definer_clause13932  */
static	ANTLR3_BITWORD FOLLOW_user_in_definer_clause13932_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_user_in_definer_clause13932	= { FOLLOW_user_in_definer_clause13932_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IF_SYMBOL_in_if_not_exists13941  */
static	ANTLR3_BITWORD FOLLOW_IF_SYMBOL_in_if_not_exists13941_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_IF_SYMBOL_in_if_not_exists13941	= { FOLLOW_IF_SYMBOL_in_if_not_exists13941_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NOT_SYMBOL_in_if_not_exists13943  */
static	ANTLR3_BITWORD FOLLOW_NOT_SYMBOL_in_if_not_exists13943_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_NOT_SYMBOL_in_if_not_exists13943	= { FOLLOW_NOT_SYMBOL_in_if_not_exists13943_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXISTS_SYMBOL_in_if_not_exists13945  */
static	ANTLR3_BITWORD FOLLOW_EXISTS_SYMBOL_in_if_not_exists13945_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EXISTS_SYMBOL_in_if_not_exists13945	= { FOLLOW_EXISTS_SYMBOL_in_if_not_exists13945_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_procedure_parameter13967  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_procedure_parameter13967_bits[]	= { ANTLR3_UINT64_LIT(0x00CA006000000000), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0400020000004021), ANTLR3_UINT64_LIT(0x00000C0011000000), ANTLR3_UINT64_LIT(0x8000000048000000), ANTLR3_UINT64_LIT(0x007000000002C000), ANTLR3_UINT64_LIT(0x000140000241A000), ANTLR3_UINT64_LIT(0x0000800000600000), ANTLR3_UINT64_LIT(0x1000420000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x050000000000F840), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_procedure_parameter13967	= { FOLLOW_identifier_in_procedure_parameter13967_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_data_type_in_procedure_parameter13969  */
static	ANTLR3_BITWORD FOLLOW_data_type_in_procedure_parameter13969_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_data_type_in_procedure_parameter13969	= { FOLLOW_data_type_in_procedure_parameter13969_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_function_parameter13978  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_function_parameter13978_bits[]	= { ANTLR3_UINT64_LIT(0x00CA006000000000), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0400020000004021), ANTLR3_UINT64_LIT(0x00000C0011000000), ANTLR3_UINT64_LIT(0x8000000048000000), ANTLR3_UINT64_LIT(0x007000000002C000), ANTLR3_UINT64_LIT(0x000140000241A000), ANTLR3_UINT64_LIT(0x0000800000600000), ANTLR3_UINT64_LIT(0x1000420000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x050000000000F840), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_function_parameter13978	= { FOLLOW_identifier_in_function_parameter13978_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_data_type_in_function_parameter13980  */
static	ANTLR3_BITWORD FOLLOW_data_type_in_function_parameter13980_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_data_type_in_function_parameter13980	= { FOLLOW_data_type_in_function_parameter13980_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_qualified_identifier13989  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_qualified_identifier13989_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000004000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_qualified_identifier13989	= { FOLLOW_identifier_in_qualified_identifier13989_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOT_SYMBOL_in_qualified_identifier13992  */
static	ANTLR3_BITWORD FOLLOW_DOT_SYMBOL_in_qualified_identifier13992_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_DOT_SYMBOL_in_qualified_identifier13992	= { FOLLOW_DOT_SYMBOL_in_qualified_identifier13992_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_qualified_identifier13994  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_qualified_identifier13994_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_qualified_identifier13994	= { FOLLOW_identifier_in_qualified_identifier13994_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_qualified_identifier_list14005  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_qualified_identifier_list14005_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_qualified_identifier_list14005	= { FOLLOW_qualified_identifier_in_qualified_identifier_list14005_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_qualified_identifier_list14008  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_qualified_identifier_list14008_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_qualified_identifier_list14008	= { FOLLOW_COMMA_SYMBOL_in_qualified_identifier_list14008_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_qualified_identifier_list14010  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_qualified_identifier_list14010_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_qualified_identifier_list14010	= { FOLLOW_qualified_identifier_in_qualified_identifier_list14010_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_qualified_identifier_with_wildcard14028  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_qualified_identifier_with_wildcard14028_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000004000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_qualified_identifier_with_wildcard14028	= { FOLLOW_identifier_in_qualified_identifier_with_wildcard14028_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOT_SYMBOL_in_qualified_identifier_with_wildcard14030  */
static	ANTLR3_BITWORD FOLLOW_DOT_SYMBOL_in_qualified_identifier_with_wildcard14030_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7FB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_DOT_SYMBOL_in_qualified_identifier_with_wildcard14030	= { FOLLOW_DOT_SYMBOL_in_qualified_identifier_with_wildcard14030_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_qualified_identifier_with_wildcard14033  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_qualified_identifier_with_wildcard14033_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000004000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_qualified_identifier_with_wildcard14033	= { FOLLOW_identifier_in_qualified_identifier_with_wildcard14033_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOT_SYMBOL_in_qualified_identifier_with_wildcard14035  */
static	ANTLR3_BITWORD FOLLOW_DOT_SYMBOL_in_qualified_identifier_with_wildcard14035_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_DOT_SYMBOL_in_qualified_identifier_with_wildcard14035	= { FOLLOW_DOT_SYMBOL_in_qualified_identifier_with_wildcard14035_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_OPERATOR_in_qualified_identifier_with_wildcard14039  */
static	ANTLR3_BITWORD FOLLOW_MULT_OPERATOR_in_qualified_identifier_with_wildcard14039_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MULT_OPERATOR_in_qualified_identifier_with_wildcard14039	= { FOLLOW_MULT_OPERATOR_in_qualified_identifier_with_wildcard14039_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_target_table14055  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_target_table14055_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_target_table14055	= { FOLLOW_qualified_identifier_in_target_table14055_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_name_in_column_assignment14073  */
static	ANTLR3_BITWORD FOLLOW_field_name_in_column_assignment14073_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_field_name_in_column_assignment14073	= { FOLLOW_field_name_in_column_assignment14073_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_column_assignment14075  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_column_assignment14075_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_column_assignment14075	= { FOLLOW_EQUAL_OPERATOR_in_column_assignment14075_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_column_assignment14077  */
static	ANTLR3_BITWORD FOLLOW_expression_in_column_assignment14077_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_column_assignment14077	= { FOLLOW_expression_in_column_assignment14077_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_name_in_field_name_list14086  */
static	ANTLR3_BITWORD FOLLOW_field_name_in_field_name_list14086_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_field_name_in_field_name_list14086	= { FOLLOW_field_name_in_field_name_list14086_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_field_name_list14089  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_field_name_list14089_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_field_name_list14089	= { FOLLOW_COMMA_SYMBOL_in_field_name_list14089_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_name_in_field_name_list14091  */
static	ANTLR3_BITWORD FOLLOW_field_name_in_field_name_list14091_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_field_name_in_field_name_list14091	= { FOLLOW_field_name_in_field_name_list14091_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_name2_in_field_name14102  */
static	ANTLR3_BITWORD FOLLOW_field_name2_in_field_name14102_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_name2_in_field_name14102	= { FOLLOW_field_name2_in_field_name14102_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_field_name214121  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_field_name214121_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000004000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_field_name214121	= { FOLLOW_identifier_in_field_name214121_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOT_SYMBOL_in_field_name214124  */
static	ANTLR3_BITWORD FOLLOW_DOT_SYMBOL_in_field_name214124_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_DOT_SYMBOL_in_field_name214124	= { FOLLOW_DOT_SYMBOL_in_field_name214124_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_field_name214127  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_field_name214127_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000004000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_field_name214127	= { FOLLOW_identifier_in_field_name214127_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOT_SYMBOL_in_field_name214129  */
static	ANTLR3_BITWORD FOLLOW_DOT_SYMBOL_in_field_name214129_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_DOT_SYMBOL_in_field_name214129	= { FOLLOW_DOT_SYMBOL_in_field_name214129_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_field_name214135  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_field_name214135_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_field_name214135	= { FOLLOW_identifier_in_field_name214135_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_assignment_with_default_in_column_assignment_list_with_default14144  */
static	ANTLR3_BITWORD FOLLOW_column_assignment_with_default_in_column_assignment_list_with_default14144_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_column_assignment_with_default_in_column_assignment_list_with_default14144	= { FOLLOW_column_assignment_with_default_in_column_assignment_list_with_default14144_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_column_assignment_list_with_default14147  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_column_assignment_list_with_default14147_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E543CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_column_assignment_list_with_default14147	= { FOLLOW_COMMA_SYMBOL_in_column_assignment_list_with_default14147_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_assignment_with_default_in_column_assignment_list_with_default14149  */
static	ANTLR3_BITWORD FOLLOW_column_assignment_with_default_in_column_assignment_list_with_default14149_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_column_assignment_with_default_in_column_assignment_list_with_default14149	= { FOLLOW_column_assignment_with_default_in_column_assignment_list_with_default14149_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_name_in_column_assignment_with_default14160  */
static	ANTLR3_BITWORD FOLLOW_field_name_in_column_assignment_with_default14160_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_field_name_in_column_assignment_with_default14160	= { FOLLOW_field_name_in_column_assignment_with_default14160_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_column_assignment_with_default14162  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_column_assignment_with_default14162_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2E1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_column_assignment_with_default14162	= { FOLLOW_EQUAL_OPERATOR_in_column_assignment_with_default14162_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_column_assignment_with_default14165  */
static	ANTLR3_BITWORD FOLLOW_expression_in_column_assignment_with_default14165_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_column_assignment_with_default14165	= { FOLLOW_expression_in_column_assignment_with_default14165_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_column_assignment_with_default14169  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_column_assignment_with_default14169_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_column_assignment_with_default14169	= { FOLLOW_DEFAULT_SYMBOL_in_column_assignment_with_default14169_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_in_charset_clause14179  */
static	ANTLR3_BITWORD FOLLOW_charset_in_charset_clause14179_bits[]	= { ANTLR3_UINT64_LIT(0x56E200CAFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2E1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_in_charset_clause14179	= { FOLLOW_charset_in_charset_clause14179_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_charset_clause14182  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_charset_clause14182_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_charset_clause14182	= { FOLLOW_text_or_identifier_in_charset_clause14182_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_charset_clause14186  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_charset_clause14186_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_charset_clause14186	= { FOLLOW_DEFAULT_SYMBOL_in_charset_clause14186_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_charset_clause14190  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_charset_clause14190_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_charset_clause14190	= { FOLLOW_BINARY_SYMBOL_in_charset_clause14190_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLUMNS_SYMBOL_in_fields_clause14200  */
static	ANTLR3_BITWORD FOLLOW_COLUMNS_SYMBOL_in_fields_clause14200_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x4010000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_COLUMNS_SYMBOL_in_fields_clause14200	= { FOLLOW_COLUMNS_SYMBOL_in_fields_clause14200_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_term_in_fields_clause14202  */
static	ANTLR3_BITWORD FOLLOW_field_term_in_fields_clause14202_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x4010000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_field_term_in_fields_clause14202	= { FOLLOW_field_term_in_fields_clause14202_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TERMINATED_SYMBOL_in_field_term14212  */
static	ANTLR3_BITWORD FOLLOW_TERMINATED_SYMBOL_in_field_term14212_bits[]	= { ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_TERMINATED_SYMBOL_in_field_term14212	= { FOLLOW_TERMINATED_SYMBOL_in_field_term14212_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_field_term14214  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_field_term14214_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_field_term14214	= { FOLLOW_BY_SYMBOL_in_field_term14214_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_field_term14216  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_field_term14216_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_field_term14216	= { FOLLOW_string_literal_in_field_term14216_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPTIONALLY_SYMBOL_in_field_term14221  */
static	ANTLR3_BITWORD FOLLOW_OPTIONALLY_SYMBOL_in_field_term14221_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPTIONALLY_SYMBOL_in_field_term14221	= { FOLLOW_OPTIONALLY_SYMBOL_in_field_term14221_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENCLOSED_SYMBOL_in_field_term14224  */
static	ANTLR3_BITWORD FOLLOW_ENCLOSED_SYMBOL_in_field_term14224_bits[]	= { ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ENCLOSED_SYMBOL_in_field_term14224	= { FOLLOW_ENCLOSED_SYMBOL_in_field_term14224_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_field_term14226  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_field_term14226_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_field_term14226	= { FOLLOW_BY_SYMBOL_in_field_term14226_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_field_term14228  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_field_term14228_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_field_term14228	= { FOLLOW_string_literal_in_field_term14228_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ESCAPED_SYMBOL_in_field_term14233  */
static	ANTLR3_BITWORD FOLLOW_ESCAPED_SYMBOL_in_field_term14233_bits[]	= { ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ESCAPED_SYMBOL_in_field_term14233	= { FOLLOW_ESCAPED_SYMBOL_in_field_term14233_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_field_term14235  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_field_term14235_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_field_term14235	= { FOLLOW_BY_SYMBOL_in_field_term14235_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_field_term14237  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_field_term14237_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_field_term14237	= { FOLLOW_string_literal_in_field_term14237_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LINES_SYMBOL_in_lines_clause14246  */
static	ANTLR3_BITWORD FOLLOW_LINES_SYMBOL_in_lines_clause14246_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_LINES_SYMBOL_in_lines_clause14246	= { FOLLOW_LINES_SYMBOL_in_lines_clause14246_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_line_term_in_lines_clause14248  */
static	ANTLR3_BITWORD FOLLOW_line_term_in_lines_clause14248_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_line_term_in_lines_clause14248	= { FOLLOW_line_term_in_lines_clause14248_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_line_term14258  */
static	ANTLR3_BITWORD FOLLOW_set_in_line_term14258_bits[]	= { ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_line_term14258	= { FOLLOW_set_in_line_term14258_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_line_term14266  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_line_term14266_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_line_term14266	= { FOLLOW_BY_SYMBOL_in_line_term14266_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_line_term14268  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_line_term14268_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_line_term14268	= { FOLLOW_string_literal_in_line_term14268_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_in_user_list14277  */
static	ANTLR3_BITWORD FOLLOW_user_in_user_list14277_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_user_in_user_list14277	= { FOLLOW_user_in_user_list14277_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_user_list14280  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_user_list14280_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1A92DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_user_list14280	= { FOLLOW_COMMA_SYMBOL_in_user_list14280_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_in_user_list14282  */
static	ANTLR3_BITWORD FOLLOW_user_in_user_list14282_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_user_in_user_list14282	= { FOLLOW_user_in_user_list14282_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_in_user_specification14293  */
static	ANTLR3_BITWORD FOLLOW_user_in_user_specification14293_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000008) };
static  ANTLR3_BITSET_LIST FOLLOW_user_in_user_specification14293	= { FOLLOW_user_in_user_specification14293_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IDENTIFIED_SYMBOL_in_user_specification14300  */
static	ANTLR3_BITWORD FOLLOW_IDENTIFIED_SYMBOL_in_user_specification14300_bits[]	= { ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_IDENTIFIED_SYMBOL_in_user_specification14300	= { FOLLOW_IDENTIFIED_SYMBOL_in_user_specification14300_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_user_specification14309  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_user_specification14309_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000008000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_user_specification14309	= { FOLLOW_BY_SYMBOL_in_user_specification14309_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PASSWORD_SYMBOL_in_user_specification14311  */
static	ANTLR3_BITWORD FOLLOW_PASSWORD_SYMBOL_in_user_specification14311_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PASSWORD_SYMBOL_in_user_specification14311	= { FOLLOW_PASSWORD_SYMBOL_in_user_specification14311_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_user_specification14314  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_user_specification14314_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_user_specification14314	= { FOLLOW_string_literal_in_user_specification14314_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_user_specification14321  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_user_specification14321_bits[]	= { ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010) };
static  ANTLR3_BITSET_LIST FOLLOW_WITH_SYMBOL_in_user_specification14321	= { FOLLOW_WITH_SYMBOL_in_user_specification14321_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_user_specification14323  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_user_specification14323_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000400002) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_user_specification14323	= { FOLLOW_pure_identifier_in_user_specification14323_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AS_SYMBOL_in_user_specification14326  */
static	ANTLR3_BITWORD FOLLOW_AS_SYMBOL_in_user_specification14326_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_AS_SYMBOL_in_user_specification14326	= { FOLLOW_AS_SYMBOL_in_user_specification14326_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_user_specification14328  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_user_specification14328_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_user_specification14328	= { FOLLOW_string_literal_in_user_specification14328_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_user14347  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_user14347_bits[]	= { ANTLR3_UINT64_LIT(0x0000000001000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_user14347	= { FOLLOW_text_or_identifier_in_user14347_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AT_SIGN_SYMBOL_in_user14350  */
static	ANTLR3_BITWORD FOLLOW_AT_SIGN_SYMBOL_in_user14350_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CE7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xEED11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49BB78C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_AT_SIGN_SYMBOL_in_user14350	= { FOLLOW_AT_SIGN_SYMBOL_in_user14350_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_user14352  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_user14352_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_user14352	= { FOLLOW_text_or_identifier_in_user14352_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CURRENT_USER_SYMBOL_in_user14359  */
static	ANTLR3_BITWORD FOLLOW_CURRENT_USER_SYMBOL_in_user14359_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CURRENT_USER_SYMBOL_in_user14359	= { FOLLOW_CURRENT_USER_SYMBOL_in_user14359_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_parentheses_in_user14361  */
static	ANTLR3_BITWORD FOLLOW_parentheses_in_user14361_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_parentheses_in_user14361	= { FOLLOW_parentheses_in_user14361_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LIKE_SYMBOL_in_like_clause14371  */
static	ANTLR3_BITWORD FOLLOW_LIKE_SYMBOL_in_like_clause14371_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_LIKE_SYMBOL_in_like_clause14371	= { FOLLOW_LIKE_SYMBOL_in_like_clause14371_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_param_marker_in_like_clause14373  */
static	ANTLR3_BITWORD FOLLOW_text_or_param_marker_in_like_clause14373_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_param_marker_in_like_clause14373	= { FOLLOW_text_or_param_marker_in_like_clause14373_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_like_clause_in_like_or_where14382  */
static	ANTLR3_BITWORD FOLLOW_like_clause_in_like_or_where14382_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_like_clause_in_like_or_where14382	= { FOLLOW_like_clause_in_like_or_where14382_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_where_clause_in_like_or_where14386  */
static	ANTLR3_BITWORD FOLLOW_where_clause_in_like_or_where14386_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_where_clause_in_like_or_where14386	= { FOLLOW_where_clause_in_like_or_where14386_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_online_option14399  */
static	ANTLR3_BITWORD FOLLOW_set_in_online_option14399_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_online_option14399	= { FOLLOW_set_in_online_option14399_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NO_WRITE_TO_BINLOG_SYMBOL_in_no_write_to_bin_log14414  */
static	ANTLR3_BITWORD FOLLOW_NO_WRITE_TO_BINLOG_SYMBOL_in_no_write_to_bin_log14414_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_NO_WRITE_TO_BINLOG_SYMBOL_in_no_write_to_bin_log14414	= { FOLLOW_NO_WRITE_TO_BINLOG_SYMBOL_in_no_write_to_bin_log14414_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOCAL_SYMBOL_in_no_write_to_bin_log14421  */
static	ANTLR3_BITWORD FOLLOW_LOCAL_SYMBOL_in_no_write_to_bin_log14421_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_LOCAL_SYMBOL_in_no_write_to_bin_log14421	= { FOLLOW_LOCAL_SYMBOL_in_no_write_to_bin_log14421_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IDENTIFIER_in_pure_identifier14434  */
static	ANTLR3_BITWORD FOLLOW_IDENTIFIER_in_pure_identifier14434_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_IDENTIFIER_in_pure_identifier14434	= { FOLLOW_IDENTIFIER_in_pure_identifier14434_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BACK_TICK_QUOTED_ID_in_pure_identifier14439  */
static	ANTLR3_BITWORD FOLLOW_BACK_TICK_QUOTED_ID_in_pure_identifier14439_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BACK_TICK_QUOTED_ID_in_pure_identifier14439	= { FOLLOW_BACK_TICK_QUOTED_ID_in_pure_identifier14439_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOUBLE_QUOTED_TEXT_in_pure_identifier14448  */
static	ANTLR3_BITWORD FOLLOW_DOUBLE_QUOTED_TEXT_in_pure_identifier14448_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DOUBLE_QUOTED_TEXT_in_pure_identifier14448	= { FOLLOW_DOUBLE_QUOTED_TEXT_in_pure_identifier14448_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_identifier14458  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_identifier14458_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_identifier14458	= { FOLLOW_pure_identifier_in_identifier14458_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_keyword_in_identifier14463  */
static	ANTLR3_BITWORD FOLLOW_keyword_in_identifier14463_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_keyword_in_identifier14463	= { FOLLOW_keyword_in_identifier14463_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_identifier_list14472  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_identifier_list14472_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_identifier_list14472	= { FOLLOW_identifier_in_identifier_list14472_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_identifier_list14488  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_identifier_list14488_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_identifier_list14488	= { FOLLOW_COMMA_SYMBOL_in_identifier_list14488_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_identifier_list14490  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_identifier_list14490_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_identifier_list14490	= { FOLLOW_identifier_in_identifier_list14490_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_identifier_list_with_parentheses14500  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_identifier_list_with_parentheses14500_bits[]	= { ANTLR3_UINT64_LIT(0x56E2008AFE068F60), ANTLR3_UINT64_LIT(0xC1292DF5F8EBBA9C), ANTLR3_UINT64_LIT(0x37A8E503CA2A1821), ANTLR3_UINT64_LIT(0x6160DF4521C6692F), ANTLR3_UINT64_LIT(0x848B20E88014A35C), ANTLR3_UINT64_LIT(0x4F8DE6FFFFD022A2), ANTLR3_UINT64_LIT(0x243D2183CA7DB28C), ANTLR3_UINT64_LIT(0x6F9F13BEB8EFBE70), ANTLR3_UINT64_LIT(0xECD11B065FF8BAA7), ANTLR3_UINT64_LIT(0x79E1F987E0025B83), ANTLR3_UINT64_LIT(0x0881D49B378C1ED8), ANTLR3_UINT64_LIT(0x0000000004D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_identifier_list_with_parentheses14500	= { FOLLOW_OPEN_PAR_SYMBOL_in_identifier_list_with_parentheses14500_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_in_identifier_list_with_parentheses14502  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_in_identifier_list_with_parentheses14502_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_in_identifier_list_with_parentheses14502	= { FOLLOW_identifier_list_in_identifier_list_with_parentheses14502_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_identifier_list_with_parentheses14504  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_identifier_list_with_parentheses14504_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_identifier_list_with_parentheses14504	= { FOLLOW_CLOSE_PAR_SYMBOL_in_identifier_list_with_parentheses14504_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_at_variable_identifier14513  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_at_variable_identifier14513_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_at_variable_identifier14513	= { FOLLOW_string_literal_in_at_variable_identifier14513_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_at_variable_identifier14518  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_at_variable_identifier14518_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_at_variable_identifier14518	= { FOLLOW_identifier_in_at_variable_identifier14518_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_string_list14527  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_string_list14527_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_string_list14527	= { FOLLOW_OPEN_PAR_SYMBOL_in_string_list14527_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_string_list14529  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_string_list14529_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002004000) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_string_list14529	= { FOLLOW_string_literal_in_string_list14529_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_string_list14532  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_string_list14532_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_string_list14532	= { FOLLOW_COMMA_SYMBOL_in_string_list14532_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_string_list14534  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_string_list14534_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002004000) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_string_list14534	= { FOLLOW_string_literal_in_string_list14534_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_string_list14538  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_string_list14538_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_string_list14538	= { FOLLOW_CLOSE_PAR_SYMBOL_in_string_list14538_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_literal14547  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_literal14547_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_literal14547	= { FOLLOW_string_literal_in_literal14547_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_number_literal_in_literal14552  */
static	ANTLR3_BITWORD FOLLOW_number_literal_in_literal14552_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_number_literal_in_literal14552	= { FOLLOW_number_literal_in_literal14552_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_hex_literal_in_literal14557  */
static	ANTLR3_BITWORD FOLLOW_hex_literal_in_literal14557_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_hex_literal_in_literal14557	= { FOLLOW_hex_literal_in_literal14557_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_bool_literal_in_literal14562  */
static	ANTLR3_BITWORD FOLLOW_bool_literal_in_literal14562_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_bool_literal_in_literal14562	= { FOLLOW_bool_literal_in_literal14562_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_bit_literal_in_literal14571  */
static	ANTLR3_BITWORD FOLLOW_bit_literal_in_literal14571_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_bit_literal_in_literal14571	= { FOLLOW_bit_literal_in_literal14571_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_null_literal_in_literal14576  */
static	ANTLR3_BITWORD FOLLOW_null_literal_in_literal14576_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_null_literal_in_literal14576	= { FOLLOW_null_literal_in_literal14576_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_in_string_literal14589  */
static	ANTLR3_BITWORD FOLLOW_string_in_string_literal14589_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_in_string_literal14589	= { FOLLOW_string_in_string_literal14589_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NCHAR_TEXT_in_string14606  */
static	ANTLR3_BITWORD FOLLOW_NCHAR_TEXT_in_string14606_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_NCHAR_TEXT_in_string14606	= { FOLLOW_NCHAR_TEXT_in_string14606_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNDERSCORE_CHARSET_in_string14611  */
static	ANTLR3_BITWORD FOLLOW_UNDERSCORE_CHARSET_in_string14611_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_UNDERSCORE_CHARSET_in_string14611	= { FOLLOW_UNDERSCORE_CHARSET_in_string14611_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SINGLE_QUOTED_TEXT_in_string14628  */
static	ANTLR3_BITWORD FOLLOW_SINGLE_QUOTED_TEXT_in_string14628_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SINGLE_QUOTED_TEXT_in_string14628	= { FOLLOW_SINGLE_QUOTED_TEXT_in_string14628_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOUBLE_QUOTED_TEXT_in_string14636  */
static	ANTLR3_BITWORD FOLLOW_DOUBLE_QUOTED_TEXT_in_string14636_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DOUBLE_QUOTED_TEXT_in_string14636	= { FOLLOW_DOUBLE_QUOTED_TEXT_in_string14636_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNDERSCORE_CHARSET_in_hex_literal14661  */
static	ANTLR3_BITWORD FOLLOW_UNDERSCORE_CHARSET_in_hex_literal14661_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0C00000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_UNDERSCORE_CHARSET_in_hex_literal14661	= { FOLLOW_UNDERSCORE_CHARSET_in_hex_literal14661_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_hex_literal14664  */
static	ANTLR3_BITWORD FOLLOW_set_in_hex_literal14664_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_hex_literal14664	= { FOLLOW_set_in_hex_literal14664_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNDERSCORE_CHARSET_in_bit_literal14693  */
static	ANTLR3_BITWORD FOLLOW_UNDERSCORE_CHARSET_in_bit_literal14693_bits[]	= { ANTLR3_UINT64_LIT(0x0000060000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_UNDERSCORE_CHARSET_in_bit_literal14693	= { FOLLOW_UNDERSCORE_CHARSET_in_bit_literal14693_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_bit_literal14696  */
static	ANTLR3_BITWORD FOLLOW_set_in_bit_literal14696_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_bit_literal14696	= { FOLLOW_set_in_bit_literal14696_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATE_SYMBOL_in_temporal_literal14725  */
static	ANTLR3_BITWORD FOLLOW_DATE_SYMBOL_in_temporal_literal14725_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DATE_SYMBOL_in_temporal_literal14725	= { FOLLOW_DATE_SYMBOL_in_temporal_literal14725_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_temporal_literal14727  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_temporal_literal14727_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_temporal_literal14727	= { FOLLOW_string_literal_in_temporal_literal14727_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TIME_SYMBOL_in_temporal_literal14732  */
static	ANTLR3_BITWORD FOLLOW_TIME_SYMBOL_in_temporal_literal14732_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_TIME_SYMBOL_in_temporal_literal14732	= { FOLLOW_TIME_SYMBOL_in_temporal_literal14732_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_temporal_literal14734  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_temporal_literal14734_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_temporal_literal14734	= { FOLLOW_string_literal_in_temporal_literal14734_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TIMESTAMP_SYMBOL_in_temporal_literal14739  */
static	ANTLR3_BITWORD FOLLOW_TIMESTAMP_SYMBOL_in_temporal_literal14739_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_TIMESTAMP_SYMBOL_in_temporal_literal14739	= { FOLLOW_TIMESTAMP_SYMBOL_in_temporal_literal14739_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_temporal_literal14741  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_temporal_literal14741_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_temporal_literal14741	= { FOLLOW_string_literal_in_temporal_literal14741_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REAL_SYMBOL_in_real_literal14786  */
static	ANTLR3_BITWORD FOLLOW_REAL_SYMBOL_in_real_literal14786_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_REAL_SYMBOL_in_real_literal14786	= { FOLLOW_REAL_SYMBOL_in_real_literal14786_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOUBLE_SYMBOL_in_real_literal14790  */
static	ANTLR3_BITWORD FOLLOW_DOUBLE_SYMBOL_in_real_literal14790_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DOUBLE_SYMBOL_in_real_literal14790	= { FOLLOW_DOUBLE_SYMBOL_in_real_literal14790_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRECISION_SYMBOL_in_real_literal14792  */
static	ANTLR3_BITWORD FOLLOW_PRECISION_SYMBOL_in_real_literal14792_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PRECISION_SYMBOL_in_real_literal14792	= { FOLLOW_PRECISION_SYMBOL_in_real_literal14792_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_float_options14804  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_float_options14804_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_float_options14804	= { FOLLOW_OPEN_PAR_SYMBOL_in_float_options14804_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_float_options14806  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_float_options14806_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002004000) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_float_options14806	= { FOLLOW_INTEGER_in_float_options14806_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_float_options14809  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_float_options14809_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_float_options14809	= { FOLLOW_COMMA_SYMBOL_in_float_options14809_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_float_options14811  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_float_options14811_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_float_options14811	= { FOLLOW_INTEGER_in_float_options14811_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_float_options14815  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_float_options14815_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_float_options14815	= { FOLLOW_CLOSE_PAR_SYMBOL_in_float_options14815_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_precision14824  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_precision14824_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_precision14824	= { FOLLOW_OPEN_PAR_SYMBOL_in_precision14824_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_precision14826  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_precision14826_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_precision14826	= { FOLLOW_INTEGER_in_precision14826_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_precision14828  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_precision14828_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_precision14828	= { FOLLOW_COMMA_SYMBOL_in_precision14828_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTEGER_in_precision14830  */
static	ANTLR3_BITWORD FOLLOW_INTEGER_in_precision14830_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_INTEGER_in_precision14830	= { FOLLOW_INTEGER_in_precision14830_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_precision14832  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_precision14832_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_precision14832	= { FOLLOW_CLOSE_PAR_SYMBOL_in_precision14832_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHAR_SYMBOL_in_nchar_literal14841  */
static	ANTLR3_BITWORD FOLLOW_CHAR_SYMBOL_in_nchar_literal14841_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CHAR_SYMBOL_in_nchar_literal14841	= { FOLLOW_CHAR_SYMBOL_in_nchar_literal14841_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NATIONAL_SYMBOL_in_nchar_literal14848  */
static	ANTLR3_BITWORD FOLLOW_NATIONAL_SYMBOL_in_nchar_literal14848_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000100) };
static  ANTLR3_BITSET_LIST FOLLOW_NATIONAL_SYMBOL_in_nchar_literal14848	= { FOLLOW_NATIONAL_SYMBOL_in_nchar_literal14848_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHAR_SYMBOL_in_nchar_literal14850  */
static	ANTLR3_BITWORD FOLLOW_CHAR_SYMBOL_in_nchar_literal14850_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CHAR_SYMBOL_in_nchar_literal14850	= { FOLLOW_CHAR_SYMBOL_in_nchar_literal14850_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHAR_SYMBOL_in_varchar_literal14860  */
static	ANTLR3_BITWORD FOLLOW_CHAR_SYMBOL_in_varchar_literal14860_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CHAR_SYMBOL_in_varchar_literal14860	= { FOLLOW_CHAR_SYMBOL_in_varchar_literal14860_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VARYING_SYMBOL_in_varchar_literal14862  */
static	ANTLR3_BITWORD FOLLOW_VARYING_SYMBOL_in_varchar_literal14862_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_VARYING_SYMBOL_in_varchar_literal14862	= { FOLLOW_VARYING_SYMBOL_in_varchar_literal14862_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VARCHAR_SYMBOL_in_varchar_literal14867  */
static	ANTLR3_BITWORD FOLLOW_VARCHAR_SYMBOL_in_varchar_literal14867_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_VARCHAR_SYMBOL_in_varchar_literal14867	= { FOLLOW_VARCHAR_SYMBOL_in_varchar_literal14867_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NATIONAL_SYMBOL_in_nvarchar_literal14876  */
static	ANTLR3_BITWORD FOLLOW_NATIONAL_SYMBOL_in_nvarchar_literal14876_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_NATIONAL_SYMBOL_in_nvarchar_literal14876	= { FOLLOW_NATIONAL_SYMBOL_in_nvarchar_literal14876_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VARCHAR_SYMBOL_in_nvarchar_literal14878  */
static	ANTLR3_BITWORD FOLLOW_VARCHAR_SYMBOL_in_nvarchar_literal14878_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_VARCHAR_SYMBOL_in_nvarchar_literal14878	= { FOLLOW_VARCHAR_SYMBOL_in_nvarchar_literal14878_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NVARCHAR_SYMBOL_in_nvarchar_literal14883  */
static	ANTLR3_BITWORD FOLLOW_NVARCHAR_SYMBOL_in_nvarchar_literal14883_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_NVARCHAR_SYMBOL_in_nvarchar_literal14883	= { FOLLOW_NVARCHAR_SYMBOL_in_nvarchar_literal14883_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NCHAR_SYMBOL_in_nvarchar_literal14888  */
static	ANTLR3_BITWORD FOLLOW_NCHAR_SYMBOL_in_nvarchar_literal14888_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_NCHAR_SYMBOL_in_nvarchar_literal14888	= { FOLLOW_NCHAR_SYMBOL_in_nvarchar_literal14888_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VARCHAR_SYMBOL_in_nvarchar_literal14890  */
static	ANTLR3_BITWORD FOLLOW_VARCHAR_SYMBOL_in_nvarchar_literal14890_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_VARCHAR_SYMBOL_in_nvarchar_literal14890	= { FOLLOW_VARCHAR_SYMBOL_in_nvarchar_literal14890_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NATIONAL_SYMBOL_in_nvarchar_literal14895  */
static	ANTLR3_BITWORD FOLLOW_NATIONAL_SYMBOL_in_nvarchar_literal14895_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000100) };
static  ANTLR3_BITSET_LIST FOLLOW_NATIONAL_SYMBOL_in_nvarchar_literal14895	= { FOLLOW_NATIONAL_SYMBOL_in_nvarchar_literal14895_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHAR_SYMBOL_in_nvarchar_literal14897  */
static	ANTLR3_BITWORD FOLLOW_CHAR_SYMBOL_in_nvarchar_literal14897_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CHAR_SYMBOL_in_nvarchar_literal14897	= { FOLLOW_CHAR_SYMBOL_in_nvarchar_literal14897_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VARYING_SYMBOL_in_nvarchar_literal14899  */
static	ANTLR3_BITWORD FOLLOW_VARYING_SYMBOL_in_nvarchar_literal14899_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_VARYING_SYMBOL_in_nvarchar_literal14899	= { FOLLOW_VARYING_SYMBOL_in_nvarchar_literal14899_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NCHAR_SYMBOL_in_nvarchar_literal14904  */
static	ANTLR3_BITWORD FOLLOW_NCHAR_SYMBOL_in_nvarchar_literal14904_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_NCHAR_SYMBOL_in_nvarchar_literal14904	= { FOLLOW_NCHAR_SYMBOL_in_nvarchar_literal14904_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VARYING_SYMBOL_in_nvarchar_literal14906  */
static	ANTLR3_BITWORD FOLLOW_VARYING_SYMBOL_in_nvarchar_literal14906_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_VARYING_SYMBOL_in_nvarchar_literal14906	= { FOLLOW_VARYING_SYMBOL_in_nvarchar_literal14906_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_text_or_param_marker14928  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_text_or_param_marker14928_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_text_or_param_marker14928	= { FOLLOW_string_literal_in_text_or_param_marker14928_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARAM_MARKER_in_text_or_param_marker14932  */
static	ANTLR3_BITWORD FOLLOW_PARAM_MARKER_in_text_or_param_marker14932_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PARAM_MARKER_in_text_or_param_marker14932	= { FOLLOW_PARAM_MARKER_in_text_or_param_marker14932_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_text_or_identifier14941  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_text_or_identifier14941_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_text_or_identifier14941	= { FOLLOW_string_literal_in_text_or_identifier14941_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_text_or_identifier14945  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_text_or_identifier14945_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_text_or_identifier14945	= { FOLLOW_identifier_in_text_or_identifier14945_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_parentheses14967  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_parentheses14967_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_parentheses14967	= { FOLLOW_OPEN_PAR_SYMBOL_in_parentheses14967_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_parentheses14969  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_parentheses14969_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_parentheses14969	= { FOLLOW_CLOSE_PAR_SYMBOL_in_parentheses14969_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_keyword_sp_in_keyword15009  */
static	ANTLR3_BITWORD FOLLOW_keyword_sp_in_keyword15009_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_keyword_sp_in_keyword15009	= { FOLLOW_keyword_sp_in_keyword15009_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_keyword15015  */
static	ANTLR3_BITWORD FOLLOW_set_in_keyword15015_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_keyword15015	= { FOLLOW_set_in_keyword15015_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_with_wildcard_in_synpred1_MySQL4122  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_with_wildcard_in_synpred1_MySQL4122_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_with_wildcard_in_synpred1_MySQL4122	= { FOLLOW_qualified_identifier_with_wildcard_in_synpred1_MySQL4122_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_synpred2_MySQL8991  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_synpred2_MySQL8991_bits[]	= { ANTLR3_UINT64_LIT(0x56E796CAFF868F60), ANTLR3_UINT64_LIT(0xE5B9EDF5F8EBBB9F), ANTLR3_UINT64_LIT(0x37A8E543CA2A1835), ANTLR3_UINT64_LIT(0x6D68DF4523C7E96F), ANTLR3_UINT64_LIT(0x84AB20E8941CA37C), ANTLR3_UINT64_LIT(0xCF8FEEFFFFD02AA2), ANTLR3_UINT64_LIT(0x263D35E7CE7DBA9C), ANTLR3_UINT64_LIT(0x6F9F13BEB9FFBEF0), ANTLR3_UINT64_LIT(0xEED11B065FFABABF), ANTLR3_UINT64_LIT(0x7BF5F9D7E0025B83), ANTLR3_UINT64_LIT(0x98F9D49BB7EC1ED8), ANTLR3_UINT64_LIT(0x0000000014D303E0) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_synpred2_MySQL8991	= { FOLLOW_OPEN_PAR_SYMBOL_in_synpred2_MySQL8991_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_synpred2_MySQL8993  */
static	ANTLR3_BITWORD FOLLOW_expression_in_synpred2_MySQL8993_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_synpred2_MySQL8993	= { FOLLOW_expression_in_synpred2_MySQL8993_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_synpred2_MySQL8995  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_synpred2_MySQL8995_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_synpred2_MySQL8995	= { FOLLOW_COMMA_SYMBOL_in_synpred2_MySQL8995_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_synpred3_MySQL9125  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_synpred3_MySQL9125_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_synpred3_MySQL9125	= { FOLLOW_qualified_identifier_in_synpred3_MySQL9125_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_synpred3_MySQL9127  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_synpred3_MySQL9127_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_synpred3_MySQL9127	= { FOLLOW_OPEN_PAR_SYMBOL_in_synpred3_MySQL9127_bits, 1	};


/* ==============================================
 * Parsing rules
 */
/**
 * $ANTLR start query
 * MySQL.g:219:1: query : ( statement ( SEMICOLON_SYMBOL )? )? EOF ;
 */
static MySQLParser_query_return
query(pMySQLParser ctx)
{
    MySQLParser_query_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    SEMICOLON_SYMBOL2;
    pANTLR3_COMMON_TOKEN    EOF3;
    MySQLParser_statement_return statement1;
    #undef	RETURN_TYPE_statement1
    #define	RETURN_TYPE_statement1 MySQLParser_statement_return

    pANTLR3_BASE_TREE SEMICOLON_SYMBOL2_tree;
    pANTLR3_BASE_TREE EOF3_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SEMICOLON_SYMBOL2       = NULL;
    EOF3       = NULL;
    statement1.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SEMICOLON_SYMBOL2_tree   = NULL;
    EOF3_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:219:6: ( ( statement ( SEMICOLON_SYMBOL )? )? EOF )
        // MySQL.g:220:2: ( statement ( SEMICOLON_SYMBOL )? )? EOF
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:220:2: ( statement ( SEMICOLON_SYMBOL )? )?
            {
                int alt2=2;
                {
                    int LA2_0 = LA(1);
                    if ( (LA2_0 == ALTER_SYMBOL || LA2_0 == CALL_SYMBOL || LA2_0 == CREATE_SYMBOL || LA2_0 == DELETE_SYMBOL || ((LA2_0 >= DO_SYMBOL) && (LA2_0 <= DROP_SYMBOL)) || LA2_0 == HANDLER_SYMBOL || LA2_0 == INSERT_SYMBOL || LA2_0 == LOAD_SYMBOL || LA2_0 == OPEN_PAR_SYMBOL || LA2_0 == RENAME_SYMBOL || LA2_0 == REPLACE_SYMBOL || LA2_0 == SELECT_SYMBOL || LA2_0 == TRUNCATE_SYMBOL || LA2_0 == UPDATE_SYMBOL))
                    {
                        alt2=1;
                    }
                    else if ( ((SERVER_VERSION >= 50100)) && (LA2_0 == PARTITION_SYMBOL))
                    {
                        alt2=1;
                    }
                    else if ( (LA2_0 == ANALYZE_SYMBOL || LA2_0 == BEGIN_SYMBOL || LA2_0 == CHANGE_SYMBOL || ((LA2_0 >= CHECKSUM_SYMBOL) && (LA2_0 <= CHECK_SYMBOL)) || LA2_0 == COMMIT_SYMBOL || LA2_0 == DEALLOCATE_SYMBOL || LA2_0 == EXECUTE_SYMBOL || LA2_0 == GRANT_SYMBOL || LA2_0 == LOCK_SYMBOL || LA2_0 == OPTIMIZE_SYMBOL || LA2_0 == PREPARE_SYMBOL || LA2_0 == PURGE_SYMBOL || LA2_0 == RELEASE_SYMBOL || LA2_0 == REPAIR_SYMBOL || LA2_0 == REVOKE_SYMBOL || LA2_0 == ROLLBACK_SYMBOL || LA2_0 == SAVEPOINT_SYMBOL || LA2_0 == SET_SYMBOL || LA2_0 == START_SYMBOL || LA2_0 == STOP_SYMBOL || LA2_0 == UNLOCK_SYMBOL || LA2_0 == XA_SYMBOL))
                    {
                        alt2=1;
                    }
                    else if ( ((SERVER_VERSION < 50500)) && (LA2_0 == BACKUP_SYMBOL || LA2_0 == RESTORE_SYMBOL))
                    {
                        alt2=1;
                    }
                    else if ( (LA2_0 == BINLOG_SYMBOL || LA2_0 == CACHE_SYMBOL || ((LA2_0 >= DESCRIBE_SYMBOL) && (LA2_0 <= DESC_SYMBOL)) || LA2_0 == FLUSH_SYMBOL || LA2_0 == HELP_SYMBOL || LA2_0 == INSTALL_SYMBOL || LA2_0 == KILL_SYMBOL || LA2_0 == RESET_SYMBOL || LA2_0 == SHOW_SYMBOL || LA2_0 == UNINSTALL_SYMBOL || LA2_0 == USE_SYMBOL))
                    {
                        alt2=1;
                    }
                }
                switch (alt2)
                {
            	case 1:
            	    // MySQL.g:220:3: statement ( SEMICOLON_SYMBOL )?
            	    {
            	        FOLLOWPUSH(FOLLOW_statement_in_query191);
            	        statement1=statement(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulequeryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, statement1.tree);

            	        // MySQL.g:220:13: ( SEMICOLON_SYMBOL )?
            	        {
            	            int alt1=2;
            	            switch ( LA(1) )
            	            {
            	                case SEMICOLON_SYMBOL:
            	                	{
            	                		alt1=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt1)
            	            {
            	        	case 1:
            	        	    // MySQL.g:220:13: SEMICOLON_SYMBOL
            	        	    {
            	        	        SEMICOLON_SYMBOL2 = (pANTLR3_COMMON_TOKEN) MATCHT(SEMICOLON_SYMBOL, &FOLLOW_SEMICOLON_SYMBOL_in_query193);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulequeryEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        SEMICOLON_SYMBOL2_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SEMICOLON_SYMBOL2));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, SEMICOLON_SYMBOL2_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

            EOF3 = (pANTLR3_COMMON_TOKEN) MATCHT(EOF, &FOLLOW_EOF_in_query198);
            if  (HASEXCEPTION())
            {
                goto rulequeryEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EOF3_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EOF3));
            ADAPTOR->addChild(ADAPTOR, root_0, EOF3_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulequeryEx; /* Prevent compiler warnings */
    rulequeryEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end query */

/**
 * $ANTLR start statement
 * MySQL.g:223:1: statement : ( alter_statement | create_statement | drop_statement | rename_table_statement | truncate_table_statement | call_statement | delete_statement | do_statement | handler_statement | insert_statement | load_data_infile_statement |{...}? => load_xml_statement | replace_statement | select_statement | update_statement | partitioning | transaction_or_locking_statement | replication_statement | prepared_statement | account_management_statement | table_administration_statement | install_uninstall_statment |{...}? set_statement | show_statement | miscellaneous_statement | utility_statement );
 */
static MySQLParser_statement_return
statement(pMySQLParser ctx)
{
    MySQLParser_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_alter_statement_return alter_statement4;
    #undef	RETURN_TYPE_alter_statement4
    #define	RETURN_TYPE_alter_statement4 MySQLParser_alter_statement_return

    MySQLParser_create_statement_return create_statement5;
    #undef	RETURN_TYPE_create_statement5
    #define	RETURN_TYPE_create_statement5 MySQLParser_create_statement_return

    MySQLParser_drop_statement_return drop_statement6;
    #undef	RETURN_TYPE_drop_statement6
    #define	RETURN_TYPE_drop_statement6 MySQLParser_drop_statement_return

    MySQLParser_rename_table_statement_return rename_table_statement7;
    #undef	RETURN_TYPE_rename_table_statement7
    #define	RETURN_TYPE_rename_table_statement7 MySQLParser_rename_table_statement_return

    MySQLParser_truncate_table_statement_return truncate_table_statement8;
    #undef	RETURN_TYPE_truncate_table_statement8
    #define	RETURN_TYPE_truncate_table_statement8 MySQLParser_truncate_table_statement_return

    MySQLParser_call_statement_return call_statement9;
    #undef	RETURN_TYPE_call_statement9
    #define	RETURN_TYPE_call_statement9 MySQLParser_call_statement_return

    MySQLParser_delete_statement_return delete_statement10;
    #undef	RETURN_TYPE_delete_statement10
    #define	RETURN_TYPE_delete_statement10 MySQLParser_delete_statement_return

    MySQLParser_do_statement_return do_statement11;
    #undef	RETURN_TYPE_do_statement11
    #define	RETURN_TYPE_do_statement11 MySQLParser_do_statement_return

    MySQLParser_handler_statement_return handler_statement12;
    #undef	RETURN_TYPE_handler_statement12
    #define	RETURN_TYPE_handler_statement12 MySQLParser_handler_statement_return

    MySQLParser_insert_statement_return insert_statement13;
    #undef	RETURN_TYPE_insert_statement13
    #define	RETURN_TYPE_insert_statement13 MySQLParser_insert_statement_return

    MySQLParser_load_data_infile_statement_return load_data_infile_statement14;
    #undef	RETURN_TYPE_load_data_infile_statement14
    #define	RETURN_TYPE_load_data_infile_statement14 MySQLParser_load_data_infile_statement_return

    MySQLParser_load_xml_statement_return load_xml_statement15;
    #undef	RETURN_TYPE_load_xml_statement15
    #define	RETURN_TYPE_load_xml_statement15 MySQLParser_load_xml_statement_return

    MySQLParser_replace_statement_return replace_statement16;
    #undef	RETURN_TYPE_replace_statement16
    #define	RETURN_TYPE_replace_statement16 MySQLParser_replace_statement_return

    MySQLParser_select_statement_return select_statement17;
    #undef	RETURN_TYPE_select_statement17
    #define	RETURN_TYPE_select_statement17 MySQLParser_select_statement_return

    MySQLParser_update_statement_return update_statement18;
    #undef	RETURN_TYPE_update_statement18
    #define	RETURN_TYPE_update_statement18 MySQLParser_update_statement_return

    MySQLParser_partitioning_return partitioning19;
    #undef	RETURN_TYPE_partitioning19
    #define	RETURN_TYPE_partitioning19 MySQLParser_partitioning_return

    MySQLParser_transaction_or_locking_statement_return transaction_or_locking_statement20;
    #undef	RETURN_TYPE_transaction_or_locking_statement20
    #define	RETURN_TYPE_transaction_or_locking_statement20 MySQLParser_transaction_or_locking_statement_return

    MySQLParser_replication_statement_return replication_statement21;
    #undef	RETURN_TYPE_replication_statement21
    #define	RETURN_TYPE_replication_statement21 MySQLParser_replication_statement_return

    MySQLParser_prepared_statement_return prepared_statement22;
    #undef	RETURN_TYPE_prepared_statement22
    #define	RETURN_TYPE_prepared_statement22 MySQLParser_prepared_statement_return

    MySQLParser_account_management_statement_return account_management_statement23;
    #undef	RETURN_TYPE_account_management_statement23
    #define	RETURN_TYPE_account_management_statement23 MySQLParser_account_management_statement_return

    MySQLParser_table_administration_statement_return table_administration_statement24;
    #undef	RETURN_TYPE_table_administration_statement24
    #define	RETURN_TYPE_table_administration_statement24 MySQLParser_table_administration_statement_return

    MySQLParser_install_uninstall_statment_return install_uninstall_statment25;
    #undef	RETURN_TYPE_install_uninstall_statment25
    #define	RETURN_TYPE_install_uninstall_statment25 MySQLParser_install_uninstall_statment_return

    MySQLParser_set_statement_return set_statement26;
    #undef	RETURN_TYPE_set_statement26
    #define	RETURN_TYPE_set_statement26 MySQLParser_set_statement_return

    MySQLParser_show_statement_return show_statement27;
    #undef	RETURN_TYPE_show_statement27
    #define	RETURN_TYPE_show_statement27 MySQLParser_show_statement_return

    MySQLParser_miscellaneous_statement_return miscellaneous_statement28;
    #undef	RETURN_TYPE_miscellaneous_statement28
    #define	RETURN_TYPE_miscellaneous_statement28 MySQLParser_miscellaneous_statement_return

    MySQLParser_utility_statement_return utility_statement29;
    #undef	RETURN_TYPE_utility_statement29
    #define	RETURN_TYPE_utility_statement29 MySQLParser_utility_statement_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    alter_statement4.tree = NULL;

    create_statement5.tree = NULL;

    drop_statement6.tree = NULL;

    rename_table_statement7.tree = NULL;

    truncate_table_statement8.tree = NULL;

    call_statement9.tree = NULL;

    delete_statement10.tree = NULL;

    do_statement11.tree = NULL;

    handler_statement12.tree = NULL;

    insert_statement13.tree = NULL;

    load_data_infile_statement14.tree = NULL;

    load_xml_statement15.tree = NULL;

    replace_statement16.tree = NULL;

    select_statement17.tree = NULL;

    update_statement18.tree = NULL;

    partitioning19.tree = NULL;

    transaction_or_locking_statement20.tree = NULL;

    replication_statement21.tree = NULL;

    prepared_statement22.tree = NULL;

    account_management_statement23.tree = NULL;

    table_administration_statement24.tree = NULL;

    install_uninstall_statment25.tree = NULL;

    set_statement26.tree = NULL;

    show_statement27.tree = NULL;

    miscellaneous_statement28.tree = NULL;

    utility_statement29.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:223:10: ( alter_statement | create_statement | drop_statement | rename_table_statement | truncate_table_statement | call_statement | delete_statement | do_statement | handler_statement | insert_statement | load_data_infile_statement |{...}? => load_xml_statement | replace_statement | select_statement | update_statement | partitioning | transaction_or_locking_statement | replication_statement | prepared_statement | account_management_statement | table_administration_statement | install_uninstall_statment |{...}? set_statement | show_statement | miscellaneous_statement | utility_statement )

            ANTLR3_UINT32 alt3;

            alt3=26;

            {
                int LA3_0 = LA(1);
                if ( (LA3_0 == ALTER_SYMBOL))
                {
                    {
                        int LA3_1 = LA(2);
                        if ( ((SERVER_VERSION >= 50606)) && (LA3_1 == USER_SYMBOL))
                        {
                            alt3=20;
                        }
                        else if ( (LA3_1 == ALGORITHM_SYMBOL || LA3_1 == DATABASE_SYMBOL || LA3_1 == DEFINER_SYMBOL || LA3_1 == EVENT_SYMBOL || LA3_1 == FUNCTION_SYMBOL || LA3_1 == IGNORE_SYMBOL || LA3_1 == LOGFILE_SYMBOL || LA3_1 == OFFLINE_SYMBOL || LA3_1 == ONLINE_SYMBOL || LA3_1 == PROCEDURE_SYMBOL || LA3_1 == SERVER_SYMBOL || LA3_1 == SQL_SYMBOL || LA3_1 == TABLESPACE_SYMBOL || LA3_1 == TABLE_SYMBOL || LA3_1 == VIEW_SYMBOL))
                        {
                            alt3=1;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 3;
                            EXCEPTION->state        = 1;


                            goto rulestatementEx;

                        }
                    }
                }
                else if ( (LA3_0 == CREATE_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case USER_SYMBOL:
                    	{
                    		alt3=20;
                    	}
                        break;
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case DATABASE_SYMBOL:
                    case DEFINER_SYMBOL:
                    case EVENT_SYMBOL:
                    case FULLTEXT_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case INDEX_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case OFFLINE_SYMBOL:
                    case ONLINE_SYMBOL:
                    case OR_SYMBOL:
                    case PROCEDURE_SYMBOL:
                    case SERVER_SYMBOL:
                    case SPATIAL_SYMBOL:
                    case SQL_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLE_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TRIGGER_SYMBOL:
                    case UNIQUE_SYMBOL:
                    case VIEW_SYMBOL:
                    	{
                    		alt3=2;
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 3;
                        EXCEPTION->state        = 2;


                        goto rulestatementEx;

                    }

                }
                else if ( (LA3_0 == DROP_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case PREPARE_SYMBOL:
                    	{
                    		alt3=19;
                    	}
                        break;
                    case USER_SYMBOL:
                    	{
                    		alt3=20;
                    	}
                        break;
                    case DATABASE_SYMBOL:
                    case EVENT_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case INDEX_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case OFFLINE_SYMBOL:
                    case ONLINE_SYMBOL:
                    case PROCEDURE_SYMBOL:
                    case SERVER_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLE_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TRIGGER_SYMBOL:
                    case VIEW_SYMBOL:
                    	{
                    		alt3=3;
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 3;
                        EXCEPTION->state        = 3;


                        goto rulestatementEx;

                    }

                }
                else if ( (LA3_0 == RENAME_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case TABLE_SYMBOL:
                    	{
                    		alt3=4;
                    	}
                        break;
                    case USER_SYMBOL:
                    	{
                    		alt3=20;
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 3;
                        EXCEPTION->state        = 4;


                        goto rulestatementEx;

                    }

                }
                else if ( (LA3_0 == TRUNCATE_SYMBOL))
                {
                    alt3=5;
                }
                else if ( (LA3_0 == CALL_SYMBOL))
                {
                    alt3=6;
                }
                else if ( (LA3_0 == DELETE_SYMBOL))
                {
                    alt3=7;
                }
                else if ( (LA3_0 == DO_SYMBOL))
                {
                    alt3=8;
                }
                else if ( (LA3_0 == HANDLER_SYMBOL))
                {
                    alt3=9;
                }
                else if ( (LA3_0 == INSERT_SYMBOL))
                {
                    alt3=10;
                }
                else if ( (LA3_0 == LOAD_SYMBOL))
                {
                    {
                        int LA3_11 = LA(2);
                        if ( (LA3_11 == DATA_SYMBOL))
                        {
                            {
                                int LA3_104 = LA(3);
                                if ( (!( (( (( ((SERVER_VERSION < 50500)) && ((SERVER_VERSION < 50500)) )) && ((LA(1) == LOAD_SYMBOL && (LA(2) == DATA_SYMBOL || LA(2) == TABLE_SYMBOL))) )) )))
                                {
                                    alt3=11;
                                }
                                else if ( (( (( ((SERVER_VERSION < 50500)) && ((SERVER_VERSION < 50500)) )) && ((LA(1) == LOAD_SYMBOL && (LA(2) == DATA_SYMBOL || LA(2) == TABLE_SYMBOL))) )))
                                {
                                    alt3=18;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 3;
                                    EXCEPTION->state        = 104;


                                    goto rulestatementEx;

                                }
                            }
                        }
                        else if ( ((SERVER_VERSION >= 50500)) && (LA3_11 == XML_SYMBOL))
                        {
                            alt3=12;
                        }
                        else if ( (LA3_11 == INDEX_SYMBOL))
                        {
                            alt3=25;
                        }
                        else if ( ((SERVER_VERSION < 50500)) && (LA3_11 == TABLE_SYMBOL))
                        {
                            alt3=18;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 3;
                            EXCEPTION->state        = 11;


                            goto rulestatementEx;

                        }
                    }
                }
                else if ( (LA3_0 == REPLACE_SYMBOL))
                {
                    alt3=13;
                }
                else if ( (LA3_0 == OPEN_PAR_SYMBOL || LA3_0 == SELECT_SYMBOL))
                {
                    alt3=14;
                }
                else if ( (LA3_0 == UPDATE_SYMBOL))
                {
                    alt3=15;
                }
                else if ( ((SERVER_VERSION >= 50100)) && (LA3_0 == PARTITION_SYMBOL))
                {
                    alt3=16;
                }
                else if ( (LA3_0 == START_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case TRANSACTION_SYMBOL:
                    	{
                    		alt3=17;
                    	}
                        break;
                    case SLAVE_SYMBOL:
                    	{
                    		alt3=18;
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 3;
                        EXCEPTION->state        = 17;


                        goto rulestatementEx;

                    }

                }
                else if ( (LA3_0 == BEGIN_SYMBOL || LA3_0 == COMMIT_SYMBOL || LA3_0 == LOCK_SYMBOL || LA3_0 == RELEASE_SYMBOL || LA3_0 == ROLLBACK_SYMBOL || LA3_0 == SAVEPOINT_SYMBOL || LA3_0 == UNLOCK_SYMBOL || LA3_0 == XA_SYMBOL))
                {
                    alt3=17;
                }
                else if ( (LA3_0 == CHANGE_SYMBOL || LA3_0 == PURGE_SYMBOL || LA3_0 == STOP_SYMBOL))
                {
                    alt3=18;
                }
                else if ( (LA3_0 == DEALLOCATE_SYMBOL || LA3_0 == EXECUTE_SYMBOL || LA3_0 == PREPARE_SYMBOL))
                {
                    alt3=19;
                }
                else if ( (LA3_0 == GRANT_SYMBOL || LA3_0 == REVOKE_SYMBOL))
                {
                    alt3=20;
                }
                else if ( (LA3_0 == SET_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case PASSWORD_SYMBOL:
                    	{
                    		{
                    		    int LA3_110 = LA(3);
                    		    if ( (!( ((LA(1) == SET_SYMBOL && LA(2) != PASSWORD_SYMBOL)) )))
                    		    {
                    		        alt3=20;
                    		    }
                    		    else if ( ((LA(1) == SET_SYMBOL && LA(2) != PASSWORD_SYMBOL)))
                    		    {
                    		        alt3=23;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 3;
                    		        EXCEPTION->state        = 110;


                    		        goto rulestatementEx;

                    		    }
                    		}
                    	}
                        break;
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AT_AT_SIGN_SYMBOL:
                    case AT_SIGN_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHAR_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFAULT_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOUND_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_SYMBOL:
                    case LEVEL_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt3=23;
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 3;
                        EXCEPTION->state        = 34;


                        goto rulestatementEx;

                    }

                }
                else if ( (LA3_0 == ANALYZE_SYMBOL || ((LA3_0 >= CHECKSUM_SYMBOL) && (LA3_0 <= CHECK_SYMBOL)) || LA3_0 == OPTIMIZE_SYMBOL || LA3_0 == REPAIR_SYMBOL))
                {
                    alt3=21;
                }
                else if ( ((SERVER_VERSION < 50500)) && (LA3_0 == BACKUP_SYMBOL || LA3_0 == RESTORE_SYMBOL))
                {
                    alt3=21;
                }
                else if ( (LA3_0 == INSTALL_SYMBOL || LA3_0 == UNINSTALL_SYMBOL))
                {
                    alt3=22;
                }
                else if ( (LA3_0 == SHOW_SYMBOL))
                {
                    alt3=24;
                }
                else if ( (LA3_0 == BINLOG_SYMBOL || LA3_0 == CACHE_SYMBOL || LA3_0 == FLUSH_SYMBOL || LA3_0 == KILL_SYMBOL || LA3_0 == RESET_SYMBOL))
                {
                    alt3=25;
                }
                else if ( (((LA3_0 >= DESCRIBE_SYMBOL) && (LA3_0 <= DESC_SYMBOL)) || LA3_0 == HELP_SYMBOL || LA3_0 == USE_SYMBOL))
                {
                    alt3=26;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 3;
                    EXCEPTION->state        = 0;


                    goto rulestatementEx;

                }
            }
            switch (alt3)
            {
        	case 1:
        	    // MySQL.g:225:2: alter_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_alter_statement_in_statement209);
        	        alter_statement4=alter_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestatementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, alter_statement4.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:226:4: create_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_create_statement_in_statement214);
        	        create_statement5=create_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestatementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_statement5.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:227:4: drop_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_drop_statement_in_statement219);
        	        drop_statement6=drop_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestatementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, drop_statement6.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:228:4: rename_table_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_rename_table_statement_in_statement224);
        	        rename_table_statement7=rename_table_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestatementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, rename_table_statement7.tree);

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:229:4: truncate_table_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_truncate_table_statement_in_statement229);
        	        truncate_table_statement8=truncate_table_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestatementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, truncate_table_statement8.tree);

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:232:4: call_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_call_statement_in_statement238);
        	        call_statement9=call_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestatementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, call_statement9.tree);

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:233:4: delete_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_delete_statement_in_statement243);
        	        delete_statement10=delete_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestatementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, delete_statement10.tree);

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:234:4: do_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_do_statement_in_statement248);
        	        do_statement11=do_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestatementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, do_statement11.tree);

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:235:4: handler_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_handler_statement_in_statement253);
        	        handler_statement12=handler_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestatementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, handler_statement12.tree);

        	    }
        	    break;
        	case 10:
        	    // MySQL.g:236:4: insert_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_insert_statement_in_statement258);
        	        insert_statement13=insert_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestatementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, insert_statement13.tree);

        	    }
        	    break;
        	case 11:
        	    // MySQL.g:237:4: load_data_infile_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_load_data_infile_statement_in_statement263);
        	        load_data_infile_statement14=load_data_infile_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestatementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, load_data_infile_statement14.tree);

        	    }
        	    break;
        	case 12:
        	    // MySQL.g:238:4: {...}? => load_xml_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((SERVER_VERSION >= 50500)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50500";
        	                EXCEPTION->ruleName	 = (void *)"statement";


        	        }

        	        FOLLOWPUSH(FOLLOW_load_xml_statement_in_statement272);
        	        load_xml_statement15=load_xml_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestatementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, load_xml_statement15.tree);

        	    }
        	    break;
        	case 13:
        	    // MySQL.g:239:4: replace_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_replace_statement_in_statement277);
        	        replace_statement16=replace_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestatementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, replace_statement16.tree);

        	    }
        	    break;
        	case 14:
        	    // MySQL.g:240:4: select_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_select_statement_in_statement282);
        	        select_statement17=select_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestatementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_statement17.tree);

        	    }
        	    break;
        	case 15:
        	    // MySQL.g:241:4: update_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_update_statement_in_statement287);
        	        update_statement18=update_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestatementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, update_statement18.tree);

        	    }
        	    break;
        	case 16:
        	    // MySQL.g:243:4: partitioning
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_partitioning_in_statement293);
        	        partitioning19=partitioning(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestatementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partitioning19.tree);

        	    }
        	    break;
        	case 17:
        	    // MySQL.g:245:4: transaction_or_locking_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_transaction_or_locking_statement_in_statement302);
        	        transaction_or_locking_statement20=transaction_or_locking_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestatementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, transaction_or_locking_statement20.tree);

        	    }
        	    break;
        	case 18:
        	    // MySQL.g:247:4: replication_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_replication_statement_in_statement309);
        	        replication_statement21=replication_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestatementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, replication_statement21.tree);

        	    }
        	    break;
        	case 19:
        	    // MySQL.g:249:4: prepared_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_prepared_statement_in_statement316);
        	        prepared_statement22=prepared_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestatementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, prepared_statement22.tree);

        	    }
        	    break;
        	case 20:
        	    // MySQL.g:252:4: account_management_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_account_management_statement_in_statement325);
        	        account_management_statement23=account_management_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestatementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, account_management_statement23.tree);

        	    }
        	    break;
        	case 21:
        	    // MySQL.g:253:4: table_administration_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_table_administration_statement_in_statement330);
        	        table_administration_statement24=table_administration_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestatementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_administration_statement24.tree);

        	    }
        	    break;
        	case 22:
        	    // MySQL.g:254:4: install_uninstall_statment
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_install_uninstall_statment_in_statement335);
        	        install_uninstall_statment25=install_uninstall_statment(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestatementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, install_uninstall_statment25.tree);

        	    }
        	    break;
        	case 23:
        	    // MySQL.g:255:4: {...}? set_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((LA(1) == SET_SYMBOL && LA(2) != PASSWORD_SYMBOL)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"LA(1) == SET_SYMBOL && LA(2) != PASSWORD_SYMBOL";
        	                EXCEPTION->ruleName	 = (void *)"statement";


        	        }

        	        FOLLOWPUSH(FOLLOW_set_statement_in_statement342);
        	        set_statement26=set_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestatementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, set_statement26.tree);

        	    }
        	    break;
        	case 24:
        	    // MySQL.g:256:4: show_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_show_statement_in_statement348);
        	        show_statement27=show_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestatementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, show_statement27.tree);

        	    }
        	    break;
        	case 25:
        	    // MySQL.g:257:4: miscellaneous_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_miscellaneous_statement_in_statement353);
        	        miscellaneous_statement28=miscellaneous_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestatementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, miscellaneous_statement28.tree);

        	    }
        	    break;
        	case 26:
        	    // MySQL.g:260:4: utility_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_utility_statement_in_statement362);
        	        utility_statement29=utility_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestatementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, utility_statement29.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulestatementEx; /* Prevent compiler warnings */
    rulestatementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end statement */

/**
 * $ANTLR start alter_statement
 * MySQL.g:265:1: alter_statement : ALTER_SYMBOL ( alter_database | alter_log_file_group | FUNCTION_SYMBOL alter_routine | PROCEDURE_SYMBOL alter_routine | alter_server | alter_table | alter_tablespace |{...}? => alter_event | alter_view ) ;
 */
static MySQLParser_alter_statement_return
alter_statement(pMySQLParser ctx)
{
    MySQLParser_alter_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    ALTER_SYMBOL30;
    pANTLR3_COMMON_TOKEN    FUNCTION_SYMBOL33;
    pANTLR3_COMMON_TOKEN    PROCEDURE_SYMBOL35;
    MySQLParser_alter_database_return alter_database31;
    #undef	RETURN_TYPE_alter_database31
    #define	RETURN_TYPE_alter_database31 MySQLParser_alter_database_return

    MySQLParser_alter_log_file_group_return alter_log_file_group32;
    #undef	RETURN_TYPE_alter_log_file_group32
    #define	RETURN_TYPE_alter_log_file_group32 MySQLParser_alter_log_file_group_return

    MySQLParser_alter_routine_return alter_routine34;
    #undef	RETURN_TYPE_alter_routine34
    #define	RETURN_TYPE_alter_routine34 MySQLParser_alter_routine_return

    MySQLParser_alter_routine_return alter_routine36;
    #undef	RETURN_TYPE_alter_routine36
    #define	RETURN_TYPE_alter_routine36 MySQLParser_alter_routine_return

    MySQLParser_alter_server_return alter_server37;
    #undef	RETURN_TYPE_alter_server37
    #define	RETURN_TYPE_alter_server37 MySQLParser_alter_server_return

    MySQLParser_alter_table_return alter_table38;
    #undef	RETURN_TYPE_alter_table38
    #define	RETURN_TYPE_alter_table38 MySQLParser_alter_table_return

    MySQLParser_alter_tablespace_return alter_tablespace39;
    #undef	RETURN_TYPE_alter_tablespace39
    #define	RETURN_TYPE_alter_tablespace39 MySQLParser_alter_tablespace_return

    MySQLParser_alter_event_return alter_event40;
    #undef	RETURN_TYPE_alter_event40
    #define	RETURN_TYPE_alter_event40 MySQLParser_alter_event_return

    MySQLParser_alter_view_return alter_view41;
    #undef	RETURN_TYPE_alter_view41
    #define	RETURN_TYPE_alter_view41 MySQLParser_alter_view_return

    pANTLR3_BASE_TREE ALTER_SYMBOL30_tree;
    pANTLR3_BASE_TREE FUNCTION_SYMBOL33_tree;
    pANTLR3_BASE_TREE PROCEDURE_SYMBOL35_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ALTER_SYMBOL30       = NULL;
    FUNCTION_SYMBOL33       = NULL;
    PROCEDURE_SYMBOL35       = NULL;
    alter_database31.tree = NULL;

    alter_log_file_group32.tree = NULL;

    alter_routine34.tree = NULL;

    alter_routine36.tree = NULL;

    alter_server37.tree = NULL;

    alter_table38.tree = NULL;

    alter_tablespace39.tree = NULL;

    alter_event40.tree = NULL;

    alter_view41.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ALTER_SYMBOL30_tree   = NULL;
    FUNCTION_SYMBOL33_tree   = NULL;
    PROCEDURE_SYMBOL35_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:265:16: ( ALTER_SYMBOL ( alter_database | alter_log_file_group | FUNCTION_SYMBOL alter_routine | PROCEDURE_SYMBOL alter_routine | alter_server | alter_table | alter_tablespace |{...}? => alter_event | alter_view ) )
        // MySQL.g:266:3: ALTER_SYMBOL ( alter_database | alter_log_file_group | FUNCTION_SYMBOL alter_routine | PROCEDURE_SYMBOL alter_routine | alter_server | alter_table | alter_tablespace |{...}? => alter_event | alter_view )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            ALTER_SYMBOL30 = (pANTLR3_COMMON_TOKEN) MATCHT(ALTER_SYMBOL, &FOLLOW_ALTER_SYMBOL_in_alter_statement374);
            if  (HASEXCEPTION())
            {
                goto rulealter_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ALTER_SYMBOL30_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALTER_SYMBOL30));
            ADAPTOR->addChild(ADAPTOR, root_0, ALTER_SYMBOL30_tree);
            }

            // MySQL.g:267:3: ( alter_database | alter_log_file_group | FUNCTION_SYMBOL alter_routine | PROCEDURE_SYMBOL alter_routine | alter_server | alter_table | alter_tablespace |{...}? => alter_event | alter_view )
            {
                int alt4=9;
                {
                    int LA4_0 = LA(1);
                    if ( (LA4_0 == DATABASE_SYMBOL))
                    {
                        alt4=1;
                    }
                    else if ( (LA4_0 == LOGFILE_SYMBOL))
                    {
                        alt4=2;
                    }
                    else if ( (LA4_0 == FUNCTION_SYMBOL))
                    {
                        alt4=3;
                    }
                    else if ( (LA4_0 == PROCEDURE_SYMBOL))
                    {
                        alt4=4;
                    }
                    else if ( (LA4_0 == SERVER_SYMBOL))
                    {
                        alt4=5;
                    }
                    else if ( ((SERVER_VERSION < 50600)) && (LA4_0 == OFFLINE_SYMBOL || LA4_0 == ONLINE_SYMBOL))
                    {
                        alt4=6;
                    }
                    else if ( (LA4_0 == IGNORE_SYMBOL || LA4_0 == TABLE_SYMBOL))
                    {
                        alt4=6;
                    }
                    else if ( (LA4_0 == TABLESPACE_SYMBOL))
                    {
                        alt4=7;
                    }
                    else if ( (LA4_0 == DEFINER_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case EQUAL_OPERATOR:
                        	{
                        		{
                        		    int LA4_15 = LA(3);
                        		    if ( ((SERVER_VERSION >= 50100)))
                        		    {
                        		        alt4=8;
                        		    }
                        		    else if ( (ANTLR3_TRUE))
                        		    {
                        		        alt4=9;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 4;
                        		        EXCEPTION->state        = 15;


                        		        goto rulealter_statementEx;

                        		    }
                        		}
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 4;
                            EXCEPTION->state        = 10;


                            goto rulealter_statementEx;

                        }

                    }
                    else if ( ((SERVER_VERSION >= 50100)) && (LA4_0 == EVENT_SYMBOL))
                    {
                        alt4=8;
                    }
                    else if ( (LA4_0 == ALGORITHM_SYMBOL || LA4_0 == SQL_SYMBOL || LA4_0 == VIEW_SYMBOL))
                    {
                        alt4=9;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 4;
                        EXCEPTION->state        = 0;


                        goto rulealter_statementEx;

                    }
                }
                switch (alt4)
                {
            	case 1:
            	    // MySQL.g:268:2: alter_database
            	    {
            	        FOLLOWPUSH(FOLLOW_alter_database_in_alter_statement381);
            	        alter_database31=alter_database(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, alter_database31.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:269:4: alter_log_file_group
            	    {
            	        FOLLOWPUSH(FOLLOW_alter_log_file_group_in_alter_statement386);
            	        alter_log_file_group32=alter_log_file_group(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, alter_log_file_group32.tree);

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:270:4: FUNCTION_SYMBOL alter_routine
            	    {
            	        FUNCTION_SYMBOL33 = (pANTLR3_COMMON_TOKEN) MATCHT(FUNCTION_SYMBOL, &FOLLOW_FUNCTION_SYMBOL_in_alter_statement391);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FUNCTION_SYMBOL33_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FUNCTION_SYMBOL33));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FUNCTION_SYMBOL33_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_alter_routine_in_alter_statement393);
            	        alter_routine34=alter_routine(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, alter_routine34.tree);

            	    }
            	    break;
            	case 4:
            	    // MySQL.g:271:4: PROCEDURE_SYMBOL alter_routine
            	    {
            	        PROCEDURE_SYMBOL35 = (pANTLR3_COMMON_TOKEN) MATCHT(PROCEDURE_SYMBOL, &FOLLOW_PROCEDURE_SYMBOL_in_alter_statement398);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PROCEDURE_SYMBOL35_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PROCEDURE_SYMBOL35));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PROCEDURE_SYMBOL35_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_alter_routine_in_alter_statement400);
            	        alter_routine36=alter_routine(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, alter_routine36.tree);

            	    }
            	    break;
            	case 5:
            	    // MySQL.g:272:4: alter_server
            	    {
            	        FOLLOWPUSH(FOLLOW_alter_server_in_alter_statement405);
            	        alter_server37=alter_server(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, alter_server37.tree);

            	    }
            	    break;
            	case 6:
            	    // MySQL.g:273:4: alter_table
            	    {
            	        FOLLOWPUSH(FOLLOW_alter_table_in_alter_statement410);
            	        alter_table38=alter_table(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, alter_table38.tree);

            	    }
            	    break;
            	case 7:
            	    // MySQL.g:274:4: alter_tablespace
            	    {
            	        FOLLOWPUSH(FOLLOW_alter_tablespace_in_alter_statement415);
            	        alter_tablespace39=alter_tablespace(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, alter_tablespace39.tree);

            	    }
            	    break;
            	case 8:
            	    // MySQL.g:275:4: {...}? => alter_event
            	    {
            	        if ( !((SERVER_VERSION >= 50100)) )
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
            	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50100";
            	                EXCEPTION->ruleName	 = (void *)"alter_statement";


            	        }

            	        FOLLOWPUSH(FOLLOW_alter_event_in_alter_statement424);
            	        alter_event40=alter_event(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, alter_event40.tree);

            	    }
            	    break;
            	case 9:
            	    // MySQL.g:276:4: alter_view
            	    {
            	        FOLLOWPUSH(FOLLOW_alter_view_in_alter_statement429);
            	        alter_view41=alter_view(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, alter_view41.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulealter_statementEx; /* Prevent compiler warnings */
    rulealter_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end alter_statement */

/**
 * $ANTLR start alter_database
 * MySQL.g:280:1: alter_database : DATABASE_SYMBOL ( ( identifier )? ( database_option )+ | identifier UPGRADE_SYMBOL DATA_SYMBOL DIRECTORY_SYMBOL NAME_SYMBOL ) ;
 */
static MySQLParser_alter_database_return
alter_database(pMySQLParser ctx)
{
    MySQLParser_alter_database_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    DATABASE_SYMBOL42;
    pANTLR3_COMMON_TOKEN    UPGRADE_SYMBOL46;
    pANTLR3_COMMON_TOKEN    DATA_SYMBOL47;
    pANTLR3_COMMON_TOKEN    DIRECTORY_SYMBOL48;
    pANTLR3_COMMON_TOKEN    NAME_SYMBOL49;
    MySQLParser_identifier_return identifier43;
    #undef	RETURN_TYPE_identifier43
    #define	RETURN_TYPE_identifier43 MySQLParser_identifier_return

    MySQLParser_database_option_return database_option44;
    #undef	RETURN_TYPE_database_option44
    #define	RETURN_TYPE_database_option44 MySQLParser_database_option_return

    MySQLParser_identifier_return identifier45;
    #undef	RETURN_TYPE_identifier45
    #define	RETURN_TYPE_identifier45 MySQLParser_identifier_return

    pANTLR3_BASE_TREE DATABASE_SYMBOL42_tree;
    pANTLR3_BASE_TREE UPGRADE_SYMBOL46_tree;
    pANTLR3_BASE_TREE DATA_SYMBOL47_tree;
    pANTLR3_BASE_TREE DIRECTORY_SYMBOL48_tree;
    pANTLR3_BASE_TREE NAME_SYMBOL49_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DATABASE_SYMBOL42       = NULL;
    UPGRADE_SYMBOL46       = NULL;
    DATA_SYMBOL47       = NULL;
    DIRECTORY_SYMBOL48       = NULL;
    NAME_SYMBOL49       = NULL;
    identifier43.tree = NULL;

    database_option44.tree = NULL;

    identifier45.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DATABASE_SYMBOL42_tree   = NULL;
    UPGRADE_SYMBOL46_tree   = NULL;
    DATA_SYMBOL47_tree   = NULL;
    DIRECTORY_SYMBOL48_tree   = NULL;
    NAME_SYMBOL49_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:280:15: ( DATABASE_SYMBOL ( ( identifier )? ( database_option )+ | identifier UPGRADE_SYMBOL DATA_SYMBOL DIRECTORY_SYMBOL NAME_SYMBOL ) )
        // MySQL.g:281:2: DATABASE_SYMBOL ( ( identifier )? ( database_option )+ | identifier UPGRADE_SYMBOL DATA_SYMBOL DIRECTORY_SYMBOL NAME_SYMBOL )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            DATABASE_SYMBOL42 = (pANTLR3_COMMON_TOKEN) MATCHT(DATABASE_SYMBOL, &FOLLOW_DATABASE_SYMBOL_in_alter_database442);
            if  (HASEXCEPTION())
            {
                goto rulealter_databaseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DATABASE_SYMBOL42_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATABASE_SYMBOL42));
            ADAPTOR->addChild(ADAPTOR, root_0, DATABASE_SYMBOL42_tree);
            }

            // MySQL.g:282:2: ( ( identifier )? ( database_option )+ | identifier UPGRADE_SYMBOL DATA_SYMBOL DIRECTORY_SYMBOL NAME_SYMBOL )
            {
                int alt7=2;
                {
                    int LA7_0 = LA(1);
                    if ( (LA7_0 == IDENTIFIER))
                    {
                        switch ( LA(2) )
                        {
                        case CHAR_SYMBOL:
                        case COLLATE_SYMBOL:
                        case DEFAULT_SYMBOL:
                        	{
                        		alt7=1;
                        	}
                            break;
                        case UPGRADE_SYMBOL:
                        	{
                        		alt7=2;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 7;
                            EXCEPTION->state        = 1;


                            goto rulealter_databaseEx;

                        }

                    }
                    else if ( (LA7_0 == BACK_TICK_QUOTED_ID))
                    {
                        switch ( LA(2) )
                        {
                        case CHAR_SYMBOL:
                        case COLLATE_SYMBOL:
                        case DEFAULT_SYMBOL:
                        	{
                        		alt7=1;
                        	}
                            break;
                        case UPGRADE_SYMBOL:
                        	{
                        		alt7=2;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 7;
                            EXCEPTION->state        = 2;


                            goto rulealter_databaseEx;

                        }

                    }
                    else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA7_0 == DOUBLE_QUOTED_TEXT))
                    {
                        {
                            int LA7_3 = LA(2);
                            if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA7_3 == CHAR_SYMBOL || LA7_3 == COLLATE_SYMBOL || LA7_3 == DEFAULT_SYMBOL))
                            {
                                alt7=1;
                            }
                            else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA7_3 == UPGRADE_SYMBOL))
                            {
                                alt7=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 7;
                                EXCEPTION->state        = 3;


                                goto rulealter_databaseEx;

                            }
                        }
                    }
                    else if ( (((LA7_0 >= ACTION_SYMBOL) && (LA7_0 <= ADDDATE_SYMBOL)) || ((LA7_0 >= AFTER_SYMBOL) && (LA7_0 <= ALGORITHM_SYMBOL)) || LA7_0 == ANALYZE_SYMBOL || LA7_0 == ANY_SYMBOL || ((LA7_0 >= AT_SYMBOL) && (LA7_0 <= AVG_SYMBOL)) || LA7_0 == BINLOG_SYMBOL || LA7_0 == BIT_SYMBOL || ((LA7_0 >= BLOCK_SYMBOL) && (LA7_0 <= BOOL_SYMBOL)) || LA7_0 == BTREE_SYMBOL || LA7_0 == CASCADED_SYMBOL || ((LA7_0 >= CATALOG_NAME_SYMBOL) && (LA7_0 <= CHANGED_SYMBOL)) || ((LA7_0 >= CIPHER_SYMBOL) && (LA7_0 <= CLIENT_SYMBOL)) || ((LA7_0 >= COALESCE_SYMBOL) && (LA7_0 <= CODE_SYMBOL)) || LA7_0 == COLLATION_SYMBOL || ((LA7_0 >= COLUMNS_SYMBOL) && (LA7_0 <= COLUMN_NAME_SYMBOL)) || LA7_0 == COMMITTED_SYMBOL || ((LA7_0 >= COMPACT_SYMBOL) && (LA7_0 <= COMPRESSED_SYMBOL)) || LA7_0 == CONCURRENT_SYMBOL || ((LA7_0 >= CONNECTION_SYMBOL) && (LA7_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || LA7_0 == CONTEXT_SYMBOL || LA7_0 == CONTRIBUTORS_SYMBOL || LA7_0 == CPU_SYMBOL || LA7_0 == CUBE_SYMBOL || LA7_0 == CURRENT_SYMBOL || LA7_0 == CURSOR_NAME_SYMBOL || ((LA7_0 >= DATAFILE_SYMBOL) && (LA7_0 <= DATETIME_SYMBOL)) || LA7_0 == DATE_SYMBOL || LA7_0 == DAY_SYMBOL || LA7_0 == DEFAULT_AUTH_SYMBOL || LA7_0 == DEFINER_SYMBOL || LA7_0 == DELAY_KEY_WRITE_SYMBOL || LA7_0 == DES_KEY_FILE_SYMBOL || LA7_0 == DIAGNOSTICS_SYMBOL || ((LA7_0 >= DIRECTORY_SYMBOL) && (LA7_0 <= DISK_SYMBOL)) || ((LA7_0 >= DUMPFILE_SYMBOL) && (LA7_0 <= DYNAMIC_SYMBOL)) || LA7_0 == ENABLE_SYMBOL || LA7_0 == ENDS_SYMBOL || ((LA7_0 >= ENGINES_SYMBOL) && (LA7_0 <= ENUM_SYMBOL)) || ((LA7_0 >= ERRORS_SYMBOL) && (LA7_0 <= ERROR_SYMBOL)) || ((LA7_0 >= ESCAPE_SYMBOL) && (LA7_0 <= EVERY_SYMBOL)) || LA7_0 == EXPANSION_SYMBOL || LA7_0 == EXPORT_SYMBOL || ((LA7_0 >= EXTENDED_SYMBOL) && (LA7_0 <= EXTENT_SIZE_SYMBOL)) || ((LA7_0 >= FAST_SYMBOL) && (LA7_0 <= FAULTS_SYMBOL)) || ((LA7_0 >= FILE_SYMBOL) && (LA7_0 <= FIXED_SYMBOL)) || LA7_0 == FOUND_SYMBOL || LA7_0 == FULL_SYMBOL || ((LA7_0 >= FUNCTION_SYMBOL) && (LA7_0 <= GET_FORMAT_SYMBOL)) || ((LA7_0 >= GLOBAL_SYMBOL) && (LA7_0 <= GRANTS_SYMBOL)) || LA7_0 == HASH_SYMBOL || LA7_0 == HOSTS_SYMBOL || ((LA7_0 >= HOUR_SYMBOL) && (LA7_0 <= IDENTIFIED_SYMBOL)) || LA7_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA7_0 >= IMPORT_SYMBOL) && (LA7_0 <= INDEXES_SYMBOL)) || LA7_0 == INITIAL_SIZE_SYMBOL || LA7_0 == INNODB_SYMBOL || LA7_0 == INSERT_METHOD_SYMBOL || LA7_0 == INVOKER_SYMBOL || LA7_0 == IO_SYMBOL || ((LA7_0 >= IPC_SYMBOL) && (LA7_0 <= ISSUER_SYMBOL)) || LA7_0 == KEY_BLOCK_SIZE_SYMBOL || LA7_0 == LAST_SYMBOL || LA7_0 == LEAVES_SYMBOL || LA7_0 == LESS_SYMBOL || LA7_0 == LEVEL_SYMBOL || LA7_0 == LINESTRING_SYMBOL || LA7_0 == LIST_SYMBOL || LA7_0 == LOCAL_SYMBOL || LA7_0 == LOCKS_SYMBOL || LA7_0 == LOGFILE_SYMBOL || LA7_0 == LOGS_SYMBOL || LA7_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA7_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA7_0 <= MASTER_SSL_SYMBOL)) || ((LA7_0 >= MASTER_SYMBOL) && (LA7_0 <= MASTER_USER_SYMBOL)) || ((LA7_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA7_0 <= MAX_SIZE_SYMBOL)) || ((LA7_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA7_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA7_0 >= MEDIUM_SYMBOL) && (LA7_0 <= MICROSECOND_SYMBOL)) || LA7_0 == MIGRATE_SYMBOL || ((LA7_0 >= MINUTE_SYMBOL) && (LA7_0 <= MIN_ROWS_SYMBOL)) || LA7_0 == MODE_SYMBOL || LA7_0 == MODIFY_SYMBOL || ((LA7_0 >= MONTH_SYMBOL) && (LA7_0 <= MULTILINESTRING_SYMBOL)) || ((LA7_0 >= MULTIPOINT_SYMBOL) && (LA7_0 <= MULTIPOLYGON_SYMBOL)) || ((LA7_0 >= MUTEX_SYMBOL) && (LA7_0 <= NATIONAL_SYMBOL)) || LA7_0 == NCHAR_SYMBOL || LA7_0 == NDBCLUSTER_SYMBOL || ((LA7_0 >= NEW_SYMBOL) && (LA7_0 <= NONE_SYMBOL)) || LA7_0 == NO_WAIT_SYMBOL || LA7_0 == NUMBER_SYMBOL || LA7_0 == NVARCHAR_SYMBOL || ((LA7_0 >= OFFSET_SYMBOL) && (LA7_0 <= ONE_SYMBOL)) || ((LA7_0 >= PACK_KEYS_SYMBOL) && (LA7_0 <= PAGE_SYMBOL)) || ((LA7_0 >= PARTIAL_SYMBOL) && (LA7_0 <= PARTITIONS_SYMBOL)) || ((LA7_0 >= PASSWORD_SYMBOL) && (LA7_0 <= PLUGIN_SYMBOL)) || ((LA7_0 >= POINT_SYMBOL) && (LA7_0 <= POLYGON_SYMBOL)) || ((LA7_0 >= PRESERVE_SYMBOL) && (LA7_0 <= PREV_SYMBOL)) || LA7_0 == PRIVILEGES_SYMBOL || ((LA7_0 >= PROCESSLIST_SYMBOL) && (LA7_0 <= PROXY_SYMBOL)) || ((LA7_0 >= QUARTER_SYMBOL) && (LA7_0 <= QUICK_SYMBOL)) || LA7_0 == READ_ONLY_SYMBOL || ((LA7_0 >= REBUILD_SYMBOL) && (LA7_0 <= REDUNDANT_SYMBOL)) || ((LA7_0 >= RELAYLOG_SYMBOL) && (LA7_0 <= RELAY_THREAD_SYMBOL)) || LA7_0 == RELOAD_SYMBOL || LA7_0 == REORGANIZE_SYMBOL || LA7_0 == REPEATABLE_SYMBOL || LA7_0 == REPLICATION_SYMBOL || ((LA7_0 >= RESUME_SYMBOL) && (LA7_0 <= RETURNS_SYMBOL)) || LA7_0 == REVERSE_SYMBOL || ((LA7_0 >= ROLLUP_SYMBOL) && (LA7_0 <= RTREE_SYMBOL)) || LA7_0 == SCHEDULE_SYMBOL || LA7_0 == SCHEMA_NAME_SYMBOL || LA7_0 == SECOND_SYMBOL || ((LA7_0 >= SERIALIZABLE_SYMBOL) && (LA7_0 <= SERIAL_SYMBOL)) || LA7_0 == SESSION_SYMBOL || LA7_0 == SHARE_SYMBOL || LA7_0 == SHUTDOWN_SYMBOL || LA7_0 == SIMPLE_SYMBOL || LA7_0 == SLOW_SYMBOL || LA7_0 == SNAPSHOT_SYMBOL || ((LA7_0 >= SOUNDS_SYMBOL) && (LA7_0 <= SOURCE_SYMBOL)) || ((LA7_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA7_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA7_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA7_0 <= SQL_CACHE_SYMBOL)) || LA7_0 == SQL_NO_CACHE_SYMBOL || LA7_0 == SQL_THREAD_SYMBOL || LA7_0 == STARTS_SYMBOL || ((LA7_0 >= STATS_AUTO_RECALC_SYMBOL) && (LA7_0 <= STATUS_SYMBOL)) || LA7_0 == STORAGE_SYMBOL || ((LA7_0 >= STRING_SYMBOL) && (LA7_0 <= SUBPARTITION_SYMBOL)) || ((LA7_0 >= SUPER_SYMBOL) && (LA7_0 <= SWITCHES_SYMBOL)) || ((LA7_0 >= TABLESPACE_SYMBOL) && (LA7_0 <= TABLE_NAME_SYMBOL)) || ((LA7_0 >= TEMPORARY_SYMBOL) && (LA7_0 <= TEMPTABLE_SYMBOL)) || ((LA7_0 >= TEXT_SYMBOL) && (LA7_0 <= THAN_SYMBOL)) || ((LA7_0 >= TIMESTAMP_ADD_SYMBOL) && (LA7_0 <= TIME_SYMBOL)) || ((LA7_0 >= TRANSACTION_SYMBOL) && (LA7_0 <= TRIGGERS_SYMBOL)) || ((LA7_0 >= TYPES_SYMBOL) && (LA7_0 <= UDF_RETURNS_SYMBOL)) || ((LA7_0 >= UNCOMMITTED_SYMBOL) && (LA7_0 <= UNDEFINED_SYMBOL)) || ((LA7_0 >= UNDOFILE_SYMBOL) && (LA7_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || LA7_0 == UNKNOWN_SYMBOL || LA7_0 == UNTIL_SYMBOL || ((LA7_0 >= USER_RESOURCES_SYMBOL) && (LA7_0 <= USE_FRM_SYMBOL)) || LA7_0 == VALUE_SYMBOL || LA7_0 == VARIABLES_SYMBOL || ((LA7_0 >= VIEW_SYMBOL) && (LA7_0 <= WEIGHT_STRING_SYMBOL)) || LA7_0 == WORK_SYMBOL || LA7_0 == X509_SYMBOL || LA7_0 == XML_SYMBOL || LA7_0 == YEAR_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case CHAR_SYMBOL:
                        case COLLATE_SYMBOL:
                        case DEFAULT_SYMBOL:
                        	{
                        		alt7=1;
                        	}
                            break;
                        case UPGRADE_SYMBOL:
                        	{
                        		alt7=2;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 7;
                            EXCEPTION->state        = 4;


                            goto rulealter_databaseEx;

                        }

                    }
                    else if ( (LA7_0 == ASCII_SYMBOL || LA7_0 == BACKUP_SYMBOL || LA7_0 == BEGIN_SYMBOL || LA7_0 == BYTE_SYMBOL || LA7_0 == CACHE_SYMBOL || LA7_0 == CHARSET_SYMBOL || LA7_0 == CHECKSUM_SYMBOL || LA7_0 == CLOSE_SYMBOL || LA7_0 == COMMENT_SYMBOL || LA7_0 == COMMIT_SYMBOL || LA7_0 == CONTAINS_SYMBOL || LA7_0 == DEALLOCATE_SYMBOL || LA7_0 == DO_SYMBOL || LA7_0 == END_SYMBOL || LA7_0 == EXECUTE_SYMBOL || LA7_0 == FLUSH_SYMBOL || LA7_0 == FORMAT_SYMBOL || LA7_0 == HANDLER_SYMBOL || LA7_0 == HELP_SYMBOL || LA7_0 == HOST_SYMBOL || LA7_0 == INSTALL_SYMBOL || LA7_0 == LANGUAGE_SYMBOL || LA7_0 == NO_SYMBOL || LA7_0 == OPEN_SYMBOL || LA7_0 == OPTIONS_SYMBOL || LA7_0 == OWNER_SYMBOL || LA7_0 == PARSER_SYMBOL || LA7_0 == PARTITION_SYMBOL || LA7_0 == PORT_SYMBOL || LA7_0 == PREPARE_SYMBOL || LA7_0 == REMOVE_SYMBOL || LA7_0 == REPAIR_SYMBOL || LA7_0 == RESET_SYMBOL || LA7_0 == RESTORE_SYMBOL || LA7_0 == ROLLBACK_SYMBOL || LA7_0 == SAVEPOINT_SYMBOL || LA7_0 == SECURITY_SYMBOL || LA7_0 == SERVER_SYMBOL || LA7_0 == SIGNED_SYMBOL || LA7_0 == SLAVE_SYMBOL || ((LA7_0 >= SOCKET_SYMBOL) && (LA7_0 <= SONAME_SYMBOL)) || LA7_0 == START_SYMBOL || LA7_0 == STOP_SYMBOL || LA7_0 == TRUNCATE_SYMBOL || ((LA7_0 >= UNICODE_SYMBOL) && (LA7_0 <= UNINSTALL_SYMBOL)) || LA7_0 == UPGRADE_SYMBOL || LA7_0 == WRAPPER_SYMBOL || LA7_0 == XA_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case CHAR_SYMBOL:
                        case COLLATE_SYMBOL:
                        case DEFAULT_SYMBOL:
                        	{
                        		alt7=1;
                        	}
                            break;
                        case UPGRADE_SYMBOL:
                        	{
                        		alt7=2;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 7;
                            EXCEPTION->state        = 5;


                            goto rulealter_databaseEx;

                        }

                    }
                    else if ( (LA7_0 == CHAR_SYMBOL || LA7_0 == COLLATE_SYMBOL || LA7_0 == DEFAULT_SYMBOL))
                    {
                        alt7=1;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 7;
                        EXCEPTION->state        = 0;


                        goto rulealter_databaseEx;

                    }
                }
                switch (alt7)
                {
            	case 1:
            	    // MySQL.g:283:3: ( identifier )? ( database_option )+
            	    {
            	        // MySQL.g:283:3: ( identifier )?
            	        {
            	            int alt5=2;
            	            {
            	                int LA5_0 = LA(1);
            	                if ( (LA5_0 == BACK_TICK_QUOTED_ID || LA5_0 == IDENTIFIER))
            	                {
            	                    alt5=1;
            	                }
            	                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA5_0 == DOUBLE_QUOTED_TEXT))
            	                {
            	                    alt5=1;
            	                }
            	                else if ( (((LA5_0 >= ACTION_SYMBOL) && (LA5_0 <= ADDDATE_SYMBOL)) || ((LA5_0 >= AFTER_SYMBOL) && (LA5_0 <= ALGORITHM_SYMBOL)) || LA5_0 == ANALYZE_SYMBOL || ((LA5_0 >= ANY_SYMBOL) && (LA5_0 <= ASCII_SYMBOL)) || ((LA5_0 >= AT_SYMBOL) && (LA5_0 <= BACKUP_SYMBOL)) || LA5_0 == BEGIN_SYMBOL || LA5_0 == BINLOG_SYMBOL || LA5_0 == BIT_SYMBOL || ((LA5_0 >= BLOCK_SYMBOL) && (LA5_0 <= BOOL_SYMBOL)) || ((LA5_0 >= BTREE_SYMBOL) && (LA5_0 <= BYTE_SYMBOL)) || LA5_0 == CACHE_SYMBOL || LA5_0 == CASCADED_SYMBOL || ((LA5_0 >= CATALOG_NAME_SYMBOL) && (LA5_0 <= CHANGED_SYMBOL)) || LA5_0 == CHARSET_SYMBOL || LA5_0 == CHECKSUM_SYMBOL || ((LA5_0 >= CIPHER_SYMBOL) && (LA5_0 <= CLIENT_SYMBOL)) || ((LA5_0 >= CLOSE_SYMBOL) && (LA5_0 <= CODE_SYMBOL)) || LA5_0 == COLLATION_SYMBOL || ((LA5_0 >= COLUMNS_SYMBOL) && (LA5_0 <= COLUMN_NAME_SYMBOL)) || ((LA5_0 >= COMMENT_SYMBOL) && (LA5_0 <= COMPRESSED_SYMBOL)) || LA5_0 == CONCURRENT_SYMBOL || ((LA5_0 >= CONNECTION_SYMBOL) && (LA5_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA5_0 >= CONTAINS_SYMBOL) && (LA5_0 <= CONTEXT_SYMBOL)) || LA5_0 == CONTRIBUTORS_SYMBOL || LA5_0 == CPU_SYMBOL || LA5_0 == CUBE_SYMBOL || LA5_0 == CURRENT_SYMBOL || LA5_0 == CURSOR_NAME_SYMBOL || ((LA5_0 >= DATAFILE_SYMBOL) && (LA5_0 <= DATETIME_SYMBOL)) || LA5_0 == DATE_SYMBOL || ((LA5_0 >= DAY_SYMBOL) && (LA5_0 <= DEALLOCATE_SYMBOL)) || LA5_0 == DEFAULT_AUTH_SYMBOL || LA5_0 == DEFINER_SYMBOL || LA5_0 == DELAY_KEY_WRITE_SYMBOL || LA5_0 == DES_KEY_FILE_SYMBOL || LA5_0 == DIAGNOSTICS_SYMBOL || ((LA5_0 >= DIRECTORY_SYMBOL) && (LA5_0 <= DISK_SYMBOL)) || LA5_0 == DO_SYMBOL || ((LA5_0 >= DUMPFILE_SYMBOL) && (LA5_0 <= DYNAMIC_SYMBOL)) || LA5_0 == ENABLE_SYMBOL || LA5_0 == ENDS_SYMBOL || ((LA5_0 >= END_SYMBOL) && (LA5_0 <= ENUM_SYMBOL)) || ((LA5_0 >= ERRORS_SYMBOL) && (LA5_0 <= ERROR_SYMBOL)) || ((LA5_0 >= ESCAPE_SYMBOL) && (LA5_0 <= EVERY_SYMBOL)) || LA5_0 == EXECUTE_SYMBOL || LA5_0 == EXPANSION_SYMBOL || LA5_0 == EXPORT_SYMBOL || ((LA5_0 >= EXTENDED_SYMBOL) && (LA5_0 <= EXTENT_SIZE_SYMBOL)) || ((LA5_0 >= FAST_SYMBOL) && (LA5_0 <= FAULTS_SYMBOL)) || ((LA5_0 >= FILE_SYMBOL) && (LA5_0 <= FIXED_SYMBOL)) || LA5_0 == FLUSH_SYMBOL || LA5_0 == FORMAT_SYMBOL || LA5_0 == FOUND_SYMBOL || LA5_0 == FULL_SYMBOL || ((LA5_0 >= FUNCTION_SYMBOL) && (LA5_0 <= GET_FORMAT_SYMBOL)) || ((LA5_0 >= GLOBAL_SYMBOL) && (LA5_0 <= GRANTS_SYMBOL)) || ((LA5_0 >= HANDLER_SYMBOL) && (LA5_0 <= HASH_SYMBOL)) || LA5_0 == HELP_SYMBOL || ((LA5_0 >= HOSTS_SYMBOL) && (LA5_0 <= HOST_SYMBOL)) || ((LA5_0 >= HOUR_SYMBOL) && (LA5_0 <= IDENTIFIED_SYMBOL)) || LA5_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA5_0 >= IMPORT_SYMBOL) && (LA5_0 <= INDEXES_SYMBOL)) || LA5_0 == INITIAL_SIZE_SYMBOL || LA5_0 == INNODB_SYMBOL || LA5_0 == INSERT_METHOD_SYMBOL || LA5_0 == INSTALL_SYMBOL || LA5_0 == INVOKER_SYMBOL || LA5_0 == IO_SYMBOL || ((LA5_0 >= IPC_SYMBOL) && (LA5_0 <= ISSUER_SYMBOL)) || LA5_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA5_0 >= LANGUAGE_SYMBOL) && (LA5_0 <= LAST_SYMBOL)) || LA5_0 == LEAVES_SYMBOL || LA5_0 == LESS_SYMBOL || LA5_0 == LEVEL_SYMBOL || LA5_0 == LINESTRING_SYMBOL || LA5_0 == LIST_SYMBOL || LA5_0 == LOCAL_SYMBOL || LA5_0 == LOCKS_SYMBOL || LA5_0 == LOGFILE_SYMBOL || LA5_0 == LOGS_SYMBOL || LA5_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA5_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA5_0 <= MASTER_SSL_SYMBOL)) || ((LA5_0 >= MASTER_SYMBOL) && (LA5_0 <= MASTER_USER_SYMBOL)) || ((LA5_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA5_0 <= MAX_SIZE_SYMBOL)) || ((LA5_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA5_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA5_0 >= MEDIUM_SYMBOL) && (LA5_0 <= MICROSECOND_SYMBOL)) || LA5_0 == MIGRATE_SYMBOL || ((LA5_0 >= MINUTE_SYMBOL) && (LA5_0 <= MIN_ROWS_SYMBOL)) || LA5_0 == MODE_SYMBOL || LA5_0 == MODIFY_SYMBOL || ((LA5_0 >= MONTH_SYMBOL) && (LA5_0 <= MULTILINESTRING_SYMBOL)) || ((LA5_0 >= MULTIPOINT_SYMBOL) && (LA5_0 <= MULTIPOLYGON_SYMBOL)) || ((LA5_0 >= MUTEX_SYMBOL) && (LA5_0 <= NATIONAL_SYMBOL)) || LA5_0 == NCHAR_SYMBOL || LA5_0 == NDBCLUSTER_SYMBOL || ((LA5_0 >= NEW_SYMBOL) && (LA5_0 <= NONE_SYMBOL)) || ((LA5_0 >= NO_SYMBOL) && (LA5_0 <= NO_WAIT_SYMBOL)) || LA5_0 == NUMBER_SYMBOL || LA5_0 == NVARCHAR_SYMBOL || ((LA5_0 >= OFFSET_SYMBOL) && (LA5_0 <= ONE_SYMBOL)) || LA5_0 == OPEN_SYMBOL || LA5_0 == OPTIONS_SYMBOL || ((LA5_0 >= OWNER_SYMBOL) && (LA5_0 <= PAGE_SYMBOL)) || ((LA5_0 >= PARSER_SYMBOL) && (LA5_0 <= PARTITION_SYMBOL)) || ((LA5_0 >= PASSWORD_SYMBOL) && (LA5_0 <= PLUGIN_SYMBOL)) || ((LA5_0 >= POINT_SYMBOL) && (LA5_0 <= PORT_SYMBOL)) || ((LA5_0 >= PREPARE_SYMBOL) && (LA5_0 <= PREV_SYMBOL)) || LA5_0 == PRIVILEGES_SYMBOL || ((LA5_0 >= PROCESSLIST_SYMBOL) && (LA5_0 <= PROXY_SYMBOL)) || ((LA5_0 >= QUARTER_SYMBOL) && (LA5_0 <= QUICK_SYMBOL)) || LA5_0 == READ_ONLY_SYMBOL || ((LA5_0 >= REBUILD_SYMBOL) && (LA5_0 <= REDUNDANT_SYMBOL)) || ((LA5_0 >= RELAYLOG_SYMBOL) && (LA5_0 <= RELAY_THREAD_SYMBOL)) || ((LA5_0 >= RELOAD_SYMBOL) && (LA5_0 <= REMOVE_SYMBOL)) || ((LA5_0 >= REORGANIZE_SYMBOL) && (LA5_0 <= REPEATABLE_SYMBOL)) || LA5_0 == REPLICATION_SYMBOL || LA5_0 == RESET_SYMBOL || LA5_0 == RESTORE_SYMBOL || ((LA5_0 >= RESUME_SYMBOL) && (LA5_0 <= RETURNS_SYMBOL)) || LA5_0 == REVERSE_SYMBOL || ((LA5_0 >= ROLLBACK_SYMBOL) && (LA5_0 <= SCHEDULE_SYMBOL)) || LA5_0 == SCHEMA_NAME_SYMBOL || ((LA5_0 >= SECOND_SYMBOL) && (LA5_0 <= SECURITY_SYMBOL)) || ((LA5_0 >= SERIALIZABLE_SYMBOL) && (LA5_0 <= SERIAL_SYMBOL)) || ((LA5_0 >= SERVER_SYMBOL) && (LA5_0 <= SESSION_SYMBOL)) || LA5_0 == SHARE_SYMBOL || LA5_0 == SHUTDOWN_SYMBOL || ((LA5_0 >= SIGNED_SYMBOL) && (LA5_0 <= SIMPLE_SYMBOL)) || ((LA5_0 >= SLAVE_SYMBOL) && (LA5_0 <= SLOW_SYMBOL)) || ((LA5_0 >= SNAPSHOT_SYMBOL) && (LA5_0 <= SOURCE_SYMBOL)) || ((LA5_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA5_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA5_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA5_0 <= SQL_CACHE_SYMBOL)) || LA5_0 == SQL_NO_CACHE_SYMBOL || LA5_0 == SQL_THREAD_SYMBOL || ((LA5_0 >= STARTS_SYMBOL) && (LA5_0 <= STATUS_SYMBOL)) || ((LA5_0 >= STOP_SYMBOL) && (LA5_0 <= STORAGE_SYMBOL)) || ((LA5_0 >= STRING_SYMBOL) && (LA5_0 <= SUBPARTITION_SYMBOL)) || ((LA5_0 >= SUPER_SYMBOL) && (LA5_0 <= SWITCHES_SYMBOL)) || ((LA5_0 >= TABLESPACE_SYMBOL) && (LA5_0 <= TABLE_NAME_SYMBOL)) || ((LA5_0 >= TEMPORARY_SYMBOL) && (LA5_0 <= TEMPTABLE_SYMBOL)) || ((LA5_0 >= TEXT_SYMBOL) && (LA5_0 <= THAN_SYMBOL)) || ((LA5_0 >= TIMESTAMP_ADD_SYMBOL) && (LA5_0 <= TIME_SYMBOL)) || ((LA5_0 >= TRANSACTION_SYMBOL) && (LA5_0 <= TRIGGERS_SYMBOL)) || ((LA5_0 >= TRUNCATE_SYMBOL) && (LA5_0 <= UDF_RETURNS_SYMBOL)) || ((LA5_0 >= UNCOMMITTED_SYMBOL) && (LA5_0 <= UNDEFINED_SYMBOL)) || ((LA5_0 >= UNDOFILE_SYMBOL) && (LA5_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA5_0 >= UNICODE_SYMBOL) && (LA5_0 <= UNINSTALL_SYMBOL)) || LA5_0 == UNKNOWN_SYMBOL || LA5_0 == UNTIL_SYMBOL || LA5_0 == UPGRADE_SYMBOL || ((LA5_0 >= USER_RESOURCES_SYMBOL) && (LA5_0 <= USE_FRM_SYMBOL)) || LA5_0 == VALUE_SYMBOL || LA5_0 == VARIABLES_SYMBOL || ((LA5_0 >= VIEW_SYMBOL) && (LA5_0 <= WEIGHT_STRING_SYMBOL)) || ((LA5_0 >= WORK_SYMBOL) && (LA5_0 <= WRAPPER_SYMBOL)) || LA5_0 == X509_SYMBOL || ((LA5_0 >= XA_SYMBOL) && (LA5_0 <= XML_SYMBOL)) || LA5_0 == YEAR_SYMBOL))
            	                {
            	                    alt5=1;
            	                }
            	            }
            	            switch (alt5)
            	            {
            	        	case 1:
            	        	    // MySQL.g:283:3: identifier
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_identifier_in_alter_database449);
            	        	        identifier43=identifier(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulealter_databaseEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier43.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:283:15: ( database_option )+
            	        {
            	            int cnt6=0;

            	            for (;;)
            	            {
            	                int alt6=2;
            	        	switch ( LA(1) )
            	        	{
            	        	case CHAR_SYMBOL:
            	        	case COLLATE_SYMBOL:
            	        	case DEFAULT_SYMBOL:
            	        		{
            	        			alt6=1;
            	        		}
            	        	    break;

            	        	}

            	        	switch (alt6)
            	        	{
            	        	    case 1:
            	        	        // MySQL.g:283:15: database_option
            	        	        {
            	        	            FOLLOWPUSH(FOLLOW_database_option_in_alter_database452);
            	        	            database_option44=database_option(ctx);

            	        	            FOLLOWPOP();
            	        	            if  (HASEXCEPTION())
            	        	            {
            	        	                goto rulealter_databaseEx;
            	        	            }
            	        	            if (HASFAILED())
            	        	            {
            	        	                return retval;
            	        	            }

            	        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, database_option44.tree);

            	        	        }
            	        	        break;

            	        	    default:

            	        		if ( cnt6 >= 1 )
            	        		{
            	        		    goto loop6;
            	        		}
            	        		if (BACKTRACKING>0)
            	        		{
            	        		    FAILEDFLAG = ANTLR3_TRUE;
            	        		    return retval;
            	        		}

            	        		/* mismatchedSetEx()
            	        		 */
            	        		CONSTRUCTEX();
            	        		EXCEPTION->type = ANTLR3_EARLY_EXIT_EXCEPTION;
            	        		EXCEPTION->name = (void *)ANTLR3_EARLY_EXIT_NAME;


            	        		goto rulealter_databaseEx;
            	        	}
            	        	cnt6++;
            	            }
            	            loop6: ;	/* Jump to here if this rule does not match */
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:284:5: identifier UPGRADE_SYMBOL DATA_SYMBOL DIRECTORY_SYMBOL NAME_SYMBOL
            	    {
            	        FOLLOWPUSH(FOLLOW_identifier_in_alter_database459);
            	        identifier45=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_databaseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier45.tree);

            	        UPGRADE_SYMBOL46 = (pANTLR3_COMMON_TOKEN) MATCHT(UPGRADE_SYMBOL, &FOLLOW_UPGRADE_SYMBOL_in_alter_database461);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_databaseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        UPGRADE_SYMBOL46_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UPGRADE_SYMBOL46));
            	        ADAPTOR->addChild(ADAPTOR, root_0, UPGRADE_SYMBOL46_tree);
            	        }

            	        DATA_SYMBOL47 = (pANTLR3_COMMON_TOKEN) MATCHT(DATA_SYMBOL, &FOLLOW_DATA_SYMBOL_in_alter_database463);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_databaseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DATA_SYMBOL47_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATA_SYMBOL47));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DATA_SYMBOL47_tree);
            	        }

            	        DIRECTORY_SYMBOL48 = (pANTLR3_COMMON_TOKEN) MATCHT(DIRECTORY_SYMBOL, &FOLLOW_DIRECTORY_SYMBOL_in_alter_database465);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_databaseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DIRECTORY_SYMBOL48_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DIRECTORY_SYMBOL48));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DIRECTORY_SYMBOL48_tree);
            	        }

            	        NAME_SYMBOL49 = (pANTLR3_COMMON_TOKEN) MATCHT(NAME_SYMBOL, &FOLLOW_NAME_SYMBOL_in_alter_database467);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_databaseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        NAME_SYMBOL49_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NAME_SYMBOL49));
            	        ADAPTOR->addChild(ADAPTOR, root_0, NAME_SYMBOL49_tree);
            	        }

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulealter_databaseEx; /* Prevent compiler warnings */
    rulealter_databaseEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end alter_database */

/**
 * $ANTLR start alter_event
 * MySQL.g:288:1: alter_event : ( definer_clause )? EVENT_SYMBOL identifier ( ON_SYMBOL SCHEDULE_SYMBOL schedule )? ( ON_SYMBOL COMPLETION_SYMBOL ( NOT_SYMBOL )? PRESERVE_SYMBOL )? ( RENAME_SYMBOL TO_SYMBOL identifier )? ( ENABLE_SYMBOL | DISABLE_SYMBOL ( ON_SYMBOL SLAVE_SYMBOL )? )? ( COMMENT_SYMBOL string_literal )? ( DO_SYMBOL compound_statement )? ;
 */
static MySQLParser_alter_event_return
alter_event(pMySQLParser ctx)
{
    MySQLParser_alter_event_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    EVENT_SYMBOL51;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL53;
    pANTLR3_COMMON_TOKEN    SCHEDULE_SYMBOL54;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL56;
    pANTLR3_COMMON_TOKEN    COMPLETION_SYMBOL57;
    pANTLR3_COMMON_TOKEN    NOT_SYMBOL58;
    pANTLR3_COMMON_TOKEN    PRESERVE_SYMBOL59;
    pANTLR3_COMMON_TOKEN    RENAME_SYMBOL60;
    pANTLR3_COMMON_TOKEN    TO_SYMBOL61;
    pANTLR3_COMMON_TOKEN    ENABLE_SYMBOL63;
    pANTLR3_COMMON_TOKEN    DISABLE_SYMBOL64;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL65;
    pANTLR3_COMMON_TOKEN    SLAVE_SYMBOL66;
    pANTLR3_COMMON_TOKEN    COMMENT_SYMBOL67;
    pANTLR3_COMMON_TOKEN    DO_SYMBOL69;
    MySQLParser_definer_clause_return definer_clause50;
    #undef	RETURN_TYPE_definer_clause50
    #define	RETURN_TYPE_definer_clause50 MySQLParser_definer_clause_return

    MySQLParser_identifier_return identifier52;
    #undef	RETURN_TYPE_identifier52
    #define	RETURN_TYPE_identifier52 MySQLParser_identifier_return

    MySQLParser_schedule_return schedule55;
    #undef	RETURN_TYPE_schedule55
    #define	RETURN_TYPE_schedule55 MySQLParser_schedule_return

    MySQLParser_identifier_return identifier62;
    #undef	RETURN_TYPE_identifier62
    #define	RETURN_TYPE_identifier62 MySQLParser_identifier_return

    MySQLParser_string_literal_return string_literal68;
    #undef	RETURN_TYPE_string_literal68
    #define	RETURN_TYPE_string_literal68 MySQLParser_string_literal_return

    MySQLParser_compound_statement_return compound_statement70;
    #undef	RETURN_TYPE_compound_statement70
    #define	RETURN_TYPE_compound_statement70 MySQLParser_compound_statement_return

    pANTLR3_BASE_TREE EVENT_SYMBOL51_tree;
    pANTLR3_BASE_TREE ON_SYMBOL53_tree;
    pANTLR3_BASE_TREE SCHEDULE_SYMBOL54_tree;
    pANTLR3_BASE_TREE ON_SYMBOL56_tree;
    pANTLR3_BASE_TREE COMPLETION_SYMBOL57_tree;
    pANTLR3_BASE_TREE NOT_SYMBOL58_tree;
    pANTLR3_BASE_TREE PRESERVE_SYMBOL59_tree;
    pANTLR3_BASE_TREE RENAME_SYMBOL60_tree;
    pANTLR3_BASE_TREE TO_SYMBOL61_tree;
    pANTLR3_BASE_TREE ENABLE_SYMBOL63_tree;
    pANTLR3_BASE_TREE DISABLE_SYMBOL64_tree;
    pANTLR3_BASE_TREE ON_SYMBOL65_tree;
    pANTLR3_BASE_TREE SLAVE_SYMBOL66_tree;
    pANTLR3_BASE_TREE COMMENT_SYMBOL67_tree;
    pANTLR3_BASE_TREE DO_SYMBOL69_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    EVENT_SYMBOL51       = NULL;
    ON_SYMBOL53       = NULL;
    SCHEDULE_SYMBOL54       = NULL;
    ON_SYMBOL56       = NULL;
    COMPLETION_SYMBOL57       = NULL;
    NOT_SYMBOL58       = NULL;
    PRESERVE_SYMBOL59       = NULL;
    RENAME_SYMBOL60       = NULL;
    TO_SYMBOL61       = NULL;
    ENABLE_SYMBOL63       = NULL;
    DISABLE_SYMBOL64       = NULL;
    ON_SYMBOL65       = NULL;
    SLAVE_SYMBOL66       = NULL;
    COMMENT_SYMBOL67       = NULL;
    DO_SYMBOL69       = NULL;
    definer_clause50.tree = NULL;

    identifier52.tree = NULL;

    schedule55.tree = NULL;

    identifier62.tree = NULL;

    string_literal68.tree = NULL;

    compound_statement70.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    EVENT_SYMBOL51_tree   = NULL;
    ON_SYMBOL53_tree   = NULL;
    SCHEDULE_SYMBOL54_tree   = NULL;
    ON_SYMBOL56_tree   = NULL;
    COMPLETION_SYMBOL57_tree   = NULL;
    NOT_SYMBOL58_tree   = NULL;
    PRESERVE_SYMBOL59_tree   = NULL;
    RENAME_SYMBOL60_tree   = NULL;
    TO_SYMBOL61_tree   = NULL;
    ENABLE_SYMBOL63_tree   = NULL;
    DISABLE_SYMBOL64_tree   = NULL;
    ON_SYMBOL65_tree   = NULL;
    SLAVE_SYMBOL66_tree   = NULL;
    COMMENT_SYMBOL67_tree   = NULL;
    DO_SYMBOL69_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:288:12: ( ( definer_clause )? EVENT_SYMBOL identifier ( ON_SYMBOL SCHEDULE_SYMBOL schedule )? ( ON_SYMBOL COMPLETION_SYMBOL ( NOT_SYMBOL )? PRESERVE_SYMBOL )? ( RENAME_SYMBOL TO_SYMBOL identifier )? ( ENABLE_SYMBOL | DISABLE_SYMBOL ( ON_SYMBOL SLAVE_SYMBOL )? )? ( COMMENT_SYMBOL string_literal )? ( DO_SYMBOL compound_statement )? )
        // MySQL.g:289:2: ( definer_clause )? EVENT_SYMBOL identifier ( ON_SYMBOL SCHEDULE_SYMBOL schedule )? ( ON_SYMBOL COMPLETION_SYMBOL ( NOT_SYMBOL )? PRESERVE_SYMBOL )? ( RENAME_SYMBOL TO_SYMBOL identifier )? ( ENABLE_SYMBOL | DISABLE_SYMBOL ( ON_SYMBOL SLAVE_SYMBOL )? )? ( COMMENT_SYMBOL string_literal )? ( DO_SYMBOL compound_statement )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:289:2: ( definer_clause )?
            {
                int alt8=2;
                switch ( LA(1) )
                {
                    case DEFINER_SYMBOL:
                    	{
                    		alt8=1;
                    	}
                        break;
                }

                switch (alt8)
                {
            	case 1:
            	    // MySQL.g:289:2: definer_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_definer_clause_in_alter_event479);
            	        definer_clause50=definer_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_eventEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, definer_clause50.tree);

            	    }
            	    break;

                }
            }

            EVENT_SYMBOL51 = (pANTLR3_COMMON_TOKEN) MATCHT(EVENT_SYMBOL, &FOLLOW_EVENT_SYMBOL_in_alter_event484);
            if  (HASEXCEPTION())
            {
                goto rulealter_eventEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EVENT_SYMBOL51_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EVENT_SYMBOL51));
            ADAPTOR->addChild(ADAPTOR, root_0, EVENT_SYMBOL51_tree);
            }

            FOLLOWPUSH(FOLLOW_identifier_in_alter_event486);
            identifier52=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulealter_eventEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier52.tree);

            // MySQL.g:291:3: ( ON_SYMBOL SCHEDULE_SYMBOL schedule )?
            {
                int alt9=2;
                switch ( LA(1) )
                {
                    case ON_SYMBOL:
                    	{
                    		switch ( LA(2) )
                    		{
                    		    case SCHEDULE_SYMBOL:
                    		    	{
                    		    		alt9=1;
                    		    	}
                    		        break;
                    		}

                    	}
                        break;
                }

                switch (alt9)
                {
            	case 1:
            	    // MySQL.g:291:4: ON_SYMBOL SCHEDULE_SYMBOL schedule
            	    {
            	        ON_SYMBOL53 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_alter_event491);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_eventEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ON_SYMBOL53_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL53));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL53_tree);
            	        }

            	        SCHEDULE_SYMBOL54 = (pANTLR3_COMMON_TOKEN) MATCHT(SCHEDULE_SYMBOL, &FOLLOW_SCHEDULE_SYMBOL_in_alter_event493);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_eventEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SCHEDULE_SYMBOL54_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SCHEDULE_SYMBOL54));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SCHEDULE_SYMBOL54_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_schedule_in_alter_event495);
            	        schedule55=schedule(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_eventEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, schedule55.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:292:3: ( ON_SYMBOL COMPLETION_SYMBOL ( NOT_SYMBOL )? PRESERVE_SYMBOL )?
            {
                int alt11=2;
                switch ( LA(1) )
                {
                    case ON_SYMBOL:
                    	{
                    		alt11=1;
                    	}
                        break;
                }

                switch (alt11)
                {
            	case 1:
            	    // MySQL.g:292:4: ON_SYMBOL COMPLETION_SYMBOL ( NOT_SYMBOL )? PRESERVE_SYMBOL
            	    {
            	        ON_SYMBOL56 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_alter_event502);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_eventEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ON_SYMBOL56_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL56));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL56_tree);
            	        }

            	        COMPLETION_SYMBOL57 = (pANTLR3_COMMON_TOKEN) MATCHT(COMPLETION_SYMBOL, &FOLLOW_COMPLETION_SYMBOL_in_alter_event504);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_eventEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMPLETION_SYMBOL57_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMPLETION_SYMBOL57));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMPLETION_SYMBOL57_tree);
            	        }

            	        // MySQL.g:292:32: ( NOT_SYMBOL )?
            	        {
            	            int alt10=2;
            	            switch ( LA(1) )
            	            {
            	                case NOT_SYMBOL:
            	                	{
            	                		alt10=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt10)
            	            {
            	        	case 1:
            	        	    // MySQL.g:292:32: NOT_SYMBOL
            	        	    {
            	        	        NOT_SYMBOL58 = (pANTLR3_COMMON_TOKEN) MATCHT(NOT_SYMBOL, &FOLLOW_NOT_SYMBOL_in_alter_event506);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulealter_eventEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        NOT_SYMBOL58_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NOT_SYMBOL58));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, NOT_SYMBOL58_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        PRESERVE_SYMBOL59 = (pANTLR3_COMMON_TOKEN) MATCHT(PRESERVE_SYMBOL, &FOLLOW_PRESERVE_SYMBOL_in_alter_event509);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_eventEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PRESERVE_SYMBOL59_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PRESERVE_SYMBOL59));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PRESERVE_SYMBOL59_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:293:3: ( RENAME_SYMBOL TO_SYMBOL identifier )?
            {
                int alt12=2;
                switch ( LA(1) )
                {
                    case RENAME_SYMBOL:
                    	{
                    		alt12=1;
                    	}
                        break;
                }

                switch (alt12)
                {
            	case 1:
            	    // MySQL.g:293:4: RENAME_SYMBOL TO_SYMBOL identifier
            	    {
            	        RENAME_SYMBOL60 = (pANTLR3_COMMON_TOKEN) MATCHT(RENAME_SYMBOL, &FOLLOW_RENAME_SYMBOL_in_alter_event516);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_eventEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        RENAME_SYMBOL60_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RENAME_SYMBOL60));
            	        ADAPTOR->addChild(ADAPTOR, root_0, RENAME_SYMBOL60_tree);
            	        }

            	        TO_SYMBOL61 = (pANTLR3_COMMON_TOKEN) MATCHT(TO_SYMBOL, &FOLLOW_TO_SYMBOL_in_alter_event518);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_eventEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TO_SYMBOL61_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TO_SYMBOL61));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TO_SYMBOL61_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_identifier_in_alter_event520);
            	        identifier62=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_eventEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier62.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:294:3: ( ENABLE_SYMBOL | DISABLE_SYMBOL ( ON_SYMBOL SLAVE_SYMBOL )? )?
            {
                int alt14=3;
                switch ( LA(1) )
                {
                    case ENABLE_SYMBOL:
                    	{
                    		alt14=1;
                    	}
                        break;
                    case DISABLE_SYMBOL:
                    	{
                    		alt14=2;
                    	}
                        break;
                }

                switch (alt14)
                {
            	case 1:
            	    // MySQL.g:294:4: ENABLE_SYMBOL
            	    {
            	        ENABLE_SYMBOL63 = (pANTLR3_COMMON_TOKEN) MATCHT(ENABLE_SYMBOL, &FOLLOW_ENABLE_SYMBOL_in_alter_event527);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_eventEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ENABLE_SYMBOL63_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ENABLE_SYMBOL63));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ENABLE_SYMBOL63_tree);
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:294:20: DISABLE_SYMBOL ( ON_SYMBOL SLAVE_SYMBOL )?
            	    {
            	        DISABLE_SYMBOL64 = (pANTLR3_COMMON_TOKEN) MATCHT(DISABLE_SYMBOL, &FOLLOW_DISABLE_SYMBOL_in_alter_event531);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_eventEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DISABLE_SYMBOL64_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DISABLE_SYMBOL64));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DISABLE_SYMBOL64_tree);
            	        }

            	        // MySQL.g:294:35: ( ON_SYMBOL SLAVE_SYMBOL )?
            	        {
            	            int alt13=2;
            	            switch ( LA(1) )
            	            {
            	                case ON_SYMBOL:
            	                	{
            	                		alt13=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt13)
            	            {
            	        	case 1:
            	        	    // MySQL.g:294:36: ON_SYMBOL SLAVE_SYMBOL
            	        	    {
            	        	        ON_SYMBOL65 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_alter_event534);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulealter_eventEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        ON_SYMBOL65_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL65));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL65_tree);
            	        	        }

            	        	        SLAVE_SYMBOL66 = (pANTLR3_COMMON_TOKEN) MATCHT(SLAVE_SYMBOL, &FOLLOW_SLAVE_SYMBOL_in_alter_event536);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulealter_eventEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        SLAVE_SYMBOL66_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SLAVE_SYMBOL66));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, SLAVE_SYMBOL66_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:295:3: ( COMMENT_SYMBOL string_literal )?
            {
                int alt15=2;
                switch ( LA(1) )
                {
                    case COMMENT_SYMBOL:
                    	{
                    		alt15=1;
                    	}
                        break;
                }

                switch (alt15)
                {
            	case 1:
            	    // MySQL.g:295:4: COMMENT_SYMBOL string_literal
            	    {
            	        COMMENT_SYMBOL67 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMENT_SYMBOL, &FOLLOW_COMMENT_SYMBOL_in_alter_event545);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_eventEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMENT_SYMBOL67_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMENT_SYMBOL67));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMENT_SYMBOL67_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_string_literal_in_alter_event547);
            	        string_literal68=string_literal(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_eventEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal68.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:296:3: ( DO_SYMBOL compound_statement )?
            {
                int alt16=2;
                switch ( LA(1) )
                {
                    case DO_SYMBOL:
                    	{
                    		alt16=1;
                    	}
                        break;
                }

                switch (alt16)
                {
            	case 1:
            	    // MySQL.g:296:4: DO_SYMBOL compound_statement
            	    {
            	        DO_SYMBOL69 = (pANTLR3_COMMON_TOKEN) MATCHT(DO_SYMBOL, &FOLLOW_DO_SYMBOL_in_alter_event554);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_eventEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DO_SYMBOL69_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DO_SYMBOL69));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DO_SYMBOL69_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_compound_statement_in_alter_event556);
            	        compound_statement70=compound_statement(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_eventEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, compound_statement70.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulealter_eventEx; /* Prevent compiler warnings */
    rulealter_eventEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end alter_event */

/**
 * $ANTLR start alter_log_file_group
 * MySQL.g:299:1: alter_log_file_group : LOGFILE_SYMBOL GROUP_SYMBOL identifier ADD_SYMBOL UNDOFILE_SYMBOL string_literal ( INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? INTEGER )? ( WAIT_SYMBOL )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? IDENTIFIER ;
 */
static MySQLParser_alter_log_file_group_return
alter_log_file_group(pMySQLParser ctx)
{
    MySQLParser_alter_log_file_group_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    LOGFILE_SYMBOL71;
    pANTLR3_COMMON_TOKEN    GROUP_SYMBOL72;
    pANTLR3_COMMON_TOKEN    ADD_SYMBOL74;
    pANTLR3_COMMON_TOKEN    UNDOFILE_SYMBOL75;
    pANTLR3_COMMON_TOKEN    INITIAL_SIZE_SYMBOL77;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR78;
    pANTLR3_COMMON_TOKEN    INTEGER79;
    pANTLR3_COMMON_TOKEN    WAIT_SYMBOL80;
    pANTLR3_COMMON_TOKEN    ENGINE_SYMBOL81;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR82;
    pANTLR3_COMMON_TOKEN    IDENTIFIER83;
    MySQLParser_identifier_return identifier73;
    #undef	RETURN_TYPE_identifier73
    #define	RETURN_TYPE_identifier73 MySQLParser_identifier_return

    MySQLParser_string_literal_return string_literal76;
    #undef	RETURN_TYPE_string_literal76
    #define	RETURN_TYPE_string_literal76 MySQLParser_string_literal_return

    pANTLR3_BASE_TREE LOGFILE_SYMBOL71_tree;
    pANTLR3_BASE_TREE GROUP_SYMBOL72_tree;
    pANTLR3_BASE_TREE ADD_SYMBOL74_tree;
    pANTLR3_BASE_TREE UNDOFILE_SYMBOL75_tree;
    pANTLR3_BASE_TREE INITIAL_SIZE_SYMBOL77_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR78_tree;
    pANTLR3_BASE_TREE INTEGER79_tree;
    pANTLR3_BASE_TREE WAIT_SYMBOL80_tree;
    pANTLR3_BASE_TREE ENGINE_SYMBOL81_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR82_tree;
    pANTLR3_BASE_TREE IDENTIFIER83_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    LOGFILE_SYMBOL71       = NULL;
    GROUP_SYMBOL72       = NULL;
    ADD_SYMBOL74       = NULL;
    UNDOFILE_SYMBOL75       = NULL;
    INITIAL_SIZE_SYMBOL77       = NULL;
    EQUAL_OPERATOR78       = NULL;
    INTEGER79       = NULL;
    WAIT_SYMBOL80       = NULL;
    ENGINE_SYMBOL81       = NULL;
    EQUAL_OPERATOR82       = NULL;
    IDENTIFIER83       = NULL;
    identifier73.tree = NULL;

    string_literal76.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    LOGFILE_SYMBOL71_tree   = NULL;
    GROUP_SYMBOL72_tree   = NULL;
    ADD_SYMBOL74_tree   = NULL;
    UNDOFILE_SYMBOL75_tree   = NULL;
    INITIAL_SIZE_SYMBOL77_tree   = NULL;
    EQUAL_OPERATOR78_tree   = NULL;
    INTEGER79_tree   = NULL;
    WAIT_SYMBOL80_tree   = NULL;
    ENGINE_SYMBOL81_tree   = NULL;
    EQUAL_OPERATOR82_tree   = NULL;
    IDENTIFIER83_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:299:21: ( LOGFILE_SYMBOL GROUP_SYMBOL identifier ADD_SYMBOL UNDOFILE_SYMBOL string_literal ( INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? INTEGER )? ( WAIT_SYMBOL )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? IDENTIFIER )
        // MySQL.g:300:2: LOGFILE_SYMBOL GROUP_SYMBOL identifier ADD_SYMBOL UNDOFILE_SYMBOL string_literal ( INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? INTEGER )? ( WAIT_SYMBOL )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? IDENTIFIER
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            LOGFILE_SYMBOL71 = (pANTLR3_COMMON_TOKEN) MATCHT(LOGFILE_SYMBOL, &FOLLOW_LOGFILE_SYMBOL_in_alter_log_file_group567);
            if  (HASEXCEPTION())
            {
                goto rulealter_log_file_groupEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            LOGFILE_SYMBOL71_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOGFILE_SYMBOL71));
            ADAPTOR->addChild(ADAPTOR, root_0, LOGFILE_SYMBOL71_tree);
            }

            GROUP_SYMBOL72 = (pANTLR3_COMMON_TOKEN) MATCHT(GROUP_SYMBOL, &FOLLOW_GROUP_SYMBOL_in_alter_log_file_group569);
            if  (HASEXCEPTION())
            {
                goto rulealter_log_file_groupEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            GROUP_SYMBOL72_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GROUP_SYMBOL72));
            ADAPTOR->addChild(ADAPTOR, root_0, GROUP_SYMBOL72_tree);
            }

            FOLLOWPUSH(FOLLOW_identifier_in_alter_log_file_group571);
            identifier73=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulealter_log_file_groupEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier73.tree);

            ADD_SYMBOL74 = (pANTLR3_COMMON_TOKEN) MATCHT(ADD_SYMBOL, &FOLLOW_ADD_SYMBOL_in_alter_log_file_group573);
            if  (HASEXCEPTION())
            {
                goto rulealter_log_file_groupEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ADD_SYMBOL74_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ADD_SYMBOL74));
            ADAPTOR->addChild(ADAPTOR, root_0, ADD_SYMBOL74_tree);
            }

            UNDOFILE_SYMBOL75 = (pANTLR3_COMMON_TOKEN) MATCHT(UNDOFILE_SYMBOL, &FOLLOW_UNDOFILE_SYMBOL_in_alter_log_file_group575);
            if  (HASEXCEPTION())
            {
                goto rulealter_log_file_groupEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            UNDOFILE_SYMBOL75_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNDOFILE_SYMBOL75));
            ADAPTOR->addChild(ADAPTOR, root_0, UNDOFILE_SYMBOL75_tree);
            }

            FOLLOWPUSH(FOLLOW_string_literal_in_alter_log_file_group577);
            string_literal76=string_literal(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulealter_log_file_groupEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal76.tree);

            // MySQL.g:301:3: ( INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? INTEGER )?
            {
                int alt18=2;
                switch ( LA(1) )
                {
                    case INITIAL_SIZE_SYMBOL:
                    	{
                    		alt18=1;
                    	}
                        break;
                }

                switch (alt18)
                {
            	case 1:
            	    // MySQL.g:301:4: INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? INTEGER
            	    {
            	        INITIAL_SIZE_SYMBOL77 = (pANTLR3_COMMON_TOKEN) MATCHT(INITIAL_SIZE_SYMBOL, &FOLLOW_INITIAL_SIZE_SYMBOL_in_alter_log_file_group582);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_log_file_groupEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INITIAL_SIZE_SYMBOL77_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INITIAL_SIZE_SYMBOL77));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INITIAL_SIZE_SYMBOL77_tree);
            	        }

            	        // MySQL.g:301:24: ( EQUAL_OPERATOR )?
            	        {
            	            int alt17=2;
            	            switch ( LA(1) )
            	            {
            	                case EQUAL_OPERATOR:
            	                	{
            	                		alt17=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt17)
            	            {
            	        	case 1:
            	        	    // MySQL.g:301:24: EQUAL_OPERATOR
            	        	    {
            	        	        EQUAL_OPERATOR78 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_alter_log_file_group584);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulealter_log_file_groupEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EQUAL_OPERATOR78_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR78));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR78_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        INTEGER79 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_alter_log_file_group587);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_log_file_groupEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INTEGER79_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER79));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER79_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:301:50: ( WAIT_SYMBOL )?
            {
                int alt19=2;
                switch ( LA(1) )
                {
                    case WAIT_SYMBOL:
                    	{
                    		alt19=1;
                    	}
                        break;
                }

                switch (alt19)
                {
            	case 1:
            	    // MySQL.g:301:50: WAIT_SYMBOL
            	    {
            	        WAIT_SYMBOL80 = (pANTLR3_COMMON_TOKEN) MATCHT(WAIT_SYMBOL, &FOLLOW_WAIT_SYMBOL_in_alter_log_file_group591);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_log_file_groupEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        WAIT_SYMBOL80_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WAIT_SYMBOL80));
            	        ADAPTOR->addChild(ADAPTOR, root_0, WAIT_SYMBOL80_tree);
            	        }

            	    }
            	    break;

                }
            }

            ENGINE_SYMBOL81 = (pANTLR3_COMMON_TOKEN) MATCHT(ENGINE_SYMBOL, &FOLLOW_ENGINE_SYMBOL_in_alter_log_file_group594);
            if  (HASEXCEPTION())
            {
                goto rulealter_log_file_groupEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ENGINE_SYMBOL81_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ENGINE_SYMBOL81));
            ADAPTOR->addChild(ADAPTOR, root_0, ENGINE_SYMBOL81_tree);
            }

            // MySQL.g:301:77: ( EQUAL_OPERATOR )?
            {
                int alt20=2;
                switch ( LA(1) )
                {
                    case EQUAL_OPERATOR:
                    	{
                    		alt20=1;
                    	}
                        break;
                }

                switch (alt20)
                {
            	case 1:
            	    // MySQL.g:301:77: EQUAL_OPERATOR
            	    {
            	        EQUAL_OPERATOR82 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_alter_log_file_group596);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_log_file_groupEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        EQUAL_OPERATOR82_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR82));
            	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR82_tree);
            	        }

            	    }
            	    break;

                }
            }

            IDENTIFIER83 = (pANTLR3_COMMON_TOKEN) MATCHT(IDENTIFIER, &FOLLOW_IDENTIFIER_in_alter_log_file_group599);
            if  (HASEXCEPTION())
            {
                goto rulealter_log_file_groupEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            IDENTIFIER83_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IDENTIFIER83));
            ADAPTOR->addChild(ADAPTOR, root_0, IDENTIFIER83_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulealter_log_file_groupEx; /* Prevent compiler warnings */
    rulealter_log_file_groupEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end alter_log_file_group */

/**
 * $ANTLR start alter_routine
 * MySQL.g:304:1: alter_routine : identifier ( routine_option )* ;
 */
static MySQLParser_alter_routine_return
alter_routine(pMySQLParser ctx)
{
    MySQLParser_alter_routine_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_identifier_return identifier84;
    #undef	RETURN_TYPE_identifier84
    #define	RETURN_TYPE_identifier84 MySQLParser_identifier_return

    MySQLParser_routine_option_return routine_option85;
    #undef	RETURN_TYPE_routine_option85
    #define	RETURN_TYPE_routine_option85 MySQLParser_routine_option_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    identifier84.tree = NULL;

    routine_option85.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:304:14: ( identifier ( routine_option )* )
        // MySQL.g:305:2: identifier ( routine_option )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_identifier_in_alter_routine608);
            identifier84=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulealter_routineEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier84.tree);

            // MySQL.g:305:13: ( routine_option )*

            for (;;)
            {
                int alt21=2;
                switch ( LA(1) )
                {
                case COMMENT_SYMBOL:
                case CONTAINS_SYMBOL:
                case LANGUAGE_SYMBOL:
                case MODIFIES_SYMBOL:
                case NO_SYMBOL:
                case READS_SYMBOL:
                case SQL_SYMBOL:
                	{
                		alt21=1;
                	}
                    break;

                }

                switch (alt21)
                {
            	case 1:
            	    // MySQL.g:305:13: routine_option
            	    {
            	        FOLLOWPUSH(FOLLOW_routine_option_in_alter_routine610);
            	        routine_option85=routine_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_routineEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, routine_option85.tree);

            	    }
            	    break;

            	default:
            	    goto loop21;	/* break out of the loop */
            	    break;
                }
            }
            loop21: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto rulealter_routineEx; /* Prevent compiler warnings */
    rulealter_routineEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end alter_routine */

/**
 * $ANTLR start alter_server
 * MySQL.g:308:1: alter_server : SERVER_SYMBOL identifier OPTIONS_SYMBOL OPEN_PAR_SYMBOL server_option ( COMMA_SYMBOL server_option )* CLOSE_PAR_SYMBOL ;
 */
static MySQLParser_alter_server_return
alter_server(pMySQLParser ctx)
{
    MySQLParser_alter_server_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    SERVER_SYMBOL86;
    pANTLR3_COMMON_TOKEN    OPTIONS_SYMBOL88;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL89;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL91;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL93;
    MySQLParser_identifier_return identifier87;
    #undef	RETURN_TYPE_identifier87
    #define	RETURN_TYPE_identifier87 MySQLParser_identifier_return

    MySQLParser_server_option_return server_option90;
    #undef	RETURN_TYPE_server_option90
    #define	RETURN_TYPE_server_option90 MySQLParser_server_option_return

    MySQLParser_server_option_return server_option92;
    #undef	RETURN_TYPE_server_option92
    #define	RETURN_TYPE_server_option92 MySQLParser_server_option_return

    pANTLR3_BASE_TREE SERVER_SYMBOL86_tree;
    pANTLR3_BASE_TREE OPTIONS_SYMBOL88_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL89_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL91_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL93_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SERVER_SYMBOL86       = NULL;
    OPTIONS_SYMBOL88       = NULL;
    OPEN_PAR_SYMBOL89       = NULL;
    COMMA_SYMBOL91       = NULL;
    CLOSE_PAR_SYMBOL93       = NULL;
    identifier87.tree = NULL;

    server_option90.tree = NULL;

    server_option92.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SERVER_SYMBOL86_tree   = NULL;
    OPTIONS_SYMBOL88_tree   = NULL;
    OPEN_PAR_SYMBOL89_tree   = NULL;
    COMMA_SYMBOL91_tree   = NULL;
    CLOSE_PAR_SYMBOL93_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:308:13: ( SERVER_SYMBOL identifier OPTIONS_SYMBOL OPEN_PAR_SYMBOL server_option ( COMMA_SYMBOL server_option )* CLOSE_PAR_SYMBOL )
        // MySQL.g:309:2: SERVER_SYMBOL identifier OPTIONS_SYMBOL OPEN_PAR_SYMBOL server_option ( COMMA_SYMBOL server_option )* CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            SERVER_SYMBOL86 = (pANTLR3_COMMON_TOKEN) MATCHT(SERVER_SYMBOL, &FOLLOW_SERVER_SYMBOL_in_alter_server620);
            if  (HASEXCEPTION())
            {
                goto rulealter_serverEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SERVER_SYMBOL86_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SERVER_SYMBOL86));
            ADAPTOR->addChild(ADAPTOR, root_0, SERVER_SYMBOL86_tree);
            }

            FOLLOWPUSH(FOLLOW_identifier_in_alter_server622);
            identifier87=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulealter_serverEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier87.tree);

            OPTIONS_SYMBOL88 = (pANTLR3_COMMON_TOKEN) MATCHT(OPTIONS_SYMBOL, &FOLLOW_OPTIONS_SYMBOL_in_alter_server624);
            if  (HASEXCEPTION())
            {
                goto rulealter_serverEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPTIONS_SYMBOL88_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPTIONS_SYMBOL88));
            ADAPTOR->addChild(ADAPTOR, root_0, OPTIONS_SYMBOL88_tree);
            }

            OPEN_PAR_SYMBOL89 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_alter_server626);
            if  (HASEXCEPTION())
            {
                goto rulealter_serverEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL89_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL89));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL89_tree);
            }

            FOLLOWPUSH(FOLLOW_server_option_in_alter_server628);
            server_option90=server_option(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulealter_serverEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, server_option90.tree);

            // MySQL.g:309:72: ( COMMA_SYMBOL server_option )*

            for (;;)
            {
                int alt22=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt22=1;
                	}
                    break;

                }

                switch (alt22)
                {
            	case 1:
            	    // MySQL.g:309:73: COMMA_SYMBOL server_option
            	    {
            	        COMMA_SYMBOL91 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_alter_server631);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_serverEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL91_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL91));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL91_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_server_option_in_alter_server633);
            	        server_option92=server_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_serverEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, server_option92.tree);

            	    }
            	    break;

            	default:
            	    goto loop22;	/* break out of the loop */
            	    break;
                }
            }
            loop22: ; /* Jump out to here if this rule does not match */


            CLOSE_PAR_SYMBOL93 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_alter_server637);
            if  (HASEXCEPTION())
            {
                goto rulealter_serverEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL93_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL93));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL93_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulealter_serverEx; /* Prevent compiler warnings */
    rulealter_serverEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end alter_server */

/**
 * $ANTLR start alter_table
 * MySQL.g:312:1: alter_table : ( online_option )? ( IGNORE_SYMBOL )? TABLE_SYMBOL table_identifier ( alter_table_commands )? ;
 */
static MySQLParser_alter_table_return
alter_table(pMySQLParser ctx)
{
    MySQLParser_alter_table_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    IGNORE_SYMBOL95;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL96;
    MySQLParser_online_option_return online_option94;
    #undef	RETURN_TYPE_online_option94
    #define	RETURN_TYPE_online_option94 MySQLParser_online_option_return

    MySQLParser_table_identifier_return table_identifier97;
    #undef	RETURN_TYPE_table_identifier97
    #define	RETURN_TYPE_table_identifier97 MySQLParser_table_identifier_return

    MySQLParser_alter_table_commands_return alter_table_commands98;
    #undef	RETURN_TYPE_alter_table_commands98
    #define	RETURN_TYPE_alter_table_commands98 MySQLParser_alter_table_commands_return

    pANTLR3_BASE_TREE IGNORE_SYMBOL95_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL96_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    IGNORE_SYMBOL95       = NULL;
    TABLE_SYMBOL96       = NULL;
    online_option94.tree = NULL;

    table_identifier97.tree = NULL;

    alter_table_commands98.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    IGNORE_SYMBOL95_tree   = NULL;
    TABLE_SYMBOL96_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:312:12: ( ( online_option )? ( IGNORE_SYMBOL )? TABLE_SYMBOL table_identifier ( alter_table_commands )? )
        // MySQL.g:313:2: ( online_option )? ( IGNORE_SYMBOL )? TABLE_SYMBOL table_identifier ( alter_table_commands )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:313:2: ( online_option )?
            {
                int alt23=2;
                {
                    int LA23_0 = LA(1);
                    if ( ((SERVER_VERSION < 50600)) && (LA23_0 == OFFLINE_SYMBOL || LA23_0 == ONLINE_SYMBOL))
                    {
                        alt23=1;
                    }
                }
                switch (alt23)
                {
            	case 1:
            	    // MySQL.g:313:2: online_option
            	    {
            	        FOLLOWPUSH(FOLLOW_online_option_in_alter_table646);
            	        online_option94=online_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_tableEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, online_option94.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:313:17: ( IGNORE_SYMBOL )?
            {
                int alt24=2;
                switch ( LA(1) )
                {
                    case IGNORE_SYMBOL:
                    	{
                    		alt24=1;
                    	}
                        break;
                }

                switch (alt24)
                {
            	case 1:
            	    // MySQL.g:313:17: IGNORE_SYMBOL
            	    {
            	        IGNORE_SYMBOL95 = (pANTLR3_COMMON_TOKEN) MATCHT(IGNORE_SYMBOL, &FOLLOW_IGNORE_SYMBOL_in_alter_table649);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_tableEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        IGNORE_SYMBOL95_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IGNORE_SYMBOL95));
            	        ADAPTOR->addChild(ADAPTOR, root_0, IGNORE_SYMBOL95_tree);
            	        }

            	    }
            	    break;

                }
            }

            TABLE_SYMBOL96 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_alter_table652);
            if  (HASEXCEPTION())
            {
                goto rulealter_tableEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            TABLE_SYMBOL96_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL96));
            ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL96_tree);
            }

            FOLLOWPUSH(FOLLOW_table_identifier_in_alter_table654);
            table_identifier97=table_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulealter_tableEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_identifier97.tree);

            // MySQL.g:313:62: ( alter_table_commands )?
            {
                int alt25=2;
                {
                    int LA25_0 = LA(1);
                    if ( (LA25_0 == DISCARD_SYMBOL || LA25_0 == ENGINE_SYMBOL || LA25_0 == IMPORT_SYMBOL))
                    {
                        alt25=1;
                    }
                    else if ( ((SERVER_VERSION < 50500)) && (LA25_0 == TYPE_SYMBOL))
                    {
                        alt25=1;
                    }
                    else if ( (((LA25_0 >= AUTO_INCREMENT_SYMBOL) && (LA25_0 <= AVG_ROW_LENGTH_SYMBOL)) || LA25_0 == COMMENT_SYMBOL || LA25_0 == MAX_ROWS_SYMBOL || LA25_0 == MIN_ROWS_SYMBOL || LA25_0 == PACK_KEYS_SYMBOL || LA25_0 == PASSWORD_SYMBOL))
                    {
                        alt25=1;
                    }
                    else if ( ((SERVER_VERSION >= 50600)) && (((LA25_0 >= STATS_AUTO_RECALC_SYMBOL) && (LA25_0 <= STATS_SAMPLE_PAGES_SYMBOL))))
                    {
                        alt25=1;
                    }
                    else if ( (LA25_0 == ADD_SYMBOL || LA25_0 == ALTER_SYMBOL || LA25_0 == CHANGE_SYMBOL || ((LA25_0 >= CHARSET_SYMBOL) && (LA25_0 <= CHECKSUM_SYMBOL)) || LA25_0 == COLLATE_SYMBOL || LA25_0 == CONNECTION_SYMBOL || LA25_0 == CONVERT_SYMBOL || LA25_0 == DATA_SYMBOL || LA25_0 == DEFAULT_SYMBOL || LA25_0 == DELAY_KEY_WRITE_SYMBOL || LA25_0 == DISABLE_SYMBOL || LA25_0 == DROP_SYMBOL || LA25_0 == ENABLE_SYMBOL || LA25_0 == FORCE_SYMBOL || LA25_0 == INDEX_SYMBOL || LA25_0 == INSERT_METHOD_SYMBOL || LA25_0 == KEY_BLOCK_SIZE_SYMBOL || LA25_0 == MODIFY_SYMBOL || LA25_0 == ORDER_SYMBOL || LA25_0 == RENAME_SYMBOL || LA25_0 == ROW_FORMAT_SYMBOL || LA25_0 == STORAGE_SYMBOL || LA25_0 == TABLESPACE_SYMBOL || LA25_0 == TABLE_CHECKSUM_SYMBOL || LA25_0 == UNION_SYMBOL))
                    {
                        alt25=1;
                    }
                    else if ( ((SERVER_VERSION >= 50600)) && (LA25_0 == ALGORITHM_SYMBOL || LA25_0 == LOCK_SYMBOL))
                    {
                        alt25=1;
                    }
                    else if ( ((SERVER_VERSION >= 50100)) && (LA25_0 == ANALYZE_SYMBOL || LA25_0 == CHECK_SYMBOL || LA25_0 == COALESCE_SYMBOL || LA25_0 == OPTIMIZE_SYMBOL || LA25_0 == PARTITION_SYMBOL || LA25_0 == REBUILD_SYMBOL || LA25_0 == REMOVE_SYMBOL || LA25_0 == REPAIR_SYMBOL))
                    {
                        alt25=1;
                    }
                    else if ( (( (( ((SERVER_VERSION >= 50500)) && ((SERVER_VERSION >= 50500)) )) && ((SERVER_VERSION >= 50100)) )) && (LA25_0 == TRUNCATE_SYMBOL))
                    {
                        alt25=1;
                    }
                    else if ( ((SERVER_VERSION >= 50100)) && (LA25_0 == EXCHANGE_SYMBOL || LA25_0 == REORGANIZE_SYMBOL))
                    {
                        alt25=1;
                    }
                }
                switch (alt25)
                {
            	case 1:
            	    // MySQL.g:313:62: alter_table_commands
            	    {
            	        FOLLOWPUSH(FOLLOW_alter_table_commands_in_alter_table656);
            	        alter_table_commands98=alter_table_commands(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_tableEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, alter_table_commands98.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulealter_tableEx; /* Prevent compiler warnings */
    rulealter_tableEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end alter_table */

/**
 * $ANTLR start alter_table_commands
 * MySQL.g:316:1: alter_table_commands : ( DISCARD_SYMBOL TABLESPACE_SYMBOL | IMPORT_SYMBOL TABLESPACE_SYMBOL | alter_table_list_item ( COMMA_SYMBOL alter_table_list_item )* ( ( partitioning )? | remove_partitioning ) | remove_partitioning | partitioning |{...}? => alter_partition );
 */
static MySQLParser_alter_table_commands_return
alter_table_commands(pMySQLParser ctx)
{
    MySQLParser_alter_table_commands_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    DISCARD_SYMBOL99;
    pANTLR3_COMMON_TOKEN    TABLESPACE_SYMBOL100;
    pANTLR3_COMMON_TOKEN    IMPORT_SYMBOL101;
    pANTLR3_COMMON_TOKEN    TABLESPACE_SYMBOL102;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL104;
    MySQLParser_alter_table_list_item_return alter_table_list_item103;
    #undef	RETURN_TYPE_alter_table_list_item103
    #define	RETURN_TYPE_alter_table_list_item103 MySQLParser_alter_table_list_item_return

    MySQLParser_alter_table_list_item_return alter_table_list_item105;
    #undef	RETURN_TYPE_alter_table_list_item105
    #define	RETURN_TYPE_alter_table_list_item105 MySQLParser_alter_table_list_item_return

    MySQLParser_partitioning_return partitioning106;
    #undef	RETURN_TYPE_partitioning106
    #define	RETURN_TYPE_partitioning106 MySQLParser_partitioning_return

    MySQLParser_remove_partitioning_return remove_partitioning107;
    #undef	RETURN_TYPE_remove_partitioning107
    #define	RETURN_TYPE_remove_partitioning107 MySQLParser_remove_partitioning_return

    MySQLParser_remove_partitioning_return remove_partitioning108;
    #undef	RETURN_TYPE_remove_partitioning108
    #define	RETURN_TYPE_remove_partitioning108 MySQLParser_remove_partitioning_return

    MySQLParser_partitioning_return partitioning109;
    #undef	RETURN_TYPE_partitioning109
    #define	RETURN_TYPE_partitioning109 MySQLParser_partitioning_return

    MySQLParser_alter_partition_return alter_partition110;
    #undef	RETURN_TYPE_alter_partition110
    #define	RETURN_TYPE_alter_partition110 MySQLParser_alter_partition_return

    pANTLR3_BASE_TREE DISCARD_SYMBOL99_tree;
    pANTLR3_BASE_TREE TABLESPACE_SYMBOL100_tree;
    pANTLR3_BASE_TREE IMPORT_SYMBOL101_tree;
    pANTLR3_BASE_TREE TABLESPACE_SYMBOL102_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL104_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DISCARD_SYMBOL99       = NULL;
    TABLESPACE_SYMBOL100       = NULL;
    IMPORT_SYMBOL101       = NULL;
    TABLESPACE_SYMBOL102       = NULL;
    COMMA_SYMBOL104       = NULL;
    alter_table_list_item103.tree = NULL;

    alter_table_list_item105.tree = NULL;

    partitioning106.tree = NULL;

    remove_partitioning107.tree = NULL;

    remove_partitioning108.tree = NULL;

    partitioning109.tree = NULL;

    alter_partition110.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DISCARD_SYMBOL99_tree   = NULL;
    TABLESPACE_SYMBOL100_tree   = NULL;
    IMPORT_SYMBOL101_tree   = NULL;
    TABLESPACE_SYMBOL102_tree   = NULL;
    COMMA_SYMBOL104_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:316:21: ( DISCARD_SYMBOL TABLESPACE_SYMBOL | IMPORT_SYMBOL TABLESPACE_SYMBOL | alter_table_list_item ( COMMA_SYMBOL alter_table_list_item )* ( ( partitioning )? | remove_partitioning ) | remove_partitioning | partitioning |{...}? => alter_partition )

            ANTLR3_UINT32 alt29;

            alt29=6;

            {
                int LA29_0 = LA(1);
                if ( (LA29_0 == DISCARD_SYMBOL))
                {
                    alt29=1;
                }
                else if ( (LA29_0 == IMPORT_SYMBOL))
                {
                    alt29=2;
                }
                else if ( (LA29_0 == ENGINE_SYMBOL))
                {
                    alt29=3;
                }
                else if ( ((SERVER_VERSION < 50500)) && (LA29_0 == TYPE_SYMBOL))
                {
                    alt29=3;
                }
                else if ( (((LA29_0 >= AUTO_INCREMENT_SYMBOL) && (LA29_0 <= AVG_ROW_LENGTH_SYMBOL)) || LA29_0 == COMMENT_SYMBOL || LA29_0 == MAX_ROWS_SYMBOL || LA29_0 == MIN_ROWS_SYMBOL || LA29_0 == PACK_KEYS_SYMBOL || LA29_0 == PASSWORD_SYMBOL))
                {
                    alt29=3;
                }
                else if ( ((SERVER_VERSION >= 50600)) && (((LA29_0 >= STATS_AUTO_RECALC_SYMBOL) && (LA29_0 <= STATS_SAMPLE_PAGES_SYMBOL))))
                {
                    alt29=3;
                }
                else if ( (LA29_0 == ALTER_SYMBOL || LA29_0 == CHANGE_SYMBOL || ((LA29_0 >= CHARSET_SYMBOL) && (LA29_0 <= CHECKSUM_SYMBOL)) || LA29_0 == COLLATE_SYMBOL || LA29_0 == CONNECTION_SYMBOL || LA29_0 == CONVERT_SYMBOL || LA29_0 == DATA_SYMBOL || LA29_0 == DEFAULT_SYMBOL || LA29_0 == DELAY_KEY_WRITE_SYMBOL || LA29_0 == DISABLE_SYMBOL || LA29_0 == ENABLE_SYMBOL || LA29_0 == FORCE_SYMBOL || LA29_0 == INDEX_SYMBOL || LA29_0 == INSERT_METHOD_SYMBOL || LA29_0 == KEY_BLOCK_SIZE_SYMBOL || LA29_0 == MODIFY_SYMBOL || LA29_0 == ORDER_SYMBOL || LA29_0 == RENAME_SYMBOL || LA29_0 == ROW_FORMAT_SYMBOL || LA29_0 == STORAGE_SYMBOL || LA29_0 == TABLESPACE_SYMBOL || LA29_0 == TABLE_CHECKSUM_SYMBOL || LA29_0 == UNION_SYMBOL))
                {
                    alt29=3;
                }
                else if ( (LA29_0 == ADD_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COLUMN_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONSTRAINT_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FOREIGN_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOUND_SYMBOL:
                    case FULLTEXT_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INDEX_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case KEY_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_SYMBOL:
                    case LEVEL_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIMARY_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SPATIAL_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNIQUE_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt29=3;
                    	}
                        break;
                    case PARTITION_SYMBOL:
                    	{
                    		{
                    		    int LA29_55 = LA(3);
                    		    if ( (!( (( (( ((LA(1) == ADD_SYMBOL && LA(2) == PARTITION_SYMBOL)) && ((LA(1) == ADD_SYMBOL && LA(2) == PARTITION_SYMBOL)) )) && ((SERVER_VERSION >= 50100)) )) )))
                    		    {
                    		        alt29=3;
                    		    }
                    		    else if ( (( (( ((LA(1) == ADD_SYMBOL && LA(2) == PARTITION_SYMBOL)) && ((LA(1) == ADD_SYMBOL && LA(2) == PARTITION_SYMBOL)) )) && ((SERVER_VERSION >= 50100)) )))
                    		    {
                    		        alt29=6;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 29;
                    		        EXCEPTION->state        = 55;


                    		        goto rulealter_table_commandsEx;

                    		    }
                    		}
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 29;
                        EXCEPTION->state        = 28;


                        goto rulealter_table_commandsEx;

                    }

                }
                else if ( (LA29_0 == DROP_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case PARTITION_SYMBOL:
                    	{
                    		{
                    		    int LA29_67 = LA(3);
                    		    if ( (!( ((SERVER_VERSION >= 50100)) )))
                    		    {
                    		        alt29=3;
                    		    }
                    		    else if ( ((SERVER_VERSION >= 50100)))
                    		    {
                    		        alt29=6;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 29;
                    		        EXCEPTION->state        = 67;


                    		        goto rulealter_table_commandsEx;

                    		    }
                    		}
                    	}
                        break;
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COLUMN_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FOREIGN_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOUND_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INDEX_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case KEY_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_SYMBOL:
                    case LEVEL_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIMARY_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt29=3;
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 29;
                        EXCEPTION->state        = 32;


                        goto rulealter_table_commandsEx;

                    }

                }
                else if ( ((SERVER_VERSION >= 50600)) && (LA29_0 == ALGORITHM_SYMBOL || LA29_0 == LOCK_SYMBOL))
                {
                    alt29=3;
                }
                else if ( ((SERVER_VERSION >= 50100)) && (LA29_0 == REMOVE_SYMBOL))
                {
                    alt29=4;
                }
                else if ( ((SERVER_VERSION >= 50100)) && (LA29_0 == PARTITION_SYMBOL))
                {
                    alt29=5;
                }
                else if ( ((SERVER_VERSION >= 50100)) && (LA29_0 == ANALYZE_SYMBOL || LA29_0 == CHECK_SYMBOL || LA29_0 == COALESCE_SYMBOL || LA29_0 == OPTIMIZE_SYMBOL || LA29_0 == REBUILD_SYMBOL || LA29_0 == REPAIR_SYMBOL))
                {
                    alt29=6;
                }
                else if ( (( (( ((SERVER_VERSION >= 50500)) && ((SERVER_VERSION >= 50500)) )) && ((SERVER_VERSION >= 50100)) )) && (LA29_0 == TRUNCATE_SYMBOL))
                {
                    alt29=6;
                }
                else if ( ((SERVER_VERSION >= 50100)) && (LA29_0 == EXCHANGE_SYMBOL || LA29_0 == REORGANIZE_SYMBOL))
                {
                    alt29=6;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 29;
                    EXCEPTION->state        = 0;


                    goto rulealter_table_commandsEx;

                }
            }
            switch (alt29)
            {
        	case 1:
        	    // MySQL.g:317:2: DISCARD_SYMBOL TABLESPACE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DISCARD_SYMBOL99 = (pANTLR3_COMMON_TOKEN) MATCHT(DISCARD_SYMBOL, &FOLLOW_DISCARD_SYMBOL_in_alter_table_commands666);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_commandsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DISCARD_SYMBOL99_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DISCARD_SYMBOL99));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DISCARD_SYMBOL99_tree);
        	        }

        	        TABLESPACE_SYMBOL100 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLESPACE_SYMBOL, &FOLLOW_TABLESPACE_SYMBOL_in_alter_table_commands668);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_commandsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TABLESPACE_SYMBOL100_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLESPACE_SYMBOL100));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLESPACE_SYMBOL100_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:318:4: IMPORT_SYMBOL TABLESPACE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        IMPORT_SYMBOL101 = (pANTLR3_COMMON_TOKEN) MATCHT(IMPORT_SYMBOL, &FOLLOW_IMPORT_SYMBOL_in_alter_table_commands673);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_commandsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        IMPORT_SYMBOL101_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IMPORT_SYMBOL101));
        	        ADAPTOR->addChild(ADAPTOR, root_0, IMPORT_SYMBOL101_tree);
        	        }

        	        TABLESPACE_SYMBOL102 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLESPACE_SYMBOL, &FOLLOW_TABLESPACE_SYMBOL_in_alter_table_commands675);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_commandsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TABLESPACE_SYMBOL102_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLESPACE_SYMBOL102));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLESPACE_SYMBOL102_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:319:4: alter_table_list_item ( COMMA_SYMBOL alter_table_list_item )* ( ( partitioning )? | remove_partitioning )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_alter_table_list_item_in_alter_table_commands680);
        	        alter_table_list_item103=alter_table_list_item(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_commandsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, alter_table_list_item103.tree);

        	        // MySQL.g:319:26: ( COMMA_SYMBOL alter_table_list_item )*

        	        for (;;)
        	        {
        	            int alt26=2;
        	            switch ( LA(1) )
        	            {
        	            case COMMA_SYMBOL:
        	            	{
        	            		alt26=1;
        	            	}
        	                break;

        	            }

        	            switch (alt26)
        	            {
        	        	case 1:
        	        	    // MySQL.g:319:27: COMMA_SYMBOL alter_table_list_item
        	        	    {
        	        	        COMMA_SYMBOL104 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_alter_table_commands683);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_commandsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COMMA_SYMBOL104_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL104));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL104_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_alter_table_list_item_in_alter_table_commands685);
        	        	        alter_table_list_item105=alter_table_list_item(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_commandsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, alter_table_list_item105.tree);

        	        	    }
        	        	    break;

        	        	default:
        	        	    goto loop26;	/* break out of the loop */
        	        	    break;
        	            }
        	        }
        	        loop26: ; /* Jump out to here if this rule does not match */


        	        // MySQL.g:319:64: ( ( partitioning )? | remove_partitioning )
        	        {
        	            int alt28=2;
        	            {
        	                int LA28_0 = LA(1);
        	                if ( ((SERVER_VERSION >= 50100)) && (LA28_0 == PARTITION_SYMBOL))
        	                {
        	                    alt28=1;
        	                }
        	                else if ( (LA28_0 == EOF || LA28_0 == SEMICOLON_SYMBOL))
        	                {
        	                    alt28=1;
        	                }
        	                else if ( ((SERVER_VERSION >= 50100)) && (LA28_0 == REMOVE_SYMBOL))
        	                {
        	                    alt28=2;
        	                }
        	                else
        	                {
        	                    if (BACKTRACKING>0)
        	                    {
        	                        FAILEDFLAG = ANTLR3_TRUE;
        	                        return retval;
        	                    }


        	                    CONSTRUCTEX();
        	                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    EXCEPTION->message      = (void *)"";
        	                    EXCEPTION->decisionNum  = 28;
        	                    EXCEPTION->state        = 0;


        	                    goto rulealter_table_commandsEx;

        	                }
        	            }
        	            switch (alt28)
        	            {
        	        	case 1:
        	        	    // MySQL.g:319:65: ( partitioning )?
        	        	    {
        	        	        // MySQL.g:319:65: ( partitioning )?
        	        	        {
        	        	            int alt27=2;
        	        	            {
        	        	                int LA27_0 = LA(1);
        	        	                if ( ((SERVER_VERSION >= 50100)) && (LA27_0 == PARTITION_SYMBOL))
        	        	                {
        	        	                    alt27=1;
        	        	                }
        	        	            }
        	        	            switch (alt27)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:319:65: partitioning
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_partitioning_in_alter_table_commands690);
        	        	        	        partitioning106=partitioning(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulealter_table_commandsEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partitioning106.tree);

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:319:81: remove_partitioning
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_remove_partitioning_in_alter_table_commands695);
        	        	        remove_partitioning107=remove_partitioning(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_commandsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, remove_partitioning107.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:320:4: remove_partitioning
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_remove_partitioning_in_alter_table_commands701);
        	        remove_partitioning108=remove_partitioning(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_commandsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, remove_partitioning108.tree);

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:321:4: partitioning
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_partitioning_in_alter_table_commands706);
        	        partitioning109=partitioning(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_commandsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partitioning109.tree);

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:322:4: {...}? => alter_partition
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((SERVER_VERSION >= 50100)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50100";
        	                EXCEPTION->ruleName	 = (void *)"alter_table_commands";


        	        }

        	        FOLLOWPUSH(FOLLOW_alter_partition_in_alter_table_commands715);
        	        alter_partition110=alter_partition(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_commandsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, alter_partition110.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulealter_table_commandsEx; /* Prevent compiler warnings */
    rulealter_table_commandsEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end alter_table_commands */

/**
 * $ANTLR start alter_table_list_item
 * MySQL.g:325:1: alter_table_list_item : ( alter_table_options | ADD_SYMBOL ( COLUMN_SYMBOL )? ( identifier column_definition ( FIRST_SYMBOL | AFTER_SYMBOL identifier )? | OPEN_PAR_SYMBOL identifier column_definition ( COMMA_SYMBOL identifier column_definition )* CLOSE_PAR_SYMBOL ) | ADD_SYMBOL ( INDEX_SYMBOL | KEY_SYMBOL ) ( identifier )? ( index_type )? index_columns ( index_option )* | ADD_SYMBOL ( CONSTRAINT_SYMBOL ( identifier )? )? ( PRIMARY_SYMBOL KEY_SYMBOL ( index_type )? index_columns ( index_option )* | UNIQUE_SYMBOL ( INDEX_SYMBOL | KEY_SYMBOL )? ( identifier )? ( index_type )? index_columns ( index_option )* | FOREIGN_SYMBOL KEY_SYMBOL ( identifier )? index_columns reference_definition ) | ADD_SYMBOL FULLTEXT_SYMBOL ( INDEX_SYMBOL | KEY_SYMBOL )? ( identifier )? index_columns ( index_option )* | ADD_SYMBOL SPATIAL_SYMBOL ( INDEX_SYMBOL | KEY_SYMBOL )? ( identifier )? index_columns ( index_option )* | ALTER_SYMBOL ( COLUMN_SYMBOL )? identifier ( SET_SYMBOL DEFAULT_SYMBOL literal | DROP_SYMBOL DEFAULT_SYMBOL ) | CHANGE_SYMBOL ( COLUMN_SYMBOL )? identifier identifier column_definition ( FIRST_SYMBOL | AFTER_SYMBOL identifier )? | MODIFY_SYMBOL ( COLUMN_SYMBOL )? identifier column_definition ( FIRST_SYMBOL | AFTER_SYMBOL identifier )? | DROP_SYMBOL ( ( INDEX_SYMBOL | KEY_SYMBOL ) identifier | ( COLUMN_SYMBOL )? identifier | PRIMARY_SYMBOL KEY_SYMBOL | FOREIGN_SYMBOL KEY_SYMBOL identifier ) | DISABLE_SYMBOL KEYS_SYMBOL | ENABLE_SYMBOL KEYS_SYMBOL | RENAME_SYMBOL ( TO_SYMBOL | AS_SYMBOL )? identifier | alter_order_by | CONVERT_SYMBOL TO_SYMBOL CHAR_SYMBOL SET_SYMBOL charset_name_or_default ( COLLATE_SYMBOL collation_name_or_default )? | FORCE_SYMBOL |{...}? => alter_algorithm_option |{...}? => alter_lock_option );
 */
static MySQLParser_alter_table_list_item_return
alter_table_list_item(pMySQLParser ctx)
{
    MySQLParser_alter_table_list_item_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    ADD_SYMBOL112;
    pANTLR3_COMMON_TOKEN    COLUMN_SYMBOL113;
    pANTLR3_COMMON_TOKEN    FIRST_SYMBOL116;
    pANTLR3_COMMON_TOKEN    AFTER_SYMBOL117;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL119;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL122;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL125;
    pANTLR3_COMMON_TOKEN    ADD_SYMBOL126;
    pANTLR3_COMMON_TOKEN    set127;
    pANTLR3_COMMON_TOKEN    ADD_SYMBOL132;
    pANTLR3_COMMON_TOKEN    CONSTRAINT_SYMBOL133;
    pANTLR3_COMMON_TOKEN    PRIMARY_SYMBOL135;
    pANTLR3_COMMON_TOKEN    KEY_SYMBOL136;
    pANTLR3_COMMON_TOKEN    UNIQUE_SYMBOL140;
    pANTLR3_COMMON_TOKEN    set141;
    pANTLR3_COMMON_TOKEN    FOREIGN_SYMBOL146;
    pANTLR3_COMMON_TOKEN    KEY_SYMBOL147;
    pANTLR3_COMMON_TOKEN    ADD_SYMBOL151;
    pANTLR3_COMMON_TOKEN    FULLTEXT_SYMBOL152;
    pANTLR3_COMMON_TOKEN    set153;
    pANTLR3_COMMON_TOKEN    ADD_SYMBOL157;
    pANTLR3_COMMON_TOKEN    SPATIAL_SYMBOL158;
    pANTLR3_COMMON_TOKEN    set159;
    pANTLR3_COMMON_TOKEN    ALTER_SYMBOL163;
    pANTLR3_COMMON_TOKEN    COLUMN_SYMBOL164;
    pANTLR3_COMMON_TOKEN    SET_SYMBOL166;
    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL167;
    pANTLR3_COMMON_TOKEN    DROP_SYMBOL169;
    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL170;
    pANTLR3_COMMON_TOKEN    CHANGE_SYMBOL171;
    pANTLR3_COMMON_TOKEN    COLUMN_SYMBOL172;
    pANTLR3_COMMON_TOKEN    FIRST_SYMBOL176;
    pANTLR3_COMMON_TOKEN    AFTER_SYMBOL177;
    pANTLR3_COMMON_TOKEN    MODIFY_SYMBOL179;
    pANTLR3_COMMON_TOKEN    COLUMN_SYMBOL180;
    pANTLR3_COMMON_TOKEN    FIRST_SYMBOL183;
    pANTLR3_COMMON_TOKEN    AFTER_SYMBOL184;
    pANTLR3_COMMON_TOKEN    DROP_SYMBOL186;
    pANTLR3_COMMON_TOKEN    set187;
    pANTLR3_COMMON_TOKEN    COLUMN_SYMBOL189;
    pANTLR3_COMMON_TOKEN    PRIMARY_SYMBOL191;
    pANTLR3_COMMON_TOKEN    KEY_SYMBOL192;
    pANTLR3_COMMON_TOKEN    FOREIGN_SYMBOL193;
    pANTLR3_COMMON_TOKEN    KEY_SYMBOL194;
    pANTLR3_COMMON_TOKEN    DISABLE_SYMBOL196;
    pANTLR3_COMMON_TOKEN    KEYS_SYMBOL197;
    pANTLR3_COMMON_TOKEN    ENABLE_SYMBOL198;
    pANTLR3_COMMON_TOKEN    KEYS_SYMBOL199;
    pANTLR3_COMMON_TOKEN    RENAME_SYMBOL200;
    pANTLR3_COMMON_TOKEN    set201;
    pANTLR3_COMMON_TOKEN    CONVERT_SYMBOL204;
    pANTLR3_COMMON_TOKEN    TO_SYMBOL205;
    pANTLR3_COMMON_TOKEN    CHAR_SYMBOL206;
    pANTLR3_COMMON_TOKEN    SET_SYMBOL207;
    pANTLR3_COMMON_TOKEN    COLLATE_SYMBOL209;
    pANTLR3_COMMON_TOKEN    FORCE_SYMBOL211;
    MySQLParser_alter_table_options_return alter_table_options111;
    #undef	RETURN_TYPE_alter_table_options111
    #define	RETURN_TYPE_alter_table_options111 MySQLParser_alter_table_options_return

    MySQLParser_identifier_return identifier114;
    #undef	RETURN_TYPE_identifier114
    #define	RETURN_TYPE_identifier114 MySQLParser_identifier_return

    MySQLParser_column_definition_return column_definition115;
    #undef	RETURN_TYPE_column_definition115
    #define	RETURN_TYPE_column_definition115 MySQLParser_column_definition_return

    MySQLParser_identifier_return identifier118;
    #undef	RETURN_TYPE_identifier118
    #define	RETURN_TYPE_identifier118 MySQLParser_identifier_return

    MySQLParser_identifier_return identifier120;
    #undef	RETURN_TYPE_identifier120
    #define	RETURN_TYPE_identifier120 MySQLParser_identifier_return

    MySQLParser_column_definition_return column_definition121;
    #undef	RETURN_TYPE_column_definition121
    #define	RETURN_TYPE_column_definition121 MySQLParser_column_definition_return

    MySQLParser_identifier_return identifier123;
    #undef	RETURN_TYPE_identifier123
    #define	RETURN_TYPE_identifier123 MySQLParser_identifier_return

    MySQLParser_column_definition_return column_definition124;
    #undef	RETURN_TYPE_column_definition124
    #define	RETURN_TYPE_column_definition124 MySQLParser_column_definition_return

    MySQLParser_identifier_return identifier128;
    #undef	RETURN_TYPE_identifier128
    #define	RETURN_TYPE_identifier128 MySQLParser_identifier_return

    MySQLParser_index_type_return index_type129;
    #undef	RETURN_TYPE_index_type129
    #define	RETURN_TYPE_index_type129 MySQLParser_index_type_return

    MySQLParser_index_columns_return index_columns130;
    #undef	RETURN_TYPE_index_columns130
    #define	RETURN_TYPE_index_columns130 MySQLParser_index_columns_return

    MySQLParser_index_option_return index_option131;
    #undef	RETURN_TYPE_index_option131
    #define	RETURN_TYPE_index_option131 MySQLParser_index_option_return

    MySQLParser_identifier_return identifier134;
    #undef	RETURN_TYPE_identifier134
    #define	RETURN_TYPE_identifier134 MySQLParser_identifier_return

    MySQLParser_index_type_return index_type137;
    #undef	RETURN_TYPE_index_type137
    #define	RETURN_TYPE_index_type137 MySQLParser_index_type_return

    MySQLParser_index_columns_return index_columns138;
    #undef	RETURN_TYPE_index_columns138
    #define	RETURN_TYPE_index_columns138 MySQLParser_index_columns_return

    MySQLParser_index_option_return index_option139;
    #undef	RETURN_TYPE_index_option139
    #define	RETURN_TYPE_index_option139 MySQLParser_index_option_return

    MySQLParser_identifier_return identifier142;
    #undef	RETURN_TYPE_identifier142
    #define	RETURN_TYPE_identifier142 MySQLParser_identifier_return

    MySQLParser_index_type_return index_type143;
    #undef	RETURN_TYPE_index_type143
    #define	RETURN_TYPE_index_type143 MySQLParser_index_type_return

    MySQLParser_index_columns_return index_columns144;
    #undef	RETURN_TYPE_index_columns144
    #define	RETURN_TYPE_index_columns144 MySQLParser_index_columns_return

    MySQLParser_index_option_return index_option145;
    #undef	RETURN_TYPE_index_option145
    #define	RETURN_TYPE_index_option145 MySQLParser_index_option_return

    MySQLParser_identifier_return identifier148;
    #undef	RETURN_TYPE_identifier148
    #define	RETURN_TYPE_identifier148 MySQLParser_identifier_return

    MySQLParser_index_columns_return index_columns149;
    #undef	RETURN_TYPE_index_columns149
    #define	RETURN_TYPE_index_columns149 MySQLParser_index_columns_return

    MySQLParser_reference_definition_return reference_definition150;
    #undef	RETURN_TYPE_reference_definition150
    #define	RETURN_TYPE_reference_definition150 MySQLParser_reference_definition_return

    MySQLParser_identifier_return identifier154;
    #undef	RETURN_TYPE_identifier154
    #define	RETURN_TYPE_identifier154 MySQLParser_identifier_return

    MySQLParser_index_columns_return index_columns155;
    #undef	RETURN_TYPE_index_columns155
    #define	RETURN_TYPE_index_columns155 MySQLParser_index_columns_return

    MySQLParser_index_option_return index_option156;
    #undef	RETURN_TYPE_index_option156
    #define	RETURN_TYPE_index_option156 MySQLParser_index_option_return

    MySQLParser_identifier_return identifier160;
    #undef	RETURN_TYPE_identifier160
    #define	RETURN_TYPE_identifier160 MySQLParser_identifier_return

    MySQLParser_index_columns_return index_columns161;
    #undef	RETURN_TYPE_index_columns161
    #define	RETURN_TYPE_index_columns161 MySQLParser_index_columns_return

    MySQLParser_index_option_return index_option162;
    #undef	RETURN_TYPE_index_option162
    #define	RETURN_TYPE_index_option162 MySQLParser_index_option_return

    MySQLParser_identifier_return identifier165;
    #undef	RETURN_TYPE_identifier165
    #define	RETURN_TYPE_identifier165 MySQLParser_identifier_return

    MySQLParser_literal_return literal168;
    #undef	RETURN_TYPE_literal168
    #define	RETURN_TYPE_literal168 MySQLParser_literal_return

    MySQLParser_identifier_return identifier173;
    #undef	RETURN_TYPE_identifier173
    #define	RETURN_TYPE_identifier173 MySQLParser_identifier_return

    MySQLParser_identifier_return identifier174;
    #undef	RETURN_TYPE_identifier174
    #define	RETURN_TYPE_identifier174 MySQLParser_identifier_return

    MySQLParser_column_definition_return column_definition175;
    #undef	RETURN_TYPE_column_definition175
    #define	RETURN_TYPE_column_definition175 MySQLParser_column_definition_return

    MySQLParser_identifier_return identifier178;
    #undef	RETURN_TYPE_identifier178
    #define	RETURN_TYPE_identifier178 MySQLParser_identifier_return

    MySQLParser_identifier_return identifier181;
    #undef	RETURN_TYPE_identifier181
    #define	RETURN_TYPE_identifier181 MySQLParser_identifier_return

    MySQLParser_column_definition_return column_definition182;
    #undef	RETURN_TYPE_column_definition182
    #define	RETURN_TYPE_column_definition182 MySQLParser_column_definition_return

    MySQLParser_identifier_return identifier185;
    #undef	RETURN_TYPE_identifier185
    #define	RETURN_TYPE_identifier185 MySQLParser_identifier_return

    MySQLParser_identifier_return identifier188;
    #undef	RETURN_TYPE_identifier188
    #define	RETURN_TYPE_identifier188 MySQLParser_identifier_return

    MySQLParser_identifier_return identifier190;
    #undef	RETURN_TYPE_identifier190
    #define	RETURN_TYPE_identifier190 MySQLParser_identifier_return

    MySQLParser_identifier_return identifier195;
    #undef	RETURN_TYPE_identifier195
    #define	RETURN_TYPE_identifier195 MySQLParser_identifier_return

    MySQLParser_identifier_return identifier202;
    #undef	RETURN_TYPE_identifier202
    #define	RETURN_TYPE_identifier202 MySQLParser_identifier_return

    MySQLParser_alter_order_by_return alter_order_by203;
    #undef	RETURN_TYPE_alter_order_by203
    #define	RETURN_TYPE_alter_order_by203 MySQLParser_alter_order_by_return

    MySQLParser_charset_name_or_default_return charset_name_or_default208;
    #undef	RETURN_TYPE_charset_name_or_default208
    #define	RETURN_TYPE_charset_name_or_default208 MySQLParser_charset_name_or_default_return

    MySQLParser_collation_name_or_default_return collation_name_or_default210;
    #undef	RETURN_TYPE_collation_name_or_default210
    #define	RETURN_TYPE_collation_name_or_default210 MySQLParser_collation_name_or_default_return

    MySQLParser_alter_algorithm_option_return alter_algorithm_option212;
    #undef	RETURN_TYPE_alter_algorithm_option212
    #define	RETURN_TYPE_alter_algorithm_option212 MySQLParser_alter_algorithm_option_return

    MySQLParser_alter_lock_option_return alter_lock_option213;
    #undef	RETURN_TYPE_alter_lock_option213
    #define	RETURN_TYPE_alter_lock_option213 MySQLParser_alter_lock_option_return

    pANTLR3_BASE_TREE ADD_SYMBOL112_tree;
    pANTLR3_BASE_TREE COLUMN_SYMBOL113_tree;
    pANTLR3_BASE_TREE FIRST_SYMBOL116_tree;
    pANTLR3_BASE_TREE AFTER_SYMBOL117_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL119_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL122_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL125_tree;
    pANTLR3_BASE_TREE ADD_SYMBOL126_tree;
    pANTLR3_BASE_TREE set127_tree;
    pANTLR3_BASE_TREE ADD_SYMBOL132_tree;
    pANTLR3_BASE_TREE CONSTRAINT_SYMBOL133_tree;
    pANTLR3_BASE_TREE PRIMARY_SYMBOL135_tree;
    pANTLR3_BASE_TREE KEY_SYMBOL136_tree;
    pANTLR3_BASE_TREE UNIQUE_SYMBOL140_tree;
    pANTLR3_BASE_TREE set141_tree;
    pANTLR3_BASE_TREE FOREIGN_SYMBOL146_tree;
    pANTLR3_BASE_TREE KEY_SYMBOL147_tree;
    pANTLR3_BASE_TREE ADD_SYMBOL151_tree;
    pANTLR3_BASE_TREE FULLTEXT_SYMBOL152_tree;
    pANTLR3_BASE_TREE set153_tree;
    pANTLR3_BASE_TREE ADD_SYMBOL157_tree;
    pANTLR3_BASE_TREE SPATIAL_SYMBOL158_tree;
    pANTLR3_BASE_TREE set159_tree;
    pANTLR3_BASE_TREE ALTER_SYMBOL163_tree;
    pANTLR3_BASE_TREE COLUMN_SYMBOL164_tree;
    pANTLR3_BASE_TREE SET_SYMBOL166_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL167_tree;
    pANTLR3_BASE_TREE DROP_SYMBOL169_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL170_tree;
    pANTLR3_BASE_TREE CHANGE_SYMBOL171_tree;
    pANTLR3_BASE_TREE COLUMN_SYMBOL172_tree;
    pANTLR3_BASE_TREE FIRST_SYMBOL176_tree;
    pANTLR3_BASE_TREE AFTER_SYMBOL177_tree;
    pANTLR3_BASE_TREE MODIFY_SYMBOL179_tree;
    pANTLR3_BASE_TREE COLUMN_SYMBOL180_tree;
    pANTLR3_BASE_TREE FIRST_SYMBOL183_tree;
    pANTLR3_BASE_TREE AFTER_SYMBOL184_tree;
    pANTLR3_BASE_TREE DROP_SYMBOL186_tree;
    pANTLR3_BASE_TREE set187_tree;
    pANTLR3_BASE_TREE COLUMN_SYMBOL189_tree;
    pANTLR3_BASE_TREE PRIMARY_SYMBOL191_tree;
    pANTLR3_BASE_TREE KEY_SYMBOL192_tree;
    pANTLR3_BASE_TREE FOREIGN_SYMBOL193_tree;
    pANTLR3_BASE_TREE KEY_SYMBOL194_tree;
    pANTLR3_BASE_TREE DISABLE_SYMBOL196_tree;
    pANTLR3_BASE_TREE KEYS_SYMBOL197_tree;
    pANTLR3_BASE_TREE ENABLE_SYMBOL198_tree;
    pANTLR3_BASE_TREE KEYS_SYMBOL199_tree;
    pANTLR3_BASE_TREE RENAME_SYMBOL200_tree;
    pANTLR3_BASE_TREE set201_tree;
    pANTLR3_BASE_TREE CONVERT_SYMBOL204_tree;
    pANTLR3_BASE_TREE TO_SYMBOL205_tree;
    pANTLR3_BASE_TREE CHAR_SYMBOL206_tree;
    pANTLR3_BASE_TREE SET_SYMBOL207_tree;
    pANTLR3_BASE_TREE COLLATE_SYMBOL209_tree;
    pANTLR3_BASE_TREE FORCE_SYMBOL211_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ADD_SYMBOL112       = NULL;
    COLUMN_SYMBOL113       = NULL;
    FIRST_SYMBOL116       = NULL;
    AFTER_SYMBOL117       = NULL;
    OPEN_PAR_SYMBOL119       = NULL;
    COMMA_SYMBOL122       = NULL;
    CLOSE_PAR_SYMBOL125       = NULL;
    ADD_SYMBOL126       = NULL;
    set127       = NULL;
    ADD_SYMBOL132       = NULL;
    CONSTRAINT_SYMBOL133       = NULL;
    PRIMARY_SYMBOL135       = NULL;
    KEY_SYMBOL136       = NULL;
    UNIQUE_SYMBOL140       = NULL;
    set141       = NULL;
    FOREIGN_SYMBOL146       = NULL;
    KEY_SYMBOL147       = NULL;
    ADD_SYMBOL151       = NULL;
    FULLTEXT_SYMBOL152       = NULL;
    set153       = NULL;
    ADD_SYMBOL157       = NULL;
    SPATIAL_SYMBOL158       = NULL;
    set159       = NULL;
    ALTER_SYMBOL163       = NULL;
    COLUMN_SYMBOL164       = NULL;
    SET_SYMBOL166       = NULL;
    DEFAULT_SYMBOL167       = NULL;
    DROP_SYMBOL169       = NULL;
    DEFAULT_SYMBOL170       = NULL;
    CHANGE_SYMBOL171       = NULL;
    COLUMN_SYMBOL172       = NULL;
    FIRST_SYMBOL176       = NULL;
    AFTER_SYMBOL177       = NULL;
    MODIFY_SYMBOL179       = NULL;
    COLUMN_SYMBOL180       = NULL;
    FIRST_SYMBOL183       = NULL;
    AFTER_SYMBOL184       = NULL;
    DROP_SYMBOL186       = NULL;
    set187       = NULL;
    COLUMN_SYMBOL189       = NULL;
    PRIMARY_SYMBOL191       = NULL;
    KEY_SYMBOL192       = NULL;
    FOREIGN_SYMBOL193       = NULL;
    KEY_SYMBOL194       = NULL;
    DISABLE_SYMBOL196       = NULL;
    KEYS_SYMBOL197       = NULL;
    ENABLE_SYMBOL198       = NULL;
    KEYS_SYMBOL199       = NULL;
    RENAME_SYMBOL200       = NULL;
    set201       = NULL;
    CONVERT_SYMBOL204       = NULL;
    TO_SYMBOL205       = NULL;
    CHAR_SYMBOL206       = NULL;
    SET_SYMBOL207       = NULL;
    COLLATE_SYMBOL209       = NULL;
    FORCE_SYMBOL211       = NULL;
    alter_table_options111.tree = NULL;

    identifier114.tree = NULL;

    column_definition115.tree = NULL;

    identifier118.tree = NULL;

    identifier120.tree = NULL;

    column_definition121.tree = NULL;

    identifier123.tree = NULL;

    column_definition124.tree = NULL;

    identifier128.tree = NULL;

    index_type129.tree = NULL;

    index_columns130.tree = NULL;

    index_option131.tree = NULL;

    identifier134.tree = NULL;

    index_type137.tree = NULL;

    index_columns138.tree = NULL;

    index_option139.tree = NULL;

    identifier142.tree = NULL;

    index_type143.tree = NULL;

    index_columns144.tree = NULL;

    index_option145.tree = NULL;

    identifier148.tree = NULL;

    index_columns149.tree = NULL;

    reference_definition150.tree = NULL;

    identifier154.tree = NULL;

    index_columns155.tree = NULL;

    index_option156.tree = NULL;

    identifier160.tree = NULL;

    index_columns161.tree = NULL;

    index_option162.tree = NULL;

    identifier165.tree = NULL;

    literal168.tree = NULL;

    identifier173.tree = NULL;

    identifier174.tree = NULL;

    column_definition175.tree = NULL;

    identifier178.tree = NULL;

    identifier181.tree = NULL;

    column_definition182.tree = NULL;

    identifier185.tree = NULL;

    identifier188.tree = NULL;

    identifier190.tree = NULL;

    identifier195.tree = NULL;

    identifier202.tree = NULL;

    alter_order_by203.tree = NULL;

    charset_name_or_default208.tree = NULL;

    collation_name_or_default210.tree = NULL;

    alter_algorithm_option212.tree = NULL;

    alter_lock_option213.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ADD_SYMBOL112_tree   = NULL;
    COLUMN_SYMBOL113_tree   = NULL;
    FIRST_SYMBOL116_tree   = NULL;
    AFTER_SYMBOL117_tree   = NULL;
    OPEN_PAR_SYMBOL119_tree   = NULL;
    COMMA_SYMBOL122_tree   = NULL;
    CLOSE_PAR_SYMBOL125_tree   = NULL;
    ADD_SYMBOL126_tree   = NULL;
    set127_tree   = NULL;
    ADD_SYMBOL132_tree   = NULL;
    CONSTRAINT_SYMBOL133_tree   = NULL;
    PRIMARY_SYMBOL135_tree   = NULL;
    KEY_SYMBOL136_tree   = NULL;
    UNIQUE_SYMBOL140_tree   = NULL;
    set141_tree   = NULL;
    FOREIGN_SYMBOL146_tree   = NULL;
    KEY_SYMBOL147_tree   = NULL;
    ADD_SYMBOL151_tree   = NULL;
    FULLTEXT_SYMBOL152_tree   = NULL;
    set153_tree   = NULL;
    ADD_SYMBOL157_tree   = NULL;
    SPATIAL_SYMBOL158_tree   = NULL;
    set159_tree   = NULL;
    ALTER_SYMBOL163_tree   = NULL;
    COLUMN_SYMBOL164_tree   = NULL;
    SET_SYMBOL166_tree   = NULL;
    DEFAULT_SYMBOL167_tree   = NULL;
    DROP_SYMBOL169_tree   = NULL;
    DEFAULT_SYMBOL170_tree   = NULL;
    CHANGE_SYMBOL171_tree   = NULL;
    COLUMN_SYMBOL172_tree   = NULL;
    FIRST_SYMBOL176_tree   = NULL;
    AFTER_SYMBOL177_tree   = NULL;
    MODIFY_SYMBOL179_tree   = NULL;
    COLUMN_SYMBOL180_tree   = NULL;
    FIRST_SYMBOL183_tree   = NULL;
    AFTER_SYMBOL184_tree   = NULL;
    DROP_SYMBOL186_tree   = NULL;
    set187_tree   = NULL;
    COLUMN_SYMBOL189_tree   = NULL;
    PRIMARY_SYMBOL191_tree   = NULL;
    KEY_SYMBOL192_tree   = NULL;
    FOREIGN_SYMBOL193_tree   = NULL;
    KEY_SYMBOL194_tree   = NULL;
    DISABLE_SYMBOL196_tree   = NULL;
    KEYS_SYMBOL197_tree   = NULL;
    ENABLE_SYMBOL198_tree   = NULL;
    KEYS_SYMBOL199_tree   = NULL;
    RENAME_SYMBOL200_tree   = NULL;
    set201_tree   = NULL;
    CONVERT_SYMBOL204_tree   = NULL;
    TO_SYMBOL205_tree   = NULL;
    CHAR_SYMBOL206_tree   = NULL;
    SET_SYMBOL207_tree   = NULL;
    COLLATE_SYMBOL209_tree   = NULL;
    FORCE_SYMBOL211_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:325:22: ( alter_table_options | ADD_SYMBOL ( COLUMN_SYMBOL )? ( identifier column_definition ( FIRST_SYMBOL | AFTER_SYMBOL identifier )? | OPEN_PAR_SYMBOL identifier column_definition ( COMMA_SYMBOL identifier column_definition )* CLOSE_PAR_SYMBOL ) | ADD_SYMBOL ( INDEX_SYMBOL | KEY_SYMBOL ) ( identifier )? ( index_type )? index_columns ( index_option )* | ADD_SYMBOL ( CONSTRAINT_SYMBOL ( identifier )? )? ( PRIMARY_SYMBOL KEY_SYMBOL ( index_type )? index_columns ( index_option )* | UNIQUE_SYMBOL ( INDEX_SYMBOL | KEY_SYMBOL )? ( identifier )? ( index_type )? index_columns ( index_option )* | FOREIGN_SYMBOL KEY_SYMBOL ( identifier )? index_columns reference_definition ) | ADD_SYMBOL FULLTEXT_SYMBOL ( INDEX_SYMBOL | KEY_SYMBOL )? ( identifier )? index_columns ( index_option )* | ADD_SYMBOL SPATIAL_SYMBOL ( INDEX_SYMBOL | KEY_SYMBOL )? ( identifier )? index_columns ( index_option )* | ALTER_SYMBOL ( COLUMN_SYMBOL )? identifier ( SET_SYMBOL DEFAULT_SYMBOL literal | DROP_SYMBOL DEFAULT_SYMBOL ) | CHANGE_SYMBOL ( COLUMN_SYMBOL )? identifier identifier column_definition ( FIRST_SYMBOL | AFTER_SYMBOL identifier )? | MODIFY_SYMBOL ( COLUMN_SYMBOL )? identifier column_definition ( FIRST_SYMBOL | AFTER_SYMBOL identifier )? | DROP_SYMBOL ( ( INDEX_SYMBOL | KEY_SYMBOL ) identifier | ( COLUMN_SYMBOL )? identifier | PRIMARY_SYMBOL KEY_SYMBOL | FOREIGN_SYMBOL KEY_SYMBOL identifier ) | DISABLE_SYMBOL KEYS_SYMBOL | ENABLE_SYMBOL KEYS_SYMBOL | RENAME_SYMBOL ( TO_SYMBOL | AS_SYMBOL )? identifier | alter_order_by | CONVERT_SYMBOL TO_SYMBOL CHAR_SYMBOL SET_SYMBOL charset_name_or_default ( COLLATE_SYMBOL collation_name_or_default )? | FORCE_SYMBOL |{...}? => alter_algorithm_option |{...}? => alter_lock_option )

            ANTLR3_UINT32 alt63;

            alt63=18;

            {
                int LA63_0 = LA(1);
                if ( (LA63_0 == ENGINE_SYMBOL))
                {
                    alt63=1;
                }
                else if ( ((SERVER_VERSION < 50500)) && (LA63_0 == TYPE_SYMBOL))
                {
                    alt63=1;
                }
                else if ( (((LA63_0 >= AUTO_INCREMENT_SYMBOL) && (LA63_0 <= AVG_ROW_LENGTH_SYMBOL)) || LA63_0 == COMMENT_SYMBOL || LA63_0 == MAX_ROWS_SYMBOL || LA63_0 == MIN_ROWS_SYMBOL || LA63_0 == PACK_KEYS_SYMBOL || LA63_0 == PASSWORD_SYMBOL))
                {
                    alt63=1;
                }
                else if ( ((SERVER_VERSION >= 50600)) && (((LA63_0 >= STATS_AUTO_RECALC_SYMBOL) && (LA63_0 <= STATS_SAMPLE_PAGES_SYMBOL))))
                {
                    alt63=1;
                }
                else if ( (((LA63_0 >= CHARSET_SYMBOL) && (LA63_0 <= CHECKSUM_SYMBOL)) || LA63_0 == COLLATE_SYMBOL || LA63_0 == CONNECTION_SYMBOL || LA63_0 == DATA_SYMBOL || LA63_0 == DEFAULT_SYMBOL || LA63_0 == DELAY_KEY_WRITE_SYMBOL || LA63_0 == INDEX_SYMBOL || LA63_0 == INSERT_METHOD_SYMBOL || LA63_0 == KEY_BLOCK_SIZE_SYMBOL || LA63_0 == ROW_FORMAT_SYMBOL || LA63_0 == STORAGE_SYMBOL || LA63_0 == TABLESPACE_SYMBOL || LA63_0 == TABLE_CHECKSUM_SYMBOL || LA63_0 == UNION_SYMBOL))
                {
                    alt63=1;
                }
                else if ( (LA63_0 == ADD_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case INDEX_SYMBOL:
                    case KEY_SYMBOL:
                    	{
                    		alt63=3;
                    	}
                        break;
                    case FULLTEXT_SYMBOL:
                    	{
                    		alt63=5;
                    	}
                        break;
                    case SPATIAL_SYMBOL:
                    	{
                    		alt63=6;
                    	}
                        break;
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COLUMN_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOUND_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_SYMBOL:
                    case LEVEL_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt63=2;
                    	}
                        break;
                    case CONSTRAINT_SYMBOL:
                    case FOREIGN_SYMBOL:
                    case PRIMARY_SYMBOL:
                    case UNIQUE_SYMBOL:
                    	{
                    		alt63=4;
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 63;
                        EXCEPTION->state        = 26;


                        goto rulealter_table_list_itemEx;

                    }

                }
                else if ( (LA63_0 == ALTER_SYMBOL))
                {
                    alt63=7;
                }
                else if ( (LA63_0 == CHANGE_SYMBOL))
                {
                    alt63=8;
                }
                else if ( (LA63_0 == MODIFY_SYMBOL))
                {
                    alt63=9;
                }
                else if ( (LA63_0 == DROP_SYMBOL))
                {
                    alt63=10;
                }
                else if ( (LA63_0 == DISABLE_SYMBOL))
                {
                    alt63=11;
                }
                else if ( (LA63_0 == ENABLE_SYMBOL))
                {
                    alt63=12;
                }
                else if ( (LA63_0 == RENAME_SYMBOL))
                {
                    alt63=13;
                }
                else if ( (LA63_0 == ORDER_SYMBOL))
                {
                    alt63=14;
                }
                else if ( (LA63_0 == CONVERT_SYMBOL))
                {
                    alt63=15;
                }
                else if ( (LA63_0 == FORCE_SYMBOL))
                {
                    alt63=16;
                }
                else if ( ((SERVER_VERSION >= 50600)) && (LA63_0 == ALGORITHM_SYMBOL))
                {
                    alt63=17;
                }
                else if ( ((SERVER_VERSION >= 50600)) && (LA63_0 == LOCK_SYMBOL))
                {
                    alt63=18;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 63;
                    EXCEPTION->state        = 0;


                    goto rulealter_table_list_itemEx;

                }
            }
            switch (alt63)
            {
        	case 1:
        	    // MySQL.g:326:2: alter_table_options
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_alter_table_options_in_alter_table_list_item724);
        	        alter_table_options111=alter_table_options(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, alter_table_options111.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:327:4: ADD_SYMBOL ( COLUMN_SYMBOL )? ( identifier column_definition ( FIRST_SYMBOL | AFTER_SYMBOL identifier )? | OPEN_PAR_SYMBOL identifier column_definition ( COMMA_SYMBOL identifier column_definition )* CLOSE_PAR_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ADD_SYMBOL112 = (pANTLR3_COMMON_TOKEN) MATCHT(ADD_SYMBOL, &FOLLOW_ADD_SYMBOL_in_alter_table_list_item729);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ADD_SYMBOL112_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ADD_SYMBOL112));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ADD_SYMBOL112_tree);
        	        }

        	        // MySQL.g:327:15: ( COLUMN_SYMBOL )?
        	        {
        	            int alt30=2;
        	            switch ( LA(1) )
        	            {
        	                case COLUMN_SYMBOL:
        	                	{
        	                		alt30=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt30)
        	            {
        	        	case 1:
        	        	    // MySQL.g:327:15: COLUMN_SYMBOL
        	        	    {
        	        	        COLUMN_SYMBOL113 = (pANTLR3_COMMON_TOKEN) MATCHT(COLUMN_SYMBOL, &FOLLOW_COLUMN_SYMBOL_in_alter_table_list_item731);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COLUMN_SYMBOL113_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLUMN_SYMBOL113));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COLUMN_SYMBOL113_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:328:3: ( identifier column_definition ( FIRST_SYMBOL | AFTER_SYMBOL identifier )? | OPEN_PAR_SYMBOL identifier column_definition ( COMMA_SYMBOL identifier column_definition )* CLOSE_PAR_SYMBOL )
        	        {
        	            int alt33=2;
        	            {
        	                int LA33_0 = LA(1);
        	                if ( (LA33_0 == BACK_TICK_QUOTED_ID || LA33_0 == IDENTIFIER))
        	                {
        	                    alt33=1;
        	                }
        	                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA33_0 == DOUBLE_QUOTED_TEXT))
        	                {
        	                    alt33=1;
        	                }
        	                else if ( (((LA33_0 >= ACTION_SYMBOL) && (LA33_0 <= ADDDATE_SYMBOL)) || ((LA33_0 >= AFTER_SYMBOL) && (LA33_0 <= ALGORITHM_SYMBOL)) || LA33_0 == ANALYZE_SYMBOL || ((LA33_0 >= ANY_SYMBOL) && (LA33_0 <= ASCII_SYMBOL)) || ((LA33_0 >= AT_SYMBOL) && (LA33_0 <= BACKUP_SYMBOL)) || LA33_0 == BEGIN_SYMBOL || LA33_0 == BINLOG_SYMBOL || LA33_0 == BIT_SYMBOL || ((LA33_0 >= BLOCK_SYMBOL) && (LA33_0 <= BOOL_SYMBOL)) || ((LA33_0 >= BTREE_SYMBOL) && (LA33_0 <= BYTE_SYMBOL)) || LA33_0 == CACHE_SYMBOL || LA33_0 == CASCADED_SYMBOL || ((LA33_0 >= CATALOG_NAME_SYMBOL) && (LA33_0 <= CHANGED_SYMBOL)) || LA33_0 == CHARSET_SYMBOL || LA33_0 == CHECKSUM_SYMBOL || ((LA33_0 >= CIPHER_SYMBOL) && (LA33_0 <= CLIENT_SYMBOL)) || ((LA33_0 >= CLOSE_SYMBOL) && (LA33_0 <= CODE_SYMBOL)) || LA33_0 == COLLATION_SYMBOL || ((LA33_0 >= COLUMNS_SYMBOL) && (LA33_0 <= COLUMN_NAME_SYMBOL)) || ((LA33_0 >= COMMENT_SYMBOL) && (LA33_0 <= COMPRESSED_SYMBOL)) || LA33_0 == CONCURRENT_SYMBOL || ((LA33_0 >= CONNECTION_SYMBOL) && (LA33_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA33_0 >= CONTAINS_SYMBOL) && (LA33_0 <= CONTEXT_SYMBOL)) || LA33_0 == CONTRIBUTORS_SYMBOL || LA33_0 == CPU_SYMBOL || LA33_0 == CUBE_SYMBOL || LA33_0 == CURRENT_SYMBOL || LA33_0 == CURSOR_NAME_SYMBOL || ((LA33_0 >= DATAFILE_SYMBOL) && (LA33_0 <= DATETIME_SYMBOL)) || LA33_0 == DATE_SYMBOL || ((LA33_0 >= DAY_SYMBOL) && (LA33_0 <= DEALLOCATE_SYMBOL)) || LA33_0 == DEFAULT_AUTH_SYMBOL || LA33_0 == DEFINER_SYMBOL || LA33_0 == DELAY_KEY_WRITE_SYMBOL || LA33_0 == DES_KEY_FILE_SYMBOL || LA33_0 == DIAGNOSTICS_SYMBOL || ((LA33_0 >= DIRECTORY_SYMBOL) && (LA33_0 <= DISK_SYMBOL)) || LA33_0 == DO_SYMBOL || ((LA33_0 >= DUMPFILE_SYMBOL) && (LA33_0 <= DYNAMIC_SYMBOL)) || LA33_0 == ENABLE_SYMBOL || LA33_0 == ENDS_SYMBOL || ((LA33_0 >= END_SYMBOL) && (LA33_0 <= ENUM_SYMBOL)) || ((LA33_0 >= ERRORS_SYMBOL) && (LA33_0 <= ERROR_SYMBOL)) || ((LA33_0 >= ESCAPE_SYMBOL) && (LA33_0 <= EVERY_SYMBOL)) || LA33_0 == EXECUTE_SYMBOL || LA33_0 == EXPANSION_SYMBOL || LA33_0 == EXPORT_SYMBOL || ((LA33_0 >= EXTENDED_SYMBOL) && (LA33_0 <= EXTENT_SIZE_SYMBOL)) || ((LA33_0 >= FAST_SYMBOL) && (LA33_0 <= FAULTS_SYMBOL)) || ((LA33_0 >= FILE_SYMBOL) && (LA33_0 <= FIXED_SYMBOL)) || LA33_0 == FLUSH_SYMBOL || LA33_0 == FORMAT_SYMBOL || LA33_0 == FOUND_SYMBOL || LA33_0 == FULL_SYMBOL || ((LA33_0 >= FUNCTION_SYMBOL) && (LA33_0 <= GET_FORMAT_SYMBOL)) || ((LA33_0 >= GLOBAL_SYMBOL) && (LA33_0 <= GRANTS_SYMBOL)) || ((LA33_0 >= HANDLER_SYMBOL) && (LA33_0 <= HASH_SYMBOL)) || LA33_0 == HELP_SYMBOL || ((LA33_0 >= HOSTS_SYMBOL) && (LA33_0 <= HOST_SYMBOL)) || ((LA33_0 >= HOUR_SYMBOL) && (LA33_0 <= IDENTIFIED_SYMBOL)) || LA33_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA33_0 >= IMPORT_SYMBOL) && (LA33_0 <= INDEXES_SYMBOL)) || LA33_0 == INITIAL_SIZE_SYMBOL || LA33_0 == INNODB_SYMBOL || LA33_0 == INSERT_METHOD_SYMBOL || LA33_0 == INSTALL_SYMBOL || LA33_0 == INVOKER_SYMBOL || LA33_0 == IO_SYMBOL || ((LA33_0 >= IPC_SYMBOL) && (LA33_0 <= ISSUER_SYMBOL)) || LA33_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA33_0 >= LANGUAGE_SYMBOL) && (LA33_0 <= LAST_SYMBOL)) || LA33_0 == LEAVES_SYMBOL || LA33_0 == LESS_SYMBOL || LA33_0 == LEVEL_SYMBOL || LA33_0 == LINESTRING_SYMBOL || LA33_0 == LIST_SYMBOL || LA33_0 == LOCAL_SYMBOL || LA33_0 == LOCKS_SYMBOL || LA33_0 == LOGFILE_SYMBOL || LA33_0 == LOGS_SYMBOL || LA33_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA33_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA33_0 <= MASTER_SSL_SYMBOL)) || ((LA33_0 >= MASTER_SYMBOL) && (LA33_0 <= MASTER_USER_SYMBOL)) || ((LA33_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA33_0 <= MAX_SIZE_SYMBOL)) || ((LA33_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA33_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA33_0 >= MEDIUM_SYMBOL) && (LA33_0 <= MICROSECOND_SYMBOL)) || LA33_0 == MIGRATE_SYMBOL || ((LA33_0 >= MINUTE_SYMBOL) && (LA33_0 <= MIN_ROWS_SYMBOL)) || LA33_0 == MODE_SYMBOL || LA33_0 == MODIFY_SYMBOL || ((LA33_0 >= MONTH_SYMBOL) && (LA33_0 <= MULTILINESTRING_SYMBOL)) || ((LA33_0 >= MULTIPOINT_SYMBOL) && (LA33_0 <= MULTIPOLYGON_SYMBOL)) || ((LA33_0 >= MUTEX_SYMBOL) && (LA33_0 <= NATIONAL_SYMBOL)) || LA33_0 == NCHAR_SYMBOL || LA33_0 == NDBCLUSTER_SYMBOL || ((LA33_0 >= NEW_SYMBOL) && (LA33_0 <= NONE_SYMBOL)) || ((LA33_0 >= NO_SYMBOL) && (LA33_0 <= NO_WAIT_SYMBOL)) || LA33_0 == NUMBER_SYMBOL || LA33_0 == NVARCHAR_SYMBOL || ((LA33_0 >= OFFSET_SYMBOL) && (LA33_0 <= ONE_SYMBOL)) || LA33_0 == OPEN_SYMBOL || LA33_0 == OPTIONS_SYMBOL || ((LA33_0 >= OWNER_SYMBOL) && (LA33_0 <= PAGE_SYMBOL)) || ((LA33_0 >= PARSER_SYMBOL) && (LA33_0 <= PARTITION_SYMBOL)) || ((LA33_0 >= PASSWORD_SYMBOL) && (LA33_0 <= PLUGIN_SYMBOL)) || ((LA33_0 >= POINT_SYMBOL) && (LA33_0 <= PORT_SYMBOL)) || ((LA33_0 >= PREPARE_SYMBOL) && (LA33_0 <= PREV_SYMBOL)) || LA33_0 == PRIVILEGES_SYMBOL || ((LA33_0 >= PROCESSLIST_SYMBOL) && (LA33_0 <= PROXY_SYMBOL)) || ((LA33_0 >= QUARTER_SYMBOL) && (LA33_0 <= QUICK_SYMBOL)) || LA33_0 == READ_ONLY_SYMBOL || ((LA33_0 >= REBUILD_SYMBOL) && (LA33_0 <= REDUNDANT_SYMBOL)) || ((LA33_0 >= RELAYLOG_SYMBOL) && (LA33_0 <= RELAY_THREAD_SYMBOL)) || ((LA33_0 >= RELOAD_SYMBOL) && (LA33_0 <= REMOVE_SYMBOL)) || ((LA33_0 >= REORGANIZE_SYMBOL) && (LA33_0 <= REPEATABLE_SYMBOL)) || LA33_0 == REPLICATION_SYMBOL || LA33_0 == RESET_SYMBOL || LA33_0 == RESTORE_SYMBOL || ((LA33_0 >= RESUME_SYMBOL) && (LA33_0 <= RETURNS_SYMBOL)) || LA33_0 == REVERSE_SYMBOL || ((LA33_0 >= ROLLBACK_SYMBOL) && (LA33_0 <= SCHEDULE_SYMBOL)) || LA33_0 == SCHEMA_NAME_SYMBOL || ((LA33_0 >= SECOND_SYMBOL) && (LA33_0 <= SECURITY_SYMBOL)) || ((LA33_0 >= SERIALIZABLE_SYMBOL) && (LA33_0 <= SERIAL_SYMBOL)) || ((LA33_0 >= SERVER_SYMBOL) && (LA33_0 <= SESSION_SYMBOL)) || LA33_0 == SHARE_SYMBOL || LA33_0 == SHUTDOWN_SYMBOL || ((LA33_0 >= SIGNED_SYMBOL) && (LA33_0 <= SIMPLE_SYMBOL)) || ((LA33_0 >= SLAVE_SYMBOL) && (LA33_0 <= SLOW_SYMBOL)) || ((LA33_0 >= SNAPSHOT_SYMBOL) && (LA33_0 <= SOURCE_SYMBOL)) || ((LA33_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA33_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA33_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA33_0 <= SQL_CACHE_SYMBOL)) || LA33_0 == SQL_NO_CACHE_SYMBOL || LA33_0 == SQL_THREAD_SYMBOL || ((LA33_0 >= STARTS_SYMBOL) && (LA33_0 <= STATUS_SYMBOL)) || ((LA33_0 >= STOP_SYMBOL) && (LA33_0 <= STORAGE_SYMBOL)) || ((LA33_0 >= STRING_SYMBOL) && (LA33_0 <= SUBPARTITION_SYMBOL)) || ((LA33_0 >= SUPER_SYMBOL) && (LA33_0 <= SWITCHES_SYMBOL)) || ((LA33_0 >= TABLESPACE_SYMBOL) && (LA33_0 <= TABLE_NAME_SYMBOL)) || ((LA33_0 >= TEMPORARY_SYMBOL) && (LA33_0 <= TEMPTABLE_SYMBOL)) || ((LA33_0 >= TEXT_SYMBOL) && (LA33_0 <= THAN_SYMBOL)) || ((LA33_0 >= TIMESTAMP_ADD_SYMBOL) && (LA33_0 <= TIME_SYMBOL)) || ((LA33_0 >= TRANSACTION_SYMBOL) && (LA33_0 <= TRIGGERS_SYMBOL)) || ((LA33_0 >= TRUNCATE_SYMBOL) && (LA33_0 <= UDF_RETURNS_SYMBOL)) || ((LA33_0 >= UNCOMMITTED_SYMBOL) && (LA33_0 <= UNDEFINED_SYMBOL)) || ((LA33_0 >= UNDOFILE_SYMBOL) && (LA33_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA33_0 >= UNICODE_SYMBOL) && (LA33_0 <= UNINSTALL_SYMBOL)) || LA33_0 == UNKNOWN_SYMBOL || LA33_0 == UNTIL_SYMBOL || LA33_0 == UPGRADE_SYMBOL || ((LA33_0 >= USER_RESOURCES_SYMBOL) && (LA33_0 <= USE_FRM_SYMBOL)) || LA33_0 == VALUE_SYMBOL || LA33_0 == VARIABLES_SYMBOL || ((LA33_0 >= VIEW_SYMBOL) && (LA33_0 <= WEIGHT_STRING_SYMBOL)) || ((LA33_0 >= WORK_SYMBOL) && (LA33_0 <= WRAPPER_SYMBOL)) || LA33_0 == X509_SYMBOL || ((LA33_0 >= XA_SYMBOL) && (LA33_0 <= XML_SYMBOL)) || LA33_0 == YEAR_SYMBOL))
        	                {
        	                    alt33=1;
        	                }
        	                else if ( (LA33_0 == OPEN_PAR_SYMBOL))
        	                {
        	                    alt33=2;
        	                }
        	                else
        	                {
        	                    if (BACKTRACKING>0)
        	                    {
        	                        FAILEDFLAG = ANTLR3_TRUE;
        	                        return retval;
        	                    }


        	                    CONSTRUCTEX();
        	                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    EXCEPTION->message      = (void *)"";
        	                    EXCEPTION->decisionNum  = 33;
        	                    EXCEPTION->state        = 0;


        	                    goto rulealter_table_list_itemEx;

        	                }
        	            }
        	            switch (alt33)
        	            {
        	        	case 1:
        	        	    // MySQL.g:329:4: identifier column_definition ( FIRST_SYMBOL | AFTER_SYMBOL identifier )?
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_identifier_in_alter_table_list_item741);
        	        	        identifier114=identifier(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier114.tree);

        	        	        FOLLOWPUSH(FOLLOW_column_definition_in_alter_table_list_item743);
        	        	        column_definition115=column_definition(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, column_definition115.tree);

        	        	        // MySQL.g:329:33: ( FIRST_SYMBOL | AFTER_SYMBOL identifier )?
        	        	        {
        	        	            int alt31=3;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case FIRST_SYMBOL:
        	        	                	{
        	        	                		alt31=1;
        	        	                	}
        	        	                    break;
        	        	                case AFTER_SYMBOL:
        	        	                	{
        	        	                		alt31=2;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt31)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:329:34: FIRST_SYMBOL
        	        	        	    {
        	        	        	        FIRST_SYMBOL116 = (pANTLR3_COMMON_TOKEN) MATCHT(FIRST_SYMBOL, &FOLLOW_FIRST_SYMBOL_in_alter_table_list_item746);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulealter_table_list_itemEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        FIRST_SYMBOL116_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FIRST_SYMBOL116));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, FIRST_SYMBOL116_tree);
        	        	        	        }

        	        	        	    }
        	        	        	    break;
        	        	        	case 2:
        	        	        	    // MySQL.g:329:49: AFTER_SYMBOL identifier
        	        	        	    {
        	        	        	        AFTER_SYMBOL117 = (pANTLR3_COMMON_TOKEN) MATCHT(AFTER_SYMBOL, &FOLLOW_AFTER_SYMBOL_in_alter_table_list_item750);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulealter_table_list_itemEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        AFTER_SYMBOL117_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AFTER_SYMBOL117));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, AFTER_SYMBOL117_tree);
        	        	        	        }

        	        	        	        FOLLOWPUSH(FOLLOW_identifier_in_alter_table_list_item752);
        	        	        	        identifier118=identifier(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulealter_table_list_itemEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier118.tree);

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:330:6: OPEN_PAR_SYMBOL identifier column_definition ( COMMA_SYMBOL identifier column_definition )* CLOSE_PAR_SYMBOL
        	        	    {
        	        	        OPEN_PAR_SYMBOL119 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_alter_table_list_item761);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        OPEN_PAR_SYMBOL119_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL119));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL119_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_identifier_in_alter_table_list_item763);
        	        	        identifier120=identifier(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier120.tree);

        	        	        FOLLOWPUSH(FOLLOW_column_definition_in_alter_table_list_item765);
        	        	        column_definition121=column_definition(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, column_definition121.tree);

        	        	        // MySQL.g:330:51: ( COMMA_SYMBOL identifier column_definition )*

        	        	        for (;;)
        	        	        {
        	        	            int alt32=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	            case COMMA_SYMBOL:
        	        	            	{
        	        	            		alt32=1;
        	        	            	}
        	        	                break;

        	        	            }

        	        	            switch (alt32)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:330:52: COMMA_SYMBOL identifier column_definition
        	        	        	    {
        	        	        	        COMMA_SYMBOL122 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_alter_table_list_item768);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulealter_table_list_itemEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        COMMA_SYMBOL122_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL122));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL122_tree);
        	        	        	        }

        	        	        	        FOLLOWPUSH(FOLLOW_identifier_in_alter_table_list_item770);
        	        	        	        identifier123=identifier(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulealter_table_list_itemEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier123.tree);

        	        	        	        FOLLOWPUSH(FOLLOW_column_definition_in_alter_table_list_item772);
        	        	        	        column_definition124=column_definition(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulealter_table_list_itemEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, column_definition124.tree);

        	        	        	    }
        	        	        	    break;

        	        	        	default:
        	        	        	    goto loop32;	/* break out of the loop */
        	        	        	    break;
        	        	            }
        	        	        }
        	        	        loop32: ; /* Jump out to here if this rule does not match */


        	        	        CLOSE_PAR_SYMBOL125 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_alter_table_list_item776);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        CLOSE_PAR_SYMBOL125_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL125));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL125_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:332:4: ADD_SYMBOL ( INDEX_SYMBOL | KEY_SYMBOL ) ( identifier )? ( index_type )? index_columns ( index_option )*
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ADD_SYMBOL126 = (pANTLR3_COMMON_TOKEN) MATCHT(ADD_SYMBOL, &FOLLOW_ADD_SYMBOL_in_alter_table_list_item785);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ADD_SYMBOL126_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ADD_SYMBOL126));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ADD_SYMBOL126_tree);
        	        }

        	        set127=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == INDEX_SYMBOL || LA(1) == KEY_SYMBOL )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set127))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	            CONSTRUCTEX();
        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
        	            EXCEPTION->expectingSet = NULL;

        	            goto rulealter_table_list_itemEx;
        	        }


        	        // MySQL.g:332:43: ( identifier )?
        	        {
        	            int alt34=2;
        	            {
        	                int LA34_0 = LA(1);
        	                if ( (LA34_0 == BACK_TICK_QUOTED_ID || LA34_0 == IDENTIFIER))
        	                {
        	                    alt34=1;
        	                }
        	                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA34_0 == DOUBLE_QUOTED_TEXT))
        	                {
        	                    alt34=1;
        	                }
        	                else if ( (LA34_0 == TYPE_SYMBOL))
        	                {
        	                    switch ( LA(2) )
        	                    {
        	                        case OPEN_PAR_SYMBOL:
        	                        case TYPE_SYMBOL:
        	                        case USING_SYMBOL:
        	                        	{
        	                        		alt34=1;
        	                        	}
        	                            break;
        	                    }

        	                }
        	                else if ( (((LA34_0 >= ACTION_SYMBOL) && (LA34_0 <= ADDDATE_SYMBOL)) || ((LA34_0 >= AFTER_SYMBOL) && (LA34_0 <= ALGORITHM_SYMBOL)) || LA34_0 == ANALYZE_SYMBOL || ((LA34_0 >= ANY_SYMBOL) && (LA34_0 <= ASCII_SYMBOL)) || ((LA34_0 >= AT_SYMBOL) && (LA34_0 <= BACKUP_SYMBOL)) || LA34_0 == BEGIN_SYMBOL || LA34_0 == BINLOG_SYMBOL || LA34_0 == BIT_SYMBOL || ((LA34_0 >= BLOCK_SYMBOL) && (LA34_0 <= BOOL_SYMBOL)) || ((LA34_0 >= BTREE_SYMBOL) && (LA34_0 <= BYTE_SYMBOL)) || LA34_0 == CACHE_SYMBOL || LA34_0 == CASCADED_SYMBOL || ((LA34_0 >= CATALOG_NAME_SYMBOL) && (LA34_0 <= CHANGED_SYMBOL)) || LA34_0 == CHARSET_SYMBOL || LA34_0 == CHECKSUM_SYMBOL || ((LA34_0 >= CIPHER_SYMBOL) && (LA34_0 <= CLIENT_SYMBOL)) || ((LA34_0 >= CLOSE_SYMBOL) && (LA34_0 <= CODE_SYMBOL)) || LA34_0 == COLLATION_SYMBOL || ((LA34_0 >= COLUMNS_SYMBOL) && (LA34_0 <= COLUMN_NAME_SYMBOL)) || ((LA34_0 >= COMMENT_SYMBOL) && (LA34_0 <= COMPRESSED_SYMBOL)) || LA34_0 == CONCURRENT_SYMBOL || ((LA34_0 >= CONNECTION_SYMBOL) && (LA34_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA34_0 >= CONTAINS_SYMBOL) && (LA34_0 <= CONTEXT_SYMBOL)) || LA34_0 == CONTRIBUTORS_SYMBOL || LA34_0 == CPU_SYMBOL || LA34_0 == CUBE_SYMBOL || LA34_0 == CURRENT_SYMBOL || LA34_0 == CURSOR_NAME_SYMBOL || ((LA34_0 >= DATAFILE_SYMBOL) && (LA34_0 <= DATETIME_SYMBOL)) || LA34_0 == DATE_SYMBOL || ((LA34_0 >= DAY_SYMBOL) && (LA34_0 <= DEALLOCATE_SYMBOL)) || LA34_0 == DEFAULT_AUTH_SYMBOL || LA34_0 == DEFINER_SYMBOL || LA34_0 == DELAY_KEY_WRITE_SYMBOL || LA34_0 == DES_KEY_FILE_SYMBOL || LA34_0 == DIAGNOSTICS_SYMBOL || ((LA34_0 >= DIRECTORY_SYMBOL) && (LA34_0 <= DISK_SYMBOL)) || LA34_0 == DO_SYMBOL || ((LA34_0 >= DUMPFILE_SYMBOL) && (LA34_0 <= DYNAMIC_SYMBOL)) || LA34_0 == ENABLE_SYMBOL || LA34_0 == ENDS_SYMBOL || ((LA34_0 >= END_SYMBOL) && (LA34_0 <= ENUM_SYMBOL)) || ((LA34_0 >= ERRORS_SYMBOL) && (LA34_0 <= ERROR_SYMBOL)) || ((LA34_0 >= ESCAPE_SYMBOL) && (LA34_0 <= EVERY_SYMBOL)) || LA34_0 == EXECUTE_SYMBOL || LA34_0 == EXPANSION_SYMBOL || LA34_0 == EXPORT_SYMBOL || ((LA34_0 >= EXTENDED_SYMBOL) && (LA34_0 <= EXTENT_SIZE_SYMBOL)) || ((LA34_0 >= FAST_SYMBOL) && (LA34_0 <= FAULTS_SYMBOL)) || ((LA34_0 >= FILE_SYMBOL) && (LA34_0 <= FIXED_SYMBOL)) || LA34_0 == FLUSH_SYMBOL || LA34_0 == FORMAT_SYMBOL || LA34_0 == FOUND_SYMBOL || LA34_0 == FULL_SYMBOL || ((LA34_0 >= FUNCTION_SYMBOL) && (LA34_0 <= GET_FORMAT_SYMBOL)) || ((LA34_0 >= GLOBAL_SYMBOL) && (LA34_0 <= GRANTS_SYMBOL)) || ((LA34_0 >= HANDLER_SYMBOL) && (LA34_0 <= HASH_SYMBOL)) || LA34_0 == HELP_SYMBOL || ((LA34_0 >= HOSTS_SYMBOL) && (LA34_0 <= HOST_SYMBOL)) || ((LA34_0 >= HOUR_SYMBOL) && (LA34_0 <= IDENTIFIED_SYMBOL)) || LA34_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA34_0 >= IMPORT_SYMBOL) && (LA34_0 <= INDEXES_SYMBOL)) || LA34_0 == INITIAL_SIZE_SYMBOL || LA34_0 == INNODB_SYMBOL || LA34_0 == INSERT_METHOD_SYMBOL || LA34_0 == INSTALL_SYMBOL || LA34_0 == INVOKER_SYMBOL || LA34_0 == IO_SYMBOL || ((LA34_0 >= IPC_SYMBOL) && (LA34_0 <= ISSUER_SYMBOL)) || LA34_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA34_0 >= LANGUAGE_SYMBOL) && (LA34_0 <= LAST_SYMBOL)) || LA34_0 == LEAVES_SYMBOL || LA34_0 == LESS_SYMBOL || LA34_0 == LEVEL_SYMBOL || LA34_0 == LINESTRING_SYMBOL || LA34_0 == LIST_SYMBOL || LA34_0 == LOCAL_SYMBOL || LA34_0 == LOCKS_SYMBOL || LA34_0 == LOGFILE_SYMBOL || LA34_0 == LOGS_SYMBOL || LA34_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA34_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA34_0 <= MASTER_SSL_SYMBOL)) || ((LA34_0 >= MASTER_SYMBOL) && (LA34_0 <= MASTER_USER_SYMBOL)) || ((LA34_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA34_0 <= MAX_SIZE_SYMBOL)) || ((LA34_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA34_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA34_0 >= MEDIUM_SYMBOL) && (LA34_0 <= MICROSECOND_SYMBOL)) || LA34_0 == MIGRATE_SYMBOL || ((LA34_0 >= MINUTE_SYMBOL) && (LA34_0 <= MIN_ROWS_SYMBOL)) || LA34_0 == MODE_SYMBOL || LA34_0 == MODIFY_SYMBOL || ((LA34_0 >= MONTH_SYMBOL) && (LA34_0 <= MULTILINESTRING_SYMBOL)) || ((LA34_0 >= MULTIPOINT_SYMBOL) && (LA34_0 <= MULTIPOLYGON_SYMBOL)) || ((LA34_0 >= MUTEX_SYMBOL) && (LA34_0 <= NATIONAL_SYMBOL)) || LA34_0 == NCHAR_SYMBOL || LA34_0 == NDBCLUSTER_SYMBOL || ((LA34_0 >= NEW_SYMBOL) && (LA34_0 <= NONE_SYMBOL)) || ((LA34_0 >= NO_SYMBOL) && (LA34_0 <= NO_WAIT_SYMBOL)) || LA34_0 == NUMBER_SYMBOL || LA34_0 == NVARCHAR_SYMBOL || ((LA34_0 >= OFFSET_SYMBOL) && (LA34_0 <= ONE_SYMBOL)) || LA34_0 == OPEN_SYMBOL || LA34_0 == OPTIONS_SYMBOL || ((LA34_0 >= OWNER_SYMBOL) && (LA34_0 <= PAGE_SYMBOL)) || ((LA34_0 >= PARSER_SYMBOL) && (LA34_0 <= PARTITION_SYMBOL)) || ((LA34_0 >= PASSWORD_SYMBOL) && (LA34_0 <= PLUGIN_SYMBOL)) || ((LA34_0 >= POINT_SYMBOL) && (LA34_0 <= PORT_SYMBOL)) || ((LA34_0 >= PREPARE_SYMBOL) && (LA34_0 <= PREV_SYMBOL)) || LA34_0 == PRIVILEGES_SYMBOL || ((LA34_0 >= PROCESSLIST_SYMBOL) && (LA34_0 <= PROXY_SYMBOL)) || ((LA34_0 >= QUARTER_SYMBOL) && (LA34_0 <= QUICK_SYMBOL)) || LA34_0 == READ_ONLY_SYMBOL || ((LA34_0 >= REBUILD_SYMBOL) && (LA34_0 <= REDUNDANT_SYMBOL)) || ((LA34_0 >= RELAYLOG_SYMBOL) && (LA34_0 <= RELAY_THREAD_SYMBOL)) || ((LA34_0 >= RELOAD_SYMBOL) && (LA34_0 <= REMOVE_SYMBOL)) || ((LA34_0 >= REORGANIZE_SYMBOL) && (LA34_0 <= REPEATABLE_SYMBOL)) || LA34_0 == REPLICATION_SYMBOL || LA34_0 == RESET_SYMBOL || LA34_0 == RESTORE_SYMBOL || ((LA34_0 >= RESUME_SYMBOL) && (LA34_0 <= RETURNS_SYMBOL)) || LA34_0 == REVERSE_SYMBOL || ((LA34_0 >= ROLLBACK_SYMBOL) && (LA34_0 <= SCHEDULE_SYMBOL)) || LA34_0 == SCHEMA_NAME_SYMBOL || ((LA34_0 >= SECOND_SYMBOL) && (LA34_0 <= SECURITY_SYMBOL)) || ((LA34_0 >= SERIALIZABLE_SYMBOL) && (LA34_0 <= SERIAL_SYMBOL)) || ((LA34_0 >= SERVER_SYMBOL) && (LA34_0 <= SESSION_SYMBOL)) || LA34_0 == SHARE_SYMBOL || LA34_0 == SHUTDOWN_SYMBOL || ((LA34_0 >= SIGNED_SYMBOL) && (LA34_0 <= SIMPLE_SYMBOL)) || ((LA34_0 >= SLAVE_SYMBOL) && (LA34_0 <= SLOW_SYMBOL)) || ((LA34_0 >= SNAPSHOT_SYMBOL) && (LA34_0 <= SOURCE_SYMBOL)) || ((LA34_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA34_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA34_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA34_0 <= SQL_CACHE_SYMBOL)) || LA34_0 == SQL_NO_CACHE_SYMBOL || LA34_0 == SQL_THREAD_SYMBOL || ((LA34_0 >= STARTS_SYMBOL) && (LA34_0 <= STATUS_SYMBOL)) || ((LA34_0 >= STOP_SYMBOL) && (LA34_0 <= STORAGE_SYMBOL)) || ((LA34_0 >= STRING_SYMBOL) && (LA34_0 <= SUBPARTITION_SYMBOL)) || ((LA34_0 >= SUPER_SYMBOL) && (LA34_0 <= SWITCHES_SYMBOL)) || ((LA34_0 >= TABLESPACE_SYMBOL) && (LA34_0 <= TABLE_NAME_SYMBOL)) || ((LA34_0 >= TEMPORARY_SYMBOL) && (LA34_0 <= TEMPTABLE_SYMBOL)) || ((LA34_0 >= TEXT_SYMBOL) && (LA34_0 <= THAN_SYMBOL)) || ((LA34_0 >= TIMESTAMP_ADD_SYMBOL) && (LA34_0 <= TIME_SYMBOL)) || ((LA34_0 >= TRANSACTION_SYMBOL) && (LA34_0 <= TRIGGERS_SYMBOL)) || ((LA34_0 >= TRUNCATE_SYMBOL) && (LA34_0 <= TYPES_SYMBOL)) || LA34_0 == UDF_RETURNS_SYMBOL || ((LA34_0 >= UNCOMMITTED_SYMBOL) && (LA34_0 <= UNDEFINED_SYMBOL)) || ((LA34_0 >= UNDOFILE_SYMBOL) && (LA34_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA34_0 >= UNICODE_SYMBOL) && (LA34_0 <= UNINSTALL_SYMBOL)) || LA34_0 == UNKNOWN_SYMBOL || LA34_0 == UNTIL_SYMBOL || LA34_0 == UPGRADE_SYMBOL || ((LA34_0 >= USER_RESOURCES_SYMBOL) && (LA34_0 <= USE_FRM_SYMBOL)) || LA34_0 == VALUE_SYMBOL || LA34_0 == VARIABLES_SYMBOL || ((LA34_0 >= VIEW_SYMBOL) && (LA34_0 <= WEIGHT_STRING_SYMBOL)) || ((LA34_0 >= WORK_SYMBOL) && (LA34_0 <= WRAPPER_SYMBOL)) || LA34_0 == X509_SYMBOL || ((LA34_0 >= XA_SYMBOL) && (LA34_0 <= XML_SYMBOL)) || LA34_0 == YEAR_SYMBOL))
        	                {
        	                    alt34=1;
        	                }
        	            }
        	            switch (alt34)
        	            {
        	        	case 1:
        	        	    // MySQL.g:332:43: identifier
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_identifier_in_alter_table_list_item795);
        	        	        identifier128=identifier(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier128.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:332:55: ( index_type )?
        	        {
        	            int alt35=2;
        	            switch ( LA(1) )
        	            {
        	                case TYPE_SYMBOL:
        	                case USING_SYMBOL:
        	                	{
        	                		alt35=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt35)
        	            {
        	        	case 1:
        	        	    // MySQL.g:332:55: index_type
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_index_type_in_alter_table_list_item798);
        	        	        index_type129=index_type(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_type129.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_index_columns_in_alter_table_list_item801);
        	        index_columns130=index_columns(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_columns130.tree);

        	        // MySQL.g:332:81: ( index_option )*

        	        for (;;)
        	        {
        	            int alt36=2;
        	            {
        	               /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
        	                */
        	                int LA36_0 = LA(1);
        	                if ( (LA36_0 == KEY_BLOCK_SIZE_SYMBOL || LA36_0 == TYPE_SYMBOL || LA36_0 == USING_SYMBOL || LA36_0 == WITH_SYMBOL))
        	                {
        	                    alt36=1;
        	                }
        	                else if ( ((SERVER_VERSION >= 50600)) && (LA36_0 == COMMENT_SYMBOL))
        	                {
        	                    alt36=1;
        	                }

        	            }
        	            switch (alt36)
        	            {
        	        	case 1:
        	        	    // MySQL.g:332:81: index_option
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_index_option_in_alter_table_list_item803);
        	        	        index_option131=index_option(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_option131.tree);

        	        	    }
        	        	    break;

        	        	default:
        	        	    goto loop36;	/* break out of the loop */
        	        	    break;
        	            }
        	        }
        	        loop36: ; /* Jump out to here if this rule does not match */


        	    }
        	    break;
        	case 4:
        	    // MySQL.g:333:4: ADD_SYMBOL ( CONSTRAINT_SYMBOL ( identifier )? )? ( PRIMARY_SYMBOL KEY_SYMBOL ( index_type )? index_columns ( index_option )* | UNIQUE_SYMBOL ( INDEX_SYMBOL | KEY_SYMBOL )? ( identifier )? ( index_type )? index_columns ( index_option )* | FOREIGN_SYMBOL KEY_SYMBOL ( identifier )? index_columns reference_definition )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ADD_SYMBOL132 = (pANTLR3_COMMON_TOKEN) MATCHT(ADD_SYMBOL, &FOLLOW_ADD_SYMBOL_in_alter_table_list_item809);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ADD_SYMBOL132_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ADD_SYMBOL132));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ADD_SYMBOL132_tree);
        	        }

        	        // MySQL.g:333:15: ( CONSTRAINT_SYMBOL ( identifier )? )?
        	        {
        	            int alt38=2;
        	            switch ( LA(1) )
        	            {
        	                case CONSTRAINT_SYMBOL:
        	                	{
        	                		alt38=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt38)
        	            {
        	        	case 1:
        	        	    // MySQL.g:333:16: CONSTRAINT_SYMBOL ( identifier )?
        	        	    {
        	        	        CONSTRAINT_SYMBOL133 = (pANTLR3_COMMON_TOKEN) MATCHT(CONSTRAINT_SYMBOL, &FOLLOW_CONSTRAINT_SYMBOL_in_alter_table_list_item812);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        CONSTRAINT_SYMBOL133_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CONSTRAINT_SYMBOL133));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, CONSTRAINT_SYMBOL133_tree);
        	        	        }

        	        	        // MySQL.g:333:34: ( identifier )?
        	        	        {
        	        	            int alt37=2;
        	        	            {
        	        	                int LA37_0 = LA(1);
        	        	                if ( (LA37_0 == BACK_TICK_QUOTED_ID || LA37_0 == IDENTIFIER))
        	        	                {
        	        	                    alt37=1;
        	        	                }
        	        	                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA37_0 == DOUBLE_QUOTED_TEXT))
        	        	                {
        	        	                    alt37=1;
        	        	                }
        	        	                else if ( (((LA37_0 >= ACTION_SYMBOL) && (LA37_0 <= ADDDATE_SYMBOL)) || ((LA37_0 >= AFTER_SYMBOL) && (LA37_0 <= ALGORITHM_SYMBOL)) || LA37_0 == ANALYZE_SYMBOL || ((LA37_0 >= ANY_SYMBOL) && (LA37_0 <= ASCII_SYMBOL)) || ((LA37_0 >= AT_SYMBOL) && (LA37_0 <= BACKUP_SYMBOL)) || LA37_0 == BEGIN_SYMBOL || LA37_0 == BINLOG_SYMBOL || LA37_0 == BIT_SYMBOL || ((LA37_0 >= BLOCK_SYMBOL) && (LA37_0 <= BOOL_SYMBOL)) || ((LA37_0 >= BTREE_SYMBOL) && (LA37_0 <= BYTE_SYMBOL)) || LA37_0 == CACHE_SYMBOL || LA37_0 == CASCADED_SYMBOL || ((LA37_0 >= CATALOG_NAME_SYMBOL) && (LA37_0 <= CHANGED_SYMBOL)) || LA37_0 == CHARSET_SYMBOL || LA37_0 == CHECKSUM_SYMBOL || ((LA37_0 >= CIPHER_SYMBOL) && (LA37_0 <= CLIENT_SYMBOL)) || ((LA37_0 >= CLOSE_SYMBOL) && (LA37_0 <= CODE_SYMBOL)) || LA37_0 == COLLATION_SYMBOL || ((LA37_0 >= COLUMNS_SYMBOL) && (LA37_0 <= COLUMN_NAME_SYMBOL)) || ((LA37_0 >= COMMENT_SYMBOL) && (LA37_0 <= COMPRESSED_SYMBOL)) || LA37_0 == CONCURRENT_SYMBOL || ((LA37_0 >= CONNECTION_SYMBOL) && (LA37_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA37_0 >= CONTAINS_SYMBOL) && (LA37_0 <= CONTEXT_SYMBOL)) || LA37_0 == CONTRIBUTORS_SYMBOL || LA37_0 == CPU_SYMBOL || LA37_0 == CUBE_SYMBOL || LA37_0 == CURRENT_SYMBOL || LA37_0 == CURSOR_NAME_SYMBOL || ((LA37_0 >= DATAFILE_SYMBOL) && (LA37_0 <= DATETIME_SYMBOL)) || LA37_0 == DATE_SYMBOL || ((LA37_0 >= DAY_SYMBOL) && (LA37_0 <= DEALLOCATE_SYMBOL)) || LA37_0 == DEFAULT_AUTH_SYMBOL || LA37_0 == DEFINER_SYMBOL || LA37_0 == DELAY_KEY_WRITE_SYMBOL || LA37_0 == DES_KEY_FILE_SYMBOL || LA37_0 == DIAGNOSTICS_SYMBOL || ((LA37_0 >= DIRECTORY_SYMBOL) && (LA37_0 <= DISK_SYMBOL)) || LA37_0 == DO_SYMBOL || ((LA37_0 >= DUMPFILE_SYMBOL) && (LA37_0 <= DYNAMIC_SYMBOL)) || LA37_0 == ENABLE_SYMBOL || LA37_0 == ENDS_SYMBOL || ((LA37_0 >= END_SYMBOL) && (LA37_0 <= ENUM_SYMBOL)) || ((LA37_0 >= ERRORS_SYMBOL) && (LA37_0 <= ERROR_SYMBOL)) || ((LA37_0 >= ESCAPE_SYMBOL) && (LA37_0 <= EVERY_SYMBOL)) || LA37_0 == EXECUTE_SYMBOL || LA37_0 == EXPANSION_SYMBOL || LA37_0 == EXPORT_SYMBOL || ((LA37_0 >= EXTENDED_SYMBOL) && (LA37_0 <= EXTENT_SIZE_SYMBOL)) || ((LA37_0 >= FAST_SYMBOL) && (LA37_0 <= FAULTS_SYMBOL)) || ((LA37_0 >= FILE_SYMBOL) && (LA37_0 <= FIXED_SYMBOL)) || LA37_0 == FLUSH_SYMBOL || LA37_0 == FORMAT_SYMBOL || LA37_0 == FOUND_SYMBOL || LA37_0 == FULL_SYMBOL || ((LA37_0 >= FUNCTION_SYMBOL) && (LA37_0 <= GET_FORMAT_SYMBOL)) || ((LA37_0 >= GLOBAL_SYMBOL) && (LA37_0 <= GRANTS_SYMBOL)) || ((LA37_0 >= HANDLER_SYMBOL) && (LA37_0 <= HASH_SYMBOL)) || LA37_0 == HELP_SYMBOL || ((LA37_0 >= HOSTS_SYMBOL) && (LA37_0 <= HOST_SYMBOL)) || ((LA37_0 >= HOUR_SYMBOL) && (LA37_0 <= IDENTIFIED_SYMBOL)) || LA37_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA37_0 >= IMPORT_SYMBOL) && (LA37_0 <= INDEXES_SYMBOL)) || LA37_0 == INITIAL_SIZE_SYMBOL || LA37_0 == INNODB_SYMBOL || LA37_0 == INSERT_METHOD_SYMBOL || LA37_0 == INSTALL_SYMBOL || LA37_0 == INVOKER_SYMBOL || LA37_0 == IO_SYMBOL || ((LA37_0 >= IPC_SYMBOL) && (LA37_0 <= ISSUER_SYMBOL)) || LA37_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA37_0 >= LANGUAGE_SYMBOL) && (LA37_0 <= LAST_SYMBOL)) || LA37_0 == LEAVES_SYMBOL || LA37_0 == LESS_SYMBOL || LA37_0 == LEVEL_SYMBOL || LA37_0 == LINESTRING_SYMBOL || LA37_0 == LIST_SYMBOL || LA37_0 == LOCAL_SYMBOL || LA37_0 == LOCKS_SYMBOL || LA37_0 == LOGFILE_SYMBOL || LA37_0 == LOGS_SYMBOL || LA37_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA37_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA37_0 <= MASTER_SSL_SYMBOL)) || ((LA37_0 >= MASTER_SYMBOL) && (LA37_0 <= MASTER_USER_SYMBOL)) || ((LA37_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA37_0 <= MAX_SIZE_SYMBOL)) || ((LA37_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA37_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA37_0 >= MEDIUM_SYMBOL) && (LA37_0 <= MICROSECOND_SYMBOL)) || LA37_0 == MIGRATE_SYMBOL || ((LA37_0 >= MINUTE_SYMBOL) && (LA37_0 <= MIN_ROWS_SYMBOL)) || LA37_0 == MODE_SYMBOL || LA37_0 == MODIFY_SYMBOL || ((LA37_0 >= MONTH_SYMBOL) && (LA37_0 <= MULTILINESTRING_SYMBOL)) || ((LA37_0 >= MULTIPOINT_SYMBOL) && (LA37_0 <= MULTIPOLYGON_SYMBOL)) || ((LA37_0 >= MUTEX_SYMBOL) && (LA37_0 <= NATIONAL_SYMBOL)) || LA37_0 == NCHAR_SYMBOL || LA37_0 == NDBCLUSTER_SYMBOL || ((LA37_0 >= NEW_SYMBOL) && (LA37_0 <= NONE_SYMBOL)) || ((LA37_0 >= NO_SYMBOL) && (LA37_0 <= NO_WAIT_SYMBOL)) || LA37_0 == NUMBER_SYMBOL || LA37_0 == NVARCHAR_SYMBOL || ((LA37_0 >= OFFSET_SYMBOL) && (LA37_0 <= ONE_SYMBOL)) || LA37_0 == OPEN_SYMBOL || LA37_0 == OPTIONS_SYMBOL || ((LA37_0 >= OWNER_SYMBOL) && (LA37_0 <= PAGE_SYMBOL)) || ((LA37_0 >= PARSER_SYMBOL) && (LA37_0 <= PARTITION_SYMBOL)) || ((LA37_0 >= PASSWORD_SYMBOL) && (LA37_0 <= PLUGIN_SYMBOL)) || ((LA37_0 >= POINT_SYMBOL) && (LA37_0 <= PORT_SYMBOL)) || ((LA37_0 >= PREPARE_SYMBOL) && (LA37_0 <= PREV_SYMBOL)) || LA37_0 == PRIVILEGES_SYMBOL || ((LA37_0 >= PROCESSLIST_SYMBOL) && (LA37_0 <= PROXY_SYMBOL)) || ((LA37_0 >= QUARTER_SYMBOL) && (LA37_0 <= QUICK_SYMBOL)) || LA37_0 == READ_ONLY_SYMBOL || ((LA37_0 >= REBUILD_SYMBOL) && (LA37_0 <= REDUNDANT_SYMBOL)) || ((LA37_0 >= RELAYLOG_SYMBOL) && (LA37_0 <= RELAY_THREAD_SYMBOL)) || ((LA37_0 >= RELOAD_SYMBOL) && (LA37_0 <= REMOVE_SYMBOL)) || ((LA37_0 >= REORGANIZE_SYMBOL) && (LA37_0 <= REPEATABLE_SYMBOL)) || LA37_0 == REPLICATION_SYMBOL || LA37_0 == RESET_SYMBOL || LA37_0 == RESTORE_SYMBOL || ((LA37_0 >= RESUME_SYMBOL) && (LA37_0 <= RETURNS_SYMBOL)) || LA37_0 == REVERSE_SYMBOL || ((LA37_0 >= ROLLBACK_SYMBOL) && (LA37_0 <= SCHEDULE_SYMBOL)) || LA37_0 == SCHEMA_NAME_SYMBOL || ((LA37_0 >= SECOND_SYMBOL) && (LA37_0 <= SECURITY_SYMBOL)) || ((LA37_0 >= SERIALIZABLE_SYMBOL) && (LA37_0 <= SERIAL_SYMBOL)) || ((LA37_0 >= SERVER_SYMBOL) && (LA37_0 <= SESSION_SYMBOL)) || LA37_0 == SHARE_SYMBOL || LA37_0 == SHUTDOWN_SYMBOL || ((LA37_0 >= SIGNED_SYMBOL) && (LA37_0 <= SIMPLE_SYMBOL)) || ((LA37_0 >= SLAVE_SYMBOL) && (LA37_0 <= SLOW_SYMBOL)) || ((LA37_0 >= SNAPSHOT_SYMBOL) && (LA37_0 <= SOURCE_SYMBOL)) || ((LA37_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA37_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA37_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA37_0 <= SQL_CACHE_SYMBOL)) || LA37_0 == SQL_NO_CACHE_SYMBOL || LA37_0 == SQL_THREAD_SYMBOL || ((LA37_0 >= STARTS_SYMBOL) && (LA37_0 <= STATUS_SYMBOL)) || ((LA37_0 >= STOP_SYMBOL) && (LA37_0 <= STORAGE_SYMBOL)) || ((LA37_0 >= STRING_SYMBOL) && (LA37_0 <= SUBPARTITION_SYMBOL)) || ((LA37_0 >= SUPER_SYMBOL) && (LA37_0 <= SWITCHES_SYMBOL)) || ((LA37_0 >= TABLESPACE_SYMBOL) && (LA37_0 <= TABLE_NAME_SYMBOL)) || ((LA37_0 >= TEMPORARY_SYMBOL) && (LA37_0 <= TEMPTABLE_SYMBOL)) || ((LA37_0 >= TEXT_SYMBOL) && (LA37_0 <= THAN_SYMBOL)) || ((LA37_0 >= TIMESTAMP_ADD_SYMBOL) && (LA37_0 <= TIME_SYMBOL)) || ((LA37_0 >= TRANSACTION_SYMBOL) && (LA37_0 <= TRIGGERS_SYMBOL)) || ((LA37_0 >= TRUNCATE_SYMBOL) && (LA37_0 <= UDF_RETURNS_SYMBOL)) || ((LA37_0 >= UNCOMMITTED_SYMBOL) && (LA37_0 <= UNDEFINED_SYMBOL)) || ((LA37_0 >= UNDOFILE_SYMBOL) && (LA37_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA37_0 >= UNICODE_SYMBOL) && (LA37_0 <= UNINSTALL_SYMBOL)) || LA37_0 == UNKNOWN_SYMBOL || LA37_0 == UNTIL_SYMBOL || LA37_0 == UPGRADE_SYMBOL || ((LA37_0 >= USER_RESOURCES_SYMBOL) && (LA37_0 <= USE_FRM_SYMBOL)) || LA37_0 == VALUE_SYMBOL || LA37_0 == VARIABLES_SYMBOL || ((LA37_0 >= VIEW_SYMBOL) && (LA37_0 <= WEIGHT_STRING_SYMBOL)) || ((LA37_0 >= WORK_SYMBOL) && (LA37_0 <= WRAPPER_SYMBOL)) || LA37_0 == X509_SYMBOL || ((LA37_0 >= XA_SYMBOL) && (LA37_0 <= XML_SYMBOL)) || LA37_0 == YEAR_SYMBOL))
        	        	                {
        	        	                    alt37=1;
        	        	                }
        	        	            }
        	        	            switch (alt37)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:333:34: identifier
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_identifier_in_alter_table_list_item814);
        	        	        	        identifier134=identifier(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulealter_table_list_itemEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier134.tree);

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:334:3: ( PRIMARY_SYMBOL KEY_SYMBOL ( index_type )? index_columns ( index_option )* | UNIQUE_SYMBOL ( INDEX_SYMBOL | KEY_SYMBOL )? ( identifier )? ( index_type )? index_columns ( index_option )* | FOREIGN_SYMBOL KEY_SYMBOL ( identifier )? index_columns reference_definition )
        	        {
        	            int alt46=3;
        	            switch ( LA(1) )
        	            {
        	            case PRIMARY_SYMBOL:
        	            	{
        	            		alt46=1;
        	            	}
        	                break;
        	            case UNIQUE_SYMBOL:
        	            	{
        	            		alt46=2;
        	            	}
        	                break;
        	            case FOREIGN_SYMBOL:
        	            	{
        	            		alt46=3;
        	            	}
        	                break;

        	            default:
        	                if (BACKTRACKING>0)
        	                {
        	                    FAILEDFLAG = ANTLR3_TRUE;
        	                    return retval;
        	                }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                EXCEPTION->message      = (void *)"";
        	                EXCEPTION->decisionNum  = 46;
        	                EXCEPTION->state        = 0;


        	                goto rulealter_table_list_itemEx;

        	            }

        	            switch (alt46)
        	            {
        	        	case 1:
        	        	    // MySQL.g:335:4: PRIMARY_SYMBOL KEY_SYMBOL ( index_type )? index_columns ( index_option )*
        	        	    {
        	        	        PRIMARY_SYMBOL135 = (pANTLR3_COMMON_TOKEN) MATCHT(PRIMARY_SYMBOL, &FOLLOW_PRIMARY_SYMBOL_in_alter_table_list_item826);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        PRIMARY_SYMBOL135_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PRIMARY_SYMBOL135));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, PRIMARY_SYMBOL135_tree);
        	        	        }

        	        	        KEY_SYMBOL136 = (pANTLR3_COMMON_TOKEN) MATCHT(KEY_SYMBOL, &FOLLOW_KEY_SYMBOL_in_alter_table_list_item828);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        KEY_SYMBOL136_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, KEY_SYMBOL136));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, KEY_SYMBOL136_tree);
        	        	        }

        	        	        // MySQL.g:335:30: ( index_type )?
        	        	        {
        	        	            int alt39=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case TYPE_SYMBOL:
        	        	                case USING_SYMBOL:
        	        	                	{
        	        	                		alt39=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt39)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:335:30: index_type
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_index_type_in_alter_table_list_item830);
        	        	        	        index_type137=index_type(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulealter_table_list_itemEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_type137.tree);

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_index_columns_in_alter_table_list_item833);
        	        	        index_columns138=index_columns(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_columns138.tree);

        	        	        // MySQL.g:335:56: ( index_option )*

        	        	        for (;;)
        	        	        {
        	        	            int alt40=2;
        	        	            {
        	        	               /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
        	        	                */
        	        	                int LA40_0 = LA(1);
        	        	                if ( (LA40_0 == KEY_BLOCK_SIZE_SYMBOL || LA40_0 == TYPE_SYMBOL || LA40_0 == USING_SYMBOL || LA40_0 == WITH_SYMBOL))
        	        	                {
        	        	                    alt40=1;
        	        	                }
        	        	                else if ( ((SERVER_VERSION >= 50600)) && (LA40_0 == COMMENT_SYMBOL))
        	        	                {
        	        	                    alt40=1;
        	        	                }

        	        	            }
        	        	            switch (alt40)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:335:56: index_option
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_index_option_in_alter_table_list_item835);
        	        	        	        index_option139=index_option(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulealter_table_list_itemEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_option139.tree);

        	        	        	    }
        	        	        	    break;

        	        	        	default:
        	        	        	    goto loop40;	/* break out of the loop */
        	        	        	    break;
        	        	            }
        	        	        }
        	        	        loop40: ; /* Jump out to here if this rule does not match */


        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:336:6: UNIQUE_SYMBOL ( INDEX_SYMBOL | KEY_SYMBOL )? ( identifier )? ( index_type )? index_columns ( index_option )*
        	        	    {
        	        	        UNIQUE_SYMBOL140 = (pANTLR3_COMMON_TOKEN) MATCHT(UNIQUE_SYMBOL, &FOLLOW_UNIQUE_SYMBOL_in_alter_table_list_item843);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        UNIQUE_SYMBOL140_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNIQUE_SYMBOL140));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, UNIQUE_SYMBOL140_tree);
        	        	        }

        	        	        // MySQL.g:336:20: ( INDEX_SYMBOL | KEY_SYMBOL )?
        	        	        {
        	        	            int alt41=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case INDEX_SYMBOL:
        	        	                case KEY_SYMBOL:
        	        	                	{
        	        	                		alt41=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt41)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:
        	        	        	    {
        	        	        	        set141=(pANTLR3_COMMON_TOKEN)LT(1);

        	        	        	        if ( LA(1) == INDEX_SYMBOL || LA(1) == KEY_SYMBOL )
        	        	        	        {
        	        	        	            CONSUME();
        	        	        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	        	        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set141))
        	        	        	            );
        	        	        	            PERRORRECOVERY=ANTLR3_FALSE;
        	        	        	            FAILEDFLAG=ANTLR3_FALSE;

        	        	        	        }
        	        	        	        else
        	        	        	        {
        	        	        	            if (BACKTRACKING>0)
        	        	        	            {
        	        	        	                FAILEDFLAG = ANTLR3_TRUE;
        	        	        	                return retval;
        	        	        	            }

        	        	        	            CONSTRUCTEX();
        	        	        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
        	        	        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
        	        	        	            EXCEPTION->expectingSet = NULL;

        	        	        	            goto rulealter_table_list_itemEx;
        	        	        	        }


        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        // MySQL.g:336:49: ( identifier )?
        	        	        {
        	        	            int alt42=2;
        	        	            {
        	        	                int LA42_0 = LA(1);
        	        	                if ( (LA42_0 == BACK_TICK_QUOTED_ID || LA42_0 == IDENTIFIER))
        	        	                {
        	        	                    alt42=1;
        	        	                }
        	        	                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA42_0 == DOUBLE_QUOTED_TEXT))
        	        	                {
        	        	                    alt42=1;
        	        	                }
        	        	                else if ( (LA42_0 == TYPE_SYMBOL))
        	        	                {
        	        	                    switch ( LA(2) )
        	        	                    {
        	        	                        case OPEN_PAR_SYMBOL:
        	        	                        case TYPE_SYMBOL:
        	        	                        case USING_SYMBOL:
        	        	                        	{
        	        	                        		alt42=1;
        	        	                        	}
        	        	                            break;
        	        	                    }

        	        	                }
        	        	                else if ( (((LA42_0 >= ACTION_SYMBOL) && (LA42_0 <= ADDDATE_SYMBOL)) || ((LA42_0 >= AFTER_SYMBOL) && (LA42_0 <= ALGORITHM_SYMBOL)) || LA42_0 == ANALYZE_SYMBOL || ((LA42_0 >= ANY_SYMBOL) && (LA42_0 <= ASCII_SYMBOL)) || ((LA42_0 >= AT_SYMBOL) && (LA42_0 <= BACKUP_SYMBOL)) || LA42_0 == BEGIN_SYMBOL || LA42_0 == BINLOG_SYMBOL || LA42_0 == BIT_SYMBOL || ((LA42_0 >= BLOCK_SYMBOL) && (LA42_0 <= BOOL_SYMBOL)) || ((LA42_0 >= BTREE_SYMBOL) && (LA42_0 <= BYTE_SYMBOL)) || LA42_0 == CACHE_SYMBOL || LA42_0 == CASCADED_SYMBOL || ((LA42_0 >= CATALOG_NAME_SYMBOL) && (LA42_0 <= CHANGED_SYMBOL)) || LA42_0 == CHARSET_SYMBOL || LA42_0 == CHECKSUM_SYMBOL || ((LA42_0 >= CIPHER_SYMBOL) && (LA42_0 <= CLIENT_SYMBOL)) || ((LA42_0 >= CLOSE_SYMBOL) && (LA42_0 <= CODE_SYMBOL)) || LA42_0 == COLLATION_SYMBOL || ((LA42_0 >= COLUMNS_SYMBOL) && (LA42_0 <= COLUMN_NAME_SYMBOL)) || ((LA42_0 >= COMMENT_SYMBOL) && (LA42_0 <= COMPRESSED_SYMBOL)) || LA42_0 == CONCURRENT_SYMBOL || ((LA42_0 >= CONNECTION_SYMBOL) && (LA42_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA42_0 >= CONTAINS_SYMBOL) && (LA42_0 <= CONTEXT_SYMBOL)) || LA42_0 == CONTRIBUTORS_SYMBOL || LA42_0 == CPU_SYMBOL || LA42_0 == CUBE_SYMBOL || LA42_0 == CURRENT_SYMBOL || LA42_0 == CURSOR_NAME_SYMBOL || ((LA42_0 >= DATAFILE_SYMBOL) && (LA42_0 <= DATETIME_SYMBOL)) || LA42_0 == DATE_SYMBOL || ((LA42_0 >= DAY_SYMBOL) && (LA42_0 <= DEALLOCATE_SYMBOL)) || LA42_0 == DEFAULT_AUTH_SYMBOL || LA42_0 == DEFINER_SYMBOL || LA42_0 == DELAY_KEY_WRITE_SYMBOL || LA42_0 == DES_KEY_FILE_SYMBOL || LA42_0 == DIAGNOSTICS_SYMBOL || ((LA42_0 >= DIRECTORY_SYMBOL) && (LA42_0 <= DISK_SYMBOL)) || LA42_0 == DO_SYMBOL || ((LA42_0 >= DUMPFILE_SYMBOL) && (LA42_0 <= DYNAMIC_SYMBOL)) || LA42_0 == ENABLE_SYMBOL || LA42_0 == ENDS_SYMBOL || ((LA42_0 >= END_SYMBOL) && (LA42_0 <= ENUM_SYMBOL)) || ((LA42_0 >= ERRORS_SYMBOL) && (LA42_0 <= ERROR_SYMBOL)) || ((LA42_0 >= ESCAPE_SYMBOL) && (LA42_0 <= EVERY_SYMBOL)) || LA42_0 == EXECUTE_SYMBOL || LA42_0 == EXPANSION_SYMBOL || LA42_0 == EXPORT_SYMBOL || ((LA42_0 >= EXTENDED_SYMBOL) && (LA42_0 <= EXTENT_SIZE_SYMBOL)) || ((LA42_0 >= FAST_SYMBOL) && (LA42_0 <= FAULTS_SYMBOL)) || ((LA42_0 >= FILE_SYMBOL) && (LA42_0 <= FIXED_SYMBOL)) || LA42_0 == FLUSH_SYMBOL || LA42_0 == FORMAT_SYMBOL || LA42_0 == FOUND_SYMBOL || LA42_0 == FULL_SYMBOL || ((LA42_0 >= FUNCTION_SYMBOL) && (LA42_0 <= GET_FORMAT_SYMBOL)) || ((LA42_0 >= GLOBAL_SYMBOL) && (LA42_0 <= GRANTS_SYMBOL)) || ((LA42_0 >= HANDLER_SYMBOL) && (LA42_0 <= HASH_SYMBOL)) || LA42_0 == HELP_SYMBOL || ((LA42_0 >= HOSTS_SYMBOL) && (LA42_0 <= HOST_SYMBOL)) || ((LA42_0 >= HOUR_SYMBOL) && (LA42_0 <= IDENTIFIED_SYMBOL)) || LA42_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA42_0 >= IMPORT_SYMBOL) && (LA42_0 <= INDEXES_SYMBOL)) || LA42_0 == INITIAL_SIZE_SYMBOL || LA42_0 == INNODB_SYMBOL || LA42_0 == INSERT_METHOD_SYMBOL || LA42_0 == INSTALL_SYMBOL || LA42_0 == INVOKER_SYMBOL || LA42_0 == IO_SYMBOL || ((LA42_0 >= IPC_SYMBOL) && (LA42_0 <= ISSUER_SYMBOL)) || LA42_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA42_0 >= LANGUAGE_SYMBOL) && (LA42_0 <= LAST_SYMBOL)) || LA42_0 == LEAVES_SYMBOL || LA42_0 == LESS_SYMBOL || LA42_0 == LEVEL_SYMBOL || LA42_0 == LINESTRING_SYMBOL || LA42_0 == LIST_SYMBOL || LA42_0 == LOCAL_SYMBOL || LA42_0 == LOCKS_SYMBOL || LA42_0 == LOGFILE_SYMBOL || LA42_0 == LOGS_SYMBOL || LA42_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA42_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA42_0 <= MASTER_SSL_SYMBOL)) || ((LA42_0 >= MASTER_SYMBOL) && (LA42_0 <= MASTER_USER_SYMBOL)) || ((LA42_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA42_0 <= MAX_SIZE_SYMBOL)) || ((LA42_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA42_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA42_0 >= MEDIUM_SYMBOL) && (LA42_0 <= MICROSECOND_SYMBOL)) || LA42_0 == MIGRATE_SYMBOL || ((LA42_0 >= MINUTE_SYMBOL) && (LA42_0 <= MIN_ROWS_SYMBOL)) || LA42_0 == MODE_SYMBOL || LA42_0 == MODIFY_SYMBOL || ((LA42_0 >= MONTH_SYMBOL) && (LA42_0 <= MULTILINESTRING_SYMBOL)) || ((LA42_0 >= MULTIPOINT_SYMBOL) && (LA42_0 <= MULTIPOLYGON_SYMBOL)) || ((LA42_0 >= MUTEX_SYMBOL) && (LA42_0 <= NATIONAL_SYMBOL)) || LA42_0 == NCHAR_SYMBOL || LA42_0 == NDBCLUSTER_SYMBOL || ((LA42_0 >= NEW_SYMBOL) && (LA42_0 <= NONE_SYMBOL)) || ((LA42_0 >= NO_SYMBOL) && (LA42_0 <= NO_WAIT_SYMBOL)) || LA42_0 == NUMBER_SYMBOL || LA42_0 == NVARCHAR_SYMBOL || ((LA42_0 >= OFFSET_SYMBOL) && (LA42_0 <= ONE_SYMBOL)) || LA42_0 == OPEN_SYMBOL || LA42_0 == OPTIONS_SYMBOL || ((LA42_0 >= OWNER_SYMBOL) && (LA42_0 <= PAGE_SYMBOL)) || ((LA42_0 >= PARSER_SYMBOL) && (LA42_0 <= PARTITION_SYMBOL)) || ((LA42_0 >= PASSWORD_SYMBOL) && (LA42_0 <= PLUGIN_SYMBOL)) || ((LA42_0 >= POINT_SYMBOL) && (LA42_0 <= PORT_SYMBOL)) || ((LA42_0 >= PREPARE_SYMBOL) && (LA42_0 <= PREV_SYMBOL)) || LA42_0 == PRIVILEGES_SYMBOL || ((LA42_0 >= PROCESSLIST_SYMBOL) && (LA42_0 <= PROXY_SYMBOL)) || ((LA42_0 >= QUARTER_SYMBOL) && (LA42_0 <= QUICK_SYMBOL)) || LA42_0 == READ_ONLY_SYMBOL || ((LA42_0 >= REBUILD_SYMBOL) && (LA42_0 <= REDUNDANT_SYMBOL)) || ((LA42_0 >= RELAYLOG_SYMBOL) && (LA42_0 <= RELAY_THREAD_SYMBOL)) || ((LA42_0 >= RELOAD_SYMBOL) && (LA42_0 <= REMOVE_SYMBOL)) || ((LA42_0 >= REORGANIZE_SYMBOL) && (LA42_0 <= REPEATABLE_SYMBOL)) || LA42_0 == REPLICATION_SYMBOL || LA42_0 == RESET_SYMBOL || LA42_0 == RESTORE_SYMBOL || ((LA42_0 >= RESUME_SYMBOL) && (LA42_0 <= RETURNS_SYMBOL)) || LA42_0 == REVERSE_SYMBOL || ((LA42_0 >= ROLLBACK_SYMBOL) && (LA42_0 <= SCHEDULE_SYMBOL)) || LA42_0 == SCHEMA_NAME_SYMBOL || ((LA42_0 >= SECOND_SYMBOL) && (LA42_0 <= SECURITY_SYMBOL)) || ((LA42_0 >= SERIALIZABLE_SYMBOL) && (LA42_0 <= SERIAL_SYMBOL)) || ((LA42_0 >= SERVER_SYMBOL) && (LA42_0 <= SESSION_SYMBOL)) || LA42_0 == SHARE_SYMBOL || LA42_0 == SHUTDOWN_SYMBOL || ((LA42_0 >= SIGNED_SYMBOL) && (LA42_0 <= SIMPLE_SYMBOL)) || ((LA42_0 >= SLAVE_SYMBOL) && (LA42_0 <= SLOW_SYMBOL)) || ((LA42_0 >= SNAPSHOT_SYMBOL) && (LA42_0 <= SOURCE_SYMBOL)) || ((LA42_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA42_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA42_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA42_0 <= SQL_CACHE_SYMBOL)) || LA42_0 == SQL_NO_CACHE_SYMBOL || LA42_0 == SQL_THREAD_SYMBOL || ((LA42_0 >= STARTS_SYMBOL) && (LA42_0 <= STATUS_SYMBOL)) || ((LA42_0 >= STOP_SYMBOL) && (LA42_0 <= STORAGE_SYMBOL)) || ((LA42_0 >= STRING_SYMBOL) && (LA42_0 <= SUBPARTITION_SYMBOL)) || ((LA42_0 >= SUPER_SYMBOL) && (LA42_0 <= SWITCHES_SYMBOL)) || ((LA42_0 >= TABLESPACE_SYMBOL) && (LA42_0 <= TABLE_NAME_SYMBOL)) || ((LA42_0 >= TEMPORARY_SYMBOL) && (LA42_0 <= TEMPTABLE_SYMBOL)) || ((LA42_0 >= TEXT_SYMBOL) && (LA42_0 <= THAN_SYMBOL)) || ((LA42_0 >= TIMESTAMP_ADD_SYMBOL) && (LA42_0 <= TIME_SYMBOL)) || ((LA42_0 >= TRANSACTION_SYMBOL) && (LA42_0 <= TRIGGERS_SYMBOL)) || ((LA42_0 >= TRUNCATE_SYMBOL) && (LA42_0 <= TYPES_SYMBOL)) || LA42_0 == UDF_RETURNS_SYMBOL || ((LA42_0 >= UNCOMMITTED_SYMBOL) && (LA42_0 <= UNDEFINED_SYMBOL)) || ((LA42_0 >= UNDOFILE_SYMBOL) && (LA42_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA42_0 >= UNICODE_SYMBOL) && (LA42_0 <= UNINSTALL_SYMBOL)) || LA42_0 == UNKNOWN_SYMBOL || LA42_0 == UNTIL_SYMBOL || LA42_0 == UPGRADE_SYMBOL || ((LA42_0 >= USER_RESOURCES_SYMBOL) && (LA42_0 <= USE_FRM_SYMBOL)) || LA42_0 == VALUE_SYMBOL || LA42_0 == VARIABLES_SYMBOL || ((LA42_0 >= VIEW_SYMBOL) && (LA42_0 <= WEIGHT_STRING_SYMBOL)) || ((LA42_0 >= WORK_SYMBOL) && (LA42_0 <= WRAPPER_SYMBOL)) || LA42_0 == X509_SYMBOL || ((LA42_0 >= XA_SYMBOL) && (LA42_0 <= XML_SYMBOL)) || LA42_0 == YEAR_SYMBOL))
        	        	                {
        	        	                    alt42=1;
        	        	                }
        	        	            }
        	        	            switch (alt42)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:336:49: identifier
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_identifier_in_alter_table_list_item854);
        	        	        	        identifier142=identifier(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulealter_table_list_itemEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier142.tree);

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        // MySQL.g:336:61: ( index_type )?
        	        	        {
        	        	            int alt43=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case TYPE_SYMBOL:
        	        	                case USING_SYMBOL:
        	        	                	{
        	        	                		alt43=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt43)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:336:61: index_type
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_index_type_in_alter_table_list_item857);
        	        	        	        index_type143=index_type(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulealter_table_list_itemEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_type143.tree);

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_index_columns_in_alter_table_list_item860);
        	        	        index_columns144=index_columns(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_columns144.tree);

        	        	        // MySQL.g:336:87: ( index_option )*

        	        	        for (;;)
        	        	        {
        	        	            int alt44=2;
        	        	            {
        	        	               /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
        	        	                */
        	        	                int LA44_0 = LA(1);
        	        	                if ( (LA44_0 == KEY_BLOCK_SIZE_SYMBOL || LA44_0 == TYPE_SYMBOL || LA44_0 == USING_SYMBOL || LA44_0 == WITH_SYMBOL))
        	        	                {
        	        	                    alt44=1;
        	        	                }
        	        	                else if ( ((SERVER_VERSION >= 50600)) && (LA44_0 == COMMENT_SYMBOL))
        	        	                {
        	        	                    alt44=1;
        	        	                }

        	        	            }
        	        	            switch (alt44)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:336:87: index_option
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_index_option_in_alter_table_list_item862);
        	        	        	        index_option145=index_option(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulealter_table_list_itemEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_option145.tree);

        	        	        	    }
        	        	        	    break;

        	        	        	default:
        	        	        	    goto loop44;	/* break out of the loop */
        	        	        	    break;
        	        	            }
        	        	        }
        	        	        loop44: ; /* Jump out to here if this rule does not match */


        	        	    }
        	        	    break;
        	        	case 3:
        	        	    // MySQL.g:337:6: FOREIGN_SYMBOL KEY_SYMBOL ( identifier )? index_columns reference_definition
        	        	    {
        	        	        FOREIGN_SYMBOL146 = (pANTLR3_COMMON_TOKEN) MATCHT(FOREIGN_SYMBOL, &FOLLOW_FOREIGN_SYMBOL_in_alter_table_list_item870);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        FOREIGN_SYMBOL146_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOREIGN_SYMBOL146));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, FOREIGN_SYMBOL146_tree);
        	        	        }

        	        	        KEY_SYMBOL147 = (pANTLR3_COMMON_TOKEN) MATCHT(KEY_SYMBOL, &FOLLOW_KEY_SYMBOL_in_alter_table_list_item872);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        KEY_SYMBOL147_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, KEY_SYMBOL147));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, KEY_SYMBOL147_tree);
        	        	        }

        	        	        // MySQL.g:337:32: ( identifier )?
        	        	        {
        	        	            int alt45=2;
        	        	            {
        	        	                int LA45_0 = LA(1);
        	        	                if ( (LA45_0 == BACK_TICK_QUOTED_ID || LA45_0 == IDENTIFIER))
        	        	                {
        	        	                    alt45=1;
        	        	                }
        	        	                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA45_0 == DOUBLE_QUOTED_TEXT))
        	        	                {
        	        	                    alt45=1;
        	        	                }
        	        	                else if ( (((LA45_0 >= ACTION_SYMBOL) && (LA45_0 <= ADDDATE_SYMBOL)) || ((LA45_0 >= AFTER_SYMBOL) && (LA45_0 <= ALGORITHM_SYMBOL)) || LA45_0 == ANALYZE_SYMBOL || ((LA45_0 >= ANY_SYMBOL) && (LA45_0 <= ASCII_SYMBOL)) || ((LA45_0 >= AT_SYMBOL) && (LA45_0 <= BACKUP_SYMBOL)) || LA45_0 == BEGIN_SYMBOL || LA45_0 == BINLOG_SYMBOL || LA45_0 == BIT_SYMBOL || ((LA45_0 >= BLOCK_SYMBOL) && (LA45_0 <= BOOL_SYMBOL)) || ((LA45_0 >= BTREE_SYMBOL) && (LA45_0 <= BYTE_SYMBOL)) || LA45_0 == CACHE_SYMBOL || LA45_0 == CASCADED_SYMBOL || ((LA45_0 >= CATALOG_NAME_SYMBOL) && (LA45_0 <= CHANGED_SYMBOL)) || LA45_0 == CHARSET_SYMBOL || LA45_0 == CHECKSUM_SYMBOL || ((LA45_0 >= CIPHER_SYMBOL) && (LA45_0 <= CLIENT_SYMBOL)) || ((LA45_0 >= CLOSE_SYMBOL) && (LA45_0 <= CODE_SYMBOL)) || LA45_0 == COLLATION_SYMBOL || ((LA45_0 >= COLUMNS_SYMBOL) && (LA45_0 <= COLUMN_NAME_SYMBOL)) || ((LA45_0 >= COMMENT_SYMBOL) && (LA45_0 <= COMPRESSED_SYMBOL)) || LA45_0 == CONCURRENT_SYMBOL || ((LA45_0 >= CONNECTION_SYMBOL) && (LA45_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA45_0 >= CONTAINS_SYMBOL) && (LA45_0 <= CONTEXT_SYMBOL)) || LA45_0 == CONTRIBUTORS_SYMBOL || LA45_0 == CPU_SYMBOL || LA45_0 == CUBE_SYMBOL || LA45_0 == CURRENT_SYMBOL || LA45_0 == CURSOR_NAME_SYMBOL || ((LA45_0 >= DATAFILE_SYMBOL) && (LA45_0 <= DATETIME_SYMBOL)) || LA45_0 == DATE_SYMBOL || ((LA45_0 >= DAY_SYMBOL) && (LA45_0 <= DEALLOCATE_SYMBOL)) || LA45_0 == DEFAULT_AUTH_SYMBOL || LA45_0 == DEFINER_SYMBOL || LA45_0 == DELAY_KEY_WRITE_SYMBOL || LA45_0 == DES_KEY_FILE_SYMBOL || LA45_0 == DIAGNOSTICS_SYMBOL || ((LA45_0 >= DIRECTORY_SYMBOL) && (LA45_0 <= DISK_SYMBOL)) || LA45_0 == DO_SYMBOL || ((LA45_0 >= DUMPFILE_SYMBOL) && (LA45_0 <= DYNAMIC_SYMBOL)) || LA45_0 == ENABLE_SYMBOL || LA45_0 == ENDS_SYMBOL || ((LA45_0 >= END_SYMBOL) && (LA45_0 <= ENUM_SYMBOL)) || ((LA45_0 >= ERRORS_SYMBOL) && (LA45_0 <= ERROR_SYMBOL)) || ((LA45_0 >= ESCAPE_SYMBOL) && (LA45_0 <= EVERY_SYMBOL)) || LA45_0 == EXECUTE_SYMBOL || LA45_0 == EXPANSION_SYMBOL || LA45_0 == EXPORT_SYMBOL || ((LA45_0 >= EXTENDED_SYMBOL) && (LA45_0 <= EXTENT_SIZE_SYMBOL)) || ((LA45_0 >= FAST_SYMBOL) && (LA45_0 <= FAULTS_SYMBOL)) || ((LA45_0 >= FILE_SYMBOL) && (LA45_0 <= FIXED_SYMBOL)) || LA45_0 == FLUSH_SYMBOL || LA45_0 == FORMAT_SYMBOL || LA45_0 == FOUND_SYMBOL || LA45_0 == FULL_SYMBOL || ((LA45_0 >= FUNCTION_SYMBOL) && (LA45_0 <= GET_FORMAT_SYMBOL)) || ((LA45_0 >= GLOBAL_SYMBOL) && (LA45_0 <= GRANTS_SYMBOL)) || ((LA45_0 >= HANDLER_SYMBOL) && (LA45_0 <= HASH_SYMBOL)) || LA45_0 == HELP_SYMBOL || ((LA45_0 >= HOSTS_SYMBOL) && (LA45_0 <= HOST_SYMBOL)) || ((LA45_0 >= HOUR_SYMBOL) && (LA45_0 <= IDENTIFIED_SYMBOL)) || LA45_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA45_0 >= IMPORT_SYMBOL) && (LA45_0 <= INDEXES_SYMBOL)) || LA45_0 == INITIAL_SIZE_SYMBOL || LA45_0 == INNODB_SYMBOL || LA45_0 == INSERT_METHOD_SYMBOL || LA45_0 == INSTALL_SYMBOL || LA45_0 == INVOKER_SYMBOL || LA45_0 == IO_SYMBOL || ((LA45_0 >= IPC_SYMBOL) && (LA45_0 <= ISSUER_SYMBOL)) || LA45_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA45_0 >= LANGUAGE_SYMBOL) && (LA45_0 <= LAST_SYMBOL)) || LA45_0 == LEAVES_SYMBOL || LA45_0 == LESS_SYMBOL || LA45_0 == LEVEL_SYMBOL || LA45_0 == LINESTRING_SYMBOL || LA45_0 == LIST_SYMBOL || LA45_0 == LOCAL_SYMBOL || LA45_0 == LOCKS_SYMBOL || LA45_0 == LOGFILE_SYMBOL || LA45_0 == LOGS_SYMBOL || LA45_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA45_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA45_0 <= MASTER_SSL_SYMBOL)) || ((LA45_0 >= MASTER_SYMBOL) && (LA45_0 <= MASTER_USER_SYMBOL)) || ((LA45_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA45_0 <= MAX_SIZE_SYMBOL)) || ((LA45_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA45_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA45_0 >= MEDIUM_SYMBOL) && (LA45_0 <= MICROSECOND_SYMBOL)) || LA45_0 == MIGRATE_SYMBOL || ((LA45_0 >= MINUTE_SYMBOL) && (LA45_0 <= MIN_ROWS_SYMBOL)) || LA45_0 == MODE_SYMBOL || LA45_0 == MODIFY_SYMBOL || ((LA45_0 >= MONTH_SYMBOL) && (LA45_0 <= MULTILINESTRING_SYMBOL)) || ((LA45_0 >= MULTIPOINT_SYMBOL) && (LA45_0 <= MULTIPOLYGON_SYMBOL)) || ((LA45_0 >= MUTEX_SYMBOL) && (LA45_0 <= NATIONAL_SYMBOL)) || LA45_0 == NCHAR_SYMBOL || LA45_0 == NDBCLUSTER_SYMBOL || ((LA45_0 >= NEW_SYMBOL) && (LA45_0 <= NONE_SYMBOL)) || ((LA45_0 >= NO_SYMBOL) && (LA45_0 <= NO_WAIT_SYMBOL)) || LA45_0 == NUMBER_SYMBOL || LA45_0 == NVARCHAR_SYMBOL || ((LA45_0 >= OFFSET_SYMBOL) && (LA45_0 <= ONE_SYMBOL)) || LA45_0 == OPEN_SYMBOL || LA45_0 == OPTIONS_SYMBOL || ((LA45_0 >= OWNER_SYMBOL) && (LA45_0 <= PAGE_SYMBOL)) || ((LA45_0 >= PARSER_SYMBOL) && (LA45_0 <= PARTITION_SYMBOL)) || ((LA45_0 >= PASSWORD_SYMBOL) && (LA45_0 <= PLUGIN_SYMBOL)) || ((LA45_0 >= POINT_SYMBOL) && (LA45_0 <= PORT_SYMBOL)) || ((LA45_0 >= PREPARE_SYMBOL) && (LA45_0 <= PREV_SYMBOL)) || LA45_0 == PRIVILEGES_SYMBOL || ((LA45_0 >= PROCESSLIST_SYMBOL) && (LA45_0 <= PROXY_SYMBOL)) || ((LA45_0 >= QUARTER_SYMBOL) && (LA45_0 <= QUICK_SYMBOL)) || LA45_0 == READ_ONLY_SYMBOL || ((LA45_0 >= REBUILD_SYMBOL) && (LA45_0 <= REDUNDANT_SYMBOL)) || ((LA45_0 >= RELAYLOG_SYMBOL) && (LA45_0 <= RELAY_THREAD_SYMBOL)) || ((LA45_0 >= RELOAD_SYMBOL) && (LA45_0 <= REMOVE_SYMBOL)) || ((LA45_0 >= REORGANIZE_SYMBOL) && (LA45_0 <= REPEATABLE_SYMBOL)) || LA45_0 == REPLICATION_SYMBOL || LA45_0 == RESET_SYMBOL || LA45_0 == RESTORE_SYMBOL || ((LA45_0 >= RESUME_SYMBOL) && (LA45_0 <= RETURNS_SYMBOL)) || LA45_0 == REVERSE_SYMBOL || ((LA45_0 >= ROLLBACK_SYMBOL) && (LA45_0 <= SCHEDULE_SYMBOL)) || LA45_0 == SCHEMA_NAME_SYMBOL || ((LA45_0 >= SECOND_SYMBOL) && (LA45_0 <= SECURITY_SYMBOL)) || ((LA45_0 >= SERIALIZABLE_SYMBOL) && (LA45_0 <= SERIAL_SYMBOL)) || ((LA45_0 >= SERVER_SYMBOL) && (LA45_0 <= SESSION_SYMBOL)) || LA45_0 == SHARE_SYMBOL || LA45_0 == SHUTDOWN_SYMBOL || ((LA45_0 >= SIGNED_SYMBOL) && (LA45_0 <= SIMPLE_SYMBOL)) || ((LA45_0 >= SLAVE_SYMBOL) && (LA45_0 <= SLOW_SYMBOL)) || ((LA45_0 >= SNAPSHOT_SYMBOL) && (LA45_0 <= SOURCE_SYMBOL)) || ((LA45_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA45_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA45_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA45_0 <= SQL_CACHE_SYMBOL)) || LA45_0 == SQL_NO_CACHE_SYMBOL || LA45_0 == SQL_THREAD_SYMBOL || ((LA45_0 >= STARTS_SYMBOL) && (LA45_0 <= STATUS_SYMBOL)) || ((LA45_0 >= STOP_SYMBOL) && (LA45_0 <= STORAGE_SYMBOL)) || ((LA45_0 >= STRING_SYMBOL) && (LA45_0 <= SUBPARTITION_SYMBOL)) || ((LA45_0 >= SUPER_SYMBOL) && (LA45_0 <= SWITCHES_SYMBOL)) || ((LA45_0 >= TABLESPACE_SYMBOL) && (LA45_0 <= TABLE_NAME_SYMBOL)) || ((LA45_0 >= TEMPORARY_SYMBOL) && (LA45_0 <= TEMPTABLE_SYMBOL)) || ((LA45_0 >= TEXT_SYMBOL) && (LA45_0 <= THAN_SYMBOL)) || ((LA45_0 >= TIMESTAMP_ADD_SYMBOL) && (LA45_0 <= TIME_SYMBOL)) || ((LA45_0 >= TRANSACTION_SYMBOL) && (LA45_0 <= TRIGGERS_SYMBOL)) || ((LA45_0 >= TRUNCATE_SYMBOL) && (LA45_0 <= UDF_RETURNS_SYMBOL)) || ((LA45_0 >= UNCOMMITTED_SYMBOL) && (LA45_0 <= UNDEFINED_SYMBOL)) || ((LA45_0 >= UNDOFILE_SYMBOL) && (LA45_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA45_0 >= UNICODE_SYMBOL) && (LA45_0 <= UNINSTALL_SYMBOL)) || LA45_0 == UNKNOWN_SYMBOL || LA45_0 == UNTIL_SYMBOL || LA45_0 == UPGRADE_SYMBOL || ((LA45_0 >= USER_RESOURCES_SYMBOL) && (LA45_0 <= USE_FRM_SYMBOL)) || LA45_0 == VALUE_SYMBOL || LA45_0 == VARIABLES_SYMBOL || ((LA45_0 >= VIEW_SYMBOL) && (LA45_0 <= WEIGHT_STRING_SYMBOL)) || ((LA45_0 >= WORK_SYMBOL) && (LA45_0 <= WRAPPER_SYMBOL)) || LA45_0 == X509_SYMBOL || ((LA45_0 >= XA_SYMBOL) && (LA45_0 <= XML_SYMBOL)) || LA45_0 == YEAR_SYMBOL))
        	        	                {
        	        	                    alt45=1;
        	        	                }
        	        	            }
        	        	            switch (alt45)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:337:32: identifier
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_identifier_in_alter_table_list_item874);
        	        	        	        identifier148=identifier(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulealter_table_list_itemEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier148.tree);

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_index_columns_in_alter_table_list_item877);
        	        	        index_columns149=index_columns(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_columns149.tree);

        	        	        FOLLOWPUSH(FOLLOW_reference_definition_in_alter_table_list_item879);
        	        	        reference_definition150=reference_definition(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, reference_definition150.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:339:4: ADD_SYMBOL FULLTEXT_SYMBOL ( INDEX_SYMBOL | KEY_SYMBOL )? ( identifier )? index_columns ( index_option )*
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ADD_SYMBOL151 = (pANTLR3_COMMON_TOKEN) MATCHT(ADD_SYMBOL, &FOLLOW_ADD_SYMBOL_in_alter_table_list_item888);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ADD_SYMBOL151_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ADD_SYMBOL151));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ADD_SYMBOL151_tree);
        	        }

        	        FULLTEXT_SYMBOL152 = (pANTLR3_COMMON_TOKEN) MATCHT(FULLTEXT_SYMBOL, &FOLLOW_FULLTEXT_SYMBOL_in_alter_table_list_item890);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FULLTEXT_SYMBOL152_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FULLTEXT_SYMBOL152));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FULLTEXT_SYMBOL152_tree);
        	        }

        	        // MySQL.g:339:31: ( INDEX_SYMBOL | KEY_SYMBOL )?
        	        {
        	            int alt47=2;
        	            switch ( LA(1) )
        	            {
        	                case INDEX_SYMBOL:
        	                case KEY_SYMBOL:
        	                	{
        	                		alt47=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt47)
        	            {
        	        	case 1:
        	        	    // MySQL.g:
        	        	    {
        	        	        set153=(pANTLR3_COMMON_TOKEN)LT(1);

        	        	        if ( LA(1) == INDEX_SYMBOL || LA(1) == KEY_SYMBOL )
        	        	        {
        	        	            CONSUME();
        	        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set153))
        	        	            );
        	        	            PERRORRECOVERY=ANTLR3_FALSE;
        	        	            FAILEDFLAG=ANTLR3_FALSE;

        	        	        }
        	        	        else
        	        	        {
        	        	            if (BACKTRACKING>0)
        	        	            {
        	        	                FAILEDFLAG = ANTLR3_TRUE;
        	        	                return retval;
        	        	            }

        	        	            CONSTRUCTEX();
        	        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
        	        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
        	        	            EXCEPTION->expectingSet = NULL;

        	        	            goto rulealter_table_list_itemEx;
        	        	        }


        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:339:60: ( identifier )?
        	        {
        	            int alt48=2;
        	            {
        	                int LA48_0 = LA(1);
        	                if ( (LA48_0 == BACK_TICK_QUOTED_ID || LA48_0 == IDENTIFIER))
        	                {
        	                    alt48=1;
        	                }
        	                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA48_0 == DOUBLE_QUOTED_TEXT))
        	                {
        	                    alt48=1;
        	                }
        	                else if ( (((LA48_0 >= ACTION_SYMBOL) && (LA48_0 <= ADDDATE_SYMBOL)) || ((LA48_0 >= AFTER_SYMBOL) && (LA48_0 <= ALGORITHM_SYMBOL)) || LA48_0 == ANALYZE_SYMBOL || ((LA48_0 >= ANY_SYMBOL) && (LA48_0 <= ASCII_SYMBOL)) || ((LA48_0 >= AT_SYMBOL) && (LA48_0 <= BACKUP_SYMBOL)) || LA48_0 == BEGIN_SYMBOL || LA48_0 == BINLOG_SYMBOL || LA48_0 == BIT_SYMBOL || ((LA48_0 >= BLOCK_SYMBOL) && (LA48_0 <= BOOL_SYMBOL)) || ((LA48_0 >= BTREE_SYMBOL) && (LA48_0 <= BYTE_SYMBOL)) || LA48_0 == CACHE_SYMBOL || LA48_0 == CASCADED_SYMBOL || ((LA48_0 >= CATALOG_NAME_SYMBOL) && (LA48_0 <= CHANGED_SYMBOL)) || LA48_0 == CHARSET_SYMBOL || LA48_0 == CHECKSUM_SYMBOL || ((LA48_0 >= CIPHER_SYMBOL) && (LA48_0 <= CLIENT_SYMBOL)) || ((LA48_0 >= CLOSE_SYMBOL) && (LA48_0 <= CODE_SYMBOL)) || LA48_0 == COLLATION_SYMBOL || ((LA48_0 >= COLUMNS_SYMBOL) && (LA48_0 <= COLUMN_NAME_SYMBOL)) || ((LA48_0 >= COMMENT_SYMBOL) && (LA48_0 <= COMPRESSED_SYMBOL)) || LA48_0 == CONCURRENT_SYMBOL || ((LA48_0 >= CONNECTION_SYMBOL) && (LA48_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA48_0 >= CONTAINS_SYMBOL) && (LA48_0 <= CONTEXT_SYMBOL)) || LA48_0 == CONTRIBUTORS_SYMBOL || LA48_0 == CPU_SYMBOL || LA48_0 == CUBE_SYMBOL || LA48_0 == CURRENT_SYMBOL || LA48_0 == CURSOR_NAME_SYMBOL || ((LA48_0 >= DATAFILE_SYMBOL) && (LA48_0 <= DATETIME_SYMBOL)) || LA48_0 == DATE_SYMBOL || ((LA48_0 >= DAY_SYMBOL) && (LA48_0 <= DEALLOCATE_SYMBOL)) || LA48_0 == DEFAULT_AUTH_SYMBOL || LA48_0 == DEFINER_SYMBOL || LA48_0 == DELAY_KEY_WRITE_SYMBOL || LA48_0 == DES_KEY_FILE_SYMBOL || LA48_0 == DIAGNOSTICS_SYMBOL || ((LA48_0 >= DIRECTORY_SYMBOL) && (LA48_0 <= DISK_SYMBOL)) || LA48_0 == DO_SYMBOL || ((LA48_0 >= DUMPFILE_SYMBOL) && (LA48_0 <= DYNAMIC_SYMBOL)) || LA48_0 == ENABLE_SYMBOL || LA48_0 == ENDS_SYMBOL || ((LA48_0 >= END_SYMBOL) && (LA48_0 <= ENUM_SYMBOL)) || ((LA48_0 >= ERRORS_SYMBOL) && (LA48_0 <= ERROR_SYMBOL)) || ((LA48_0 >= ESCAPE_SYMBOL) && (LA48_0 <= EVERY_SYMBOL)) || LA48_0 == EXECUTE_SYMBOL || LA48_0 == EXPANSION_SYMBOL || LA48_0 == EXPORT_SYMBOL || ((LA48_0 >= EXTENDED_SYMBOL) && (LA48_0 <= EXTENT_SIZE_SYMBOL)) || ((LA48_0 >= FAST_SYMBOL) && (LA48_0 <= FAULTS_SYMBOL)) || ((LA48_0 >= FILE_SYMBOL) && (LA48_0 <= FIXED_SYMBOL)) || LA48_0 == FLUSH_SYMBOL || LA48_0 == FORMAT_SYMBOL || LA48_0 == FOUND_SYMBOL || LA48_0 == FULL_SYMBOL || ((LA48_0 >= FUNCTION_SYMBOL) && (LA48_0 <= GET_FORMAT_SYMBOL)) || ((LA48_0 >= GLOBAL_SYMBOL) && (LA48_0 <= GRANTS_SYMBOL)) || ((LA48_0 >= HANDLER_SYMBOL) && (LA48_0 <= HASH_SYMBOL)) || LA48_0 == HELP_SYMBOL || ((LA48_0 >= HOSTS_SYMBOL) && (LA48_0 <= HOST_SYMBOL)) || ((LA48_0 >= HOUR_SYMBOL) && (LA48_0 <= IDENTIFIED_SYMBOL)) || LA48_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA48_0 >= IMPORT_SYMBOL) && (LA48_0 <= INDEXES_SYMBOL)) || LA48_0 == INITIAL_SIZE_SYMBOL || LA48_0 == INNODB_SYMBOL || LA48_0 == INSERT_METHOD_SYMBOL || LA48_0 == INSTALL_SYMBOL || LA48_0 == INVOKER_SYMBOL || LA48_0 == IO_SYMBOL || ((LA48_0 >= IPC_SYMBOL) && (LA48_0 <= ISSUER_SYMBOL)) || LA48_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA48_0 >= LANGUAGE_SYMBOL) && (LA48_0 <= LAST_SYMBOL)) || LA48_0 == LEAVES_SYMBOL || LA48_0 == LESS_SYMBOL || LA48_0 == LEVEL_SYMBOL || LA48_0 == LINESTRING_SYMBOL || LA48_0 == LIST_SYMBOL || LA48_0 == LOCAL_SYMBOL || LA48_0 == LOCKS_SYMBOL || LA48_0 == LOGFILE_SYMBOL || LA48_0 == LOGS_SYMBOL || LA48_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA48_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA48_0 <= MASTER_SSL_SYMBOL)) || ((LA48_0 >= MASTER_SYMBOL) && (LA48_0 <= MASTER_USER_SYMBOL)) || ((LA48_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA48_0 <= MAX_SIZE_SYMBOL)) || ((LA48_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA48_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA48_0 >= MEDIUM_SYMBOL) && (LA48_0 <= MICROSECOND_SYMBOL)) || LA48_0 == MIGRATE_SYMBOL || ((LA48_0 >= MINUTE_SYMBOL) && (LA48_0 <= MIN_ROWS_SYMBOL)) || LA48_0 == MODE_SYMBOL || LA48_0 == MODIFY_SYMBOL || ((LA48_0 >= MONTH_SYMBOL) && (LA48_0 <= MULTILINESTRING_SYMBOL)) || ((LA48_0 >= MULTIPOINT_SYMBOL) && (LA48_0 <= MULTIPOLYGON_SYMBOL)) || ((LA48_0 >= MUTEX_SYMBOL) && (LA48_0 <= NATIONAL_SYMBOL)) || LA48_0 == NCHAR_SYMBOL || LA48_0 == NDBCLUSTER_SYMBOL || ((LA48_0 >= NEW_SYMBOL) && (LA48_0 <= NONE_SYMBOL)) || ((LA48_0 >= NO_SYMBOL) && (LA48_0 <= NO_WAIT_SYMBOL)) || LA48_0 == NUMBER_SYMBOL || LA48_0 == NVARCHAR_SYMBOL || ((LA48_0 >= OFFSET_SYMBOL) && (LA48_0 <= ONE_SYMBOL)) || LA48_0 == OPEN_SYMBOL || LA48_0 == OPTIONS_SYMBOL || ((LA48_0 >= OWNER_SYMBOL) && (LA48_0 <= PAGE_SYMBOL)) || ((LA48_0 >= PARSER_SYMBOL) && (LA48_0 <= PARTITION_SYMBOL)) || ((LA48_0 >= PASSWORD_SYMBOL) && (LA48_0 <= PLUGIN_SYMBOL)) || ((LA48_0 >= POINT_SYMBOL) && (LA48_0 <= PORT_SYMBOL)) || ((LA48_0 >= PREPARE_SYMBOL) && (LA48_0 <= PREV_SYMBOL)) || LA48_0 == PRIVILEGES_SYMBOL || ((LA48_0 >= PROCESSLIST_SYMBOL) && (LA48_0 <= PROXY_SYMBOL)) || ((LA48_0 >= QUARTER_SYMBOL) && (LA48_0 <= QUICK_SYMBOL)) || LA48_0 == READ_ONLY_SYMBOL || ((LA48_0 >= REBUILD_SYMBOL) && (LA48_0 <= REDUNDANT_SYMBOL)) || ((LA48_0 >= RELAYLOG_SYMBOL) && (LA48_0 <= RELAY_THREAD_SYMBOL)) || ((LA48_0 >= RELOAD_SYMBOL) && (LA48_0 <= REMOVE_SYMBOL)) || ((LA48_0 >= REORGANIZE_SYMBOL) && (LA48_0 <= REPEATABLE_SYMBOL)) || LA48_0 == REPLICATION_SYMBOL || LA48_0 == RESET_SYMBOL || LA48_0 == RESTORE_SYMBOL || ((LA48_0 >= RESUME_SYMBOL) && (LA48_0 <= RETURNS_SYMBOL)) || LA48_0 == REVERSE_SYMBOL || ((LA48_0 >= ROLLBACK_SYMBOL) && (LA48_0 <= SCHEDULE_SYMBOL)) || LA48_0 == SCHEMA_NAME_SYMBOL || ((LA48_0 >= SECOND_SYMBOL) && (LA48_0 <= SECURITY_SYMBOL)) || ((LA48_0 >= SERIALIZABLE_SYMBOL) && (LA48_0 <= SERIAL_SYMBOL)) || ((LA48_0 >= SERVER_SYMBOL) && (LA48_0 <= SESSION_SYMBOL)) || LA48_0 == SHARE_SYMBOL || LA48_0 == SHUTDOWN_SYMBOL || ((LA48_0 >= SIGNED_SYMBOL) && (LA48_0 <= SIMPLE_SYMBOL)) || ((LA48_0 >= SLAVE_SYMBOL) && (LA48_0 <= SLOW_SYMBOL)) || ((LA48_0 >= SNAPSHOT_SYMBOL) && (LA48_0 <= SOURCE_SYMBOL)) || ((LA48_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA48_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA48_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA48_0 <= SQL_CACHE_SYMBOL)) || LA48_0 == SQL_NO_CACHE_SYMBOL || LA48_0 == SQL_THREAD_SYMBOL || ((LA48_0 >= STARTS_SYMBOL) && (LA48_0 <= STATUS_SYMBOL)) || ((LA48_0 >= STOP_SYMBOL) && (LA48_0 <= STORAGE_SYMBOL)) || ((LA48_0 >= STRING_SYMBOL) && (LA48_0 <= SUBPARTITION_SYMBOL)) || ((LA48_0 >= SUPER_SYMBOL) && (LA48_0 <= SWITCHES_SYMBOL)) || ((LA48_0 >= TABLESPACE_SYMBOL) && (LA48_0 <= TABLE_NAME_SYMBOL)) || ((LA48_0 >= TEMPORARY_SYMBOL) && (LA48_0 <= TEMPTABLE_SYMBOL)) || ((LA48_0 >= TEXT_SYMBOL) && (LA48_0 <= THAN_SYMBOL)) || ((LA48_0 >= TIMESTAMP_ADD_SYMBOL) && (LA48_0 <= TIME_SYMBOL)) || ((LA48_0 >= TRANSACTION_SYMBOL) && (LA48_0 <= TRIGGERS_SYMBOL)) || ((LA48_0 >= TRUNCATE_SYMBOL) && (LA48_0 <= UDF_RETURNS_SYMBOL)) || ((LA48_0 >= UNCOMMITTED_SYMBOL) && (LA48_0 <= UNDEFINED_SYMBOL)) || ((LA48_0 >= UNDOFILE_SYMBOL) && (LA48_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA48_0 >= UNICODE_SYMBOL) && (LA48_0 <= UNINSTALL_SYMBOL)) || LA48_0 == UNKNOWN_SYMBOL || LA48_0 == UNTIL_SYMBOL || LA48_0 == UPGRADE_SYMBOL || ((LA48_0 >= USER_RESOURCES_SYMBOL) && (LA48_0 <= USE_FRM_SYMBOL)) || LA48_0 == VALUE_SYMBOL || LA48_0 == VARIABLES_SYMBOL || ((LA48_0 >= VIEW_SYMBOL) && (LA48_0 <= WEIGHT_STRING_SYMBOL)) || ((LA48_0 >= WORK_SYMBOL) && (LA48_0 <= WRAPPER_SYMBOL)) || LA48_0 == X509_SYMBOL || ((LA48_0 >= XA_SYMBOL) && (LA48_0 <= XML_SYMBOL)) || LA48_0 == YEAR_SYMBOL))
        	                {
        	                    alt48=1;
        	                }
        	            }
        	            switch (alt48)
        	            {
        	        	case 1:
        	        	    // MySQL.g:339:60: identifier
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_identifier_in_alter_table_list_item901);
        	        	        identifier154=identifier(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier154.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_index_columns_in_alter_table_list_item904);
        	        index_columns155=index_columns(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_columns155.tree);

        	        // MySQL.g:339:86: ( index_option )*

        	        for (;;)
        	        {
        	            int alt49=2;
        	            {
        	               /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
        	                */
        	                int LA49_0 = LA(1);
        	                if ( (LA49_0 == KEY_BLOCK_SIZE_SYMBOL || LA49_0 == TYPE_SYMBOL || LA49_0 == USING_SYMBOL || LA49_0 == WITH_SYMBOL))
        	                {
        	                    alt49=1;
        	                }
        	                else if ( ((SERVER_VERSION >= 50600)) && (LA49_0 == COMMENT_SYMBOL))
        	                {
        	                    alt49=1;
        	                }

        	            }
        	            switch (alt49)
        	            {
        	        	case 1:
        	        	    // MySQL.g:339:86: index_option
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_index_option_in_alter_table_list_item906);
        	        	        index_option156=index_option(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_option156.tree);

        	        	    }
        	        	    break;

        	        	default:
        	        	    goto loop49;	/* break out of the loop */
        	        	    break;
        	            }
        	        }
        	        loop49: ; /* Jump out to here if this rule does not match */


        	    }
        	    break;
        	case 6:
        	    // MySQL.g:340:4: ADD_SYMBOL SPATIAL_SYMBOL ( INDEX_SYMBOL | KEY_SYMBOL )? ( identifier )? index_columns ( index_option )*
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ADD_SYMBOL157 = (pANTLR3_COMMON_TOKEN) MATCHT(ADD_SYMBOL, &FOLLOW_ADD_SYMBOL_in_alter_table_list_item912);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ADD_SYMBOL157_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ADD_SYMBOL157));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ADD_SYMBOL157_tree);
        	        }

        	        SPATIAL_SYMBOL158 = (pANTLR3_COMMON_TOKEN) MATCHT(SPATIAL_SYMBOL, &FOLLOW_SPATIAL_SYMBOL_in_alter_table_list_item914);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SPATIAL_SYMBOL158_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SPATIAL_SYMBOL158));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SPATIAL_SYMBOL158_tree);
        	        }

        	        // MySQL.g:340:30: ( INDEX_SYMBOL | KEY_SYMBOL )?
        	        {
        	            int alt50=2;
        	            switch ( LA(1) )
        	            {
        	                case INDEX_SYMBOL:
        	                case KEY_SYMBOL:
        	                	{
        	                		alt50=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt50)
        	            {
        	        	case 1:
        	        	    // MySQL.g:
        	        	    {
        	        	        set159=(pANTLR3_COMMON_TOKEN)LT(1);

        	        	        if ( LA(1) == INDEX_SYMBOL || LA(1) == KEY_SYMBOL )
        	        	        {
        	        	            CONSUME();
        	        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set159))
        	        	            );
        	        	            PERRORRECOVERY=ANTLR3_FALSE;
        	        	            FAILEDFLAG=ANTLR3_FALSE;

        	        	        }
        	        	        else
        	        	        {
        	        	            if (BACKTRACKING>0)
        	        	            {
        	        	                FAILEDFLAG = ANTLR3_TRUE;
        	        	                return retval;
        	        	            }

        	        	            CONSTRUCTEX();
        	        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
        	        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
        	        	            EXCEPTION->expectingSet = NULL;

        	        	            goto rulealter_table_list_itemEx;
        	        	        }


        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:340:59: ( identifier )?
        	        {
        	            int alt51=2;
        	            {
        	                int LA51_0 = LA(1);
        	                if ( (LA51_0 == BACK_TICK_QUOTED_ID || LA51_0 == IDENTIFIER))
        	                {
        	                    alt51=1;
        	                }
        	                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA51_0 == DOUBLE_QUOTED_TEXT))
        	                {
        	                    alt51=1;
        	                }
        	                else if ( (((LA51_0 >= ACTION_SYMBOL) && (LA51_0 <= ADDDATE_SYMBOL)) || ((LA51_0 >= AFTER_SYMBOL) && (LA51_0 <= ALGORITHM_SYMBOL)) || LA51_0 == ANALYZE_SYMBOL || ((LA51_0 >= ANY_SYMBOL) && (LA51_0 <= ASCII_SYMBOL)) || ((LA51_0 >= AT_SYMBOL) && (LA51_0 <= BACKUP_SYMBOL)) || LA51_0 == BEGIN_SYMBOL || LA51_0 == BINLOG_SYMBOL || LA51_0 == BIT_SYMBOL || ((LA51_0 >= BLOCK_SYMBOL) && (LA51_0 <= BOOL_SYMBOL)) || ((LA51_0 >= BTREE_SYMBOL) && (LA51_0 <= BYTE_SYMBOL)) || LA51_0 == CACHE_SYMBOL || LA51_0 == CASCADED_SYMBOL || ((LA51_0 >= CATALOG_NAME_SYMBOL) && (LA51_0 <= CHANGED_SYMBOL)) || LA51_0 == CHARSET_SYMBOL || LA51_0 == CHECKSUM_SYMBOL || ((LA51_0 >= CIPHER_SYMBOL) && (LA51_0 <= CLIENT_SYMBOL)) || ((LA51_0 >= CLOSE_SYMBOL) && (LA51_0 <= CODE_SYMBOL)) || LA51_0 == COLLATION_SYMBOL || ((LA51_0 >= COLUMNS_SYMBOL) && (LA51_0 <= COLUMN_NAME_SYMBOL)) || ((LA51_0 >= COMMENT_SYMBOL) && (LA51_0 <= COMPRESSED_SYMBOL)) || LA51_0 == CONCURRENT_SYMBOL || ((LA51_0 >= CONNECTION_SYMBOL) && (LA51_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA51_0 >= CONTAINS_SYMBOL) && (LA51_0 <= CONTEXT_SYMBOL)) || LA51_0 == CONTRIBUTORS_SYMBOL || LA51_0 == CPU_SYMBOL || LA51_0 == CUBE_SYMBOL || LA51_0 == CURRENT_SYMBOL || LA51_0 == CURSOR_NAME_SYMBOL || ((LA51_0 >= DATAFILE_SYMBOL) && (LA51_0 <= DATETIME_SYMBOL)) || LA51_0 == DATE_SYMBOL || ((LA51_0 >= DAY_SYMBOL) && (LA51_0 <= DEALLOCATE_SYMBOL)) || LA51_0 == DEFAULT_AUTH_SYMBOL || LA51_0 == DEFINER_SYMBOL || LA51_0 == DELAY_KEY_WRITE_SYMBOL || LA51_0 == DES_KEY_FILE_SYMBOL || LA51_0 == DIAGNOSTICS_SYMBOL || ((LA51_0 >= DIRECTORY_SYMBOL) && (LA51_0 <= DISK_SYMBOL)) || LA51_0 == DO_SYMBOL || ((LA51_0 >= DUMPFILE_SYMBOL) && (LA51_0 <= DYNAMIC_SYMBOL)) || LA51_0 == ENABLE_SYMBOL || LA51_0 == ENDS_SYMBOL || ((LA51_0 >= END_SYMBOL) && (LA51_0 <= ENUM_SYMBOL)) || ((LA51_0 >= ERRORS_SYMBOL) && (LA51_0 <= ERROR_SYMBOL)) || ((LA51_0 >= ESCAPE_SYMBOL) && (LA51_0 <= EVERY_SYMBOL)) || LA51_0 == EXECUTE_SYMBOL || LA51_0 == EXPANSION_SYMBOL || LA51_0 == EXPORT_SYMBOL || ((LA51_0 >= EXTENDED_SYMBOL) && (LA51_0 <= EXTENT_SIZE_SYMBOL)) || ((LA51_0 >= FAST_SYMBOL) && (LA51_0 <= FAULTS_SYMBOL)) || ((LA51_0 >= FILE_SYMBOL) && (LA51_0 <= FIXED_SYMBOL)) || LA51_0 == FLUSH_SYMBOL || LA51_0 == FORMAT_SYMBOL || LA51_0 == FOUND_SYMBOL || LA51_0 == FULL_SYMBOL || ((LA51_0 >= FUNCTION_SYMBOL) && (LA51_0 <= GET_FORMAT_SYMBOL)) || ((LA51_0 >= GLOBAL_SYMBOL) && (LA51_0 <= GRANTS_SYMBOL)) || ((LA51_0 >= HANDLER_SYMBOL) && (LA51_0 <= HASH_SYMBOL)) || LA51_0 == HELP_SYMBOL || ((LA51_0 >= HOSTS_SYMBOL) && (LA51_0 <= HOST_SYMBOL)) || ((LA51_0 >= HOUR_SYMBOL) && (LA51_0 <= IDENTIFIED_SYMBOL)) || LA51_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA51_0 >= IMPORT_SYMBOL) && (LA51_0 <= INDEXES_SYMBOL)) || LA51_0 == INITIAL_SIZE_SYMBOL || LA51_0 == INNODB_SYMBOL || LA51_0 == INSERT_METHOD_SYMBOL || LA51_0 == INSTALL_SYMBOL || LA51_0 == INVOKER_SYMBOL || LA51_0 == IO_SYMBOL || ((LA51_0 >= IPC_SYMBOL) && (LA51_0 <= ISSUER_SYMBOL)) || LA51_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA51_0 >= LANGUAGE_SYMBOL) && (LA51_0 <= LAST_SYMBOL)) || LA51_0 == LEAVES_SYMBOL || LA51_0 == LESS_SYMBOL || LA51_0 == LEVEL_SYMBOL || LA51_0 == LINESTRING_SYMBOL || LA51_0 == LIST_SYMBOL || LA51_0 == LOCAL_SYMBOL || LA51_0 == LOCKS_SYMBOL || LA51_0 == LOGFILE_SYMBOL || LA51_0 == LOGS_SYMBOL || LA51_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA51_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA51_0 <= MASTER_SSL_SYMBOL)) || ((LA51_0 >= MASTER_SYMBOL) && (LA51_0 <= MASTER_USER_SYMBOL)) || ((LA51_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA51_0 <= MAX_SIZE_SYMBOL)) || ((LA51_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA51_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA51_0 >= MEDIUM_SYMBOL) && (LA51_0 <= MICROSECOND_SYMBOL)) || LA51_0 == MIGRATE_SYMBOL || ((LA51_0 >= MINUTE_SYMBOL) && (LA51_0 <= MIN_ROWS_SYMBOL)) || LA51_0 == MODE_SYMBOL || LA51_0 == MODIFY_SYMBOL || ((LA51_0 >= MONTH_SYMBOL) && (LA51_0 <= MULTILINESTRING_SYMBOL)) || ((LA51_0 >= MULTIPOINT_SYMBOL) && (LA51_0 <= MULTIPOLYGON_SYMBOL)) || ((LA51_0 >= MUTEX_SYMBOL) && (LA51_0 <= NATIONAL_SYMBOL)) || LA51_0 == NCHAR_SYMBOL || LA51_0 == NDBCLUSTER_SYMBOL || ((LA51_0 >= NEW_SYMBOL) && (LA51_0 <= NONE_SYMBOL)) || ((LA51_0 >= NO_SYMBOL) && (LA51_0 <= NO_WAIT_SYMBOL)) || LA51_0 == NUMBER_SYMBOL || LA51_0 == NVARCHAR_SYMBOL || ((LA51_0 >= OFFSET_SYMBOL) && (LA51_0 <= ONE_SYMBOL)) || LA51_0 == OPEN_SYMBOL || LA51_0 == OPTIONS_SYMBOL || ((LA51_0 >= OWNER_SYMBOL) && (LA51_0 <= PAGE_SYMBOL)) || ((LA51_0 >= PARSER_SYMBOL) && (LA51_0 <= PARTITION_SYMBOL)) || ((LA51_0 >= PASSWORD_SYMBOL) && (LA51_0 <= PLUGIN_SYMBOL)) || ((LA51_0 >= POINT_SYMBOL) && (LA51_0 <= PORT_SYMBOL)) || ((LA51_0 >= PREPARE_SYMBOL) && (LA51_0 <= PREV_SYMBOL)) || LA51_0 == PRIVILEGES_SYMBOL || ((LA51_0 >= PROCESSLIST_SYMBOL) && (LA51_0 <= PROXY_SYMBOL)) || ((LA51_0 >= QUARTER_SYMBOL) && (LA51_0 <= QUICK_SYMBOL)) || LA51_0 == READ_ONLY_SYMBOL || ((LA51_0 >= REBUILD_SYMBOL) && (LA51_0 <= REDUNDANT_SYMBOL)) || ((LA51_0 >= RELAYLOG_SYMBOL) && (LA51_0 <= RELAY_THREAD_SYMBOL)) || ((LA51_0 >= RELOAD_SYMBOL) && (LA51_0 <= REMOVE_SYMBOL)) || ((LA51_0 >= REORGANIZE_SYMBOL) && (LA51_0 <= REPEATABLE_SYMBOL)) || LA51_0 == REPLICATION_SYMBOL || LA51_0 == RESET_SYMBOL || LA51_0 == RESTORE_SYMBOL || ((LA51_0 >= RESUME_SYMBOL) && (LA51_0 <= RETURNS_SYMBOL)) || LA51_0 == REVERSE_SYMBOL || ((LA51_0 >= ROLLBACK_SYMBOL) && (LA51_0 <= SCHEDULE_SYMBOL)) || LA51_0 == SCHEMA_NAME_SYMBOL || ((LA51_0 >= SECOND_SYMBOL) && (LA51_0 <= SECURITY_SYMBOL)) || ((LA51_0 >= SERIALIZABLE_SYMBOL) && (LA51_0 <= SERIAL_SYMBOL)) || ((LA51_0 >= SERVER_SYMBOL) && (LA51_0 <= SESSION_SYMBOL)) || LA51_0 == SHARE_SYMBOL || LA51_0 == SHUTDOWN_SYMBOL || ((LA51_0 >= SIGNED_SYMBOL) && (LA51_0 <= SIMPLE_SYMBOL)) || ((LA51_0 >= SLAVE_SYMBOL) && (LA51_0 <= SLOW_SYMBOL)) || ((LA51_0 >= SNAPSHOT_SYMBOL) && (LA51_0 <= SOURCE_SYMBOL)) || ((LA51_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA51_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA51_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA51_0 <= SQL_CACHE_SYMBOL)) || LA51_0 == SQL_NO_CACHE_SYMBOL || LA51_0 == SQL_THREAD_SYMBOL || ((LA51_0 >= STARTS_SYMBOL) && (LA51_0 <= STATUS_SYMBOL)) || ((LA51_0 >= STOP_SYMBOL) && (LA51_0 <= STORAGE_SYMBOL)) || ((LA51_0 >= STRING_SYMBOL) && (LA51_0 <= SUBPARTITION_SYMBOL)) || ((LA51_0 >= SUPER_SYMBOL) && (LA51_0 <= SWITCHES_SYMBOL)) || ((LA51_0 >= TABLESPACE_SYMBOL) && (LA51_0 <= TABLE_NAME_SYMBOL)) || ((LA51_0 >= TEMPORARY_SYMBOL) && (LA51_0 <= TEMPTABLE_SYMBOL)) || ((LA51_0 >= TEXT_SYMBOL) && (LA51_0 <= THAN_SYMBOL)) || ((LA51_0 >= TIMESTAMP_ADD_SYMBOL) && (LA51_0 <= TIME_SYMBOL)) || ((LA51_0 >= TRANSACTION_SYMBOL) && (LA51_0 <= TRIGGERS_SYMBOL)) || ((LA51_0 >= TRUNCATE_SYMBOL) && (LA51_0 <= UDF_RETURNS_SYMBOL)) || ((LA51_0 >= UNCOMMITTED_SYMBOL) && (LA51_0 <= UNDEFINED_SYMBOL)) || ((LA51_0 >= UNDOFILE_SYMBOL) && (LA51_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA51_0 >= UNICODE_SYMBOL) && (LA51_0 <= UNINSTALL_SYMBOL)) || LA51_0 == UNKNOWN_SYMBOL || LA51_0 == UNTIL_SYMBOL || LA51_0 == UPGRADE_SYMBOL || ((LA51_0 >= USER_RESOURCES_SYMBOL) && (LA51_0 <= USE_FRM_SYMBOL)) || LA51_0 == VALUE_SYMBOL || LA51_0 == VARIABLES_SYMBOL || ((LA51_0 >= VIEW_SYMBOL) && (LA51_0 <= WEIGHT_STRING_SYMBOL)) || ((LA51_0 >= WORK_SYMBOL) && (LA51_0 <= WRAPPER_SYMBOL)) || LA51_0 == X509_SYMBOL || ((LA51_0 >= XA_SYMBOL) && (LA51_0 <= XML_SYMBOL)) || LA51_0 == YEAR_SYMBOL))
        	                {
        	                    alt51=1;
        	                }
        	            }
        	            switch (alt51)
        	            {
        	        	case 1:
        	        	    // MySQL.g:340:59: identifier
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_identifier_in_alter_table_list_item925);
        	        	        identifier160=identifier(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier160.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_index_columns_in_alter_table_list_item928);
        	        index_columns161=index_columns(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_columns161.tree);

        	        // MySQL.g:340:85: ( index_option )*

        	        for (;;)
        	        {
        	            int alt52=2;
        	            {
        	               /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
        	                */
        	                int LA52_0 = LA(1);
        	                if ( (LA52_0 == KEY_BLOCK_SIZE_SYMBOL || LA52_0 == TYPE_SYMBOL || LA52_0 == USING_SYMBOL || LA52_0 == WITH_SYMBOL))
        	                {
        	                    alt52=1;
        	                }
        	                else if ( ((SERVER_VERSION >= 50600)) && (LA52_0 == COMMENT_SYMBOL))
        	                {
        	                    alt52=1;
        	                }

        	            }
        	            switch (alt52)
        	            {
        	        	case 1:
        	        	    // MySQL.g:340:85: index_option
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_index_option_in_alter_table_list_item930);
        	        	        index_option162=index_option(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_option162.tree);

        	        	    }
        	        	    break;

        	        	default:
        	        	    goto loop52;	/* break out of the loop */
        	        	    break;
        	            }
        	        }
        	        loop52: ; /* Jump out to here if this rule does not match */


        	    }
        	    break;
        	case 7:
        	    // MySQL.g:341:4: ALTER_SYMBOL ( COLUMN_SYMBOL )? identifier ( SET_SYMBOL DEFAULT_SYMBOL literal | DROP_SYMBOL DEFAULT_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ALTER_SYMBOL163 = (pANTLR3_COMMON_TOKEN) MATCHT(ALTER_SYMBOL, &FOLLOW_ALTER_SYMBOL_in_alter_table_list_item936);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ALTER_SYMBOL163_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALTER_SYMBOL163));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ALTER_SYMBOL163_tree);
        	        }

        	        // MySQL.g:341:17: ( COLUMN_SYMBOL )?
        	        {
        	            int alt53=2;
        	            switch ( LA(1) )
        	            {
        	                case COLUMN_SYMBOL:
        	                	{
        	                		alt53=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt53)
        	            {
        	        	case 1:
        	        	    // MySQL.g:341:17: COLUMN_SYMBOL
        	        	    {
        	        	        COLUMN_SYMBOL164 = (pANTLR3_COMMON_TOKEN) MATCHT(COLUMN_SYMBOL, &FOLLOW_COLUMN_SYMBOL_in_alter_table_list_item938);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COLUMN_SYMBOL164_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLUMN_SYMBOL164));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COLUMN_SYMBOL164_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_identifier_in_alter_table_list_item941);
        	        identifier165=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier165.tree);

        	        // MySQL.g:341:43: ( SET_SYMBOL DEFAULT_SYMBOL literal | DROP_SYMBOL DEFAULT_SYMBOL )
        	        {
        	            int alt54=2;
        	            switch ( LA(1) )
        	            {
        	            case SET_SYMBOL:
        	            	{
        	            		alt54=1;
        	            	}
        	                break;
        	            case DROP_SYMBOL:
        	            	{
        	            		alt54=2;
        	            	}
        	                break;

        	            default:
        	                if (BACKTRACKING>0)
        	                {
        	                    FAILEDFLAG = ANTLR3_TRUE;
        	                    return retval;
        	                }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                EXCEPTION->message      = (void *)"";
        	                EXCEPTION->decisionNum  = 54;
        	                EXCEPTION->state        = 0;


        	                goto rulealter_table_list_itemEx;

        	            }

        	            switch (alt54)
        	            {
        	        	case 1:
        	        	    // MySQL.g:341:44: SET_SYMBOL DEFAULT_SYMBOL literal
        	        	    {
        	        	        SET_SYMBOL166 = (pANTLR3_COMMON_TOKEN) MATCHT(SET_SYMBOL, &FOLLOW_SET_SYMBOL_in_alter_table_list_item944);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        SET_SYMBOL166_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SET_SYMBOL166));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, SET_SYMBOL166_tree);
        	        	        }

        	        	        DEFAULT_SYMBOL167 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_alter_table_list_item946);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DEFAULT_SYMBOL167_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL167));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL167_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_literal_in_alter_table_list_item948);
        	        	        literal168=literal(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, literal168.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:341:80: DROP_SYMBOL DEFAULT_SYMBOL
        	        	    {
        	        	        DROP_SYMBOL169 = (pANTLR3_COMMON_TOKEN) MATCHT(DROP_SYMBOL, &FOLLOW_DROP_SYMBOL_in_alter_table_list_item952);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DROP_SYMBOL169_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DROP_SYMBOL169));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DROP_SYMBOL169_tree);
        	        	        }

        	        	        DEFAULT_SYMBOL170 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_alter_table_list_item954);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DEFAULT_SYMBOL170_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL170));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL170_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:342:4: CHANGE_SYMBOL ( COLUMN_SYMBOL )? identifier identifier column_definition ( FIRST_SYMBOL | AFTER_SYMBOL identifier )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CHANGE_SYMBOL171 = (pANTLR3_COMMON_TOKEN) MATCHT(CHANGE_SYMBOL, &FOLLOW_CHANGE_SYMBOL_in_alter_table_list_item960);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CHANGE_SYMBOL171_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHANGE_SYMBOL171));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CHANGE_SYMBOL171_tree);
        	        }

        	        // MySQL.g:342:18: ( COLUMN_SYMBOL )?
        	        {
        	            int alt55=2;
        	            switch ( LA(1) )
        	            {
        	                case COLUMN_SYMBOL:
        	                	{
        	                		alt55=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt55)
        	            {
        	        	case 1:
        	        	    // MySQL.g:342:18: COLUMN_SYMBOL
        	        	    {
        	        	        COLUMN_SYMBOL172 = (pANTLR3_COMMON_TOKEN) MATCHT(COLUMN_SYMBOL, &FOLLOW_COLUMN_SYMBOL_in_alter_table_list_item962);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COLUMN_SYMBOL172_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLUMN_SYMBOL172));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COLUMN_SYMBOL172_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_identifier_in_alter_table_list_item965);
        	        identifier173=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier173.tree);

        	        FOLLOWPUSH(FOLLOW_identifier_in_alter_table_list_item967);
        	        identifier174=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier174.tree);

        	        FOLLOWPUSH(FOLLOW_column_definition_in_alter_table_list_item969);
        	        column_definition175=column_definition(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, column_definition175.tree);

        	        // MySQL.g:342:73: ( FIRST_SYMBOL | AFTER_SYMBOL identifier )?
        	        {
        	            int alt56=3;
        	            switch ( LA(1) )
        	            {
        	                case FIRST_SYMBOL:
        	                	{
        	                		alt56=1;
        	                	}
        	                    break;
        	                case AFTER_SYMBOL:
        	                	{
        	                		alt56=2;
        	                	}
        	                    break;
        	            }

        	            switch (alt56)
        	            {
        	        	case 1:
        	        	    // MySQL.g:342:74: FIRST_SYMBOL
        	        	    {
        	        	        FIRST_SYMBOL176 = (pANTLR3_COMMON_TOKEN) MATCHT(FIRST_SYMBOL, &FOLLOW_FIRST_SYMBOL_in_alter_table_list_item972);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        FIRST_SYMBOL176_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FIRST_SYMBOL176));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, FIRST_SYMBOL176_tree);
        	        	        }

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:342:89: AFTER_SYMBOL identifier
        	        	    {
        	        	        AFTER_SYMBOL177 = (pANTLR3_COMMON_TOKEN) MATCHT(AFTER_SYMBOL, &FOLLOW_AFTER_SYMBOL_in_alter_table_list_item976);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        AFTER_SYMBOL177_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AFTER_SYMBOL177));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, AFTER_SYMBOL177_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_identifier_in_alter_table_list_item978);
        	        	        identifier178=identifier(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier178.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:343:4: MODIFY_SYMBOL ( COLUMN_SYMBOL )? identifier column_definition ( FIRST_SYMBOL | AFTER_SYMBOL identifier )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MODIFY_SYMBOL179 = (pANTLR3_COMMON_TOKEN) MATCHT(MODIFY_SYMBOL, &FOLLOW_MODIFY_SYMBOL_in_alter_table_list_item985);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MODIFY_SYMBOL179_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MODIFY_SYMBOL179));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MODIFY_SYMBOL179_tree);
        	        }

        	        // MySQL.g:343:18: ( COLUMN_SYMBOL )?
        	        {
        	            int alt57=2;
        	            switch ( LA(1) )
        	            {
        	                case COLUMN_SYMBOL:
        	                	{
        	                		alt57=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt57)
        	            {
        	        	case 1:
        	        	    // MySQL.g:343:18: COLUMN_SYMBOL
        	        	    {
        	        	        COLUMN_SYMBOL180 = (pANTLR3_COMMON_TOKEN) MATCHT(COLUMN_SYMBOL, &FOLLOW_COLUMN_SYMBOL_in_alter_table_list_item987);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COLUMN_SYMBOL180_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLUMN_SYMBOL180));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COLUMN_SYMBOL180_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_identifier_in_alter_table_list_item990);
        	        identifier181=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier181.tree);

        	        FOLLOWPUSH(FOLLOW_column_definition_in_alter_table_list_item992);
        	        column_definition182=column_definition(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, column_definition182.tree);

        	        // MySQL.g:343:62: ( FIRST_SYMBOL | AFTER_SYMBOL identifier )?
        	        {
        	            int alt58=3;
        	            switch ( LA(1) )
        	            {
        	                case FIRST_SYMBOL:
        	                	{
        	                		alt58=1;
        	                	}
        	                    break;
        	                case AFTER_SYMBOL:
        	                	{
        	                		alt58=2;
        	                	}
        	                    break;
        	            }

        	            switch (alt58)
        	            {
        	        	case 1:
        	        	    // MySQL.g:343:63: FIRST_SYMBOL
        	        	    {
        	        	        FIRST_SYMBOL183 = (pANTLR3_COMMON_TOKEN) MATCHT(FIRST_SYMBOL, &FOLLOW_FIRST_SYMBOL_in_alter_table_list_item995);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        FIRST_SYMBOL183_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FIRST_SYMBOL183));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, FIRST_SYMBOL183_tree);
        	        	        }

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:343:78: AFTER_SYMBOL identifier
        	        	    {
        	        	        AFTER_SYMBOL184 = (pANTLR3_COMMON_TOKEN) MATCHT(AFTER_SYMBOL, &FOLLOW_AFTER_SYMBOL_in_alter_table_list_item999);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        AFTER_SYMBOL184_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AFTER_SYMBOL184));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, AFTER_SYMBOL184_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_identifier_in_alter_table_list_item1001);
        	        	        identifier185=identifier(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier185.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 10:
        	    // MySQL.g:344:4: DROP_SYMBOL ( ( INDEX_SYMBOL | KEY_SYMBOL ) identifier | ( COLUMN_SYMBOL )? identifier | PRIMARY_SYMBOL KEY_SYMBOL | FOREIGN_SYMBOL KEY_SYMBOL identifier )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DROP_SYMBOL186 = (pANTLR3_COMMON_TOKEN) MATCHT(DROP_SYMBOL, &FOLLOW_DROP_SYMBOL_in_alter_table_list_item1008);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DROP_SYMBOL186_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DROP_SYMBOL186));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DROP_SYMBOL186_tree);
        	        }

        	        // MySQL.g:345:3: ( ( INDEX_SYMBOL | KEY_SYMBOL ) identifier | ( COLUMN_SYMBOL )? identifier | PRIMARY_SYMBOL KEY_SYMBOL | FOREIGN_SYMBOL KEY_SYMBOL identifier )
        	        {
        	            int alt60=4;
        	            {
        	                int LA60_0 = LA(1);
        	                if ( (LA60_0 == INDEX_SYMBOL || LA60_0 == KEY_SYMBOL))
        	                {
        	                    alt60=1;
        	                }
        	                else if ( (LA60_0 == BACK_TICK_QUOTED_ID || LA60_0 == COLUMN_SYMBOL || LA60_0 == IDENTIFIER))
        	                {
        	                    alt60=2;
        	                }
        	                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA60_0 == DOUBLE_QUOTED_TEXT))
        	                {
        	                    alt60=2;
        	                }
        	                else if ( (((LA60_0 >= ACTION_SYMBOL) && (LA60_0 <= ADDDATE_SYMBOL)) || ((LA60_0 >= AFTER_SYMBOL) && (LA60_0 <= ALGORITHM_SYMBOL)) || LA60_0 == ANALYZE_SYMBOL || ((LA60_0 >= ANY_SYMBOL) && (LA60_0 <= ASCII_SYMBOL)) || ((LA60_0 >= AT_SYMBOL) && (LA60_0 <= BACKUP_SYMBOL)) || LA60_0 == BEGIN_SYMBOL || LA60_0 == BINLOG_SYMBOL || LA60_0 == BIT_SYMBOL || ((LA60_0 >= BLOCK_SYMBOL) && (LA60_0 <= BOOL_SYMBOL)) || ((LA60_0 >= BTREE_SYMBOL) && (LA60_0 <= BYTE_SYMBOL)) || LA60_0 == CACHE_SYMBOL || LA60_0 == CASCADED_SYMBOL || ((LA60_0 >= CATALOG_NAME_SYMBOL) && (LA60_0 <= CHANGED_SYMBOL)) || LA60_0 == CHARSET_SYMBOL || LA60_0 == CHECKSUM_SYMBOL || ((LA60_0 >= CIPHER_SYMBOL) && (LA60_0 <= CLIENT_SYMBOL)) || ((LA60_0 >= CLOSE_SYMBOL) && (LA60_0 <= CODE_SYMBOL)) || LA60_0 == COLLATION_SYMBOL || ((LA60_0 >= COLUMNS_SYMBOL) && (LA60_0 <= COLUMN_NAME_SYMBOL)) || ((LA60_0 >= COMMENT_SYMBOL) && (LA60_0 <= COMPRESSED_SYMBOL)) || LA60_0 == CONCURRENT_SYMBOL || ((LA60_0 >= CONNECTION_SYMBOL) && (LA60_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA60_0 >= CONTAINS_SYMBOL) && (LA60_0 <= CONTEXT_SYMBOL)) || LA60_0 == CONTRIBUTORS_SYMBOL || LA60_0 == CPU_SYMBOL || LA60_0 == CUBE_SYMBOL || LA60_0 == CURRENT_SYMBOL || LA60_0 == CURSOR_NAME_SYMBOL || ((LA60_0 >= DATAFILE_SYMBOL) && (LA60_0 <= DATETIME_SYMBOL)) || LA60_0 == DATE_SYMBOL || ((LA60_0 >= DAY_SYMBOL) && (LA60_0 <= DEALLOCATE_SYMBOL)) || LA60_0 == DEFAULT_AUTH_SYMBOL || LA60_0 == DEFINER_SYMBOL || LA60_0 == DELAY_KEY_WRITE_SYMBOL || LA60_0 == DES_KEY_FILE_SYMBOL || LA60_0 == DIAGNOSTICS_SYMBOL || ((LA60_0 >= DIRECTORY_SYMBOL) && (LA60_0 <= DISK_SYMBOL)) || LA60_0 == DO_SYMBOL || ((LA60_0 >= DUMPFILE_SYMBOL) && (LA60_0 <= DYNAMIC_SYMBOL)) || LA60_0 == ENABLE_SYMBOL || LA60_0 == ENDS_SYMBOL || ((LA60_0 >= END_SYMBOL) && (LA60_0 <= ENUM_SYMBOL)) || ((LA60_0 >= ERRORS_SYMBOL) && (LA60_0 <= ERROR_SYMBOL)) || ((LA60_0 >= ESCAPE_SYMBOL) && (LA60_0 <= EVERY_SYMBOL)) || LA60_0 == EXECUTE_SYMBOL || LA60_0 == EXPANSION_SYMBOL || LA60_0 == EXPORT_SYMBOL || ((LA60_0 >= EXTENDED_SYMBOL) && (LA60_0 <= EXTENT_SIZE_SYMBOL)) || ((LA60_0 >= FAST_SYMBOL) && (LA60_0 <= FAULTS_SYMBOL)) || ((LA60_0 >= FILE_SYMBOL) && (LA60_0 <= FIXED_SYMBOL)) || LA60_0 == FLUSH_SYMBOL || LA60_0 == FORMAT_SYMBOL || LA60_0 == FOUND_SYMBOL || LA60_0 == FULL_SYMBOL || ((LA60_0 >= FUNCTION_SYMBOL) && (LA60_0 <= GET_FORMAT_SYMBOL)) || ((LA60_0 >= GLOBAL_SYMBOL) && (LA60_0 <= GRANTS_SYMBOL)) || ((LA60_0 >= HANDLER_SYMBOL) && (LA60_0 <= HASH_SYMBOL)) || LA60_0 == HELP_SYMBOL || ((LA60_0 >= HOSTS_SYMBOL) && (LA60_0 <= HOST_SYMBOL)) || ((LA60_0 >= HOUR_SYMBOL) && (LA60_0 <= IDENTIFIED_SYMBOL)) || LA60_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA60_0 >= IMPORT_SYMBOL) && (LA60_0 <= INDEXES_SYMBOL)) || LA60_0 == INITIAL_SIZE_SYMBOL || LA60_0 == INNODB_SYMBOL || LA60_0 == INSERT_METHOD_SYMBOL || LA60_0 == INSTALL_SYMBOL || LA60_0 == INVOKER_SYMBOL || LA60_0 == IO_SYMBOL || ((LA60_0 >= IPC_SYMBOL) && (LA60_0 <= ISSUER_SYMBOL)) || LA60_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA60_0 >= LANGUAGE_SYMBOL) && (LA60_0 <= LAST_SYMBOL)) || LA60_0 == LEAVES_SYMBOL || LA60_0 == LESS_SYMBOL || LA60_0 == LEVEL_SYMBOL || LA60_0 == LINESTRING_SYMBOL || LA60_0 == LIST_SYMBOL || LA60_0 == LOCAL_SYMBOL || LA60_0 == LOCKS_SYMBOL || LA60_0 == LOGFILE_SYMBOL || LA60_0 == LOGS_SYMBOL || LA60_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA60_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA60_0 <= MASTER_SSL_SYMBOL)) || ((LA60_0 >= MASTER_SYMBOL) && (LA60_0 <= MASTER_USER_SYMBOL)) || ((LA60_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA60_0 <= MAX_SIZE_SYMBOL)) || ((LA60_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA60_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA60_0 >= MEDIUM_SYMBOL) && (LA60_0 <= MICROSECOND_SYMBOL)) || LA60_0 == MIGRATE_SYMBOL || ((LA60_0 >= MINUTE_SYMBOL) && (LA60_0 <= MIN_ROWS_SYMBOL)) || LA60_0 == MODE_SYMBOL || LA60_0 == MODIFY_SYMBOL || ((LA60_0 >= MONTH_SYMBOL) && (LA60_0 <= MULTILINESTRING_SYMBOL)) || ((LA60_0 >= MULTIPOINT_SYMBOL) && (LA60_0 <= MULTIPOLYGON_SYMBOL)) || ((LA60_0 >= MUTEX_SYMBOL) && (LA60_0 <= NATIONAL_SYMBOL)) || LA60_0 == NCHAR_SYMBOL || LA60_0 == NDBCLUSTER_SYMBOL || ((LA60_0 >= NEW_SYMBOL) && (LA60_0 <= NONE_SYMBOL)) || ((LA60_0 >= NO_SYMBOL) && (LA60_0 <= NO_WAIT_SYMBOL)) || LA60_0 == NUMBER_SYMBOL || LA60_0 == NVARCHAR_SYMBOL || ((LA60_0 >= OFFSET_SYMBOL) && (LA60_0 <= ONE_SYMBOL)) || LA60_0 == OPEN_SYMBOL || LA60_0 == OPTIONS_SYMBOL || ((LA60_0 >= OWNER_SYMBOL) && (LA60_0 <= PAGE_SYMBOL)) || ((LA60_0 >= PARSER_SYMBOL) && (LA60_0 <= PARTITION_SYMBOL)) || ((LA60_0 >= PASSWORD_SYMBOL) && (LA60_0 <= PLUGIN_SYMBOL)) || ((LA60_0 >= POINT_SYMBOL) && (LA60_0 <= PORT_SYMBOL)) || ((LA60_0 >= PREPARE_SYMBOL) && (LA60_0 <= PREV_SYMBOL)) || LA60_0 == PRIVILEGES_SYMBOL || ((LA60_0 >= PROCESSLIST_SYMBOL) && (LA60_0 <= PROXY_SYMBOL)) || ((LA60_0 >= QUARTER_SYMBOL) && (LA60_0 <= QUICK_SYMBOL)) || LA60_0 == READ_ONLY_SYMBOL || ((LA60_0 >= REBUILD_SYMBOL) && (LA60_0 <= REDUNDANT_SYMBOL)) || ((LA60_0 >= RELAYLOG_SYMBOL) && (LA60_0 <= RELAY_THREAD_SYMBOL)) || ((LA60_0 >= RELOAD_SYMBOL) && (LA60_0 <= REMOVE_SYMBOL)) || ((LA60_0 >= REORGANIZE_SYMBOL) && (LA60_0 <= REPEATABLE_SYMBOL)) || LA60_0 == REPLICATION_SYMBOL || LA60_0 == RESET_SYMBOL || LA60_0 == RESTORE_SYMBOL || ((LA60_0 >= RESUME_SYMBOL) && (LA60_0 <= RETURNS_SYMBOL)) || LA60_0 == REVERSE_SYMBOL || ((LA60_0 >= ROLLBACK_SYMBOL) && (LA60_0 <= SCHEDULE_SYMBOL)) || LA60_0 == SCHEMA_NAME_SYMBOL || ((LA60_0 >= SECOND_SYMBOL) && (LA60_0 <= SECURITY_SYMBOL)) || ((LA60_0 >= SERIALIZABLE_SYMBOL) && (LA60_0 <= SERIAL_SYMBOL)) || ((LA60_0 >= SERVER_SYMBOL) && (LA60_0 <= SESSION_SYMBOL)) || LA60_0 == SHARE_SYMBOL || LA60_0 == SHUTDOWN_SYMBOL || ((LA60_0 >= SIGNED_SYMBOL) && (LA60_0 <= SIMPLE_SYMBOL)) || ((LA60_0 >= SLAVE_SYMBOL) && (LA60_0 <= SLOW_SYMBOL)) || ((LA60_0 >= SNAPSHOT_SYMBOL) && (LA60_0 <= SOURCE_SYMBOL)) || ((LA60_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA60_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA60_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA60_0 <= SQL_CACHE_SYMBOL)) || LA60_0 == SQL_NO_CACHE_SYMBOL || LA60_0 == SQL_THREAD_SYMBOL || ((LA60_0 >= STARTS_SYMBOL) && (LA60_0 <= STATUS_SYMBOL)) || ((LA60_0 >= STOP_SYMBOL) && (LA60_0 <= STORAGE_SYMBOL)) || ((LA60_0 >= STRING_SYMBOL) && (LA60_0 <= SUBPARTITION_SYMBOL)) || ((LA60_0 >= SUPER_SYMBOL) && (LA60_0 <= SWITCHES_SYMBOL)) || ((LA60_0 >= TABLESPACE_SYMBOL) && (LA60_0 <= TABLE_NAME_SYMBOL)) || ((LA60_0 >= TEMPORARY_SYMBOL) && (LA60_0 <= TEMPTABLE_SYMBOL)) || ((LA60_0 >= TEXT_SYMBOL) && (LA60_0 <= THAN_SYMBOL)) || ((LA60_0 >= TIMESTAMP_ADD_SYMBOL) && (LA60_0 <= TIME_SYMBOL)) || ((LA60_0 >= TRANSACTION_SYMBOL) && (LA60_0 <= TRIGGERS_SYMBOL)) || ((LA60_0 >= TRUNCATE_SYMBOL) && (LA60_0 <= UDF_RETURNS_SYMBOL)) || ((LA60_0 >= UNCOMMITTED_SYMBOL) && (LA60_0 <= UNDEFINED_SYMBOL)) || ((LA60_0 >= UNDOFILE_SYMBOL) && (LA60_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA60_0 >= UNICODE_SYMBOL) && (LA60_0 <= UNINSTALL_SYMBOL)) || LA60_0 == UNKNOWN_SYMBOL || LA60_0 == UNTIL_SYMBOL || LA60_0 == UPGRADE_SYMBOL || ((LA60_0 >= USER_RESOURCES_SYMBOL) && (LA60_0 <= USE_FRM_SYMBOL)) || LA60_0 == VALUE_SYMBOL || LA60_0 == VARIABLES_SYMBOL || ((LA60_0 >= VIEW_SYMBOL) && (LA60_0 <= WEIGHT_STRING_SYMBOL)) || ((LA60_0 >= WORK_SYMBOL) && (LA60_0 <= WRAPPER_SYMBOL)) || LA60_0 == X509_SYMBOL || ((LA60_0 >= XA_SYMBOL) && (LA60_0 <= XML_SYMBOL)) || LA60_0 == YEAR_SYMBOL))
        	                {
        	                    alt60=2;
        	                }
        	                else if ( (LA60_0 == PRIMARY_SYMBOL))
        	                {
        	                    alt60=3;
        	                }
        	                else if ( (LA60_0 == FOREIGN_SYMBOL))
        	                {
        	                    alt60=4;
        	                }
        	                else
        	                {
        	                    if (BACKTRACKING>0)
        	                    {
        	                        FAILEDFLAG = ANTLR3_TRUE;
        	                        return retval;
        	                    }


        	                    CONSTRUCTEX();
        	                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    EXCEPTION->message      = (void *)"";
        	                    EXCEPTION->decisionNum  = 60;
        	                    EXCEPTION->state        = 0;


        	                    goto rulealter_table_list_itemEx;

        	                }
        	            }
        	            switch (alt60)
        	            {
        	        	case 1:
        	        	    // MySQL.g:346:4: ( INDEX_SYMBOL | KEY_SYMBOL ) identifier
        	        	    {
        	        	        set187=(pANTLR3_COMMON_TOKEN)LT(1);

        	        	        if ( LA(1) == INDEX_SYMBOL || LA(1) == KEY_SYMBOL )
        	        	        {
        	        	            CONSUME();
        	        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set187))
        	        	            );
        	        	            PERRORRECOVERY=ANTLR3_FALSE;
        	        	            FAILEDFLAG=ANTLR3_FALSE;

        	        	        }
        	        	        else
        	        	        {
        	        	            if (BACKTRACKING>0)
        	        	            {
        	        	                FAILEDFLAG = ANTLR3_TRUE;
        	        	                return retval;
        	        	            }

        	        	            CONSTRUCTEX();
        	        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
        	        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
        	        	            EXCEPTION->expectingSet = NULL;

        	        	            goto rulealter_table_list_itemEx;
        	        	        }


        	        	        FOLLOWPUSH(FOLLOW_identifier_in_alter_table_list_item1025);
        	        	        identifier188=identifier(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier188.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:347:6: ( COLUMN_SYMBOL )? identifier
        	        	    {
        	        	        // MySQL.g:347:6: ( COLUMN_SYMBOL )?
        	        	        {
        	        	            int alt59=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case COLUMN_SYMBOL:
        	        	                	{
        	        	                		alt59=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt59)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:347:6: COLUMN_SYMBOL
        	        	        	    {
        	        	        	        COLUMN_SYMBOL189 = (pANTLR3_COMMON_TOKEN) MATCHT(COLUMN_SYMBOL, &FOLLOW_COLUMN_SYMBOL_in_alter_table_list_item1032);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulealter_table_list_itemEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        COLUMN_SYMBOL189_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLUMN_SYMBOL189));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COLUMN_SYMBOL189_tree);
        	        	        	        }

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_identifier_in_alter_table_list_item1035);
        	        	        identifier190=identifier(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier190.tree);

        	        	    }
        	        	    break;
        	        	case 3:
        	        	    // MySQL.g:348:6: PRIMARY_SYMBOL KEY_SYMBOL
        	        	    {
        	        	        PRIMARY_SYMBOL191 = (pANTLR3_COMMON_TOKEN) MATCHT(PRIMARY_SYMBOL, &FOLLOW_PRIMARY_SYMBOL_in_alter_table_list_item1042);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        PRIMARY_SYMBOL191_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PRIMARY_SYMBOL191));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, PRIMARY_SYMBOL191_tree);
        	        	        }

        	        	        KEY_SYMBOL192 = (pANTLR3_COMMON_TOKEN) MATCHT(KEY_SYMBOL, &FOLLOW_KEY_SYMBOL_in_alter_table_list_item1044);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        KEY_SYMBOL192_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, KEY_SYMBOL192));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, KEY_SYMBOL192_tree);
        	        	        }

        	        	    }
        	        	    break;
        	        	case 4:
        	        	    // MySQL.g:349:6: FOREIGN_SYMBOL KEY_SYMBOL identifier
        	        	    {
        	        	        FOREIGN_SYMBOL193 = (pANTLR3_COMMON_TOKEN) MATCHT(FOREIGN_SYMBOL, &FOLLOW_FOREIGN_SYMBOL_in_alter_table_list_item1051);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        FOREIGN_SYMBOL193_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOREIGN_SYMBOL193));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, FOREIGN_SYMBOL193_tree);
        	        	        }

        	        	        KEY_SYMBOL194 = (pANTLR3_COMMON_TOKEN) MATCHT(KEY_SYMBOL, &FOLLOW_KEY_SYMBOL_in_alter_table_list_item1053);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        KEY_SYMBOL194_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, KEY_SYMBOL194));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, KEY_SYMBOL194_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_identifier_in_alter_table_list_item1055);
        	        	        identifier195=identifier(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier195.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 11:
        	    // MySQL.g:351:4: DISABLE_SYMBOL KEYS_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DISABLE_SYMBOL196 = (pANTLR3_COMMON_TOKEN) MATCHT(DISABLE_SYMBOL, &FOLLOW_DISABLE_SYMBOL_in_alter_table_list_item1064);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DISABLE_SYMBOL196_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DISABLE_SYMBOL196));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DISABLE_SYMBOL196_tree);
        	        }

        	        KEYS_SYMBOL197 = (pANTLR3_COMMON_TOKEN) MATCHT(KEYS_SYMBOL, &FOLLOW_KEYS_SYMBOL_in_alter_table_list_item1066);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        KEYS_SYMBOL197_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, KEYS_SYMBOL197));
        	        ADAPTOR->addChild(ADAPTOR, root_0, KEYS_SYMBOL197_tree);
        	        }

        	    }
        	    break;
        	case 12:
        	    // MySQL.g:352:4: ENABLE_SYMBOL KEYS_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ENABLE_SYMBOL198 = (pANTLR3_COMMON_TOKEN) MATCHT(ENABLE_SYMBOL, &FOLLOW_ENABLE_SYMBOL_in_alter_table_list_item1071);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ENABLE_SYMBOL198_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ENABLE_SYMBOL198));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ENABLE_SYMBOL198_tree);
        	        }

        	        KEYS_SYMBOL199 = (pANTLR3_COMMON_TOKEN) MATCHT(KEYS_SYMBOL, &FOLLOW_KEYS_SYMBOL_in_alter_table_list_item1073);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        KEYS_SYMBOL199_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, KEYS_SYMBOL199));
        	        ADAPTOR->addChild(ADAPTOR, root_0, KEYS_SYMBOL199_tree);
        	        }

        	    }
        	    break;
        	case 13:
        	    // MySQL.g:353:4: RENAME_SYMBOL ( TO_SYMBOL | AS_SYMBOL )? identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        RENAME_SYMBOL200 = (pANTLR3_COMMON_TOKEN) MATCHT(RENAME_SYMBOL, &FOLLOW_RENAME_SYMBOL_in_alter_table_list_item1078);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        RENAME_SYMBOL200_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RENAME_SYMBOL200));
        	        ADAPTOR->addChild(ADAPTOR, root_0, RENAME_SYMBOL200_tree);
        	        }

        	        // MySQL.g:353:18: ( TO_SYMBOL | AS_SYMBOL )?
        	        {
        	            int alt61=2;
        	            switch ( LA(1) )
        	            {
        	                case AS_SYMBOL:
        	                case TO_SYMBOL:
        	                	{
        	                		alt61=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt61)
        	            {
        	        	case 1:
        	        	    // MySQL.g:
        	        	    {
        	        	        set201=(pANTLR3_COMMON_TOKEN)LT(1);

        	        	        if ( LA(1) == AS_SYMBOL || LA(1) == TO_SYMBOL )
        	        	        {
        	        	            CONSUME();
        	        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set201))
        	        	            );
        	        	            PERRORRECOVERY=ANTLR3_FALSE;
        	        	            FAILEDFLAG=ANTLR3_FALSE;

        	        	        }
        	        	        else
        	        	        {
        	        	            if (BACKTRACKING>0)
        	        	            {
        	        	                FAILEDFLAG = ANTLR3_TRUE;
        	        	                return retval;
        	        	            }

        	        	            CONSTRUCTEX();
        	        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
        	        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
        	        	            EXCEPTION->expectingSet = NULL;

        	        	            goto rulealter_table_list_itemEx;
        	        	        }


        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_identifier_in_alter_table_list_item1089);
        	        identifier202=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier202.tree);

        	    }
        	    break;
        	case 14:
        	    // MySQL.g:354:4: alter_order_by
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_alter_order_by_in_alter_table_list_item1094);
        	        alter_order_by203=alter_order_by(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, alter_order_by203.tree);

        	    }
        	    break;
        	case 15:
        	    // MySQL.g:355:4: CONVERT_SYMBOL TO_SYMBOL CHAR_SYMBOL SET_SYMBOL charset_name_or_default ( COLLATE_SYMBOL collation_name_or_default )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CONVERT_SYMBOL204 = (pANTLR3_COMMON_TOKEN) MATCHT(CONVERT_SYMBOL, &FOLLOW_CONVERT_SYMBOL_in_alter_table_list_item1099);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CONVERT_SYMBOL204_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CONVERT_SYMBOL204));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CONVERT_SYMBOL204_tree);
        	        }

        	        TO_SYMBOL205 = (pANTLR3_COMMON_TOKEN) MATCHT(TO_SYMBOL, &FOLLOW_TO_SYMBOL_in_alter_table_list_item1101);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TO_SYMBOL205_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TO_SYMBOL205));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TO_SYMBOL205_tree);
        	        }

        	        CHAR_SYMBOL206 = (pANTLR3_COMMON_TOKEN) MATCHT(CHAR_SYMBOL, &FOLLOW_CHAR_SYMBOL_in_alter_table_list_item1103);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CHAR_SYMBOL206_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHAR_SYMBOL206));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CHAR_SYMBOL206_tree);
        	        }

        	        SET_SYMBOL207 = (pANTLR3_COMMON_TOKEN) MATCHT(SET_SYMBOL, &FOLLOW_SET_SYMBOL_in_alter_table_list_item1105);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SET_SYMBOL207_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SET_SYMBOL207));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SET_SYMBOL207_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_charset_name_or_default_in_alter_table_list_item1107);
        	        charset_name_or_default208=charset_name_or_default(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset_name_or_default208.tree);

        	        // MySQL.g:355:76: ( COLLATE_SYMBOL collation_name_or_default )?
        	        {
        	            int alt62=2;
        	            switch ( LA(1) )
        	            {
        	                case COLLATE_SYMBOL:
        	                	{
        	                		alt62=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt62)
        	            {
        	        	case 1:
        	        	    // MySQL.g:355:77: COLLATE_SYMBOL collation_name_or_default
        	        	    {
        	        	        COLLATE_SYMBOL209 = (pANTLR3_COMMON_TOKEN) MATCHT(COLLATE_SYMBOL, &FOLLOW_COLLATE_SYMBOL_in_alter_table_list_item1110);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COLLATE_SYMBOL209_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLLATE_SYMBOL209));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COLLATE_SYMBOL209_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_collation_name_or_default_in_alter_table_list_item1112);
        	        	        collation_name_or_default210=collation_name_or_default(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, collation_name_or_default210.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 16:
        	    // MySQL.g:356:4: FORCE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FORCE_SYMBOL211 = (pANTLR3_COMMON_TOKEN) MATCHT(FORCE_SYMBOL, &FOLLOW_FORCE_SYMBOL_in_alter_table_list_item1119);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FORCE_SYMBOL211_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FORCE_SYMBOL211));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FORCE_SYMBOL211_tree);
        	        }

        	    }
        	    break;
        	case 17:
        	    // MySQL.g:357:4: {...}? => alter_algorithm_option
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((SERVER_VERSION >= 50600)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50600";
        	                EXCEPTION->ruleName	 = (void *)"alter_table_list_item";


        	        }

        	        FOLLOWPUSH(FOLLOW_alter_algorithm_option_in_alter_table_list_item1128);
        	        alter_algorithm_option212=alter_algorithm_option(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, alter_algorithm_option212.tree);

        	    }
        	    break;
        	case 18:
        	    // MySQL.g:358:4: {...}? => alter_lock_option
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((SERVER_VERSION >= 50600)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50600";
        	                EXCEPTION->ruleName	 = (void *)"alter_table_list_item";


        	        }

        	        FOLLOWPUSH(FOLLOW_alter_lock_option_in_alter_table_list_item1137);
        	        alter_lock_option213=alter_lock_option(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, alter_lock_option213.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulealter_table_list_itemEx; /* Prevent compiler warnings */
    rulealter_table_list_itemEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end alter_table_list_item */

/**
 * $ANTLR start alter_order_by
 * MySQL.g:361:1: alter_order_by : ORDER_SYMBOL BY_SYMBOL identifier direction ( options {greedy=true; } : COMMA_SYMBOL identifier direction )* ;
 */
static MySQLParser_alter_order_by_return
alter_order_by(pMySQLParser ctx)
{
    MySQLParser_alter_order_by_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    ORDER_SYMBOL214;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL215;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL218;
    MySQLParser_identifier_return identifier216;
    #undef	RETURN_TYPE_identifier216
    #define	RETURN_TYPE_identifier216 MySQLParser_identifier_return

    MySQLParser_direction_return direction217;
    #undef	RETURN_TYPE_direction217
    #define	RETURN_TYPE_direction217 MySQLParser_direction_return

    MySQLParser_identifier_return identifier219;
    #undef	RETURN_TYPE_identifier219
    #define	RETURN_TYPE_identifier219 MySQLParser_identifier_return

    MySQLParser_direction_return direction220;
    #undef	RETURN_TYPE_direction220
    #define	RETURN_TYPE_direction220 MySQLParser_direction_return

    pANTLR3_BASE_TREE ORDER_SYMBOL214_tree;
    pANTLR3_BASE_TREE BY_SYMBOL215_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL218_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ORDER_SYMBOL214       = NULL;
    BY_SYMBOL215       = NULL;
    COMMA_SYMBOL218       = NULL;
    identifier216.tree = NULL;

    direction217.tree = NULL;

    identifier219.tree = NULL;

    direction220.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ORDER_SYMBOL214_tree   = NULL;
    BY_SYMBOL215_tree   = NULL;
    COMMA_SYMBOL218_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:361:15: ( ORDER_SYMBOL BY_SYMBOL identifier direction ( options {greedy=true; } : COMMA_SYMBOL identifier direction )* )
        // MySQL.g:362:2: ORDER_SYMBOL BY_SYMBOL identifier direction ( options {greedy=true; } : COMMA_SYMBOL identifier direction )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            ORDER_SYMBOL214 = (pANTLR3_COMMON_TOKEN) MATCHT(ORDER_SYMBOL, &FOLLOW_ORDER_SYMBOL_in_alter_order_by1146);
            if  (HASEXCEPTION())
            {
                goto rulealter_order_byEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ORDER_SYMBOL214_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ORDER_SYMBOL214));
            ADAPTOR->addChild(ADAPTOR, root_0, ORDER_SYMBOL214_tree);
            }

            BY_SYMBOL215 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_alter_order_by1148);
            if  (HASEXCEPTION())
            {
                goto rulealter_order_byEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            BY_SYMBOL215_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BY_SYMBOL215));
            ADAPTOR->addChild(ADAPTOR, root_0, BY_SYMBOL215_tree);
            }

            FOLLOWPUSH(FOLLOW_identifier_in_alter_order_by1150);
            identifier216=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulealter_order_byEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier216.tree);

            FOLLOWPUSH(FOLLOW_direction_in_alter_order_by1152);
            direction217=direction(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulealter_order_byEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, direction217.tree);

            // MySQL.g:362:46: ( options {greedy=true; } : COMMA_SYMBOL identifier direction )*

            for (;;)
            {
                int alt64=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		switch ( LA(2) )
                		{
                		case ENGINE_SYMBOL:
                			{
                				alt64=1;
                			}
                		    break;
                		case TYPE_SYMBOL:
                			{
                				alt64=1;
                			}
                		    break;
                		case MAX_ROWS_SYMBOL:
                			{
                				alt64=1;
                			}
                		    break;
                		case MIN_ROWS_SYMBOL:
                			{
                				alt64=1;
                			}
                		    break;
                		case AVG_ROW_LENGTH_SYMBOL:
                			{
                				alt64=1;
                			}
                		    break;
                		case PASSWORD_SYMBOL:
                			{
                				alt64=1;
                			}
                		    break;
                		case COMMENT_SYMBOL:
                			{
                				alt64=1;
                			}
                		    break;
                		case AUTO_INCREMENT_SYMBOL:
                			{
                				alt64=1;
                			}
                		    break;
                		case PACK_KEYS_SYMBOL:
                			{
                				alt64=1;
                			}
                		    break;
                		case STATS_AUTO_RECALC_SYMBOL:
                		case STATS_PERSISTENT_SYMBOL:
                		case STATS_SAMPLE_PAGES_SYMBOL:
                			{
                				alt64=1;
                			}
                		    break;
                		case TABLE_CHECKSUM_SYMBOL:
                			{
                				alt64=1;
                			}
                		    break;
                		case DELAY_KEY_WRITE_SYMBOL:
                			{
                				alt64=1;
                			}
                		    break;
                		case ROW_FORMAT_SYMBOL:
                			{
                				alt64=1;
                			}
                		    break;
                		case CHARSET_SYMBOL:
                			{
                				alt64=1;
                			}
                		    break;
                		case INSERT_METHOD_SYMBOL:
                			{
                				alt64=1;
                			}
                		    break;
                		case DATA_SYMBOL:
                			{
                				alt64=1;
                			}
                		    break;
                		case TABLESPACE_SYMBOL:
                			{
                				alt64=1;
                			}
                		    break;
                		case STORAGE_SYMBOL:
                			{
                				alt64=1;
                			}
                		    break;
                		case CONNECTION_SYMBOL:
                			{
                				alt64=1;
                			}
                		    break;
                		case KEY_BLOCK_SIZE_SYMBOL:
                			{
                				alt64=1;
                			}
                		    break;
                		case MODIFY_SYMBOL:
                			{
                				alt64=1;
                			}
                		    break;
                		case DISABLE_SYMBOL:
                			{
                				alt64=1;
                			}
                		    break;
                		case ENABLE_SYMBOL:
                			{
                				alt64=1;
                			}
                		    break;
                		case ALGORITHM_SYMBOL:
                			{
                				alt64=1;
                			}
                		    break;
                		case ACTION_SYMBOL:
                		case ADDDATE_SYMBOL:
                		case AFTER_SYMBOL:
                		case AGAINST_SYMBOL:
                		case AGGREGATE_SYMBOL:
                		case ANALYZE_SYMBOL:
                		case ANY_SYMBOL:
                		case ASCII_SYMBOL:
                		case AT_SYMBOL:
                		case AUTHORS_SYMBOL:
                		case AUTOEXTEND_SIZE_SYMBOL:
                		case AVG_SYMBOL:
                		case BACKUP_SYMBOL:
                		case BACK_TICK_QUOTED_ID:
                		case BEGIN_SYMBOL:
                		case BINLOG_SYMBOL:
                		case BIT_SYMBOL:
                		case BLOCK_SYMBOL:
                		case BOOLEAN_SYMBOL:
                		case BOOL_SYMBOL:
                		case BTREE_SYMBOL:
                		case BYTE_SYMBOL:
                		case CACHE_SYMBOL:
                		case CASCADED_SYMBOL:
                		case CATALOG_NAME_SYMBOL:
                		case CHAIN_SYMBOL:
                		case CHANGED_SYMBOL:
                		case CIPHER_SYMBOL:
                		case CLASS_ORIGIN_SYMBOL:
                		case CLIENT_SYMBOL:
                		case CLOSE_SYMBOL:
                		case COALESCE_SYMBOL:
                		case CODE_SYMBOL:
                		case COLLATION_SYMBOL:
                		case COLUMNS_SYMBOL:
                		case COLUMN_FORMAT_SYMBOL:
                		case COLUMN_NAME_SYMBOL:
                		case COMMITTED_SYMBOL:
                		case COMMIT_SYMBOL:
                		case COMPACT_SYMBOL:
                		case COMPLETION_SYMBOL:
                		case COMPRESSED_SYMBOL:
                		case CONCURRENT_SYMBOL:
                		case CONSISTENT_SYMBOL:
                		case CONSTRAINT_CATALOG_SYMBOL:
                		case CONSTRAINT_NAME_SYMBOL:
                		case CONSTRAINT_SCHEMA_SYMBOL:
                		case CONTAINS_SYMBOL:
                		case CONTEXT_SYMBOL:
                		case CONTRIBUTORS_SYMBOL:
                		case CPU_SYMBOL:
                		case CUBE_SYMBOL:
                		case CURRENT_SYMBOL:
                		case CURSOR_NAME_SYMBOL:
                		case DATAFILE_SYMBOL:
                		case DATETIME_SYMBOL:
                		case DATE_SYMBOL:
                		case DAY_SYMBOL:
                		case DEALLOCATE_SYMBOL:
                		case DEFAULT_AUTH_SYMBOL:
                		case DEFINER_SYMBOL:
                		case DES_KEY_FILE_SYMBOL:
                		case DIAGNOSTICS_SYMBOL:
                		case DIRECTORY_SYMBOL:
                		case DISCARD_SYMBOL:
                		case DISK_SYMBOL:
                		case DOUBLE_QUOTED_TEXT:
                		case DO_SYMBOL:
                		case DUMPFILE_SYMBOL:
                		case DUPLICATE_SYMBOL:
                		case DYNAMIC_SYMBOL:
                		case ENDS_SYMBOL:
                		case END_SYMBOL:
                		case ENGINES_SYMBOL:
                		case ENUM_SYMBOL:
                		case ERRORS_SYMBOL:
                		case ERROR_SYMBOL:
                		case ESCAPE_SYMBOL:
                		case EVENTS_SYMBOL:
                		case EVENT_SYMBOL:
                		case EVERY_SYMBOL:
                		case EXECUTE_SYMBOL:
                		case EXPANSION_SYMBOL:
                		case EXPORT_SYMBOL:
                		case EXTENDED_SYMBOL:
                		case EXTENT_SIZE_SYMBOL:
                		case FAST_SYMBOL:
                		case FAULTS_SYMBOL:
                		case FILE_SYMBOL:
                		case FIRST_SYMBOL:
                		case FIXED_SYMBOL:
                		case FLUSH_SYMBOL:
                		case FORMAT_SYMBOL:
                		case FOUND_SYMBOL:
                		case FULL_SYMBOL:
                		case FUNCTION_SYMBOL:
                		case GENERAL_SYMBOL:
                		case GEOMETRYCOLLECTION_SYMBOL:
                		case GEOMETRY_SYMBOL:
                		case GET_FORMAT_SYMBOL:
                		case GLOBAL_SYMBOL:
                		case GRANTS_SYMBOL:
                		case HANDLER_SYMBOL:
                		case HASH_SYMBOL:
                		case HELP_SYMBOL:
                		case HOSTS_SYMBOL:
                		case HOST_SYMBOL:
                		case HOUR_SYMBOL:
                		case IDENTIFIED_SYMBOL:
                		case IDENTIFIER:
                		case IGNORE_SERVER_IDS_SYMBOL:
                		case IMPORT_SYMBOL:
                		case INDEXES_SYMBOL:
                		case INITIAL_SIZE_SYMBOL:
                		case INNODB_SYMBOL:
                		case INSTALL_SYMBOL:
                		case INVOKER_SYMBOL:
                		case IO_SYMBOL:
                		case IPC_SYMBOL:
                		case ISOLATION_SYMBOL:
                		case ISSUER_SYMBOL:
                		case LANGUAGE_SYMBOL:
                		case LAST_SYMBOL:
                		case LEAVES_SYMBOL:
                		case LESS_SYMBOL:
                		case LEVEL_SYMBOL:
                		case LINESTRING_SYMBOL:
                		case LIST_SYMBOL:
                		case LOCAL_SYMBOL:
                		case LOCKS_SYMBOL:
                		case LOGFILE_SYMBOL:
                		case LOGS_SYMBOL:
                		case MASTER_AUTO_POSITION_SYMBOL:
                		case MASTER_CONNECT_RETRY_SYMBOL:
                		case MASTER_DELAY_SYMBOL:
                		case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                		case MASTER_HOST_SYMBOL:
                		case MASTER_LOG_FILE_SYMBOL:
                		case MASTER_LOG_POS_SYMBOL:
                		case MASTER_PASSWORD_SYMBOL:
                		case MASTER_PORT_SYMBOL:
                		case MASTER_RETRY_COUNT_SYMBOL:
                		case MASTER_SERVER_ID_SYMBOL:
                		case MASTER_SSL_CAPATH_SYMBOL:
                		case MASTER_SSL_CA_SYMBOL:
                		case MASTER_SSL_CERT_SYMBOL:
                		case MASTER_SSL_CIPHER_SYMBOL:
                		case MASTER_SSL_CRLPATH_SYMBOL:
                		case MASTER_SSL_CRL_SYMBOL:
                		case MASTER_SSL_KEY_SYMBOL:
                		case MASTER_SSL_SYMBOL:
                		case MASTER_SYMBOL:
                		case MASTER_USER_SYMBOL:
                		case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                		case MAX_QUERIES_PER_HOUR_SYMBOL:
                		case MAX_SIZE_SYMBOL:
                		case MAX_UPDATES_PER_HOUR_SYMBOL:
                		case MAX_USER_CONNECTIONS_SYMBOL:
                		case MEDIUM_SYMBOL:
                		case MEMORY_SYMBOL:
                		case MERGE_SYMBOL:
                		case MESSAGE_TEXT_SYMBOL:
                		case MICROSECOND_SYMBOL:
                		case MIGRATE_SYMBOL:
                		case MINUTE_SYMBOL:
                		case MODE_SYMBOL:
                		case MONTH_SYMBOL:
                		case MULTILINESTRING_SYMBOL:
                		case MULTIPOINT_SYMBOL:
                		case MULTIPOLYGON_SYMBOL:
                		case MUTEX_SYMBOL:
                		case MYSQL_ERRNO_SYMBOL:
                		case NAMES_SYMBOL:
                		case NAME_SYMBOL:
                		case NATIONAL_SYMBOL:
                		case NCHAR_SYMBOL:
                		case NDBCLUSTER_SYMBOL:
                		case NEW_SYMBOL:
                		case NEXT_SYMBOL:
                		case NODEGROUP_SYMBOL:
                		case NONE_SYMBOL:
                		case NO_SYMBOL:
                		case NO_WAIT_SYMBOL:
                		case NUMBER_SYMBOL:
                		case NVARCHAR_SYMBOL:
                		case OFFSET_SYMBOL:
                		case OLD_PASSWORD_SYMBOL:
                		case ONE_SHOT_SYMBOL:
                		case ONE_SYMBOL:
                		case OPEN_SYMBOL:
                		case OPTIONS_SYMBOL:
                		case OWNER_SYMBOL:
                		case PAGE_SYMBOL:
                		case PARSER_SYMBOL:
                		case PARTIAL_SYMBOL:
                		case PARTITIONING_SYMBOL:
                		case PARTITIONS_SYMBOL:
                		case PARTITION_SYMBOL:
                		case PHASE_SYMBOL:
                		case PLUGINS_SYMBOL:
                		case PLUGIN_DIR_SYMBOL:
                		case PLUGIN_SYMBOL:
                		case POINT_SYMBOL:
                		case POLYGON_SYMBOL:
                		case PORT_SYMBOL:
                		case PREPARE_SYMBOL:
                		case PRESERVE_SYMBOL:
                		case PREV_SYMBOL:
                		case PRIVILEGES_SYMBOL:
                		case PROCESSLIST_SYMBOL:
                		case PROCESS_SYMBOL:
                		case PROFILES_SYMBOL:
                		case PROFILE_SYMBOL:
                		case PROXY_SYMBOL:
                		case QUARTER_SYMBOL:
                		case QUERY_SYMBOL:
                		case QUICK_SYMBOL:
                		case READ_ONLY_SYMBOL:
                		case REBUILD_SYMBOL:
                		case RECOVER_SYMBOL:
                		case REDOFILE_SYMBOL:
                		case REDO_BUFFER_SIZE_SYMBOL:
                		case REDUNDANT_SYMBOL:
                		case RELAYLOG_SYMBOL:
                		case RELAY_LOG_FILE_SYMBOL:
                		case RELAY_LOG_POS_SYMBOL:
                		case RELAY_SYMBOL:
                		case RELAY_THREAD_SYMBOL:
                		case RELOAD_SYMBOL:
                		case REMOVE_SYMBOL:
                		case REORGANIZE_SYMBOL:
                		case REPAIR_SYMBOL:
                		case REPEATABLE_SYMBOL:
                		case REPLICATION_SYMBOL:
                		case RESET_SYMBOL:
                		case RESTORE_SYMBOL:
                		case RESUME_SYMBOL:
                		case RETURNED_SQLSTATE_SYMBOL:
                		case RETURNS_SYMBOL:
                		case REVERSE_SYMBOL:
                		case ROLLBACK_SYMBOL:
                		case ROLLUP_SYMBOL:
                		case ROUTINE_SYMBOL:
                		case ROWS_SYMBOL:
                		case ROW_COUNT_SYMBOL:
                		case ROW_SYMBOL:
                		case RTREE_SYMBOL:
                		case SAVEPOINT_SYMBOL:
                		case SCHEDULE_SYMBOL:
                		case SCHEMA_NAME_SYMBOL:
                		case SECOND_SYMBOL:
                		case SECURITY_SYMBOL:
                		case SERIALIZABLE_SYMBOL:
                		case SERIAL_SYMBOL:
                		case SERVER_SYMBOL:
                		case SESSION_SYMBOL:
                		case SHARE_SYMBOL:
                		case SHUTDOWN_SYMBOL:
                		case SIGNED_SYMBOL:
                		case SIMPLE_SYMBOL:
                		case SLAVE_SYMBOL:
                		case SLOW_SYMBOL:
                		case SNAPSHOT_SYMBOL:
                		case SOCKET_SYMBOL:
                		case SONAME_SYMBOL:
                		case SOUNDS_SYMBOL:
                		case SOURCE_SYMBOL:
                		case SQL_AFTER_GTIDS_SYMBOL:
                		case SQL_AFTER_MTS_GAPS_SYMBOL:
                		case SQL_BEFORE_GTIDS_SYMBOL:
                		case SQL_BUFFER_RESULT_SYMBOL:
                		case SQL_CACHE_SYMBOL:
                		case SQL_NO_CACHE_SYMBOL:
                		case SQL_THREAD_SYMBOL:
                		case STARTS_SYMBOL:
                		case START_SYMBOL:
                		case STATUS_SYMBOL:
                		case STOP_SYMBOL:
                		case STRING_SYMBOL:
                		case SUBCLASS_ORIGIN_SYMBOL:
                		case SUBDATE_SYMBOL:
                		case SUBJECT_SYMBOL:
                		case SUBPARTITIONS_SYMBOL:
                		case SUBPARTITION_SYMBOL:
                		case SUPER_SYMBOL:
                		case SUSPEND_SYMBOL:
                		case SWAPS_SYMBOL:
                		case SWITCHES_SYMBOL:
                		case TABLES_SYMBOL:
                		case TABLE_NAME_SYMBOL:
                		case TEMPORARY_SYMBOL:
                		case TEMPTABLE_SYMBOL:
                		case TEXT_SYMBOL:
                		case THAN_SYMBOL:
                		case TIMESTAMP_ADD_SYMBOL:
                		case TIMESTAMP_DIFF_SYMBOL:
                		case TIMESTAMP_SYMBOL:
                		case TIME_SYMBOL:
                		case TRANSACTION_SYMBOL:
                		case TRIGGERS_SYMBOL:
                		case TRUNCATE_SYMBOL:
                		case TYPES_SYMBOL:
                		case UDF_RETURNS_SYMBOL:
                		case UNCOMMITTED_SYMBOL:
                		case UNDEFINED_SYMBOL:
                		case UNDOFILE_SYMBOL:
                		case UNDO_BUFFER_SIZE_SYMBOL:
                		case UNICODE_SYMBOL:
                		case UNINSTALL_SYMBOL:
                		case UNKNOWN_SYMBOL:
                		case UNTIL_SYMBOL:
                		case UPGRADE_SYMBOL:
                		case USER_RESOURCES_SYMBOL:
                		case USER_SYMBOL:
                		case USE_FRM_SYMBOL:
                		case VALUE_SYMBOL:
                		case VARIABLES_SYMBOL:
                		case VIEW_SYMBOL:
                		case WAIT_SYMBOL:
                		case WARNINGS_SYMBOL:
                		case WEEK_SYMBOL:
                		case WEIGHT_STRING_SYMBOL:
                		case WORK_SYMBOL:
                		case WRAPPER_SYMBOL:
                		case X509_SYMBOL:
                		case XA_SYMBOL:
                		case XML_SYMBOL:
                		case YEAR_SYMBOL:
                			{
                				alt64=1;
                			}
                		    break;
                		case CHECKSUM_SYMBOL:
                			{
                				alt64=1;
                			}
                		    break;

                		}

                	}
                    break;

                }

                switch (alt64)
                {
            	case 1:
            	    // MySQL.g:362:73: COMMA_SYMBOL identifier direction
            	    {
            	        COMMA_SYMBOL218 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_alter_order_by1165);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_order_byEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL218_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL218));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL218_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_identifier_in_alter_order_by1167);
            	        identifier219=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_order_byEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier219.tree);

            	        FOLLOWPUSH(FOLLOW_direction_in_alter_order_by1169);
            	        direction220=direction(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_order_byEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, direction220.tree);

            	    }
            	    break;

            	default:
            	    goto loop64;	/* break out of the loop */
            	    break;
                }
            }
            loop64: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto rulealter_order_byEx; /* Prevent compiler warnings */
    rulealter_order_byEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end alter_order_by */

/**
 * $ANTLR start alter_algorithm_option
 * MySQL.g:365:1: alter_algorithm_option : ALGORITHM_SYMBOL ( EQUAL_OPERATOR )? ( DEFAULT_SYMBOL | identifier ) ;
 */
static MySQLParser_alter_algorithm_option_return
alter_algorithm_option(pMySQLParser ctx)
{
    MySQLParser_alter_algorithm_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    ALGORITHM_SYMBOL221;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR222;
    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL223;
    MySQLParser_identifier_return identifier224;
    #undef	RETURN_TYPE_identifier224
    #define	RETURN_TYPE_identifier224 MySQLParser_identifier_return

    pANTLR3_BASE_TREE ALGORITHM_SYMBOL221_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR222_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL223_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ALGORITHM_SYMBOL221       = NULL;
    EQUAL_OPERATOR222       = NULL;
    DEFAULT_SYMBOL223       = NULL;
    identifier224.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ALGORITHM_SYMBOL221_tree   = NULL;
    EQUAL_OPERATOR222_tree   = NULL;
    DEFAULT_SYMBOL223_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:365:23: ( ALGORITHM_SYMBOL ( EQUAL_OPERATOR )? ( DEFAULT_SYMBOL | identifier ) )
        // MySQL.g:366:2: ALGORITHM_SYMBOL ( EQUAL_OPERATOR )? ( DEFAULT_SYMBOL | identifier )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            ALGORITHM_SYMBOL221 = (pANTLR3_COMMON_TOKEN) MATCHT(ALGORITHM_SYMBOL, &FOLLOW_ALGORITHM_SYMBOL_in_alter_algorithm_option1180);
            if  (HASEXCEPTION())
            {
                goto rulealter_algorithm_optionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ALGORITHM_SYMBOL221_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALGORITHM_SYMBOL221));
            ADAPTOR->addChild(ADAPTOR, root_0, ALGORITHM_SYMBOL221_tree);
            }

            // MySQL.g:366:19: ( EQUAL_OPERATOR )?
            {
                int alt65=2;
                switch ( LA(1) )
                {
                    case EQUAL_OPERATOR:
                    	{
                    		alt65=1;
                    	}
                        break;
                }

                switch (alt65)
                {
            	case 1:
            	    // MySQL.g:366:19: EQUAL_OPERATOR
            	    {
            	        EQUAL_OPERATOR222 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_alter_algorithm_option1182);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_algorithm_optionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        EQUAL_OPERATOR222_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR222));
            	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR222_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:366:35: ( DEFAULT_SYMBOL | identifier )
            {
                int alt66=2;
                {
                    int LA66_0 = LA(1);
                    if ( (LA66_0 == DEFAULT_SYMBOL))
                    {
                        alt66=1;
                    }
                    else if ( (LA66_0 == BACK_TICK_QUOTED_ID || LA66_0 == IDENTIFIER))
                    {
                        alt66=2;
                    }
                    else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA66_0 == DOUBLE_QUOTED_TEXT))
                    {
                        alt66=2;
                    }
                    else if ( (((LA66_0 >= ACTION_SYMBOL) && (LA66_0 <= ADDDATE_SYMBOL)) || ((LA66_0 >= AFTER_SYMBOL) && (LA66_0 <= ALGORITHM_SYMBOL)) || LA66_0 == ANALYZE_SYMBOL || ((LA66_0 >= ANY_SYMBOL) && (LA66_0 <= ASCII_SYMBOL)) || ((LA66_0 >= AT_SYMBOL) && (LA66_0 <= BACKUP_SYMBOL)) || LA66_0 == BEGIN_SYMBOL || LA66_0 == BINLOG_SYMBOL || LA66_0 == BIT_SYMBOL || ((LA66_0 >= BLOCK_SYMBOL) && (LA66_0 <= BOOL_SYMBOL)) || ((LA66_0 >= BTREE_SYMBOL) && (LA66_0 <= BYTE_SYMBOL)) || LA66_0 == CACHE_SYMBOL || LA66_0 == CASCADED_SYMBOL || ((LA66_0 >= CATALOG_NAME_SYMBOL) && (LA66_0 <= CHANGED_SYMBOL)) || LA66_0 == CHARSET_SYMBOL || LA66_0 == CHECKSUM_SYMBOL || ((LA66_0 >= CIPHER_SYMBOL) && (LA66_0 <= CLIENT_SYMBOL)) || ((LA66_0 >= CLOSE_SYMBOL) && (LA66_0 <= CODE_SYMBOL)) || LA66_0 == COLLATION_SYMBOL || ((LA66_0 >= COLUMNS_SYMBOL) && (LA66_0 <= COLUMN_NAME_SYMBOL)) || ((LA66_0 >= COMMENT_SYMBOL) && (LA66_0 <= COMPRESSED_SYMBOL)) || LA66_0 == CONCURRENT_SYMBOL || ((LA66_0 >= CONNECTION_SYMBOL) && (LA66_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA66_0 >= CONTAINS_SYMBOL) && (LA66_0 <= CONTEXT_SYMBOL)) || LA66_0 == CONTRIBUTORS_SYMBOL || LA66_0 == CPU_SYMBOL || LA66_0 == CUBE_SYMBOL || LA66_0 == CURRENT_SYMBOL || LA66_0 == CURSOR_NAME_SYMBOL || ((LA66_0 >= DATAFILE_SYMBOL) && (LA66_0 <= DATETIME_SYMBOL)) || LA66_0 == DATE_SYMBOL || ((LA66_0 >= DAY_SYMBOL) && (LA66_0 <= DEALLOCATE_SYMBOL)) || LA66_0 == DEFAULT_AUTH_SYMBOL || LA66_0 == DEFINER_SYMBOL || LA66_0 == DELAY_KEY_WRITE_SYMBOL || LA66_0 == DES_KEY_FILE_SYMBOL || LA66_0 == DIAGNOSTICS_SYMBOL || ((LA66_0 >= DIRECTORY_SYMBOL) && (LA66_0 <= DISK_SYMBOL)) || LA66_0 == DO_SYMBOL || ((LA66_0 >= DUMPFILE_SYMBOL) && (LA66_0 <= DYNAMIC_SYMBOL)) || LA66_0 == ENABLE_SYMBOL || LA66_0 == ENDS_SYMBOL || ((LA66_0 >= END_SYMBOL) && (LA66_0 <= ENUM_SYMBOL)) || ((LA66_0 >= ERRORS_SYMBOL) && (LA66_0 <= ERROR_SYMBOL)) || ((LA66_0 >= ESCAPE_SYMBOL) && (LA66_0 <= EVERY_SYMBOL)) || LA66_0 == EXECUTE_SYMBOL || LA66_0 == EXPANSION_SYMBOL || LA66_0 == EXPORT_SYMBOL || ((LA66_0 >= EXTENDED_SYMBOL) && (LA66_0 <= EXTENT_SIZE_SYMBOL)) || ((LA66_0 >= FAST_SYMBOL) && (LA66_0 <= FAULTS_SYMBOL)) || ((LA66_0 >= FILE_SYMBOL) && (LA66_0 <= FIXED_SYMBOL)) || LA66_0 == FLUSH_SYMBOL || LA66_0 == FORMAT_SYMBOL || LA66_0 == FOUND_SYMBOL || LA66_0 == FULL_SYMBOL || ((LA66_0 >= FUNCTION_SYMBOL) && (LA66_0 <= GET_FORMAT_SYMBOL)) || ((LA66_0 >= GLOBAL_SYMBOL) && (LA66_0 <= GRANTS_SYMBOL)) || ((LA66_0 >= HANDLER_SYMBOL) && (LA66_0 <= HASH_SYMBOL)) || LA66_0 == HELP_SYMBOL || ((LA66_0 >= HOSTS_SYMBOL) && (LA66_0 <= HOST_SYMBOL)) || ((LA66_0 >= HOUR_SYMBOL) && (LA66_0 <= IDENTIFIED_SYMBOL)) || LA66_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA66_0 >= IMPORT_SYMBOL) && (LA66_0 <= INDEXES_SYMBOL)) || LA66_0 == INITIAL_SIZE_SYMBOL || LA66_0 == INNODB_SYMBOL || LA66_0 == INSERT_METHOD_SYMBOL || LA66_0 == INSTALL_SYMBOL || LA66_0 == INVOKER_SYMBOL || LA66_0 == IO_SYMBOL || ((LA66_0 >= IPC_SYMBOL) && (LA66_0 <= ISSUER_SYMBOL)) || LA66_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA66_0 >= LANGUAGE_SYMBOL) && (LA66_0 <= LAST_SYMBOL)) || LA66_0 == LEAVES_SYMBOL || LA66_0 == LESS_SYMBOL || LA66_0 == LEVEL_SYMBOL || LA66_0 == LINESTRING_SYMBOL || LA66_0 == LIST_SYMBOL || LA66_0 == LOCAL_SYMBOL || LA66_0 == LOCKS_SYMBOL || LA66_0 == LOGFILE_SYMBOL || LA66_0 == LOGS_SYMBOL || LA66_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA66_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA66_0 <= MASTER_SSL_SYMBOL)) || ((LA66_0 >= MASTER_SYMBOL) && (LA66_0 <= MASTER_USER_SYMBOL)) || ((LA66_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA66_0 <= MAX_SIZE_SYMBOL)) || ((LA66_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA66_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA66_0 >= MEDIUM_SYMBOL) && (LA66_0 <= MICROSECOND_SYMBOL)) || LA66_0 == MIGRATE_SYMBOL || ((LA66_0 >= MINUTE_SYMBOL) && (LA66_0 <= MIN_ROWS_SYMBOL)) || LA66_0 == MODE_SYMBOL || LA66_0 == MODIFY_SYMBOL || ((LA66_0 >= MONTH_SYMBOL) && (LA66_0 <= MULTILINESTRING_SYMBOL)) || ((LA66_0 >= MULTIPOINT_SYMBOL) && (LA66_0 <= MULTIPOLYGON_SYMBOL)) || ((LA66_0 >= MUTEX_SYMBOL) && (LA66_0 <= NATIONAL_SYMBOL)) || LA66_0 == NCHAR_SYMBOL || LA66_0 == NDBCLUSTER_SYMBOL || ((LA66_0 >= NEW_SYMBOL) && (LA66_0 <= NONE_SYMBOL)) || ((LA66_0 >= NO_SYMBOL) && (LA66_0 <= NO_WAIT_SYMBOL)) || LA66_0 == NUMBER_SYMBOL || LA66_0 == NVARCHAR_SYMBOL || ((LA66_0 >= OFFSET_SYMBOL) && (LA66_0 <= ONE_SYMBOL)) || LA66_0 == OPEN_SYMBOL || LA66_0 == OPTIONS_SYMBOL || ((LA66_0 >= OWNER_SYMBOL) && (LA66_0 <= PAGE_SYMBOL)) || ((LA66_0 >= PARSER_SYMBOL) && (LA66_0 <= PARTITION_SYMBOL)) || ((LA66_0 >= PASSWORD_SYMBOL) && (LA66_0 <= PLUGIN_SYMBOL)) || ((LA66_0 >= POINT_SYMBOL) && (LA66_0 <= PORT_SYMBOL)) || ((LA66_0 >= PREPARE_SYMBOL) && (LA66_0 <= PREV_SYMBOL)) || LA66_0 == PRIVILEGES_SYMBOL || ((LA66_0 >= PROCESSLIST_SYMBOL) && (LA66_0 <= PROXY_SYMBOL)) || ((LA66_0 >= QUARTER_SYMBOL) && (LA66_0 <= QUICK_SYMBOL)) || LA66_0 == READ_ONLY_SYMBOL || ((LA66_0 >= REBUILD_SYMBOL) && (LA66_0 <= REDUNDANT_SYMBOL)) || ((LA66_0 >= RELAYLOG_SYMBOL) && (LA66_0 <= RELAY_THREAD_SYMBOL)) || ((LA66_0 >= RELOAD_SYMBOL) && (LA66_0 <= REMOVE_SYMBOL)) || ((LA66_0 >= REORGANIZE_SYMBOL) && (LA66_0 <= REPEATABLE_SYMBOL)) || LA66_0 == REPLICATION_SYMBOL || LA66_0 == RESET_SYMBOL || LA66_0 == RESTORE_SYMBOL || ((LA66_0 >= RESUME_SYMBOL) && (LA66_0 <= RETURNS_SYMBOL)) || LA66_0 == REVERSE_SYMBOL || ((LA66_0 >= ROLLBACK_SYMBOL) && (LA66_0 <= SCHEDULE_SYMBOL)) || LA66_0 == SCHEMA_NAME_SYMBOL || ((LA66_0 >= SECOND_SYMBOL) && (LA66_0 <= SECURITY_SYMBOL)) || ((LA66_0 >= SERIALIZABLE_SYMBOL) && (LA66_0 <= SERIAL_SYMBOL)) || ((LA66_0 >= SERVER_SYMBOL) && (LA66_0 <= SESSION_SYMBOL)) || LA66_0 == SHARE_SYMBOL || LA66_0 == SHUTDOWN_SYMBOL || ((LA66_0 >= SIGNED_SYMBOL) && (LA66_0 <= SIMPLE_SYMBOL)) || ((LA66_0 >= SLAVE_SYMBOL) && (LA66_0 <= SLOW_SYMBOL)) || ((LA66_0 >= SNAPSHOT_SYMBOL) && (LA66_0 <= SOURCE_SYMBOL)) || ((LA66_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA66_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA66_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA66_0 <= SQL_CACHE_SYMBOL)) || LA66_0 == SQL_NO_CACHE_SYMBOL || LA66_0 == SQL_THREAD_SYMBOL || ((LA66_0 >= STARTS_SYMBOL) && (LA66_0 <= STATUS_SYMBOL)) || ((LA66_0 >= STOP_SYMBOL) && (LA66_0 <= STORAGE_SYMBOL)) || ((LA66_0 >= STRING_SYMBOL) && (LA66_0 <= SUBPARTITION_SYMBOL)) || ((LA66_0 >= SUPER_SYMBOL) && (LA66_0 <= SWITCHES_SYMBOL)) || ((LA66_0 >= TABLESPACE_SYMBOL) && (LA66_0 <= TABLE_NAME_SYMBOL)) || ((LA66_0 >= TEMPORARY_SYMBOL) && (LA66_0 <= TEMPTABLE_SYMBOL)) || ((LA66_0 >= TEXT_SYMBOL) && (LA66_0 <= THAN_SYMBOL)) || ((LA66_0 >= TIMESTAMP_ADD_SYMBOL) && (LA66_0 <= TIME_SYMBOL)) || ((LA66_0 >= TRANSACTION_SYMBOL) && (LA66_0 <= TRIGGERS_SYMBOL)) || ((LA66_0 >= TRUNCATE_SYMBOL) && (LA66_0 <= UDF_RETURNS_SYMBOL)) || ((LA66_0 >= UNCOMMITTED_SYMBOL) && (LA66_0 <= UNDEFINED_SYMBOL)) || ((LA66_0 >= UNDOFILE_SYMBOL) && (LA66_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA66_0 >= UNICODE_SYMBOL) && (LA66_0 <= UNINSTALL_SYMBOL)) || LA66_0 == UNKNOWN_SYMBOL || LA66_0 == UNTIL_SYMBOL || LA66_0 == UPGRADE_SYMBOL || ((LA66_0 >= USER_RESOURCES_SYMBOL) && (LA66_0 <= USE_FRM_SYMBOL)) || LA66_0 == VALUE_SYMBOL || LA66_0 == VARIABLES_SYMBOL || ((LA66_0 >= VIEW_SYMBOL) && (LA66_0 <= WEIGHT_STRING_SYMBOL)) || ((LA66_0 >= WORK_SYMBOL) && (LA66_0 <= WRAPPER_SYMBOL)) || LA66_0 == X509_SYMBOL || ((LA66_0 >= XA_SYMBOL) && (LA66_0 <= XML_SYMBOL)) || LA66_0 == YEAR_SYMBOL))
                    {
                        alt66=2;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 66;
                        EXCEPTION->state        = 0;


                        goto rulealter_algorithm_optionEx;

                    }
                }
                switch (alt66)
                {
            	case 1:
            	    // MySQL.g:366:37: DEFAULT_SYMBOL
            	    {
            	        DEFAULT_SYMBOL223 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_alter_algorithm_option1187);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_algorithm_optionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DEFAULT_SYMBOL223_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL223));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL223_tree);
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:366:54: identifier
            	    {
            	        FOLLOWPUSH(FOLLOW_identifier_in_alter_algorithm_option1191);
            	        identifier224=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_algorithm_optionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier224.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulealter_algorithm_optionEx; /* Prevent compiler warnings */
    rulealter_algorithm_optionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end alter_algorithm_option */

/**
 * $ANTLR start alter_lock_option
 * MySQL.g:369:1: alter_lock_option : LOCK_SYMBOL ( EQUAL_OPERATOR )? ( DEFAULT_SYMBOL | identifier ) ;
 */
static MySQLParser_alter_lock_option_return
alter_lock_option(pMySQLParser ctx)
{
    MySQLParser_alter_lock_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    LOCK_SYMBOL225;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR226;
    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL227;
    MySQLParser_identifier_return identifier228;
    #undef	RETURN_TYPE_identifier228
    #define	RETURN_TYPE_identifier228 MySQLParser_identifier_return

    pANTLR3_BASE_TREE LOCK_SYMBOL225_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR226_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL227_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    LOCK_SYMBOL225       = NULL;
    EQUAL_OPERATOR226       = NULL;
    DEFAULT_SYMBOL227       = NULL;
    identifier228.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    LOCK_SYMBOL225_tree   = NULL;
    EQUAL_OPERATOR226_tree   = NULL;
    DEFAULT_SYMBOL227_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:369:18: ( LOCK_SYMBOL ( EQUAL_OPERATOR )? ( DEFAULT_SYMBOL | identifier ) )
        // MySQL.g:370:2: LOCK_SYMBOL ( EQUAL_OPERATOR )? ( DEFAULT_SYMBOL | identifier )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            LOCK_SYMBOL225 = (pANTLR3_COMMON_TOKEN) MATCHT(LOCK_SYMBOL, &FOLLOW_LOCK_SYMBOL_in_alter_lock_option1202);
            if  (HASEXCEPTION())
            {
                goto rulealter_lock_optionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            LOCK_SYMBOL225_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOCK_SYMBOL225));
            ADAPTOR->addChild(ADAPTOR, root_0, LOCK_SYMBOL225_tree);
            }

            // MySQL.g:370:14: ( EQUAL_OPERATOR )?
            {
                int alt67=2;
                switch ( LA(1) )
                {
                    case EQUAL_OPERATOR:
                    	{
                    		alt67=1;
                    	}
                        break;
                }

                switch (alt67)
                {
            	case 1:
            	    // MySQL.g:370:14: EQUAL_OPERATOR
            	    {
            	        EQUAL_OPERATOR226 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_alter_lock_option1204);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_lock_optionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        EQUAL_OPERATOR226_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR226));
            	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR226_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:370:30: ( DEFAULT_SYMBOL | identifier )
            {
                int alt68=2;
                {
                    int LA68_0 = LA(1);
                    if ( (LA68_0 == DEFAULT_SYMBOL))
                    {
                        alt68=1;
                    }
                    else if ( (LA68_0 == BACK_TICK_QUOTED_ID || LA68_0 == IDENTIFIER))
                    {
                        alt68=2;
                    }
                    else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA68_0 == DOUBLE_QUOTED_TEXT))
                    {
                        alt68=2;
                    }
                    else if ( (((LA68_0 >= ACTION_SYMBOL) && (LA68_0 <= ADDDATE_SYMBOL)) || ((LA68_0 >= AFTER_SYMBOL) && (LA68_0 <= ALGORITHM_SYMBOL)) || LA68_0 == ANALYZE_SYMBOL || ((LA68_0 >= ANY_SYMBOL) && (LA68_0 <= ASCII_SYMBOL)) || ((LA68_0 >= AT_SYMBOL) && (LA68_0 <= BACKUP_SYMBOL)) || LA68_0 == BEGIN_SYMBOL || LA68_0 == BINLOG_SYMBOL || LA68_0 == BIT_SYMBOL || ((LA68_0 >= BLOCK_SYMBOL) && (LA68_0 <= BOOL_SYMBOL)) || ((LA68_0 >= BTREE_SYMBOL) && (LA68_0 <= BYTE_SYMBOL)) || LA68_0 == CACHE_SYMBOL || LA68_0 == CASCADED_SYMBOL || ((LA68_0 >= CATALOG_NAME_SYMBOL) && (LA68_0 <= CHANGED_SYMBOL)) || LA68_0 == CHARSET_SYMBOL || LA68_0 == CHECKSUM_SYMBOL || ((LA68_0 >= CIPHER_SYMBOL) && (LA68_0 <= CLIENT_SYMBOL)) || ((LA68_0 >= CLOSE_SYMBOL) && (LA68_0 <= CODE_SYMBOL)) || LA68_0 == COLLATION_SYMBOL || ((LA68_0 >= COLUMNS_SYMBOL) && (LA68_0 <= COLUMN_NAME_SYMBOL)) || ((LA68_0 >= COMMENT_SYMBOL) && (LA68_0 <= COMPRESSED_SYMBOL)) || LA68_0 == CONCURRENT_SYMBOL || ((LA68_0 >= CONNECTION_SYMBOL) && (LA68_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA68_0 >= CONTAINS_SYMBOL) && (LA68_0 <= CONTEXT_SYMBOL)) || LA68_0 == CONTRIBUTORS_SYMBOL || LA68_0 == CPU_SYMBOL || LA68_0 == CUBE_SYMBOL || LA68_0 == CURRENT_SYMBOL || LA68_0 == CURSOR_NAME_SYMBOL || ((LA68_0 >= DATAFILE_SYMBOL) && (LA68_0 <= DATETIME_SYMBOL)) || LA68_0 == DATE_SYMBOL || ((LA68_0 >= DAY_SYMBOL) && (LA68_0 <= DEALLOCATE_SYMBOL)) || LA68_0 == DEFAULT_AUTH_SYMBOL || LA68_0 == DEFINER_SYMBOL || LA68_0 == DELAY_KEY_WRITE_SYMBOL || LA68_0 == DES_KEY_FILE_SYMBOL || LA68_0 == DIAGNOSTICS_SYMBOL || ((LA68_0 >= DIRECTORY_SYMBOL) && (LA68_0 <= DISK_SYMBOL)) || LA68_0 == DO_SYMBOL || ((LA68_0 >= DUMPFILE_SYMBOL) && (LA68_0 <= DYNAMIC_SYMBOL)) || LA68_0 == ENABLE_SYMBOL || LA68_0 == ENDS_SYMBOL || ((LA68_0 >= END_SYMBOL) && (LA68_0 <= ENUM_SYMBOL)) || ((LA68_0 >= ERRORS_SYMBOL) && (LA68_0 <= ERROR_SYMBOL)) || ((LA68_0 >= ESCAPE_SYMBOL) && (LA68_0 <= EVERY_SYMBOL)) || LA68_0 == EXECUTE_SYMBOL || LA68_0 == EXPANSION_SYMBOL || LA68_0 == EXPORT_SYMBOL || ((LA68_0 >= EXTENDED_SYMBOL) && (LA68_0 <= EXTENT_SIZE_SYMBOL)) || ((LA68_0 >= FAST_SYMBOL) && (LA68_0 <= FAULTS_SYMBOL)) || ((LA68_0 >= FILE_SYMBOL) && (LA68_0 <= FIXED_SYMBOL)) || LA68_0 == FLUSH_SYMBOL || LA68_0 == FORMAT_SYMBOL || LA68_0 == FOUND_SYMBOL || LA68_0 == FULL_SYMBOL || ((LA68_0 >= FUNCTION_SYMBOL) && (LA68_0 <= GET_FORMAT_SYMBOL)) || ((LA68_0 >= GLOBAL_SYMBOL) && (LA68_0 <= GRANTS_SYMBOL)) || ((LA68_0 >= HANDLER_SYMBOL) && (LA68_0 <= HASH_SYMBOL)) || LA68_0 == HELP_SYMBOL || ((LA68_0 >= HOSTS_SYMBOL) && (LA68_0 <= HOST_SYMBOL)) || ((LA68_0 >= HOUR_SYMBOL) && (LA68_0 <= IDENTIFIED_SYMBOL)) || LA68_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA68_0 >= IMPORT_SYMBOL) && (LA68_0 <= INDEXES_SYMBOL)) || LA68_0 == INITIAL_SIZE_SYMBOL || LA68_0 == INNODB_SYMBOL || LA68_0 == INSERT_METHOD_SYMBOL || LA68_0 == INSTALL_SYMBOL || LA68_0 == INVOKER_SYMBOL || LA68_0 == IO_SYMBOL || ((LA68_0 >= IPC_SYMBOL) && (LA68_0 <= ISSUER_SYMBOL)) || LA68_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA68_0 >= LANGUAGE_SYMBOL) && (LA68_0 <= LAST_SYMBOL)) || LA68_0 == LEAVES_SYMBOL || LA68_0 == LESS_SYMBOL || LA68_0 == LEVEL_SYMBOL || LA68_0 == LINESTRING_SYMBOL || LA68_0 == LIST_SYMBOL || LA68_0 == LOCAL_SYMBOL || LA68_0 == LOCKS_SYMBOL || LA68_0 == LOGFILE_SYMBOL || LA68_0 == LOGS_SYMBOL || LA68_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA68_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA68_0 <= MASTER_SSL_SYMBOL)) || ((LA68_0 >= MASTER_SYMBOL) && (LA68_0 <= MASTER_USER_SYMBOL)) || ((LA68_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA68_0 <= MAX_SIZE_SYMBOL)) || ((LA68_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA68_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA68_0 >= MEDIUM_SYMBOL) && (LA68_0 <= MICROSECOND_SYMBOL)) || LA68_0 == MIGRATE_SYMBOL || ((LA68_0 >= MINUTE_SYMBOL) && (LA68_0 <= MIN_ROWS_SYMBOL)) || LA68_0 == MODE_SYMBOL || LA68_0 == MODIFY_SYMBOL || ((LA68_0 >= MONTH_SYMBOL) && (LA68_0 <= MULTILINESTRING_SYMBOL)) || ((LA68_0 >= MULTIPOINT_SYMBOL) && (LA68_0 <= MULTIPOLYGON_SYMBOL)) || ((LA68_0 >= MUTEX_SYMBOL) && (LA68_0 <= NATIONAL_SYMBOL)) || LA68_0 == NCHAR_SYMBOL || LA68_0 == NDBCLUSTER_SYMBOL || ((LA68_0 >= NEW_SYMBOL) && (LA68_0 <= NONE_SYMBOL)) || ((LA68_0 >= NO_SYMBOL) && (LA68_0 <= NO_WAIT_SYMBOL)) || LA68_0 == NUMBER_SYMBOL || LA68_0 == NVARCHAR_SYMBOL || ((LA68_0 >= OFFSET_SYMBOL) && (LA68_0 <= ONE_SYMBOL)) || LA68_0 == OPEN_SYMBOL || LA68_0 == OPTIONS_SYMBOL || ((LA68_0 >= OWNER_SYMBOL) && (LA68_0 <= PAGE_SYMBOL)) || ((LA68_0 >= PARSER_SYMBOL) && (LA68_0 <= PARTITION_SYMBOL)) || ((LA68_0 >= PASSWORD_SYMBOL) && (LA68_0 <= PLUGIN_SYMBOL)) || ((LA68_0 >= POINT_SYMBOL) && (LA68_0 <= PORT_SYMBOL)) || ((LA68_0 >= PREPARE_SYMBOL) && (LA68_0 <= PREV_SYMBOL)) || LA68_0 == PRIVILEGES_SYMBOL || ((LA68_0 >= PROCESSLIST_SYMBOL) && (LA68_0 <= PROXY_SYMBOL)) || ((LA68_0 >= QUARTER_SYMBOL) && (LA68_0 <= QUICK_SYMBOL)) || LA68_0 == READ_ONLY_SYMBOL || ((LA68_0 >= REBUILD_SYMBOL) && (LA68_0 <= REDUNDANT_SYMBOL)) || ((LA68_0 >= RELAYLOG_SYMBOL) && (LA68_0 <= RELAY_THREAD_SYMBOL)) || ((LA68_0 >= RELOAD_SYMBOL) && (LA68_0 <= REMOVE_SYMBOL)) || ((LA68_0 >= REORGANIZE_SYMBOL) && (LA68_0 <= REPEATABLE_SYMBOL)) || LA68_0 == REPLICATION_SYMBOL || LA68_0 == RESET_SYMBOL || LA68_0 == RESTORE_SYMBOL || ((LA68_0 >= RESUME_SYMBOL) && (LA68_0 <= RETURNS_SYMBOL)) || LA68_0 == REVERSE_SYMBOL || ((LA68_0 >= ROLLBACK_SYMBOL) && (LA68_0 <= SCHEDULE_SYMBOL)) || LA68_0 == SCHEMA_NAME_SYMBOL || ((LA68_0 >= SECOND_SYMBOL) && (LA68_0 <= SECURITY_SYMBOL)) || ((LA68_0 >= SERIALIZABLE_SYMBOL) && (LA68_0 <= SERIAL_SYMBOL)) || ((LA68_0 >= SERVER_SYMBOL) && (LA68_0 <= SESSION_SYMBOL)) || LA68_0 == SHARE_SYMBOL || LA68_0 == SHUTDOWN_SYMBOL || ((LA68_0 >= SIGNED_SYMBOL) && (LA68_0 <= SIMPLE_SYMBOL)) || ((LA68_0 >= SLAVE_SYMBOL) && (LA68_0 <= SLOW_SYMBOL)) || ((LA68_0 >= SNAPSHOT_SYMBOL) && (LA68_0 <= SOURCE_SYMBOL)) || ((LA68_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA68_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA68_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA68_0 <= SQL_CACHE_SYMBOL)) || LA68_0 == SQL_NO_CACHE_SYMBOL || LA68_0 == SQL_THREAD_SYMBOL || ((LA68_0 >= STARTS_SYMBOL) && (LA68_0 <= STATUS_SYMBOL)) || ((LA68_0 >= STOP_SYMBOL) && (LA68_0 <= STORAGE_SYMBOL)) || ((LA68_0 >= STRING_SYMBOL) && (LA68_0 <= SUBPARTITION_SYMBOL)) || ((LA68_0 >= SUPER_SYMBOL) && (LA68_0 <= SWITCHES_SYMBOL)) || ((LA68_0 >= TABLESPACE_SYMBOL) && (LA68_0 <= TABLE_NAME_SYMBOL)) || ((LA68_0 >= TEMPORARY_SYMBOL) && (LA68_0 <= TEMPTABLE_SYMBOL)) || ((LA68_0 >= TEXT_SYMBOL) && (LA68_0 <= THAN_SYMBOL)) || ((LA68_0 >= TIMESTAMP_ADD_SYMBOL) && (LA68_0 <= TIME_SYMBOL)) || ((LA68_0 >= TRANSACTION_SYMBOL) && (LA68_0 <= TRIGGERS_SYMBOL)) || ((LA68_0 >= TRUNCATE_SYMBOL) && (LA68_0 <= UDF_RETURNS_SYMBOL)) || ((LA68_0 >= UNCOMMITTED_SYMBOL) && (LA68_0 <= UNDEFINED_SYMBOL)) || ((LA68_0 >= UNDOFILE_SYMBOL) && (LA68_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA68_0 >= UNICODE_SYMBOL) && (LA68_0 <= UNINSTALL_SYMBOL)) || LA68_0 == UNKNOWN_SYMBOL || LA68_0 == UNTIL_SYMBOL || LA68_0 == UPGRADE_SYMBOL || ((LA68_0 >= USER_RESOURCES_SYMBOL) && (LA68_0 <= USE_FRM_SYMBOL)) || LA68_0 == VALUE_SYMBOL || LA68_0 == VARIABLES_SYMBOL || ((LA68_0 >= VIEW_SYMBOL) && (LA68_0 <= WEIGHT_STRING_SYMBOL)) || ((LA68_0 >= WORK_SYMBOL) && (LA68_0 <= WRAPPER_SYMBOL)) || LA68_0 == X509_SYMBOL || ((LA68_0 >= XA_SYMBOL) && (LA68_0 <= XML_SYMBOL)) || LA68_0 == YEAR_SYMBOL))
                    {
                        alt68=2;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 68;
                        EXCEPTION->state        = 0;


                        goto rulealter_lock_optionEx;

                    }
                }
                switch (alt68)
                {
            	case 1:
            	    // MySQL.g:370:31: DEFAULT_SYMBOL
            	    {
            	        DEFAULT_SYMBOL227 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_alter_lock_option1208);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_lock_optionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DEFAULT_SYMBOL227_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL227));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL227_tree);
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:370:48: identifier
            	    {
            	        FOLLOWPUSH(FOLLOW_identifier_in_alter_lock_option1212);
            	        identifier228=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_lock_optionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier228.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulealter_lock_optionEx; /* Prevent compiler warnings */
    rulealter_lock_optionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end alter_lock_option */

/**
 * $ANTLR start index_lock_algorithm
 * MySQL.g:373:1: index_lock_algorithm :{...}? => ( alter_algorithm_option ( alter_lock_option )? | alter_lock_option ( alter_algorithm_option )? ) ;
 */
static MySQLParser_index_lock_algorithm_return
index_lock_algorithm(pMySQLParser ctx)
{
    MySQLParser_index_lock_algorithm_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_alter_algorithm_option_return alter_algorithm_option229;
    #undef	RETURN_TYPE_alter_algorithm_option229
    #define	RETURN_TYPE_alter_algorithm_option229 MySQLParser_alter_algorithm_option_return

    MySQLParser_alter_lock_option_return alter_lock_option230;
    #undef	RETURN_TYPE_alter_lock_option230
    #define	RETURN_TYPE_alter_lock_option230 MySQLParser_alter_lock_option_return

    MySQLParser_alter_lock_option_return alter_lock_option231;
    #undef	RETURN_TYPE_alter_lock_option231
    #define	RETURN_TYPE_alter_lock_option231 MySQLParser_alter_lock_option_return

    MySQLParser_alter_algorithm_option_return alter_algorithm_option232;
    #undef	RETURN_TYPE_alter_algorithm_option232
    #define	RETURN_TYPE_alter_algorithm_option232 MySQLParser_alter_algorithm_option_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    alter_algorithm_option229.tree = NULL;

    alter_lock_option230.tree = NULL;

    alter_lock_option231.tree = NULL;

    alter_algorithm_option232.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:373:21: ({...}? => ( alter_algorithm_option ( alter_lock_option )? | alter_lock_option ( alter_algorithm_option )? ) )
        // MySQL.g:374:2: {...}? => ( alter_algorithm_option ( alter_lock_option )? | alter_lock_option ( alter_algorithm_option )? )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            if ( !((SERVER_VERSION >= 50600)) )
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
                    EXCEPTION->message      = (void *)"SERVER_VERSION >= 50600";
                    EXCEPTION->ruleName	 = (void *)"index_lock_algorithm";


            }

            // MySQL.g:375:3: ( alter_algorithm_option ( alter_lock_option )? | alter_lock_option ( alter_algorithm_option )? )
            {
                int alt71=2;
                switch ( LA(1) )
                {
                case ALGORITHM_SYMBOL:
                	{
                		alt71=1;
                	}
                    break;
                case LOCK_SYMBOL:
                	{
                		alt71=2;
                	}
                    break;

                default:
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 71;
                    EXCEPTION->state        = 0;


                    goto ruleindex_lock_algorithmEx;

                }

                switch (alt71)
                {
            	case 1:
            	    // MySQL.g:376:4: alter_algorithm_option ( alter_lock_option )?
            	    {
            	        FOLLOWPUSH(FOLLOW_alter_algorithm_option_in_index_lock_algorithm1234);
            	        alter_algorithm_option229=alter_algorithm_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleindex_lock_algorithmEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, alter_algorithm_option229.tree);

            	        // MySQL.g:376:27: ( alter_lock_option )?
            	        {
            	            int alt69=2;
            	            switch ( LA(1) )
            	            {
            	                case LOCK_SYMBOL:
            	                	{
            	                		alt69=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt69)
            	            {
            	        	case 1:
            	        	    // MySQL.g:376:27: alter_lock_option
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_alter_lock_option_in_index_lock_algorithm1236);
            	        	        alter_lock_option230=alter_lock_option(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleindex_lock_algorithmEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, alter_lock_option230.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:377:6: alter_lock_option ( alter_algorithm_option )?
            	    {
            	        FOLLOWPUSH(FOLLOW_alter_lock_option_in_index_lock_algorithm1244);
            	        alter_lock_option231=alter_lock_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleindex_lock_algorithmEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, alter_lock_option231.tree);

            	        // MySQL.g:377:24: ( alter_algorithm_option )?
            	        {
            	            int alt70=2;
            	            switch ( LA(1) )
            	            {
            	                case ALGORITHM_SYMBOL:
            	                	{
            	                		alt70=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt70)
            	            {
            	        	case 1:
            	        	    // MySQL.g:377:24: alter_algorithm_option
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_alter_algorithm_option_in_index_lock_algorithm1246);
            	        	        alter_algorithm_option232=alter_algorithm_option(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleindex_lock_algorithmEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, alter_algorithm_option232.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleindex_lock_algorithmEx; /* Prevent compiler warnings */
    ruleindex_lock_algorithmEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end index_lock_algorithm */

/**
 * $ANTLR start alter_partition
 * MySQL.g:381:1: alter_partition : ({...}? ADD_SYMBOL PARTITION_SYMBOL ( no_write_to_bin_log )? ( OPEN_PAR_SYMBOL partition_definition CLOSE_PAR_SYMBOL | PARTITIONS_SYMBOL INTEGER ) | DROP_SYMBOL PARTITION_SYMBOL identifier_list | REBUILD_SYMBOL PARTITION_SYMBOL ( no_write_to_bin_log )? all_or_partition_name_list | OPTIMIZE_SYMBOL PARTITION_SYMBOL ( no_write_to_bin_log )? all_or_partition_name_list ( no_write_to_bin_log )? | ANALYZE_SYMBOL PARTITION_SYMBOL ( no_write_to_bin_log )? all_or_partition_name_list | CHECK_SYMBOL PARTITION_SYMBOL all_or_partition_name_list ( check_option )* | REPAIR_SYMBOL PARTITION_SYMBOL ( no_write_to_bin_log )? all_or_partition_name_list ( repair_option )* | COALESCE_SYMBOL PARTITION_SYMBOL ( no_write_to_bin_log )? INTEGER |{...}? => TRUNCATE_SYMBOL PARTITION_SYMBOL all_or_partition_name_list | EXCHANGE_SYMBOL PARTITION_SYMBOL identifier WITH_SYMBOL TABLE_SYMBOL table_identifier | REORGANIZE_SYMBOL PARTITION_SYMBOL ( no_write_to_bin_log )? ( identifier_list INTO_SYMBOL partition_definitions )? );
 */
static MySQLParser_alter_partition_return
alter_partition(pMySQLParser ctx)
{
    MySQLParser_alter_partition_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    ADD_SYMBOL233;
    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL234;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL236;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL238;
    pANTLR3_COMMON_TOKEN    PARTITIONS_SYMBOL239;
    pANTLR3_COMMON_TOKEN    INTEGER240;
    pANTLR3_COMMON_TOKEN    DROP_SYMBOL241;
    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL242;
    pANTLR3_COMMON_TOKEN    REBUILD_SYMBOL244;
    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL245;
    pANTLR3_COMMON_TOKEN    OPTIMIZE_SYMBOL248;
    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL249;
    pANTLR3_COMMON_TOKEN    ANALYZE_SYMBOL253;
    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL254;
    pANTLR3_COMMON_TOKEN    CHECK_SYMBOL257;
    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL258;
    pANTLR3_COMMON_TOKEN    REPAIR_SYMBOL261;
    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL262;
    pANTLR3_COMMON_TOKEN    COALESCE_SYMBOL266;
    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL267;
    pANTLR3_COMMON_TOKEN    INTEGER269;
    pANTLR3_COMMON_TOKEN    TRUNCATE_SYMBOL270;
    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL271;
    pANTLR3_COMMON_TOKEN    EXCHANGE_SYMBOL273;
    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL274;
    pANTLR3_COMMON_TOKEN    WITH_SYMBOL276;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL277;
    pANTLR3_COMMON_TOKEN    REORGANIZE_SYMBOL279;
    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL280;
    pANTLR3_COMMON_TOKEN    INTO_SYMBOL283;
    MySQLParser_no_write_to_bin_log_return no_write_to_bin_log235;
    #undef	RETURN_TYPE_no_write_to_bin_log235
    #define	RETURN_TYPE_no_write_to_bin_log235 MySQLParser_no_write_to_bin_log_return

    MySQLParser_partition_definition_return partition_definition237;
    #undef	RETURN_TYPE_partition_definition237
    #define	RETURN_TYPE_partition_definition237 MySQLParser_partition_definition_return

    MySQLParser_identifier_list_return identifier_list243;
    #undef	RETURN_TYPE_identifier_list243
    #define	RETURN_TYPE_identifier_list243 MySQLParser_identifier_list_return

    MySQLParser_no_write_to_bin_log_return no_write_to_bin_log246;
    #undef	RETURN_TYPE_no_write_to_bin_log246
    #define	RETURN_TYPE_no_write_to_bin_log246 MySQLParser_no_write_to_bin_log_return

    MySQLParser_all_or_partition_name_list_return all_or_partition_name_list247;
    #undef	RETURN_TYPE_all_or_partition_name_list247
    #define	RETURN_TYPE_all_or_partition_name_list247 MySQLParser_all_or_partition_name_list_return

    MySQLParser_no_write_to_bin_log_return no_write_to_bin_log250;
    #undef	RETURN_TYPE_no_write_to_bin_log250
    #define	RETURN_TYPE_no_write_to_bin_log250 MySQLParser_no_write_to_bin_log_return

    MySQLParser_all_or_partition_name_list_return all_or_partition_name_list251;
    #undef	RETURN_TYPE_all_or_partition_name_list251
    #define	RETURN_TYPE_all_or_partition_name_list251 MySQLParser_all_or_partition_name_list_return

    MySQLParser_no_write_to_bin_log_return no_write_to_bin_log252;
    #undef	RETURN_TYPE_no_write_to_bin_log252
    #define	RETURN_TYPE_no_write_to_bin_log252 MySQLParser_no_write_to_bin_log_return

    MySQLParser_no_write_to_bin_log_return no_write_to_bin_log255;
    #undef	RETURN_TYPE_no_write_to_bin_log255
    #define	RETURN_TYPE_no_write_to_bin_log255 MySQLParser_no_write_to_bin_log_return

    MySQLParser_all_or_partition_name_list_return all_or_partition_name_list256;
    #undef	RETURN_TYPE_all_or_partition_name_list256
    #define	RETURN_TYPE_all_or_partition_name_list256 MySQLParser_all_or_partition_name_list_return

    MySQLParser_all_or_partition_name_list_return all_or_partition_name_list259;
    #undef	RETURN_TYPE_all_or_partition_name_list259
    #define	RETURN_TYPE_all_or_partition_name_list259 MySQLParser_all_or_partition_name_list_return

    MySQLParser_check_option_return check_option260;
    #undef	RETURN_TYPE_check_option260
    #define	RETURN_TYPE_check_option260 MySQLParser_check_option_return

    MySQLParser_no_write_to_bin_log_return no_write_to_bin_log263;
    #undef	RETURN_TYPE_no_write_to_bin_log263
    #define	RETURN_TYPE_no_write_to_bin_log263 MySQLParser_no_write_to_bin_log_return

    MySQLParser_all_or_partition_name_list_return all_or_partition_name_list264;
    #undef	RETURN_TYPE_all_or_partition_name_list264
    #define	RETURN_TYPE_all_or_partition_name_list264 MySQLParser_all_or_partition_name_list_return

    MySQLParser_repair_option_return repair_option265;
    #undef	RETURN_TYPE_repair_option265
    #define	RETURN_TYPE_repair_option265 MySQLParser_repair_option_return

    MySQLParser_no_write_to_bin_log_return no_write_to_bin_log268;
    #undef	RETURN_TYPE_no_write_to_bin_log268
    #define	RETURN_TYPE_no_write_to_bin_log268 MySQLParser_no_write_to_bin_log_return

    MySQLParser_all_or_partition_name_list_return all_or_partition_name_list272;
    #undef	RETURN_TYPE_all_or_partition_name_list272
    #define	RETURN_TYPE_all_or_partition_name_list272 MySQLParser_all_or_partition_name_list_return

    MySQLParser_identifier_return identifier275;
    #undef	RETURN_TYPE_identifier275
    #define	RETURN_TYPE_identifier275 MySQLParser_identifier_return

    MySQLParser_table_identifier_return table_identifier278;
    #undef	RETURN_TYPE_table_identifier278
    #define	RETURN_TYPE_table_identifier278 MySQLParser_table_identifier_return

    MySQLParser_no_write_to_bin_log_return no_write_to_bin_log281;
    #undef	RETURN_TYPE_no_write_to_bin_log281
    #define	RETURN_TYPE_no_write_to_bin_log281 MySQLParser_no_write_to_bin_log_return

    MySQLParser_identifier_list_return identifier_list282;
    #undef	RETURN_TYPE_identifier_list282
    #define	RETURN_TYPE_identifier_list282 MySQLParser_identifier_list_return

    MySQLParser_partition_definitions_return partition_definitions284;
    #undef	RETURN_TYPE_partition_definitions284
    #define	RETURN_TYPE_partition_definitions284 MySQLParser_partition_definitions_return

    pANTLR3_BASE_TREE ADD_SYMBOL233_tree;
    pANTLR3_BASE_TREE PARTITION_SYMBOL234_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL236_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL238_tree;
    pANTLR3_BASE_TREE PARTITIONS_SYMBOL239_tree;
    pANTLR3_BASE_TREE INTEGER240_tree;
    pANTLR3_BASE_TREE DROP_SYMBOL241_tree;
    pANTLR3_BASE_TREE PARTITION_SYMBOL242_tree;
    pANTLR3_BASE_TREE REBUILD_SYMBOL244_tree;
    pANTLR3_BASE_TREE PARTITION_SYMBOL245_tree;
    pANTLR3_BASE_TREE OPTIMIZE_SYMBOL248_tree;
    pANTLR3_BASE_TREE PARTITION_SYMBOL249_tree;
    pANTLR3_BASE_TREE ANALYZE_SYMBOL253_tree;
    pANTLR3_BASE_TREE PARTITION_SYMBOL254_tree;
    pANTLR3_BASE_TREE CHECK_SYMBOL257_tree;
    pANTLR3_BASE_TREE PARTITION_SYMBOL258_tree;
    pANTLR3_BASE_TREE REPAIR_SYMBOL261_tree;
    pANTLR3_BASE_TREE PARTITION_SYMBOL262_tree;
    pANTLR3_BASE_TREE COALESCE_SYMBOL266_tree;
    pANTLR3_BASE_TREE PARTITION_SYMBOL267_tree;
    pANTLR3_BASE_TREE INTEGER269_tree;
    pANTLR3_BASE_TREE TRUNCATE_SYMBOL270_tree;
    pANTLR3_BASE_TREE PARTITION_SYMBOL271_tree;
    pANTLR3_BASE_TREE EXCHANGE_SYMBOL273_tree;
    pANTLR3_BASE_TREE PARTITION_SYMBOL274_tree;
    pANTLR3_BASE_TREE WITH_SYMBOL276_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL277_tree;
    pANTLR3_BASE_TREE REORGANIZE_SYMBOL279_tree;
    pANTLR3_BASE_TREE PARTITION_SYMBOL280_tree;
    pANTLR3_BASE_TREE INTO_SYMBOL283_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ADD_SYMBOL233       = NULL;
    PARTITION_SYMBOL234       = NULL;
    OPEN_PAR_SYMBOL236       = NULL;
    CLOSE_PAR_SYMBOL238       = NULL;
    PARTITIONS_SYMBOL239       = NULL;
    INTEGER240       = NULL;
    DROP_SYMBOL241       = NULL;
    PARTITION_SYMBOL242       = NULL;
    REBUILD_SYMBOL244       = NULL;
    PARTITION_SYMBOL245       = NULL;
    OPTIMIZE_SYMBOL248       = NULL;
    PARTITION_SYMBOL249       = NULL;
    ANALYZE_SYMBOL253       = NULL;
    PARTITION_SYMBOL254       = NULL;
    CHECK_SYMBOL257       = NULL;
    PARTITION_SYMBOL258       = NULL;
    REPAIR_SYMBOL261       = NULL;
    PARTITION_SYMBOL262       = NULL;
    COALESCE_SYMBOL266       = NULL;
    PARTITION_SYMBOL267       = NULL;
    INTEGER269       = NULL;
    TRUNCATE_SYMBOL270       = NULL;
    PARTITION_SYMBOL271       = NULL;
    EXCHANGE_SYMBOL273       = NULL;
    PARTITION_SYMBOL274       = NULL;
    WITH_SYMBOL276       = NULL;
    TABLE_SYMBOL277       = NULL;
    REORGANIZE_SYMBOL279       = NULL;
    PARTITION_SYMBOL280       = NULL;
    INTO_SYMBOL283       = NULL;
    no_write_to_bin_log235.tree = NULL;

    partition_definition237.tree = NULL;

    identifier_list243.tree = NULL;

    no_write_to_bin_log246.tree = NULL;

    all_or_partition_name_list247.tree = NULL;

    no_write_to_bin_log250.tree = NULL;

    all_or_partition_name_list251.tree = NULL;

    no_write_to_bin_log252.tree = NULL;

    no_write_to_bin_log255.tree = NULL;

    all_or_partition_name_list256.tree = NULL;

    all_or_partition_name_list259.tree = NULL;

    check_option260.tree = NULL;

    no_write_to_bin_log263.tree = NULL;

    all_or_partition_name_list264.tree = NULL;

    repair_option265.tree = NULL;

    no_write_to_bin_log268.tree = NULL;

    all_or_partition_name_list272.tree = NULL;

    identifier275.tree = NULL;

    table_identifier278.tree = NULL;

    no_write_to_bin_log281.tree = NULL;

    identifier_list282.tree = NULL;

    partition_definitions284.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ADD_SYMBOL233_tree   = NULL;
    PARTITION_SYMBOL234_tree   = NULL;
    OPEN_PAR_SYMBOL236_tree   = NULL;
    CLOSE_PAR_SYMBOL238_tree   = NULL;
    PARTITIONS_SYMBOL239_tree   = NULL;
    INTEGER240_tree   = NULL;
    DROP_SYMBOL241_tree   = NULL;
    PARTITION_SYMBOL242_tree   = NULL;
    REBUILD_SYMBOL244_tree   = NULL;
    PARTITION_SYMBOL245_tree   = NULL;
    OPTIMIZE_SYMBOL248_tree   = NULL;
    PARTITION_SYMBOL249_tree   = NULL;
    ANALYZE_SYMBOL253_tree   = NULL;
    PARTITION_SYMBOL254_tree   = NULL;
    CHECK_SYMBOL257_tree   = NULL;
    PARTITION_SYMBOL258_tree   = NULL;
    REPAIR_SYMBOL261_tree   = NULL;
    PARTITION_SYMBOL262_tree   = NULL;
    COALESCE_SYMBOL266_tree   = NULL;
    PARTITION_SYMBOL267_tree   = NULL;
    INTEGER269_tree   = NULL;
    TRUNCATE_SYMBOL270_tree   = NULL;
    PARTITION_SYMBOL271_tree   = NULL;
    EXCHANGE_SYMBOL273_tree   = NULL;
    PARTITION_SYMBOL274_tree   = NULL;
    WITH_SYMBOL276_tree   = NULL;
    TABLE_SYMBOL277_tree   = NULL;
    REORGANIZE_SYMBOL279_tree   = NULL;
    PARTITION_SYMBOL280_tree   = NULL;
    INTO_SYMBOL283_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:381:16: ({...}? ADD_SYMBOL PARTITION_SYMBOL ( no_write_to_bin_log )? ( OPEN_PAR_SYMBOL partition_definition CLOSE_PAR_SYMBOL | PARTITIONS_SYMBOL INTEGER ) | DROP_SYMBOL PARTITION_SYMBOL identifier_list | REBUILD_SYMBOL PARTITION_SYMBOL ( no_write_to_bin_log )? all_or_partition_name_list | OPTIMIZE_SYMBOL PARTITION_SYMBOL ( no_write_to_bin_log )? all_or_partition_name_list ( no_write_to_bin_log )? | ANALYZE_SYMBOL PARTITION_SYMBOL ( no_write_to_bin_log )? all_or_partition_name_list | CHECK_SYMBOL PARTITION_SYMBOL all_or_partition_name_list ( check_option )* | REPAIR_SYMBOL PARTITION_SYMBOL ( no_write_to_bin_log )? all_or_partition_name_list ( repair_option )* | COALESCE_SYMBOL PARTITION_SYMBOL ( no_write_to_bin_log )? INTEGER |{...}? => TRUNCATE_SYMBOL PARTITION_SYMBOL all_or_partition_name_list | EXCHANGE_SYMBOL PARTITION_SYMBOL identifier WITH_SYMBOL TABLE_SYMBOL table_identifier | REORGANIZE_SYMBOL PARTITION_SYMBOL ( no_write_to_bin_log )? ( identifier_list INTO_SYMBOL partition_definitions )? )

            ANTLR3_UINT32 alt84;

            alt84=11;

            {
                int LA84_0 = LA(1);
                if ( (LA84_0 == ADD_SYMBOL))
                {
                    alt84=1;
                }
                else if ( (LA84_0 == DROP_SYMBOL))
                {
                    alt84=2;
                }
                else if ( (LA84_0 == REBUILD_SYMBOL))
                {
                    alt84=3;
                }
                else if ( (LA84_0 == OPTIMIZE_SYMBOL))
                {
                    alt84=4;
                }
                else if ( (LA84_0 == ANALYZE_SYMBOL))
                {
                    alt84=5;
                }
                else if ( (LA84_0 == CHECK_SYMBOL))
                {
                    alt84=6;
                }
                else if ( (LA84_0 == REPAIR_SYMBOL))
                {
                    alt84=7;
                }
                else if ( (LA84_0 == COALESCE_SYMBOL))
                {
                    alt84=8;
                }
                else if ( ((SERVER_VERSION >= 50500)) && (LA84_0 == TRUNCATE_SYMBOL))
                {
                    alt84=9;
                }
                else if ( (LA84_0 == EXCHANGE_SYMBOL))
                {
                    alt84=10;
                }
                else if ( (LA84_0 == REORGANIZE_SYMBOL))
                {
                    alt84=11;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 84;
                    EXCEPTION->state        = 0;


                    goto rulealter_partitionEx;

                }
            }
            switch (alt84)
            {
        	case 1:
        	    // MySQL.g:382:2: {...}? ADD_SYMBOL PARTITION_SYMBOL ( no_write_to_bin_log )? ( OPEN_PAR_SYMBOL partition_definition CLOSE_PAR_SYMBOL | PARTITIONS_SYMBOL INTEGER )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((LA(1) == ADD_SYMBOL && LA(2) == PARTITION_SYMBOL)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"LA(1) == ADD_SYMBOL && LA(2) == PARTITION_SYMBOL";
        	                EXCEPTION->ruleName	 = (void *)"alter_partition";


        	        }

        	        ADD_SYMBOL233 = (pANTLR3_COMMON_TOKEN) MATCHT(ADD_SYMBOL, &FOLLOW_ADD_SYMBOL_in_alter_partition1262);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ADD_SYMBOL233_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ADD_SYMBOL233));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ADD_SYMBOL233_tree);
        	        }

        	        PARTITION_SYMBOL234 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_alter_partition1264);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PARTITION_SYMBOL234_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITION_SYMBOL234));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PARTITION_SYMBOL234_tree);
        	        }

        	        // MySQL.g:382:82: ( no_write_to_bin_log )?
        	        {
        	            int alt72=2;
        	            switch ( LA(1) )
        	            {
        	                case LOCAL_SYMBOL:
        	                case NO_WRITE_TO_BINLOG_SYMBOL:
        	                	{
        	                		alt72=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt72)
        	            {
        	        	case 1:
        	        	    // MySQL.g:382:82: no_write_to_bin_log
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_no_write_to_bin_log_in_alter_partition1266);
        	        	        no_write_to_bin_log235=no_write_to_bin_log(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_partitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, no_write_to_bin_log235.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:383:3: ( OPEN_PAR_SYMBOL partition_definition CLOSE_PAR_SYMBOL | PARTITIONS_SYMBOL INTEGER )
        	        {
        	            int alt73=2;
        	            switch ( LA(1) )
        	            {
        	            case OPEN_PAR_SYMBOL:
        	            	{
        	            		alt73=1;
        	            	}
        	                break;
        	            case PARTITIONS_SYMBOL:
        	            	{
        	            		alt73=2;
        	            	}
        	                break;

        	            default:
        	                if (BACKTRACKING>0)
        	                {
        	                    FAILEDFLAG = ANTLR3_TRUE;
        	                    return retval;
        	                }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                EXCEPTION->message      = (void *)"";
        	                EXCEPTION->decisionNum  = 73;
        	                EXCEPTION->state        = 0;


        	                goto rulealter_partitionEx;

        	            }

        	            switch (alt73)
        	            {
        	        	case 1:
        	        	    // MySQL.g:384:4: OPEN_PAR_SYMBOL partition_definition CLOSE_PAR_SYMBOL
        	        	    {
        	        	        OPEN_PAR_SYMBOL236 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_alter_partition1276);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_partitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        OPEN_PAR_SYMBOL236_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL236));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL236_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_partition_definition_in_alter_partition1278);
        	        	        partition_definition237=partition_definition(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_partitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partition_definition237.tree);

        	        	        CLOSE_PAR_SYMBOL238 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_alter_partition1280);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_partitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        CLOSE_PAR_SYMBOL238_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL238));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL238_tree);
        	        	        }

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:385:6: PARTITIONS_SYMBOL INTEGER
        	        	    {
        	        	        PARTITIONS_SYMBOL239 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITIONS_SYMBOL, &FOLLOW_PARTITIONS_SYMBOL_in_alter_partition1287);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_partitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        PARTITIONS_SYMBOL239_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITIONS_SYMBOL239));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, PARTITIONS_SYMBOL239_tree);
        	        	        }

        	        	        INTEGER240 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_alter_partition1289);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_partitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        INTEGER240_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER240));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER240_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:387:4: DROP_SYMBOL PARTITION_SYMBOL identifier_list
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DROP_SYMBOL241 = (pANTLR3_COMMON_TOKEN) MATCHT(DROP_SYMBOL, &FOLLOW_DROP_SYMBOL_in_alter_partition1298);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DROP_SYMBOL241_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DROP_SYMBOL241));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DROP_SYMBOL241_tree);
        	        }

        	        PARTITION_SYMBOL242 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_alter_partition1300);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PARTITION_SYMBOL242_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITION_SYMBOL242));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PARTITION_SYMBOL242_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_identifier_list_in_alter_partition1302);
        	        identifier_list243=identifier_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list243.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:388:4: REBUILD_SYMBOL PARTITION_SYMBOL ( no_write_to_bin_log )? all_or_partition_name_list
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        REBUILD_SYMBOL244 = (pANTLR3_COMMON_TOKEN) MATCHT(REBUILD_SYMBOL, &FOLLOW_REBUILD_SYMBOL_in_alter_partition1307);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REBUILD_SYMBOL244_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REBUILD_SYMBOL244));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REBUILD_SYMBOL244_tree);
        	        }

        	        PARTITION_SYMBOL245 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_alter_partition1309);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PARTITION_SYMBOL245_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITION_SYMBOL245));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PARTITION_SYMBOL245_tree);
        	        }

        	        // MySQL.g:388:36: ( no_write_to_bin_log )?
        	        {
        	            int alt74=2;
        	            switch ( LA(1) )
        	            {
        	                case NO_WRITE_TO_BINLOG_SYMBOL:
        	                	{
        	                		alt74=1;
        	                	}
        	                    break;
        	                case LOCAL_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case ACTION_SYMBOL:
        	                		    case ADDDATE_SYMBOL:
        	                		    case AFTER_SYMBOL:
        	                		    case AGAINST_SYMBOL:
        	                		    case AGGREGATE_SYMBOL:
        	                		    case ALGORITHM_SYMBOL:
        	                		    case ALL_SYMBOL:
        	                		    case ANALYZE_SYMBOL:
        	                		    case ANY_SYMBOL:
        	                		    case ASCII_SYMBOL:
        	                		    case AT_SYMBOL:
        	                		    case AUTHORS_SYMBOL:
        	                		    case AUTOEXTEND_SIZE_SYMBOL:
        	                		    case AUTO_INCREMENT_SYMBOL:
        	                		    case AVG_ROW_LENGTH_SYMBOL:
        	                		    case AVG_SYMBOL:
        	                		    case BACKUP_SYMBOL:
        	                		    case BACK_TICK_QUOTED_ID:
        	                		    case BEGIN_SYMBOL:
        	                		    case BINLOG_SYMBOL:
        	                		    case BIT_SYMBOL:
        	                		    case BLOCK_SYMBOL:
        	                		    case BOOLEAN_SYMBOL:
        	                		    case BOOL_SYMBOL:
        	                		    case BTREE_SYMBOL:
        	                		    case BYTE_SYMBOL:
        	                		    case CACHE_SYMBOL:
        	                		    case CASCADED_SYMBOL:
        	                		    case CATALOG_NAME_SYMBOL:
        	                		    case CHAIN_SYMBOL:
        	                		    case CHANGED_SYMBOL:
        	                		    case CHARSET_SYMBOL:
        	                		    case CHECKSUM_SYMBOL:
        	                		    case CIPHER_SYMBOL:
        	                		    case CLASS_ORIGIN_SYMBOL:
        	                		    case CLIENT_SYMBOL:
        	                		    case CLOSE_SYMBOL:
        	                		    case COALESCE_SYMBOL:
        	                		    case CODE_SYMBOL:
        	                		    case COLLATION_SYMBOL:
        	                		    case COLUMNS_SYMBOL:
        	                		    case COLUMN_FORMAT_SYMBOL:
        	                		    case COLUMN_NAME_SYMBOL:
        	                		    case COMMENT_SYMBOL:
        	                		    case COMMITTED_SYMBOL:
        	                		    case COMMIT_SYMBOL:
        	                		    case COMPACT_SYMBOL:
        	                		    case COMPLETION_SYMBOL:
        	                		    case COMPRESSED_SYMBOL:
        	                		    case CONCURRENT_SYMBOL:
        	                		    case CONNECTION_SYMBOL:
        	                		    case CONSISTENT_SYMBOL:
        	                		    case CONSTRAINT_CATALOG_SYMBOL:
        	                		    case CONSTRAINT_NAME_SYMBOL:
        	                		    case CONSTRAINT_SCHEMA_SYMBOL:
        	                		    case CONTAINS_SYMBOL:
        	                		    case CONTEXT_SYMBOL:
        	                		    case CONTRIBUTORS_SYMBOL:
        	                		    case CPU_SYMBOL:
        	                		    case CUBE_SYMBOL:
        	                		    case CURRENT_SYMBOL:
        	                		    case CURSOR_NAME_SYMBOL:
        	                		    case DATAFILE_SYMBOL:
        	                		    case DATA_SYMBOL:
        	                		    case DATETIME_SYMBOL:
        	                		    case DATE_SYMBOL:
        	                		    case DAY_SYMBOL:
        	                		    case DEALLOCATE_SYMBOL:
        	                		    case DEFAULT_AUTH_SYMBOL:
        	                		    case DEFINER_SYMBOL:
        	                		    case DELAY_KEY_WRITE_SYMBOL:
        	                		    case DES_KEY_FILE_SYMBOL:
        	                		    case DIAGNOSTICS_SYMBOL:
        	                		    case DIRECTORY_SYMBOL:
        	                		    case DISABLE_SYMBOL:
        	                		    case DISCARD_SYMBOL:
        	                		    case DISK_SYMBOL:
        	                		    case DOUBLE_QUOTED_TEXT:
        	                		    case DO_SYMBOL:
        	                		    case DUMPFILE_SYMBOL:
        	                		    case DUPLICATE_SYMBOL:
        	                		    case DYNAMIC_SYMBOL:
        	                		    case ENABLE_SYMBOL:
        	                		    case ENDS_SYMBOL:
        	                		    case END_SYMBOL:
        	                		    case ENGINES_SYMBOL:
        	                		    case ENGINE_SYMBOL:
        	                		    case ENUM_SYMBOL:
        	                		    case ERRORS_SYMBOL:
        	                		    case ERROR_SYMBOL:
        	                		    case ESCAPE_SYMBOL:
        	                		    case EVENTS_SYMBOL:
        	                		    case EVENT_SYMBOL:
        	                		    case EVERY_SYMBOL:
        	                		    case EXECUTE_SYMBOL:
        	                		    case EXPANSION_SYMBOL:
        	                		    case EXPORT_SYMBOL:
        	                		    case EXTENDED_SYMBOL:
        	                		    case EXTENT_SIZE_SYMBOL:
        	                		    case FAST_SYMBOL:
        	                		    case FAULTS_SYMBOL:
        	                		    case FILE_SYMBOL:
        	                		    case FIRST_SYMBOL:
        	                		    case FIXED_SYMBOL:
        	                		    case FLUSH_SYMBOL:
        	                		    case FORMAT_SYMBOL:
        	                		    case FOUND_SYMBOL:
        	                		    case FULL_SYMBOL:
        	                		    case FUNCTION_SYMBOL:
        	                		    case GENERAL_SYMBOL:
        	                		    case GEOMETRYCOLLECTION_SYMBOL:
        	                		    case GEOMETRY_SYMBOL:
        	                		    case GET_FORMAT_SYMBOL:
        	                		    case GLOBAL_SYMBOL:
        	                		    case GRANTS_SYMBOL:
        	                		    case HANDLER_SYMBOL:
        	                		    case HASH_SYMBOL:
        	                		    case HELP_SYMBOL:
        	                		    case HOSTS_SYMBOL:
        	                		    case HOST_SYMBOL:
        	                		    case HOUR_SYMBOL:
        	                		    case IDENTIFIED_SYMBOL:
        	                		    case IDENTIFIER:
        	                		    case IGNORE_SERVER_IDS_SYMBOL:
        	                		    case IMPORT_SYMBOL:
        	                		    case INDEXES_SYMBOL:
        	                		    case INITIAL_SIZE_SYMBOL:
        	                		    case INNODB_SYMBOL:
        	                		    case INSERT_METHOD_SYMBOL:
        	                		    case INSTALL_SYMBOL:
        	                		    case INVOKER_SYMBOL:
        	                		    case IO_SYMBOL:
        	                		    case IPC_SYMBOL:
        	                		    case ISOLATION_SYMBOL:
        	                		    case ISSUER_SYMBOL:
        	                		    case KEY_BLOCK_SIZE_SYMBOL:
        	                		    case LANGUAGE_SYMBOL:
        	                		    case LAST_SYMBOL:
        	                		    case LEAVES_SYMBOL:
        	                		    case LESS_SYMBOL:
        	                		    case LEVEL_SYMBOL:
        	                		    case LINESTRING_SYMBOL:
        	                		    case LIST_SYMBOL:
        	                		    case LOCAL_SYMBOL:
        	                		    case LOCKS_SYMBOL:
        	                		    case LOGFILE_SYMBOL:
        	                		    case LOGS_SYMBOL:
        	                		    case MASTER_AUTO_POSITION_SYMBOL:
        	                		    case MASTER_CONNECT_RETRY_SYMBOL:
        	                		    case MASTER_DELAY_SYMBOL:
        	                		    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
        	                		    case MASTER_HOST_SYMBOL:
        	                		    case MASTER_LOG_FILE_SYMBOL:
        	                		    case MASTER_LOG_POS_SYMBOL:
        	                		    case MASTER_PASSWORD_SYMBOL:
        	                		    case MASTER_PORT_SYMBOL:
        	                		    case MASTER_RETRY_COUNT_SYMBOL:
        	                		    case MASTER_SERVER_ID_SYMBOL:
        	                		    case MASTER_SSL_CAPATH_SYMBOL:
        	                		    case MASTER_SSL_CA_SYMBOL:
        	                		    case MASTER_SSL_CERT_SYMBOL:
        	                		    case MASTER_SSL_CIPHER_SYMBOL:
        	                		    case MASTER_SSL_CRLPATH_SYMBOL:
        	                		    case MASTER_SSL_CRL_SYMBOL:
        	                		    case MASTER_SSL_KEY_SYMBOL:
        	                		    case MASTER_SSL_SYMBOL:
        	                		    case MASTER_SYMBOL:
        	                		    case MASTER_USER_SYMBOL:
        	                		    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
        	                		    case MAX_QUERIES_PER_HOUR_SYMBOL:
        	                		    case MAX_ROWS_SYMBOL:
        	                		    case MAX_SIZE_SYMBOL:
        	                		    case MAX_UPDATES_PER_HOUR_SYMBOL:
        	                		    case MAX_USER_CONNECTIONS_SYMBOL:
        	                		    case MEDIUM_SYMBOL:
        	                		    case MEMORY_SYMBOL:
        	                		    case MERGE_SYMBOL:
        	                		    case MESSAGE_TEXT_SYMBOL:
        	                		    case MICROSECOND_SYMBOL:
        	                		    case MIGRATE_SYMBOL:
        	                		    case MINUTE_SYMBOL:
        	                		    case MIN_ROWS_SYMBOL:
        	                		    case MODE_SYMBOL:
        	                		    case MODIFY_SYMBOL:
        	                		    case MONTH_SYMBOL:
        	                		    case MULTILINESTRING_SYMBOL:
        	                		    case MULTIPOINT_SYMBOL:
        	                		    case MULTIPOLYGON_SYMBOL:
        	                		    case MUTEX_SYMBOL:
        	                		    case MYSQL_ERRNO_SYMBOL:
        	                		    case NAMES_SYMBOL:
        	                		    case NAME_SYMBOL:
        	                		    case NATIONAL_SYMBOL:
        	                		    case NCHAR_SYMBOL:
        	                		    case NDBCLUSTER_SYMBOL:
        	                		    case NEW_SYMBOL:
        	                		    case NEXT_SYMBOL:
        	                		    case NODEGROUP_SYMBOL:
        	                		    case NONE_SYMBOL:
        	                		    case NO_SYMBOL:
        	                		    case NO_WAIT_SYMBOL:
        	                		    case NUMBER_SYMBOL:
        	                		    case NVARCHAR_SYMBOL:
        	                		    case OFFSET_SYMBOL:
        	                		    case OLD_PASSWORD_SYMBOL:
        	                		    case ONE_SHOT_SYMBOL:
        	                		    case ONE_SYMBOL:
        	                		    case OPEN_SYMBOL:
        	                		    case OPTIONS_SYMBOL:
        	                		    case OWNER_SYMBOL:
        	                		    case PACK_KEYS_SYMBOL:
        	                		    case PAGE_SYMBOL:
        	                		    case PARSER_SYMBOL:
        	                		    case PARTIAL_SYMBOL:
        	                		    case PARTITIONING_SYMBOL:
        	                		    case PARTITIONS_SYMBOL:
        	                		    case PARTITION_SYMBOL:
        	                		    case PASSWORD_SYMBOL:
        	                		    case PHASE_SYMBOL:
        	                		    case PLUGINS_SYMBOL:
        	                		    case PLUGIN_DIR_SYMBOL:
        	                		    case PLUGIN_SYMBOL:
        	                		    case POINT_SYMBOL:
        	                		    case POLYGON_SYMBOL:
        	                		    case PORT_SYMBOL:
        	                		    case PREPARE_SYMBOL:
        	                		    case PRESERVE_SYMBOL:
        	                		    case PREV_SYMBOL:
        	                		    case PRIVILEGES_SYMBOL:
        	                		    case PROCESSLIST_SYMBOL:
        	                		    case PROCESS_SYMBOL:
        	                		    case PROFILES_SYMBOL:
        	                		    case PROFILE_SYMBOL:
        	                		    case PROXY_SYMBOL:
        	                		    case QUARTER_SYMBOL:
        	                		    case QUERY_SYMBOL:
        	                		    case QUICK_SYMBOL:
        	                		    case READ_ONLY_SYMBOL:
        	                		    case REBUILD_SYMBOL:
        	                		    case RECOVER_SYMBOL:
        	                		    case REDOFILE_SYMBOL:
        	                		    case REDO_BUFFER_SIZE_SYMBOL:
        	                		    case REDUNDANT_SYMBOL:
        	                		    case RELAYLOG_SYMBOL:
        	                		    case RELAY_LOG_FILE_SYMBOL:
        	                		    case RELAY_LOG_POS_SYMBOL:
        	                		    case RELAY_SYMBOL:
        	                		    case RELAY_THREAD_SYMBOL:
        	                		    case RELOAD_SYMBOL:
        	                		    case REMOVE_SYMBOL:
        	                		    case REORGANIZE_SYMBOL:
        	                		    case REPAIR_SYMBOL:
        	                		    case REPEATABLE_SYMBOL:
        	                		    case REPLICATION_SYMBOL:
        	                		    case RESET_SYMBOL:
        	                		    case RESTORE_SYMBOL:
        	                		    case RESUME_SYMBOL:
        	                		    case RETURNED_SQLSTATE_SYMBOL:
        	                		    case RETURNS_SYMBOL:
        	                		    case REVERSE_SYMBOL:
        	                		    case ROLLBACK_SYMBOL:
        	                		    case ROLLUP_SYMBOL:
        	                		    case ROUTINE_SYMBOL:
        	                		    case ROWS_SYMBOL:
        	                		    case ROW_COUNT_SYMBOL:
        	                		    case ROW_FORMAT_SYMBOL:
        	                		    case ROW_SYMBOL:
        	                		    case RTREE_SYMBOL:
        	                		    case SAVEPOINT_SYMBOL:
        	                		    case SCHEDULE_SYMBOL:
        	                		    case SCHEMA_NAME_SYMBOL:
        	                		    case SECOND_SYMBOL:
        	                		    case SECURITY_SYMBOL:
        	                		    case SERIALIZABLE_SYMBOL:
        	                		    case SERIAL_SYMBOL:
        	                		    case SERVER_SYMBOL:
        	                		    case SESSION_SYMBOL:
        	                		    case SHARE_SYMBOL:
        	                		    case SHUTDOWN_SYMBOL:
        	                		    case SIGNED_SYMBOL:
        	                		    case SIMPLE_SYMBOL:
        	                		    case SLAVE_SYMBOL:
        	                		    case SLOW_SYMBOL:
        	                		    case SNAPSHOT_SYMBOL:
        	                		    case SOCKET_SYMBOL:
        	                		    case SONAME_SYMBOL:
        	                		    case SOUNDS_SYMBOL:
        	                		    case SOURCE_SYMBOL:
        	                		    case SQL_AFTER_GTIDS_SYMBOL:
        	                		    case SQL_AFTER_MTS_GAPS_SYMBOL:
        	                		    case SQL_BEFORE_GTIDS_SYMBOL:
        	                		    case SQL_BUFFER_RESULT_SYMBOL:
        	                		    case SQL_CACHE_SYMBOL:
        	                		    case SQL_NO_CACHE_SYMBOL:
        	                		    case SQL_THREAD_SYMBOL:
        	                		    case STARTS_SYMBOL:
        	                		    case START_SYMBOL:
        	                		    case STATS_AUTO_RECALC_SYMBOL:
        	                		    case STATS_PERSISTENT_SYMBOL:
        	                		    case STATS_SAMPLE_PAGES_SYMBOL:
        	                		    case STATUS_SYMBOL:
        	                		    case STOP_SYMBOL:
        	                		    case STORAGE_SYMBOL:
        	                		    case STRING_SYMBOL:
        	                		    case SUBCLASS_ORIGIN_SYMBOL:
        	                		    case SUBDATE_SYMBOL:
        	                		    case SUBJECT_SYMBOL:
        	                		    case SUBPARTITIONS_SYMBOL:
        	                		    case SUBPARTITION_SYMBOL:
        	                		    case SUPER_SYMBOL:
        	                		    case SUSPEND_SYMBOL:
        	                		    case SWAPS_SYMBOL:
        	                		    case SWITCHES_SYMBOL:
        	                		    case TABLESPACE_SYMBOL:
        	                		    case TABLES_SYMBOL:
        	                		    case TABLE_CHECKSUM_SYMBOL:
        	                		    case TABLE_NAME_SYMBOL:
        	                		    case TEMPORARY_SYMBOL:
        	                		    case TEMPTABLE_SYMBOL:
        	                		    case TEXT_SYMBOL:
        	                		    case THAN_SYMBOL:
        	                		    case TIMESTAMP_ADD_SYMBOL:
        	                		    case TIMESTAMP_DIFF_SYMBOL:
        	                		    case TIMESTAMP_SYMBOL:
        	                		    case TIME_SYMBOL:
        	                		    case TRANSACTION_SYMBOL:
        	                		    case TRIGGERS_SYMBOL:
        	                		    case TRUNCATE_SYMBOL:
        	                		    case TYPES_SYMBOL:
        	                		    case TYPE_SYMBOL:
        	                		    case UDF_RETURNS_SYMBOL:
        	                		    case UNCOMMITTED_SYMBOL:
        	                		    case UNDEFINED_SYMBOL:
        	                		    case UNDOFILE_SYMBOL:
        	                		    case UNDO_BUFFER_SIZE_SYMBOL:
        	                		    case UNICODE_SYMBOL:
        	                		    case UNINSTALL_SYMBOL:
        	                		    case UNKNOWN_SYMBOL:
        	                		    case UNTIL_SYMBOL:
        	                		    case UPGRADE_SYMBOL:
        	                		    case USER_RESOURCES_SYMBOL:
        	                		    case USER_SYMBOL:
        	                		    case USE_FRM_SYMBOL:
        	                		    case VALUE_SYMBOL:
        	                		    case VARIABLES_SYMBOL:
        	                		    case VIEW_SYMBOL:
        	                		    case WAIT_SYMBOL:
        	                		    case WARNINGS_SYMBOL:
        	                		    case WEEK_SYMBOL:
        	                		    case WEIGHT_STRING_SYMBOL:
        	                		    case WORK_SYMBOL:
        	                		    case WRAPPER_SYMBOL:
        	                		    case X509_SYMBOL:
        	                		    case XA_SYMBOL:
        	                		    case XML_SYMBOL:
        	                		    case YEAR_SYMBOL:
        	                		    	{
        	                		    		alt74=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt74)
        	            {
        	        	case 1:
        	        	    // MySQL.g:388:36: no_write_to_bin_log
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_no_write_to_bin_log_in_alter_partition1311);
        	        	        no_write_to_bin_log246=no_write_to_bin_log(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_partitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, no_write_to_bin_log246.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_all_or_partition_name_list_in_alter_partition1314);
        	        all_or_partition_name_list247=all_or_partition_name_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, all_or_partition_name_list247.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:389:4: OPTIMIZE_SYMBOL PARTITION_SYMBOL ( no_write_to_bin_log )? all_or_partition_name_list ( no_write_to_bin_log )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        OPTIMIZE_SYMBOL248 = (pANTLR3_COMMON_TOKEN) MATCHT(OPTIMIZE_SYMBOL, &FOLLOW_OPTIMIZE_SYMBOL_in_alter_partition1319);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPTIMIZE_SYMBOL248_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPTIMIZE_SYMBOL248));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPTIMIZE_SYMBOL248_tree);
        	        }

        	        PARTITION_SYMBOL249 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_alter_partition1321);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PARTITION_SYMBOL249_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITION_SYMBOL249));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PARTITION_SYMBOL249_tree);
        	        }

        	        // MySQL.g:389:37: ( no_write_to_bin_log )?
        	        {
        	            int alt75=2;
        	            switch ( LA(1) )
        	            {
        	                case NO_WRITE_TO_BINLOG_SYMBOL:
        	                	{
        	                		alt75=1;
        	                	}
        	                    break;
        	                case LOCAL_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case ACTION_SYMBOL:
        	                		    case ADDDATE_SYMBOL:
        	                		    case AFTER_SYMBOL:
        	                		    case AGAINST_SYMBOL:
        	                		    case AGGREGATE_SYMBOL:
        	                		    case ALGORITHM_SYMBOL:
        	                		    case ALL_SYMBOL:
        	                		    case ANALYZE_SYMBOL:
        	                		    case ANY_SYMBOL:
        	                		    case ASCII_SYMBOL:
        	                		    case AT_SYMBOL:
        	                		    case AUTHORS_SYMBOL:
        	                		    case AUTOEXTEND_SIZE_SYMBOL:
        	                		    case AUTO_INCREMENT_SYMBOL:
        	                		    case AVG_ROW_LENGTH_SYMBOL:
        	                		    case AVG_SYMBOL:
        	                		    case BACKUP_SYMBOL:
        	                		    case BACK_TICK_QUOTED_ID:
        	                		    case BEGIN_SYMBOL:
        	                		    case BINLOG_SYMBOL:
        	                		    case BIT_SYMBOL:
        	                		    case BLOCK_SYMBOL:
        	                		    case BOOLEAN_SYMBOL:
        	                		    case BOOL_SYMBOL:
        	                		    case BTREE_SYMBOL:
        	                		    case BYTE_SYMBOL:
        	                		    case CACHE_SYMBOL:
        	                		    case CASCADED_SYMBOL:
        	                		    case CATALOG_NAME_SYMBOL:
        	                		    case CHAIN_SYMBOL:
        	                		    case CHANGED_SYMBOL:
        	                		    case CHARSET_SYMBOL:
        	                		    case CHECKSUM_SYMBOL:
        	                		    case CIPHER_SYMBOL:
        	                		    case CLASS_ORIGIN_SYMBOL:
        	                		    case CLIENT_SYMBOL:
        	                		    case CLOSE_SYMBOL:
        	                		    case COALESCE_SYMBOL:
        	                		    case CODE_SYMBOL:
        	                		    case COLLATION_SYMBOL:
        	                		    case COLUMNS_SYMBOL:
        	                		    case COLUMN_FORMAT_SYMBOL:
        	                		    case COLUMN_NAME_SYMBOL:
        	                		    case COMMENT_SYMBOL:
        	                		    case COMMITTED_SYMBOL:
        	                		    case COMMIT_SYMBOL:
        	                		    case COMPACT_SYMBOL:
        	                		    case COMPLETION_SYMBOL:
        	                		    case COMPRESSED_SYMBOL:
        	                		    case CONCURRENT_SYMBOL:
        	                		    case CONNECTION_SYMBOL:
        	                		    case CONSISTENT_SYMBOL:
        	                		    case CONSTRAINT_CATALOG_SYMBOL:
        	                		    case CONSTRAINT_NAME_SYMBOL:
        	                		    case CONSTRAINT_SCHEMA_SYMBOL:
        	                		    case CONTAINS_SYMBOL:
        	                		    case CONTEXT_SYMBOL:
        	                		    case CONTRIBUTORS_SYMBOL:
        	                		    case CPU_SYMBOL:
        	                		    case CUBE_SYMBOL:
        	                		    case CURRENT_SYMBOL:
        	                		    case CURSOR_NAME_SYMBOL:
        	                		    case DATAFILE_SYMBOL:
        	                		    case DATA_SYMBOL:
        	                		    case DATETIME_SYMBOL:
        	                		    case DATE_SYMBOL:
        	                		    case DAY_SYMBOL:
        	                		    case DEALLOCATE_SYMBOL:
        	                		    case DEFAULT_AUTH_SYMBOL:
        	                		    case DEFINER_SYMBOL:
        	                		    case DELAY_KEY_WRITE_SYMBOL:
        	                		    case DES_KEY_FILE_SYMBOL:
        	                		    case DIAGNOSTICS_SYMBOL:
        	                		    case DIRECTORY_SYMBOL:
        	                		    case DISABLE_SYMBOL:
        	                		    case DISCARD_SYMBOL:
        	                		    case DISK_SYMBOL:
        	                		    case DOUBLE_QUOTED_TEXT:
        	                		    case DO_SYMBOL:
        	                		    case DUMPFILE_SYMBOL:
        	                		    case DUPLICATE_SYMBOL:
        	                		    case DYNAMIC_SYMBOL:
        	                		    case ENABLE_SYMBOL:
        	                		    case ENDS_SYMBOL:
        	                		    case END_SYMBOL:
        	                		    case ENGINES_SYMBOL:
        	                		    case ENGINE_SYMBOL:
        	                		    case ENUM_SYMBOL:
        	                		    case ERRORS_SYMBOL:
        	                		    case ERROR_SYMBOL:
        	                		    case ESCAPE_SYMBOL:
        	                		    case EVENTS_SYMBOL:
        	                		    case EVENT_SYMBOL:
        	                		    case EVERY_SYMBOL:
        	                		    case EXECUTE_SYMBOL:
        	                		    case EXPANSION_SYMBOL:
        	                		    case EXPORT_SYMBOL:
        	                		    case EXTENDED_SYMBOL:
        	                		    case EXTENT_SIZE_SYMBOL:
        	                		    case FAST_SYMBOL:
        	                		    case FAULTS_SYMBOL:
        	                		    case FILE_SYMBOL:
        	                		    case FIRST_SYMBOL:
        	                		    case FIXED_SYMBOL:
        	                		    case FLUSH_SYMBOL:
        	                		    case FORMAT_SYMBOL:
        	                		    case FOUND_SYMBOL:
        	                		    case FULL_SYMBOL:
        	                		    case FUNCTION_SYMBOL:
        	                		    case GENERAL_SYMBOL:
        	                		    case GEOMETRYCOLLECTION_SYMBOL:
        	                		    case GEOMETRY_SYMBOL:
        	                		    case GET_FORMAT_SYMBOL:
        	                		    case GLOBAL_SYMBOL:
        	                		    case GRANTS_SYMBOL:
        	                		    case HANDLER_SYMBOL:
        	                		    case HASH_SYMBOL:
        	                		    case HELP_SYMBOL:
        	                		    case HOSTS_SYMBOL:
        	                		    case HOST_SYMBOL:
        	                		    case HOUR_SYMBOL:
        	                		    case IDENTIFIED_SYMBOL:
        	                		    case IDENTIFIER:
        	                		    case IGNORE_SERVER_IDS_SYMBOL:
        	                		    case IMPORT_SYMBOL:
        	                		    case INDEXES_SYMBOL:
        	                		    case INITIAL_SIZE_SYMBOL:
        	                		    case INNODB_SYMBOL:
        	                		    case INSERT_METHOD_SYMBOL:
        	                		    case INSTALL_SYMBOL:
        	                		    case INVOKER_SYMBOL:
        	                		    case IO_SYMBOL:
        	                		    case IPC_SYMBOL:
        	                		    case ISOLATION_SYMBOL:
        	                		    case ISSUER_SYMBOL:
        	                		    case KEY_BLOCK_SIZE_SYMBOL:
        	                		    case LANGUAGE_SYMBOL:
        	                		    case LAST_SYMBOL:
        	                		    case LEAVES_SYMBOL:
        	                		    case LESS_SYMBOL:
        	                		    case LEVEL_SYMBOL:
        	                		    case LINESTRING_SYMBOL:
        	                		    case LIST_SYMBOL:
        	                		    case LOCKS_SYMBOL:
        	                		    case LOGFILE_SYMBOL:
        	                		    case LOGS_SYMBOL:
        	                		    case MASTER_AUTO_POSITION_SYMBOL:
        	                		    case MASTER_CONNECT_RETRY_SYMBOL:
        	                		    case MASTER_DELAY_SYMBOL:
        	                		    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
        	                		    case MASTER_HOST_SYMBOL:
        	                		    case MASTER_LOG_FILE_SYMBOL:
        	                		    case MASTER_LOG_POS_SYMBOL:
        	                		    case MASTER_PASSWORD_SYMBOL:
        	                		    case MASTER_PORT_SYMBOL:
        	                		    case MASTER_RETRY_COUNT_SYMBOL:
        	                		    case MASTER_SERVER_ID_SYMBOL:
        	                		    case MASTER_SSL_CAPATH_SYMBOL:
        	                		    case MASTER_SSL_CA_SYMBOL:
        	                		    case MASTER_SSL_CERT_SYMBOL:
        	                		    case MASTER_SSL_CIPHER_SYMBOL:
        	                		    case MASTER_SSL_CRLPATH_SYMBOL:
        	                		    case MASTER_SSL_CRL_SYMBOL:
        	                		    case MASTER_SSL_KEY_SYMBOL:
        	                		    case MASTER_SSL_SYMBOL:
        	                		    case MASTER_SYMBOL:
        	                		    case MASTER_USER_SYMBOL:
        	                		    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
        	                		    case MAX_QUERIES_PER_HOUR_SYMBOL:
        	                		    case MAX_ROWS_SYMBOL:
        	                		    case MAX_SIZE_SYMBOL:
        	                		    case MAX_UPDATES_PER_HOUR_SYMBOL:
        	                		    case MAX_USER_CONNECTIONS_SYMBOL:
        	                		    case MEDIUM_SYMBOL:
        	                		    case MEMORY_SYMBOL:
        	                		    case MERGE_SYMBOL:
        	                		    case MESSAGE_TEXT_SYMBOL:
        	                		    case MICROSECOND_SYMBOL:
        	                		    case MIGRATE_SYMBOL:
        	                		    case MINUTE_SYMBOL:
        	                		    case MIN_ROWS_SYMBOL:
        	                		    case MODE_SYMBOL:
        	                		    case MODIFY_SYMBOL:
        	                		    case MONTH_SYMBOL:
        	                		    case MULTILINESTRING_SYMBOL:
        	                		    case MULTIPOINT_SYMBOL:
        	                		    case MULTIPOLYGON_SYMBOL:
        	                		    case MUTEX_SYMBOL:
        	                		    case MYSQL_ERRNO_SYMBOL:
        	                		    case NAMES_SYMBOL:
        	                		    case NAME_SYMBOL:
        	                		    case NATIONAL_SYMBOL:
        	                		    case NCHAR_SYMBOL:
        	                		    case NDBCLUSTER_SYMBOL:
        	                		    case NEW_SYMBOL:
        	                		    case NEXT_SYMBOL:
        	                		    case NODEGROUP_SYMBOL:
        	                		    case NONE_SYMBOL:
        	                		    case NO_SYMBOL:
        	                		    case NO_WAIT_SYMBOL:
        	                		    case NUMBER_SYMBOL:
        	                		    case NVARCHAR_SYMBOL:
        	                		    case OFFSET_SYMBOL:
        	                		    case OLD_PASSWORD_SYMBOL:
        	                		    case ONE_SHOT_SYMBOL:
        	                		    case ONE_SYMBOL:
        	                		    case OPEN_SYMBOL:
        	                		    case OPTIONS_SYMBOL:
        	                		    case OWNER_SYMBOL:
        	                		    case PACK_KEYS_SYMBOL:
        	                		    case PAGE_SYMBOL:
        	                		    case PARSER_SYMBOL:
        	                		    case PARTIAL_SYMBOL:
        	                		    case PARTITIONING_SYMBOL:
        	                		    case PARTITIONS_SYMBOL:
        	                		    case PARTITION_SYMBOL:
        	                		    case PASSWORD_SYMBOL:
        	                		    case PHASE_SYMBOL:
        	                		    case PLUGINS_SYMBOL:
        	                		    case PLUGIN_DIR_SYMBOL:
        	                		    case PLUGIN_SYMBOL:
        	                		    case POINT_SYMBOL:
        	                		    case POLYGON_SYMBOL:
        	                		    case PORT_SYMBOL:
        	                		    case PREPARE_SYMBOL:
        	                		    case PRESERVE_SYMBOL:
        	                		    case PREV_SYMBOL:
        	                		    case PRIVILEGES_SYMBOL:
        	                		    case PROCESSLIST_SYMBOL:
        	                		    case PROCESS_SYMBOL:
        	                		    case PROFILES_SYMBOL:
        	                		    case PROFILE_SYMBOL:
        	                		    case PROXY_SYMBOL:
        	                		    case QUARTER_SYMBOL:
        	                		    case QUERY_SYMBOL:
        	                		    case QUICK_SYMBOL:
        	                		    case READ_ONLY_SYMBOL:
        	                		    case REBUILD_SYMBOL:
        	                		    case RECOVER_SYMBOL:
        	                		    case REDOFILE_SYMBOL:
        	                		    case REDO_BUFFER_SIZE_SYMBOL:
        	                		    case REDUNDANT_SYMBOL:
        	                		    case RELAYLOG_SYMBOL:
        	                		    case RELAY_LOG_FILE_SYMBOL:
        	                		    case RELAY_LOG_POS_SYMBOL:
        	                		    case RELAY_SYMBOL:
        	                		    case RELAY_THREAD_SYMBOL:
        	                		    case RELOAD_SYMBOL:
        	                		    case REMOVE_SYMBOL:
        	                		    case REORGANIZE_SYMBOL:
        	                		    case REPAIR_SYMBOL:
        	                		    case REPEATABLE_SYMBOL:
        	                		    case REPLICATION_SYMBOL:
        	                		    case RESET_SYMBOL:
        	                		    case RESTORE_SYMBOL:
        	                		    case RESUME_SYMBOL:
        	                		    case RETURNED_SQLSTATE_SYMBOL:
        	                		    case RETURNS_SYMBOL:
        	                		    case REVERSE_SYMBOL:
        	                		    case ROLLBACK_SYMBOL:
        	                		    case ROLLUP_SYMBOL:
        	                		    case ROUTINE_SYMBOL:
        	                		    case ROWS_SYMBOL:
        	                		    case ROW_COUNT_SYMBOL:
        	                		    case ROW_FORMAT_SYMBOL:
        	                		    case ROW_SYMBOL:
        	                		    case RTREE_SYMBOL:
        	                		    case SAVEPOINT_SYMBOL:
        	                		    case SCHEDULE_SYMBOL:
        	                		    case SCHEMA_NAME_SYMBOL:
        	                		    case SECOND_SYMBOL:
        	                		    case SECURITY_SYMBOL:
        	                		    case SERIALIZABLE_SYMBOL:
        	                		    case SERIAL_SYMBOL:
        	                		    case SERVER_SYMBOL:
        	                		    case SESSION_SYMBOL:
        	                		    case SHARE_SYMBOL:
        	                		    case SHUTDOWN_SYMBOL:
        	                		    case SIGNED_SYMBOL:
        	                		    case SIMPLE_SYMBOL:
        	                		    case SLAVE_SYMBOL:
        	                		    case SLOW_SYMBOL:
        	                		    case SNAPSHOT_SYMBOL:
        	                		    case SOCKET_SYMBOL:
        	                		    case SONAME_SYMBOL:
        	                		    case SOUNDS_SYMBOL:
        	                		    case SOURCE_SYMBOL:
        	                		    case SQL_AFTER_GTIDS_SYMBOL:
        	                		    case SQL_AFTER_MTS_GAPS_SYMBOL:
        	                		    case SQL_BEFORE_GTIDS_SYMBOL:
        	                		    case SQL_BUFFER_RESULT_SYMBOL:
        	                		    case SQL_CACHE_SYMBOL:
        	                		    case SQL_NO_CACHE_SYMBOL:
        	                		    case SQL_THREAD_SYMBOL:
        	                		    case STARTS_SYMBOL:
        	                		    case START_SYMBOL:
        	                		    case STATS_AUTO_RECALC_SYMBOL:
        	                		    case STATS_PERSISTENT_SYMBOL:
        	                		    case STATS_SAMPLE_PAGES_SYMBOL:
        	                		    case STATUS_SYMBOL:
        	                		    case STOP_SYMBOL:
        	                		    case STORAGE_SYMBOL:
        	                		    case STRING_SYMBOL:
        	                		    case SUBCLASS_ORIGIN_SYMBOL:
        	                		    case SUBDATE_SYMBOL:
        	                		    case SUBJECT_SYMBOL:
        	                		    case SUBPARTITIONS_SYMBOL:
        	                		    case SUBPARTITION_SYMBOL:
        	                		    case SUPER_SYMBOL:
        	                		    case SUSPEND_SYMBOL:
        	                		    case SWAPS_SYMBOL:
        	                		    case SWITCHES_SYMBOL:
        	                		    case TABLESPACE_SYMBOL:
        	                		    case TABLES_SYMBOL:
        	                		    case TABLE_CHECKSUM_SYMBOL:
        	                		    case TABLE_NAME_SYMBOL:
        	                		    case TEMPORARY_SYMBOL:
        	                		    case TEMPTABLE_SYMBOL:
        	                		    case TEXT_SYMBOL:
        	                		    case THAN_SYMBOL:
        	                		    case TIMESTAMP_ADD_SYMBOL:
        	                		    case TIMESTAMP_DIFF_SYMBOL:
        	                		    case TIMESTAMP_SYMBOL:
        	                		    case TIME_SYMBOL:
        	                		    case TRANSACTION_SYMBOL:
        	                		    case TRIGGERS_SYMBOL:
        	                		    case TRUNCATE_SYMBOL:
        	                		    case TYPES_SYMBOL:
        	                		    case TYPE_SYMBOL:
        	                		    case UDF_RETURNS_SYMBOL:
        	                		    case UNCOMMITTED_SYMBOL:
        	                		    case UNDEFINED_SYMBOL:
        	                		    case UNDOFILE_SYMBOL:
        	                		    case UNDO_BUFFER_SIZE_SYMBOL:
        	                		    case UNICODE_SYMBOL:
        	                		    case UNINSTALL_SYMBOL:
        	                		    case UNKNOWN_SYMBOL:
        	                		    case UNTIL_SYMBOL:
        	                		    case UPGRADE_SYMBOL:
        	                		    case USER_RESOURCES_SYMBOL:
        	                		    case USER_SYMBOL:
        	                		    case USE_FRM_SYMBOL:
        	                		    case VALUE_SYMBOL:
        	                		    case VARIABLES_SYMBOL:
        	                		    case VIEW_SYMBOL:
        	                		    case WAIT_SYMBOL:
        	                		    case WARNINGS_SYMBOL:
        	                		    case WEEK_SYMBOL:
        	                		    case WEIGHT_STRING_SYMBOL:
        	                		    case WORK_SYMBOL:
        	                		    case WRAPPER_SYMBOL:
        	                		    case X509_SYMBOL:
        	                		    case XA_SYMBOL:
        	                		    case XML_SYMBOL:
        	                		    case YEAR_SYMBOL:
        	                		    	{
        	                		    		alt75=1;
        	                		    	}
        	                		        break;
        	                		    case LOCAL_SYMBOL:
        	                		    	{
        	                		    		{
        	                		    		    int LA75_13 = LA(3);
        	                		    		    if ( ((LA(1) == LOCAL_SYMBOL)))
        	                		    		    {
        	                		    		        alt75=1;
        	                		    		    }
        	                		    		}
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt75)
        	            {
        	        	case 1:
        	        	    // MySQL.g:389:37: no_write_to_bin_log
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_no_write_to_bin_log_in_alter_partition1323);
        	        	        no_write_to_bin_log250=no_write_to_bin_log(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_partitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, no_write_to_bin_log250.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_all_or_partition_name_list_in_alter_partition1326);
        	        all_or_partition_name_list251=all_or_partition_name_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, all_or_partition_name_list251.tree);

        	        // MySQL.g:389:85: ( no_write_to_bin_log )?
        	        {
        	            int alt76=2;
        	            switch ( LA(1) )
        	            {
        	                case LOCAL_SYMBOL:
        	                case NO_WRITE_TO_BINLOG_SYMBOL:
        	                	{
        	                		alt76=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt76)
        	            {
        	        	case 1:
        	        	    // MySQL.g:389:85: no_write_to_bin_log
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_no_write_to_bin_log_in_alter_partition1328);
        	        	        no_write_to_bin_log252=no_write_to_bin_log(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_partitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, no_write_to_bin_log252.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:390:4: ANALYZE_SYMBOL PARTITION_SYMBOL ( no_write_to_bin_log )? all_or_partition_name_list
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ANALYZE_SYMBOL253 = (pANTLR3_COMMON_TOKEN) MATCHT(ANALYZE_SYMBOL, &FOLLOW_ANALYZE_SYMBOL_in_alter_partition1335);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ANALYZE_SYMBOL253_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ANALYZE_SYMBOL253));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ANALYZE_SYMBOL253_tree);
        	        }

        	        PARTITION_SYMBOL254 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_alter_partition1337);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PARTITION_SYMBOL254_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITION_SYMBOL254));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PARTITION_SYMBOL254_tree);
        	        }

        	        // MySQL.g:390:36: ( no_write_to_bin_log )?
        	        {
        	            int alt77=2;
        	            switch ( LA(1) )
        	            {
        	                case NO_WRITE_TO_BINLOG_SYMBOL:
        	                	{
        	                		alt77=1;
        	                	}
        	                    break;
        	                case LOCAL_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case ACTION_SYMBOL:
        	                		    case ADDDATE_SYMBOL:
        	                		    case AFTER_SYMBOL:
        	                		    case AGAINST_SYMBOL:
        	                		    case AGGREGATE_SYMBOL:
        	                		    case ALGORITHM_SYMBOL:
        	                		    case ALL_SYMBOL:
        	                		    case ANALYZE_SYMBOL:
        	                		    case ANY_SYMBOL:
        	                		    case ASCII_SYMBOL:
        	                		    case AT_SYMBOL:
        	                		    case AUTHORS_SYMBOL:
        	                		    case AUTOEXTEND_SIZE_SYMBOL:
        	                		    case AUTO_INCREMENT_SYMBOL:
        	                		    case AVG_ROW_LENGTH_SYMBOL:
        	                		    case AVG_SYMBOL:
        	                		    case BACKUP_SYMBOL:
        	                		    case BACK_TICK_QUOTED_ID:
        	                		    case BEGIN_SYMBOL:
        	                		    case BINLOG_SYMBOL:
        	                		    case BIT_SYMBOL:
        	                		    case BLOCK_SYMBOL:
        	                		    case BOOLEAN_SYMBOL:
        	                		    case BOOL_SYMBOL:
        	                		    case BTREE_SYMBOL:
        	                		    case BYTE_SYMBOL:
        	                		    case CACHE_SYMBOL:
        	                		    case CASCADED_SYMBOL:
        	                		    case CATALOG_NAME_SYMBOL:
        	                		    case CHAIN_SYMBOL:
        	                		    case CHANGED_SYMBOL:
        	                		    case CHARSET_SYMBOL:
        	                		    case CHECKSUM_SYMBOL:
        	                		    case CIPHER_SYMBOL:
        	                		    case CLASS_ORIGIN_SYMBOL:
        	                		    case CLIENT_SYMBOL:
        	                		    case CLOSE_SYMBOL:
        	                		    case COALESCE_SYMBOL:
        	                		    case CODE_SYMBOL:
        	                		    case COLLATION_SYMBOL:
        	                		    case COLUMNS_SYMBOL:
        	                		    case COLUMN_FORMAT_SYMBOL:
        	                		    case COLUMN_NAME_SYMBOL:
        	                		    case COMMENT_SYMBOL:
        	                		    case COMMITTED_SYMBOL:
        	                		    case COMMIT_SYMBOL:
        	                		    case COMPACT_SYMBOL:
        	                		    case COMPLETION_SYMBOL:
        	                		    case COMPRESSED_SYMBOL:
        	                		    case CONCURRENT_SYMBOL:
        	                		    case CONNECTION_SYMBOL:
        	                		    case CONSISTENT_SYMBOL:
        	                		    case CONSTRAINT_CATALOG_SYMBOL:
        	                		    case CONSTRAINT_NAME_SYMBOL:
        	                		    case CONSTRAINT_SCHEMA_SYMBOL:
        	                		    case CONTAINS_SYMBOL:
        	                		    case CONTEXT_SYMBOL:
        	                		    case CONTRIBUTORS_SYMBOL:
        	                		    case CPU_SYMBOL:
        	                		    case CUBE_SYMBOL:
        	                		    case CURRENT_SYMBOL:
        	                		    case CURSOR_NAME_SYMBOL:
        	                		    case DATAFILE_SYMBOL:
        	                		    case DATA_SYMBOL:
        	                		    case DATETIME_SYMBOL:
        	                		    case DATE_SYMBOL:
        	                		    case DAY_SYMBOL:
        	                		    case DEALLOCATE_SYMBOL:
        	                		    case DEFAULT_AUTH_SYMBOL:
        	                		    case DEFINER_SYMBOL:
        	                		    case DELAY_KEY_WRITE_SYMBOL:
        	                		    case DES_KEY_FILE_SYMBOL:
        	                		    case DIAGNOSTICS_SYMBOL:
        	                		    case DIRECTORY_SYMBOL:
        	                		    case DISABLE_SYMBOL:
        	                		    case DISCARD_SYMBOL:
        	                		    case DISK_SYMBOL:
        	                		    case DOUBLE_QUOTED_TEXT:
        	                		    case DO_SYMBOL:
        	                		    case DUMPFILE_SYMBOL:
        	                		    case DUPLICATE_SYMBOL:
        	                		    case DYNAMIC_SYMBOL:
        	                		    case ENABLE_SYMBOL:
        	                		    case ENDS_SYMBOL:
        	                		    case END_SYMBOL:
        	                		    case ENGINES_SYMBOL:
        	                		    case ENGINE_SYMBOL:
        	                		    case ENUM_SYMBOL:
        	                		    case ERRORS_SYMBOL:
        	                		    case ERROR_SYMBOL:
        	                		    case ESCAPE_SYMBOL:
        	                		    case EVENTS_SYMBOL:
        	                		    case EVENT_SYMBOL:
        	                		    case EVERY_SYMBOL:
        	                		    case EXECUTE_SYMBOL:
        	                		    case EXPANSION_SYMBOL:
        	                		    case EXPORT_SYMBOL:
        	                		    case EXTENDED_SYMBOL:
        	                		    case EXTENT_SIZE_SYMBOL:
        	                		    case FAST_SYMBOL:
        	                		    case FAULTS_SYMBOL:
        	                		    case FILE_SYMBOL:
        	                		    case FIRST_SYMBOL:
        	                		    case FIXED_SYMBOL:
        	                		    case FLUSH_SYMBOL:
        	                		    case FORMAT_SYMBOL:
        	                		    case FOUND_SYMBOL:
        	                		    case FULL_SYMBOL:
        	                		    case FUNCTION_SYMBOL:
        	                		    case GENERAL_SYMBOL:
        	                		    case GEOMETRYCOLLECTION_SYMBOL:
        	                		    case GEOMETRY_SYMBOL:
        	                		    case GET_FORMAT_SYMBOL:
        	                		    case GLOBAL_SYMBOL:
        	                		    case GRANTS_SYMBOL:
        	                		    case HANDLER_SYMBOL:
        	                		    case HASH_SYMBOL:
        	                		    case HELP_SYMBOL:
        	                		    case HOSTS_SYMBOL:
        	                		    case HOST_SYMBOL:
        	                		    case HOUR_SYMBOL:
        	                		    case IDENTIFIED_SYMBOL:
        	                		    case IDENTIFIER:
        	                		    case IGNORE_SERVER_IDS_SYMBOL:
        	                		    case IMPORT_SYMBOL:
        	                		    case INDEXES_SYMBOL:
        	                		    case INITIAL_SIZE_SYMBOL:
        	                		    case INNODB_SYMBOL:
        	                		    case INSERT_METHOD_SYMBOL:
        	                		    case INSTALL_SYMBOL:
        	                		    case INVOKER_SYMBOL:
        	                		    case IO_SYMBOL:
        	                		    case IPC_SYMBOL:
        	                		    case ISOLATION_SYMBOL:
        	                		    case ISSUER_SYMBOL:
        	                		    case KEY_BLOCK_SIZE_SYMBOL:
        	                		    case LANGUAGE_SYMBOL:
        	                		    case LAST_SYMBOL:
        	                		    case LEAVES_SYMBOL:
        	                		    case LESS_SYMBOL:
        	                		    case LEVEL_SYMBOL:
        	                		    case LINESTRING_SYMBOL:
        	                		    case LIST_SYMBOL:
        	                		    case LOCAL_SYMBOL:
        	                		    case LOCKS_SYMBOL:
        	                		    case LOGFILE_SYMBOL:
        	                		    case LOGS_SYMBOL:
        	                		    case MASTER_AUTO_POSITION_SYMBOL:
        	                		    case MASTER_CONNECT_RETRY_SYMBOL:
        	                		    case MASTER_DELAY_SYMBOL:
        	                		    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
        	                		    case MASTER_HOST_SYMBOL:
        	                		    case MASTER_LOG_FILE_SYMBOL:
        	                		    case MASTER_LOG_POS_SYMBOL:
        	                		    case MASTER_PASSWORD_SYMBOL:
        	                		    case MASTER_PORT_SYMBOL:
        	                		    case MASTER_RETRY_COUNT_SYMBOL:
        	                		    case MASTER_SERVER_ID_SYMBOL:
        	                		    case MASTER_SSL_CAPATH_SYMBOL:
        	                		    case MASTER_SSL_CA_SYMBOL:
        	                		    case MASTER_SSL_CERT_SYMBOL:
        	                		    case MASTER_SSL_CIPHER_SYMBOL:
        	                		    case MASTER_SSL_CRLPATH_SYMBOL:
        	                		    case MASTER_SSL_CRL_SYMBOL:
        	                		    case MASTER_SSL_KEY_SYMBOL:
        	                		    case MASTER_SSL_SYMBOL:
        	                		    case MASTER_SYMBOL:
        	                		    case MASTER_USER_SYMBOL:
        	                		    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
        	                		    case MAX_QUERIES_PER_HOUR_SYMBOL:
        	                		    case MAX_ROWS_SYMBOL:
        	                		    case MAX_SIZE_SYMBOL:
        	                		    case MAX_UPDATES_PER_HOUR_SYMBOL:
        	                		    case MAX_USER_CONNECTIONS_SYMBOL:
        	                		    case MEDIUM_SYMBOL:
        	                		    case MEMORY_SYMBOL:
        	                		    case MERGE_SYMBOL:
        	                		    case MESSAGE_TEXT_SYMBOL:
        	                		    case MICROSECOND_SYMBOL:
        	                		    case MIGRATE_SYMBOL:
        	                		    case MINUTE_SYMBOL:
        	                		    case MIN_ROWS_SYMBOL:
        	                		    case MODE_SYMBOL:
        	                		    case MODIFY_SYMBOL:
        	                		    case MONTH_SYMBOL:
        	                		    case MULTILINESTRING_SYMBOL:
        	                		    case MULTIPOINT_SYMBOL:
        	                		    case MULTIPOLYGON_SYMBOL:
        	                		    case MUTEX_SYMBOL:
        	                		    case MYSQL_ERRNO_SYMBOL:
        	                		    case NAMES_SYMBOL:
        	                		    case NAME_SYMBOL:
        	                		    case NATIONAL_SYMBOL:
        	                		    case NCHAR_SYMBOL:
        	                		    case NDBCLUSTER_SYMBOL:
        	                		    case NEW_SYMBOL:
        	                		    case NEXT_SYMBOL:
        	                		    case NODEGROUP_SYMBOL:
        	                		    case NONE_SYMBOL:
        	                		    case NO_SYMBOL:
        	                		    case NO_WAIT_SYMBOL:
        	                		    case NUMBER_SYMBOL:
        	                		    case NVARCHAR_SYMBOL:
        	                		    case OFFSET_SYMBOL:
        	                		    case OLD_PASSWORD_SYMBOL:
        	                		    case ONE_SHOT_SYMBOL:
        	                		    case ONE_SYMBOL:
        	                		    case OPEN_SYMBOL:
        	                		    case OPTIONS_SYMBOL:
        	                		    case OWNER_SYMBOL:
        	                		    case PACK_KEYS_SYMBOL:
        	                		    case PAGE_SYMBOL:
        	                		    case PARSER_SYMBOL:
        	                		    case PARTIAL_SYMBOL:
        	                		    case PARTITIONING_SYMBOL:
        	                		    case PARTITIONS_SYMBOL:
        	                		    case PARTITION_SYMBOL:
        	                		    case PASSWORD_SYMBOL:
        	                		    case PHASE_SYMBOL:
        	                		    case PLUGINS_SYMBOL:
        	                		    case PLUGIN_DIR_SYMBOL:
        	                		    case PLUGIN_SYMBOL:
        	                		    case POINT_SYMBOL:
        	                		    case POLYGON_SYMBOL:
        	                		    case PORT_SYMBOL:
        	                		    case PREPARE_SYMBOL:
        	                		    case PRESERVE_SYMBOL:
        	                		    case PREV_SYMBOL:
        	                		    case PRIVILEGES_SYMBOL:
        	                		    case PROCESSLIST_SYMBOL:
        	                		    case PROCESS_SYMBOL:
        	                		    case PROFILES_SYMBOL:
        	                		    case PROFILE_SYMBOL:
        	                		    case PROXY_SYMBOL:
        	                		    case QUARTER_SYMBOL:
        	                		    case QUERY_SYMBOL:
        	                		    case QUICK_SYMBOL:
        	                		    case READ_ONLY_SYMBOL:
        	                		    case REBUILD_SYMBOL:
        	                		    case RECOVER_SYMBOL:
        	                		    case REDOFILE_SYMBOL:
        	                		    case REDO_BUFFER_SIZE_SYMBOL:
        	                		    case REDUNDANT_SYMBOL:
        	                		    case RELAYLOG_SYMBOL:
        	                		    case RELAY_LOG_FILE_SYMBOL:
        	                		    case RELAY_LOG_POS_SYMBOL:
        	                		    case RELAY_SYMBOL:
        	                		    case RELAY_THREAD_SYMBOL:
        	                		    case RELOAD_SYMBOL:
        	                		    case REMOVE_SYMBOL:
        	                		    case REORGANIZE_SYMBOL:
        	                		    case REPAIR_SYMBOL:
        	                		    case REPEATABLE_SYMBOL:
        	                		    case REPLICATION_SYMBOL:
        	                		    case RESET_SYMBOL:
        	                		    case RESTORE_SYMBOL:
        	                		    case RESUME_SYMBOL:
        	                		    case RETURNED_SQLSTATE_SYMBOL:
        	                		    case RETURNS_SYMBOL:
        	                		    case REVERSE_SYMBOL:
        	                		    case ROLLBACK_SYMBOL:
        	                		    case ROLLUP_SYMBOL:
        	                		    case ROUTINE_SYMBOL:
        	                		    case ROWS_SYMBOL:
        	                		    case ROW_COUNT_SYMBOL:
        	                		    case ROW_FORMAT_SYMBOL:
        	                		    case ROW_SYMBOL:
        	                		    case RTREE_SYMBOL:
        	                		    case SAVEPOINT_SYMBOL:
        	                		    case SCHEDULE_SYMBOL:
        	                		    case SCHEMA_NAME_SYMBOL:
        	                		    case SECOND_SYMBOL:
        	                		    case SECURITY_SYMBOL:
        	                		    case SERIALIZABLE_SYMBOL:
        	                		    case SERIAL_SYMBOL:
        	                		    case SERVER_SYMBOL:
        	                		    case SESSION_SYMBOL:
        	                		    case SHARE_SYMBOL:
        	                		    case SHUTDOWN_SYMBOL:
        	                		    case SIGNED_SYMBOL:
        	                		    case SIMPLE_SYMBOL:
        	                		    case SLAVE_SYMBOL:
        	                		    case SLOW_SYMBOL:
        	                		    case SNAPSHOT_SYMBOL:
        	                		    case SOCKET_SYMBOL:
        	                		    case SONAME_SYMBOL:
        	                		    case SOUNDS_SYMBOL:
        	                		    case SOURCE_SYMBOL:
        	                		    case SQL_AFTER_GTIDS_SYMBOL:
        	                		    case SQL_AFTER_MTS_GAPS_SYMBOL:
        	                		    case SQL_BEFORE_GTIDS_SYMBOL:
        	                		    case SQL_BUFFER_RESULT_SYMBOL:
        	                		    case SQL_CACHE_SYMBOL:
        	                		    case SQL_NO_CACHE_SYMBOL:
        	                		    case SQL_THREAD_SYMBOL:
        	                		    case STARTS_SYMBOL:
        	                		    case START_SYMBOL:
        	                		    case STATS_AUTO_RECALC_SYMBOL:
        	                		    case STATS_PERSISTENT_SYMBOL:
        	                		    case STATS_SAMPLE_PAGES_SYMBOL:
        	                		    case STATUS_SYMBOL:
        	                		    case STOP_SYMBOL:
        	                		    case STORAGE_SYMBOL:
        	                		    case STRING_SYMBOL:
        	                		    case SUBCLASS_ORIGIN_SYMBOL:
        	                		    case SUBDATE_SYMBOL:
        	                		    case SUBJECT_SYMBOL:
        	                		    case SUBPARTITIONS_SYMBOL:
        	                		    case SUBPARTITION_SYMBOL:
        	                		    case SUPER_SYMBOL:
        	                		    case SUSPEND_SYMBOL:
        	                		    case SWAPS_SYMBOL:
        	                		    case SWITCHES_SYMBOL:
        	                		    case TABLESPACE_SYMBOL:
        	                		    case TABLES_SYMBOL:
        	                		    case TABLE_CHECKSUM_SYMBOL:
        	                		    case TABLE_NAME_SYMBOL:
        	                		    case TEMPORARY_SYMBOL:
        	                		    case TEMPTABLE_SYMBOL:
        	                		    case TEXT_SYMBOL:
        	                		    case THAN_SYMBOL:
        	                		    case TIMESTAMP_ADD_SYMBOL:
        	                		    case TIMESTAMP_DIFF_SYMBOL:
        	                		    case TIMESTAMP_SYMBOL:
        	                		    case TIME_SYMBOL:
        	                		    case TRANSACTION_SYMBOL:
        	                		    case TRIGGERS_SYMBOL:
        	                		    case TRUNCATE_SYMBOL:
        	                		    case TYPES_SYMBOL:
        	                		    case TYPE_SYMBOL:
        	                		    case UDF_RETURNS_SYMBOL:
        	                		    case UNCOMMITTED_SYMBOL:
        	                		    case UNDEFINED_SYMBOL:
        	                		    case UNDOFILE_SYMBOL:
        	                		    case UNDO_BUFFER_SIZE_SYMBOL:
        	                		    case UNICODE_SYMBOL:
        	                		    case UNINSTALL_SYMBOL:
        	                		    case UNKNOWN_SYMBOL:
        	                		    case UNTIL_SYMBOL:
        	                		    case UPGRADE_SYMBOL:
        	                		    case USER_RESOURCES_SYMBOL:
        	                		    case USER_SYMBOL:
        	                		    case USE_FRM_SYMBOL:
        	                		    case VALUE_SYMBOL:
        	                		    case VARIABLES_SYMBOL:
        	                		    case VIEW_SYMBOL:
        	                		    case WAIT_SYMBOL:
        	                		    case WARNINGS_SYMBOL:
        	                		    case WEEK_SYMBOL:
        	                		    case WEIGHT_STRING_SYMBOL:
        	                		    case WORK_SYMBOL:
        	                		    case WRAPPER_SYMBOL:
        	                		    case X509_SYMBOL:
        	                		    case XA_SYMBOL:
        	                		    case XML_SYMBOL:
        	                		    case YEAR_SYMBOL:
        	                		    	{
        	                		    		alt77=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt77)
        	            {
        	        	case 1:
        	        	    // MySQL.g:390:36: no_write_to_bin_log
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_no_write_to_bin_log_in_alter_partition1339);
        	        	        no_write_to_bin_log255=no_write_to_bin_log(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_partitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, no_write_to_bin_log255.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_all_or_partition_name_list_in_alter_partition1342);
        	        all_or_partition_name_list256=all_or_partition_name_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, all_or_partition_name_list256.tree);

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:391:4: CHECK_SYMBOL PARTITION_SYMBOL all_or_partition_name_list ( check_option )*
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CHECK_SYMBOL257 = (pANTLR3_COMMON_TOKEN) MATCHT(CHECK_SYMBOL, &FOLLOW_CHECK_SYMBOL_in_alter_partition1347);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CHECK_SYMBOL257_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHECK_SYMBOL257));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CHECK_SYMBOL257_tree);
        	        }

        	        PARTITION_SYMBOL258 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_alter_partition1349);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PARTITION_SYMBOL258_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITION_SYMBOL258));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PARTITION_SYMBOL258_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_all_or_partition_name_list_in_alter_partition1351);
        	        all_or_partition_name_list259=all_or_partition_name_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, all_or_partition_name_list259.tree);

        	        // MySQL.g:391:61: ( check_option )*

        	        for (;;)
        	        {
        	            int alt78=2;
        	            switch ( LA(1) )
        	            {
        	            case CHANGED_SYMBOL:
        	            case EXTENDED_SYMBOL:
        	            case FAST_SYMBOL:
        	            case FOR_SYMBOL:
        	            case MEDIUM_SYMBOL:
        	            case QUICK_SYMBOL:
        	            	{
        	            		alt78=1;
        	            	}
        	                break;

        	            }

        	            switch (alt78)
        	            {
        	        	case 1:
        	        	    // MySQL.g:391:61: check_option
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_check_option_in_alter_partition1353);
        	        	        check_option260=check_option(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_partitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, check_option260.tree);

        	        	    }
        	        	    break;

        	        	default:
        	        	    goto loop78;	/* break out of the loop */
        	        	    break;
        	            }
        	        }
        	        loop78: ; /* Jump out to here if this rule does not match */


        	    }
        	    break;
        	case 7:
        	    // MySQL.g:392:4: REPAIR_SYMBOL PARTITION_SYMBOL ( no_write_to_bin_log )? all_or_partition_name_list ( repair_option )*
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        REPAIR_SYMBOL261 = (pANTLR3_COMMON_TOKEN) MATCHT(REPAIR_SYMBOL, &FOLLOW_REPAIR_SYMBOL_in_alter_partition1359);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REPAIR_SYMBOL261_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPAIR_SYMBOL261));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REPAIR_SYMBOL261_tree);
        	        }

        	        PARTITION_SYMBOL262 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_alter_partition1361);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PARTITION_SYMBOL262_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITION_SYMBOL262));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PARTITION_SYMBOL262_tree);
        	        }

        	        // MySQL.g:392:35: ( no_write_to_bin_log )?
        	        {
        	            int alt79=2;
        	            switch ( LA(1) )
        	            {
        	                case NO_WRITE_TO_BINLOG_SYMBOL:
        	                	{
        	                		alt79=1;
        	                	}
        	                    break;
        	                case LOCAL_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case ACTION_SYMBOL:
        	                		    case ADDDATE_SYMBOL:
        	                		    case AFTER_SYMBOL:
        	                		    case AGAINST_SYMBOL:
        	                		    case AGGREGATE_SYMBOL:
        	                		    case ALGORITHM_SYMBOL:
        	                		    case ALL_SYMBOL:
        	                		    case ANALYZE_SYMBOL:
        	                		    case ANY_SYMBOL:
        	                		    case ASCII_SYMBOL:
        	                		    case AT_SYMBOL:
        	                		    case AUTHORS_SYMBOL:
        	                		    case AUTOEXTEND_SIZE_SYMBOL:
        	                		    case AUTO_INCREMENT_SYMBOL:
        	                		    case AVG_ROW_LENGTH_SYMBOL:
        	                		    case AVG_SYMBOL:
        	                		    case BACKUP_SYMBOL:
        	                		    case BACK_TICK_QUOTED_ID:
        	                		    case BEGIN_SYMBOL:
        	                		    case BINLOG_SYMBOL:
        	                		    case BIT_SYMBOL:
        	                		    case BLOCK_SYMBOL:
        	                		    case BOOLEAN_SYMBOL:
        	                		    case BOOL_SYMBOL:
        	                		    case BTREE_SYMBOL:
        	                		    case BYTE_SYMBOL:
        	                		    case CACHE_SYMBOL:
        	                		    case CASCADED_SYMBOL:
        	                		    case CATALOG_NAME_SYMBOL:
        	                		    case CHAIN_SYMBOL:
        	                		    case CHANGED_SYMBOL:
        	                		    case CHARSET_SYMBOL:
        	                		    case CHECKSUM_SYMBOL:
        	                		    case CIPHER_SYMBOL:
        	                		    case CLASS_ORIGIN_SYMBOL:
        	                		    case CLIENT_SYMBOL:
        	                		    case CLOSE_SYMBOL:
        	                		    case COALESCE_SYMBOL:
        	                		    case CODE_SYMBOL:
        	                		    case COLLATION_SYMBOL:
        	                		    case COLUMNS_SYMBOL:
        	                		    case COLUMN_FORMAT_SYMBOL:
        	                		    case COLUMN_NAME_SYMBOL:
        	                		    case COMMENT_SYMBOL:
        	                		    case COMMITTED_SYMBOL:
        	                		    case COMMIT_SYMBOL:
        	                		    case COMPACT_SYMBOL:
        	                		    case COMPLETION_SYMBOL:
        	                		    case COMPRESSED_SYMBOL:
        	                		    case CONCURRENT_SYMBOL:
        	                		    case CONNECTION_SYMBOL:
        	                		    case CONSISTENT_SYMBOL:
        	                		    case CONSTRAINT_CATALOG_SYMBOL:
        	                		    case CONSTRAINT_NAME_SYMBOL:
        	                		    case CONSTRAINT_SCHEMA_SYMBOL:
        	                		    case CONTAINS_SYMBOL:
        	                		    case CONTEXT_SYMBOL:
        	                		    case CONTRIBUTORS_SYMBOL:
        	                		    case CPU_SYMBOL:
        	                		    case CUBE_SYMBOL:
        	                		    case CURRENT_SYMBOL:
        	                		    case CURSOR_NAME_SYMBOL:
        	                		    case DATAFILE_SYMBOL:
        	                		    case DATA_SYMBOL:
        	                		    case DATETIME_SYMBOL:
        	                		    case DATE_SYMBOL:
        	                		    case DAY_SYMBOL:
        	                		    case DEALLOCATE_SYMBOL:
        	                		    case DEFAULT_AUTH_SYMBOL:
        	                		    case DEFINER_SYMBOL:
        	                		    case DELAY_KEY_WRITE_SYMBOL:
        	                		    case DES_KEY_FILE_SYMBOL:
        	                		    case DIAGNOSTICS_SYMBOL:
        	                		    case DIRECTORY_SYMBOL:
        	                		    case DISABLE_SYMBOL:
        	                		    case DISCARD_SYMBOL:
        	                		    case DISK_SYMBOL:
        	                		    case DOUBLE_QUOTED_TEXT:
        	                		    case DO_SYMBOL:
        	                		    case DUMPFILE_SYMBOL:
        	                		    case DUPLICATE_SYMBOL:
        	                		    case DYNAMIC_SYMBOL:
        	                		    case ENABLE_SYMBOL:
        	                		    case ENDS_SYMBOL:
        	                		    case END_SYMBOL:
        	                		    case ENGINES_SYMBOL:
        	                		    case ENGINE_SYMBOL:
        	                		    case ENUM_SYMBOL:
        	                		    case ERRORS_SYMBOL:
        	                		    case ERROR_SYMBOL:
        	                		    case ESCAPE_SYMBOL:
        	                		    case EVENTS_SYMBOL:
        	                		    case EVENT_SYMBOL:
        	                		    case EVERY_SYMBOL:
        	                		    case EXECUTE_SYMBOL:
        	                		    case EXPANSION_SYMBOL:
        	                		    case EXPORT_SYMBOL:
        	                		    case EXTENT_SIZE_SYMBOL:
        	                		    case FAST_SYMBOL:
        	                		    case FAULTS_SYMBOL:
        	                		    case FILE_SYMBOL:
        	                		    case FIRST_SYMBOL:
        	                		    case FIXED_SYMBOL:
        	                		    case FLUSH_SYMBOL:
        	                		    case FORMAT_SYMBOL:
        	                		    case FOUND_SYMBOL:
        	                		    case FULL_SYMBOL:
        	                		    case FUNCTION_SYMBOL:
        	                		    case GENERAL_SYMBOL:
        	                		    case GEOMETRYCOLLECTION_SYMBOL:
        	                		    case GEOMETRY_SYMBOL:
        	                		    case GET_FORMAT_SYMBOL:
        	                		    case GLOBAL_SYMBOL:
        	                		    case GRANTS_SYMBOL:
        	                		    case HANDLER_SYMBOL:
        	                		    case HASH_SYMBOL:
        	                		    case HELP_SYMBOL:
        	                		    case HOSTS_SYMBOL:
        	                		    case HOST_SYMBOL:
        	                		    case HOUR_SYMBOL:
        	                		    case IDENTIFIED_SYMBOL:
        	                		    case IDENTIFIER:
        	                		    case IGNORE_SERVER_IDS_SYMBOL:
        	                		    case IMPORT_SYMBOL:
        	                		    case INDEXES_SYMBOL:
        	                		    case INITIAL_SIZE_SYMBOL:
        	                		    case INNODB_SYMBOL:
        	                		    case INSERT_METHOD_SYMBOL:
        	                		    case INSTALL_SYMBOL:
        	                		    case INVOKER_SYMBOL:
        	                		    case IO_SYMBOL:
        	                		    case IPC_SYMBOL:
        	                		    case ISOLATION_SYMBOL:
        	                		    case ISSUER_SYMBOL:
        	                		    case KEY_BLOCK_SIZE_SYMBOL:
        	                		    case LANGUAGE_SYMBOL:
        	                		    case LAST_SYMBOL:
        	                		    case LEAVES_SYMBOL:
        	                		    case LESS_SYMBOL:
        	                		    case LEVEL_SYMBOL:
        	                		    case LINESTRING_SYMBOL:
        	                		    case LIST_SYMBOL:
        	                		    case LOCAL_SYMBOL:
        	                		    case LOCKS_SYMBOL:
        	                		    case LOGFILE_SYMBOL:
        	                		    case LOGS_SYMBOL:
        	                		    case MASTER_AUTO_POSITION_SYMBOL:
        	                		    case MASTER_CONNECT_RETRY_SYMBOL:
        	                		    case MASTER_DELAY_SYMBOL:
        	                		    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
        	                		    case MASTER_HOST_SYMBOL:
        	                		    case MASTER_LOG_FILE_SYMBOL:
        	                		    case MASTER_LOG_POS_SYMBOL:
        	                		    case MASTER_PASSWORD_SYMBOL:
        	                		    case MASTER_PORT_SYMBOL:
        	                		    case MASTER_RETRY_COUNT_SYMBOL:
        	                		    case MASTER_SERVER_ID_SYMBOL:
        	                		    case MASTER_SSL_CAPATH_SYMBOL:
        	                		    case MASTER_SSL_CA_SYMBOL:
        	                		    case MASTER_SSL_CERT_SYMBOL:
        	                		    case MASTER_SSL_CIPHER_SYMBOL:
        	                		    case MASTER_SSL_CRLPATH_SYMBOL:
        	                		    case MASTER_SSL_CRL_SYMBOL:
        	                		    case MASTER_SSL_KEY_SYMBOL:
        	                		    case MASTER_SSL_SYMBOL:
        	                		    case MASTER_SYMBOL:
        	                		    case MASTER_USER_SYMBOL:
        	                		    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
        	                		    case MAX_QUERIES_PER_HOUR_SYMBOL:
        	                		    case MAX_ROWS_SYMBOL:
        	                		    case MAX_SIZE_SYMBOL:
        	                		    case MAX_UPDATES_PER_HOUR_SYMBOL:
        	                		    case MAX_USER_CONNECTIONS_SYMBOL:
        	                		    case MEDIUM_SYMBOL:
        	                		    case MEMORY_SYMBOL:
        	                		    case MERGE_SYMBOL:
        	                		    case MESSAGE_TEXT_SYMBOL:
        	                		    case MICROSECOND_SYMBOL:
        	                		    case MIGRATE_SYMBOL:
        	                		    case MINUTE_SYMBOL:
        	                		    case MIN_ROWS_SYMBOL:
        	                		    case MODE_SYMBOL:
        	                		    case MODIFY_SYMBOL:
        	                		    case MONTH_SYMBOL:
        	                		    case MULTILINESTRING_SYMBOL:
        	                		    case MULTIPOINT_SYMBOL:
        	                		    case MULTIPOLYGON_SYMBOL:
        	                		    case MUTEX_SYMBOL:
        	                		    case MYSQL_ERRNO_SYMBOL:
        	                		    case NAMES_SYMBOL:
        	                		    case NAME_SYMBOL:
        	                		    case NATIONAL_SYMBOL:
        	                		    case NCHAR_SYMBOL:
        	                		    case NDBCLUSTER_SYMBOL:
        	                		    case NEW_SYMBOL:
        	                		    case NEXT_SYMBOL:
        	                		    case NODEGROUP_SYMBOL:
        	                		    case NONE_SYMBOL:
        	                		    case NO_SYMBOL:
        	                		    case NO_WAIT_SYMBOL:
        	                		    case NUMBER_SYMBOL:
        	                		    case NVARCHAR_SYMBOL:
        	                		    case OFFSET_SYMBOL:
        	                		    case OLD_PASSWORD_SYMBOL:
        	                		    case ONE_SHOT_SYMBOL:
        	                		    case ONE_SYMBOL:
        	                		    case OPEN_SYMBOL:
        	                		    case OPTIONS_SYMBOL:
        	                		    case OWNER_SYMBOL:
        	                		    case PACK_KEYS_SYMBOL:
        	                		    case PAGE_SYMBOL:
        	                		    case PARSER_SYMBOL:
        	                		    case PARTIAL_SYMBOL:
        	                		    case PARTITIONING_SYMBOL:
        	                		    case PARTITIONS_SYMBOL:
        	                		    case PARTITION_SYMBOL:
        	                		    case PASSWORD_SYMBOL:
        	                		    case PHASE_SYMBOL:
        	                		    case PLUGINS_SYMBOL:
        	                		    case PLUGIN_DIR_SYMBOL:
        	                		    case PLUGIN_SYMBOL:
        	                		    case POINT_SYMBOL:
        	                		    case POLYGON_SYMBOL:
        	                		    case PORT_SYMBOL:
        	                		    case PREPARE_SYMBOL:
        	                		    case PRESERVE_SYMBOL:
        	                		    case PREV_SYMBOL:
        	                		    case PRIVILEGES_SYMBOL:
        	                		    case PROCESSLIST_SYMBOL:
        	                		    case PROCESS_SYMBOL:
        	                		    case PROFILES_SYMBOL:
        	                		    case PROFILE_SYMBOL:
        	                		    case PROXY_SYMBOL:
        	                		    case QUARTER_SYMBOL:
        	                		    case QUERY_SYMBOL:
        	                		    case READ_ONLY_SYMBOL:
        	                		    case REBUILD_SYMBOL:
        	                		    case RECOVER_SYMBOL:
        	                		    case REDOFILE_SYMBOL:
        	                		    case REDO_BUFFER_SIZE_SYMBOL:
        	                		    case REDUNDANT_SYMBOL:
        	                		    case RELAYLOG_SYMBOL:
        	                		    case RELAY_LOG_FILE_SYMBOL:
        	                		    case RELAY_LOG_POS_SYMBOL:
        	                		    case RELAY_SYMBOL:
        	                		    case RELAY_THREAD_SYMBOL:
        	                		    case RELOAD_SYMBOL:
        	                		    case REMOVE_SYMBOL:
        	                		    case REORGANIZE_SYMBOL:
        	                		    case REPAIR_SYMBOL:
        	                		    case REPEATABLE_SYMBOL:
        	                		    case REPLICATION_SYMBOL:
        	                		    case RESET_SYMBOL:
        	                		    case RESTORE_SYMBOL:
        	                		    case RESUME_SYMBOL:
        	                		    case RETURNED_SQLSTATE_SYMBOL:
        	                		    case RETURNS_SYMBOL:
        	                		    case REVERSE_SYMBOL:
        	                		    case ROLLBACK_SYMBOL:
        	                		    case ROLLUP_SYMBOL:
        	                		    case ROUTINE_SYMBOL:
        	                		    case ROWS_SYMBOL:
        	                		    case ROW_COUNT_SYMBOL:
        	                		    case ROW_FORMAT_SYMBOL:
        	                		    case ROW_SYMBOL:
        	                		    case RTREE_SYMBOL:
        	                		    case SAVEPOINT_SYMBOL:
        	                		    case SCHEDULE_SYMBOL:
        	                		    case SCHEMA_NAME_SYMBOL:
        	                		    case SECOND_SYMBOL:
        	                		    case SECURITY_SYMBOL:
        	                		    case SERIALIZABLE_SYMBOL:
        	                		    case SERIAL_SYMBOL:
        	                		    case SERVER_SYMBOL:
        	                		    case SESSION_SYMBOL:
        	                		    case SHARE_SYMBOL:
        	                		    case SHUTDOWN_SYMBOL:
        	                		    case SIGNED_SYMBOL:
        	                		    case SIMPLE_SYMBOL:
        	                		    case SLAVE_SYMBOL:
        	                		    case SLOW_SYMBOL:
        	                		    case SNAPSHOT_SYMBOL:
        	                		    case SOCKET_SYMBOL:
        	                		    case SONAME_SYMBOL:
        	                		    case SOUNDS_SYMBOL:
        	                		    case SOURCE_SYMBOL:
        	                		    case SQL_AFTER_GTIDS_SYMBOL:
        	                		    case SQL_AFTER_MTS_GAPS_SYMBOL:
        	                		    case SQL_BEFORE_GTIDS_SYMBOL:
        	                		    case SQL_BUFFER_RESULT_SYMBOL:
        	                		    case SQL_CACHE_SYMBOL:
        	                		    case SQL_NO_CACHE_SYMBOL:
        	                		    case SQL_THREAD_SYMBOL:
        	                		    case STARTS_SYMBOL:
        	                		    case START_SYMBOL:
        	                		    case STATS_AUTO_RECALC_SYMBOL:
        	                		    case STATS_PERSISTENT_SYMBOL:
        	                		    case STATS_SAMPLE_PAGES_SYMBOL:
        	                		    case STATUS_SYMBOL:
        	                		    case STOP_SYMBOL:
        	                		    case STORAGE_SYMBOL:
        	                		    case STRING_SYMBOL:
        	                		    case SUBCLASS_ORIGIN_SYMBOL:
        	                		    case SUBDATE_SYMBOL:
        	                		    case SUBJECT_SYMBOL:
        	                		    case SUBPARTITIONS_SYMBOL:
        	                		    case SUBPARTITION_SYMBOL:
        	                		    case SUPER_SYMBOL:
        	                		    case SUSPEND_SYMBOL:
        	                		    case SWAPS_SYMBOL:
        	                		    case SWITCHES_SYMBOL:
        	                		    case TABLESPACE_SYMBOL:
        	                		    case TABLES_SYMBOL:
        	                		    case TABLE_CHECKSUM_SYMBOL:
        	                		    case TABLE_NAME_SYMBOL:
        	                		    case TEMPORARY_SYMBOL:
        	                		    case TEMPTABLE_SYMBOL:
        	                		    case TEXT_SYMBOL:
        	                		    case THAN_SYMBOL:
        	                		    case TIMESTAMP_ADD_SYMBOL:
        	                		    case TIMESTAMP_DIFF_SYMBOL:
        	                		    case TIMESTAMP_SYMBOL:
        	                		    case TIME_SYMBOL:
        	                		    case TRANSACTION_SYMBOL:
        	                		    case TRIGGERS_SYMBOL:
        	                		    case TRUNCATE_SYMBOL:
        	                		    case TYPES_SYMBOL:
        	                		    case TYPE_SYMBOL:
        	                		    case UDF_RETURNS_SYMBOL:
        	                		    case UNCOMMITTED_SYMBOL:
        	                		    case UNDEFINED_SYMBOL:
        	                		    case UNDOFILE_SYMBOL:
        	                		    case UNDO_BUFFER_SIZE_SYMBOL:
        	                		    case UNICODE_SYMBOL:
        	                		    case UNINSTALL_SYMBOL:
        	                		    case UNKNOWN_SYMBOL:
        	                		    case UNTIL_SYMBOL:
        	                		    case UPGRADE_SYMBOL:
        	                		    case USER_RESOURCES_SYMBOL:
        	                		    case USER_SYMBOL:
        	                		    case VALUE_SYMBOL:
        	                		    case VARIABLES_SYMBOL:
        	                		    case VIEW_SYMBOL:
        	                		    case WAIT_SYMBOL:
        	                		    case WARNINGS_SYMBOL:
        	                		    case WEEK_SYMBOL:
        	                		    case WEIGHT_STRING_SYMBOL:
        	                		    case WORK_SYMBOL:
        	                		    case WRAPPER_SYMBOL:
        	                		    case X509_SYMBOL:
        	                		    case XA_SYMBOL:
        	                		    case XML_SYMBOL:
        	                		    case YEAR_SYMBOL:
        	                		    	{
        	                		    		alt79=1;
        	                		    	}
        	                		        break;
        	                		    case EXTENDED_SYMBOL:
        	                		    case QUICK_SYMBOL:
        	                		    case USE_FRM_SYMBOL:
        	                		    	{
        	                		    		{
        	                		    		    int LA79_13 = LA(3);
        	                		    		    if ( ((LA(1) == LOCAL_SYMBOL)))
        	                		    		    {
        	                		    		        alt79=1;
        	                		    		    }
        	                		    		}
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt79)
        	            {
        	        	case 1:
        	        	    // MySQL.g:392:35: no_write_to_bin_log
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_no_write_to_bin_log_in_alter_partition1363);
        	        	        no_write_to_bin_log263=no_write_to_bin_log(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_partitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, no_write_to_bin_log263.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_all_or_partition_name_list_in_alter_partition1366);
        	        all_or_partition_name_list264=all_or_partition_name_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, all_or_partition_name_list264.tree);

        	        // MySQL.g:392:83: ( repair_option )*

        	        for (;;)
        	        {
        	            int alt80=2;
        	            switch ( LA(1) )
        	            {
        	            case EXTENDED_SYMBOL:
        	            case QUICK_SYMBOL:
        	            case USE_FRM_SYMBOL:
        	            	{
        	            		alt80=1;
        	            	}
        	                break;

        	            }

        	            switch (alt80)
        	            {
        	        	case 1:
        	        	    // MySQL.g:392:83: repair_option
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_repair_option_in_alter_partition1368);
        	        	        repair_option265=repair_option(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_partitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, repair_option265.tree);

        	        	    }
        	        	    break;

        	        	default:
        	        	    goto loop80;	/* break out of the loop */
        	        	    break;
        	            }
        	        }
        	        loop80: ; /* Jump out to here if this rule does not match */


        	    }
        	    break;
        	case 8:
        	    // MySQL.g:393:4: COALESCE_SYMBOL PARTITION_SYMBOL ( no_write_to_bin_log )? INTEGER
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        COALESCE_SYMBOL266 = (pANTLR3_COMMON_TOKEN) MATCHT(COALESCE_SYMBOL, &FOLLOW_COALESCE_SYMBOL_in_alter_partition1374);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COALESCE_SYMBOL266_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COALESCE_SYMBOL266));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COALESCE_SYMBOL266_tree);
        	        }

        	        PARTITION_SYMBOL267 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_alter_partition1376);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PARTITION_SYMBOL267_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITION_SYMBOL267));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PARTITION_SYMBOL267_tree);
        	        }

        	        // MySQL.g:393:37: ( no_write_to_bin_log )?
        	        {
        	            int alt81=2;
        	            switch ( LA(1) )
        	            {
        	                case LOCAL_SYMBOL:
        	                case NO_WRITE_TO_BINLOG_SYMBOL:
        	                	{
        	                		alt81=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt81)
        	            {
        	        	case 1:
        	        	    // MySQL.g:393:37: no_write_to_bin_log
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_no_write_to_bin_log_in_alter_partition1378);
        	        	        no_write_to_bin_log268=no_write_to_bin_log(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_partitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, no_write_to_bin_log268.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        INTEGER269 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_alter_partition1381);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INTEGER269_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER269));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER269_tree);
        	        }

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:394:4: {...}? => TRUNCATE_SYMBOL PARTITION_SYMBOL all_or_partition_name_list
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((SERVER_VERSION >= 50500)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50500";
        	                EXCEPTION->ruleName	 = (void *)"alter_partition";


        	        }

        	        TRUNCATE_SYMBOL270 = (pANTLR3_COMMON_TOKEN) MATCHT(TRUNCATE_SYMBOL, &FOLLOW_TRUNCATE_SYMBOL_in_alter_partition1390);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TRUNCATE_SYMBOL270_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TRUNCATE_SYMBOL270));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TRUNCATE_SYMBOL270_tree);
        	        }

        	        PARTITION_SYMBOL271 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_alter_partition1392);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PARTITION_SYMBOL271_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITION_SYMBOL271));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PARTITION_SYMBOL271_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_all_or_partition_name_list_in_alter_partition1394);
        	        all_or_partition_name_list272=all_or_partition_name_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, all_or_partition_name_list272.tree);

        	    }
        	    break;
        	case 10:
        	    // MySQL.g:395:4: EXCHANGE_SYMBOL PARTITION_SYMBOL identifier WITH_SYMBOL TABLE_SYMBOL table_identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        EXCHANGE_SYMBOL273 = (pANTLR3_COMMON_TOKEN) MATCHT(EXCHANGE_SYMBOL, &FOLLOW_EXCHANGE_SYMBOL_in_alter_partition1399);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EXCHANGE_SYMBOL273_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXCHANGE_SYMBOL273));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EXCHANGE_SYMBOL273_tree);
        	        }

        	        PARTITION_SYMBOL274 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_alter_partition1401);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PARTITION_SYMBOL274_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITION_SYMBOL274));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PARTITION_SYMBOL274_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_identifier_in_alter_partition1403);
        	        identifier275=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier275.tree);

        	        WITH_SYMBOL276 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_alter_partition1405);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        WITH_SYMBOL276_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WITH_SYMBOL276));
        	        ADAPTOR->addChild(ADAPTOR, root_0, WITH_SYMBOL276_tree);
        	        }

        	        TABLE_SYMBOL277 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_alter_partition1407);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TABLE_SYMBOL277_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL277));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL277_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_table_identifier_in_alter_partition1409);
        	        table_identifier278=table_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_identifier278.tree);

        	    }
        	    break;
        	case 11:
        	    // MySQL.g:396:4: REORGANIZE_SYMBOL PARTITION_SYMBOL ( no_write_to_bin_log )? ( identifier_list INTO_SYMBOL partition_definitions )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        REORGANIZE_SYMBOL279 = (pANTLR3_COMMON_TOKEN) MATCHT(REORGANIZE_SYMBOL, &FOLLOW_REORGANIZE_SYMBOL_in_alter_partition1414);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REORGANIZE_SYMBOL279_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REORGANIZE_SYMBOL279));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REORGANIZE_SYMBOL279_tree);
        	        }

        	        PARTITION_SYMBOL280 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_alter_partition1416);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PARTITION_SYMBOL280_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITION_SYMBOL280));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PARTITION_SYMBOL280_tree);
        	        }

        	        // MySQL.g:396:39: ( no_write_to_bin_log )?
        	        {
        	            int alt82=2;
        	            switch ( LA(1) )
        	            {
        	                case NO_WRITE_TO_BINLOG_SYMBOL:
        	                	{
        	                		alt82=1;
        	                	}
        	                    break;
        	                case LOCAL_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case EOF:
        	                		    case ACTION_SYMBOL:
        	                		    case ADDDATE_SYMBOL:
        	                		    case AFTER_SYMBOL:
        	                		    case AGAINST_SYMBOL:
        	                		    case AGGREGATE_SYMBOL:
        	                		    case ALGORITHM_SYMBOL:
        	                		    case ANALYZE_SYMBOL:
        	                		    case ANY_SYMBOL:
        	                		    case ASCII_SYMBOL:
        	                		    case AT_SYMBOL:
        	                		    case AUTHORS_SYMBOL:
        	                		    case AUTOEXTEND_SIZE_SYMBOL:
        	                		    case AUTO_INCREMENT_SYMBOL:
        	                		    case AVG_ROW_LENGTH_SYMBOL:
        	                		    case AVG_SYMBOL:
        	                		    case BACKUP_SYMBOL:
        	                		    case BACK_TICK_QUOTED_ID:
        	                		    case BEGIN_SYMBOL:
        	                		    case BINLOG_SYMBOL:
        	                		    case BIT_SYMBOL:
        	                		    case BLOCK_SYMBOL:
        	                		    case BOOLEAN_SYMBOL:
        	                		    case BOOL_SYMBOL:
        	                		    case BTREE_SYMBOL:
        	                		    case BYTE_SYMBOL:
        	                		    case CACHE_SYMBOL:
        	                		    case CASCADED_SYMBOL:
        	                		    case CATALOG_NAME_SYMBOL:
        	                		    case CHAIN_SYMBOL:
        	                		    case CHANGED_SYMBOL:
        	                		    case CHARSET_SYMBOL:
        	                		    case CHECKSUM_SYMBOL:
        	                		    case CIPHER_SYMBOL:
        	                		    case CLASS_ORIGIN_SYMBOL:
        	                		    case CLIENT_SYMBOL:
        	                		    case CLOSE_SYMBOL:
        	                		    case COALESCE_SYMBOL:
        	                		    case CODE_SYMBOL:
        	                		    case COLLATION_SYMBOL:
        	                		    case COLUMNS_SYMBOL:
        	                		    case COLUMN_FORMAT_SYMBOL:
        	                		    case COLUMN_NAME_SYMBOL:
        	                		    case COMMENT_SYMBOL:
        	                		    case COMMITTED_SYMBOL:
        	                		    case COMMIT_SYMBOL:
        	                		    case COMPACT_SYMBOL:
        	                		    case COMPLETION_SYMBOL:
        	                		    case COMPRESSED_SYMBOL:
        	                		    case CONCURRENT_SYMBOL:
        	                		    case CONNECTION_SYMBOL:
        	                		    case CONSISTENT_SYMBOL:
        	                		    case CONSTRAINT_CATALOG_SYMBOL:
        	                		    case CONSTRAINT_NAME_SYMBOL:
        	                		    case CONSTRAINT_SCHEMA_SYMBOL:
        	                		    case CONTAINS_SYMBOL:
        	                		    case CONTEXT_SYMBOL:
        	                		    case CONTRIBUTORS_SYMBOL:
        	                		    case CPU_SYMBOL:
        	                		    case CUBE_SYMBOL:
        	                		    case CURRENT_SYMBOL:
        	                		    case CURSOR_NAME_SYMBOL:
        	                		    case DATAFILE_SYMBOL:
        	                		    case DATA_SYMBOL:
        	                		    case DATETIME_SYMBOL:
        	                		    case DATE_SYMBOL:
        	                		    case DAY_SYMBOL:
        	                		    case DEALLOCATE_SYMBOL:
        	                		    case DEFAULT_AUTH_SYMBOL:
        	                		    case DEFINER_SYMBOL:
        	                		    case DELAY_KEY_WRITE_SYMBOL:
        	                		    case DES_KEY_FILE_SYMBOL:
        	                		    case DIAGNOSTICS_SYMBOL:
        	                		    case DIRECTORY_SYMBOL:
        	                		    case DISABLE_SYMBOL:
        	                		    case DISCARD_SYMBOL:
        	                		    case DISK_SYMBOL:
        	                		    case DOUBLE_QUOTED_TEXT:
        	                		    case DO_SYMBOL:
        	                		    case DUMPFILE_SYMBOL:
        	                		    case DUPLICATE_SYMBOL:
        	                		    case DYNAMIC_SYMBOL:
        	                		    case ENABLE_SYMBOL:
        	                		    case ENDS_SYMBOL:
        	                		    case END_SYMBOL:
        	                		    case ENGINES_SYMBOL:
        	                		    case ENGINE_SYMBOL:
        	                		    case ENUM_SYMBOL:
        	                		    case ERRORS_SYMBOL:
        	                		    case ERROR_SYMBOL:
        	                		    case ESCAPE_SYMBOL:
        	                		    case EVENTS_SYMBOL:
        	                		    case EVENT_SYMBOL:
        	                		    case EVERY_SYMBOL:
        	                		    case EXECUTE_SYMBOL:
        	                		    case EXPANSION_SYMBOL:
        	                		    case EXPORT_SYMBOL:
        	                		    case EXTENDED_SYMBOL:
        	                		    case EXTENT_SIZE_SYMBOL:
        	                		    case FAST_SYMBOL:
        	                		    case FAULTS_SYMBOL:
        	                		    case FILE_SYMBOL:
        	                		    case FIRST_SYMBOL:
        	                		    case FIXED_SYMBOL:
        	                		    case FLUSH_SYMBOL:
        	                		    case FORMAT_SYMBOL:
        	                		    case FOUND_SYMBOL:
        	                		    case FULL_SYMBOL:
        	                		    case FUNCTION_SYMBOL:
        	                		    case GENERAL_SYMBOL:
        	                		    case GEOMETRYCOLLECTION_SYMBOL:
        	                		    case GEOMETRY_SYMBOL:
        	                		    case GET_FORMAT_SYMBOL:
        	                		    case GLOBAL_SYMBOL:
        	                		    case GRANTS_SYMBOL:
        	                		    case HANDLER_SYMBOL:
        	                		    case HASH_SYMBOL:
        	                		    case HELP_SYMBOL:
        	                		    case HOSTS_SYMBOL:
        	                		    case HOST_SYMBOL:
        	                		    case HOUR_SYMBOL:
        	                		    case IDENTIFIED_SYMBOL:
        	                		    case IDENTIFIER:
        	                		    case IGNORE_SERVER_IDS_SYMBOL:
        	                		    case IMPORT_SYMBOL:
        	                		    case INDEXES_SYMBOL:
        	                		    case INITIAL_SIZE_SYMBOL:
        	                		    case INNODB_SYMBOL:
        	                		    case INSERT_METHOD_SYMBOL:
        	                		    case INSTALL_SYMBOL:
        	                		    case INVOKER_SYMBOL:
        	                		    case IO_SYMBOL:
        	                		    case IPC_SYMBOL:
        	                		    case ISOLATION_SYMBOL:
        	                		    case ISSUER_SYMBOL:
        	                		    case KEY_BLOCK_SIZE_SYMBOL:
        	                		    case LANGUAGE_SYMBOL:
        	                		    case LAST_SYMBOL:
        	                		    case LEAVES_SYMBOL:
        	                		    case LESS_SYMBOL:
        	                		    case LEVEL_SYMBOL:
        	                		    case LINESTRING_SYMBOL:
        	                		    case LIST_SYMBOL:
        	                		    case LOCAL_SYMBOL:
        	                		    case LOCKS_SYMBOL:
        	                		    case LOGFILE_SYMBOL:
        	                		    case LOGS_SYMBOL:
        	                		    case MASTER_AUTO_POSITION_SYMBOL:
        	                		    case MASTER_CONNECT_RETRY_SYMBOL:
        	                		    case MASTER_DELAY_SYMBOL:
        	                		    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
        	                		    case MASTER_HOST_SYMBOL:
        	                		    case MASTER_LOG_FILE_SYMBOL:
        	                		    case MASTER_LOG_POS_SYMBOL:
        	                		    case MASTER_PASSWORD_SYMBOL:
        	                		    case MASTER_PORT_SYMBOL:
        	                		    case MASTER_RETRY_COUNT_SYMBOL:
        	                		    case MASTER_SERVER_ID_SYMBOL:
        	                		    case MASTER_SSL_CAPATH_SYMBOL:
        	                		    case MASTER_SSL_CA_SYMBOL:
        	                		    case MASTER_SSL_CERT_SYMBOL:
        	                		    case MASTER_SSL_CIPHER_SYMBOL:
        	                		    case MASTER_SSL_CRLPATH_SYMBOL:
        	                		    case MASTER_SSL_CRL_SYMBOL:
        	                		    case MASTER_SSL_KEY_SYMBOL:
        	                		    case MASTER_SSL_SYMBOL:
        	                		    case MASTER_SYMBOL:
        	                		    case MASTER_USER_SYMBOL:
        	                		    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
        	                		    case MAX_QUERIES_PER_HOUR_SYMBOL:
        	                		    case MAX_ROWS_SYMBOL:
        	                		    case MAX_SIZE_SYMBOL:
        	                		    case MAX_UPDATES_PER_HOUR_SYMBOL:
        	                		    case MAX_USER_CONNECTIONS_SYMBOL:
        	                		    case MEDIUM_SYMBOL:
        	                		    case MEMORY_SYMBOL:
        	                		    case MERGE_SYMBOL:
        	                		    case MESSAGE_TEXT_SYMBOL:
        	                		    case MICROSECOND_SYMBOL:
        	                		    case MIGRATE_SYMBOL:
        	                		    case MINUTE_SYMBOL:
        	                		    case MIN_ROWS_SYMBOL:
        	                		    case MODE_SYMBOL:
        	                		    case MODIFY_SYMBOL:
        	                		    case MONTH_SYMBOL:
        	                		    case MULTILINESTRING_SYMBOL:
        	                		    case MULTIPOINT_SYMBOL:
        	                		    case MULTIPOLYGON_SYMBOL:
        	                		    case MUTEX_SYMBOL:
        	                		    case MYSQL_ERRNO_SYMBOL:
        	                		    case NAMES_SYMBOL:
        	                		    case NAME_SYMBOL:
        	                		    case NATIONAL_SYMBOL:
        	                		    case NCHAR_SYMBOL:
        	                		    case NDBCLUSTER_SYMBOL:
        	                		    case NEW_SYMBOL:
        	                		    case NEXT_SYMBOL:
        	                		    case NODEGROUP_SYMBOL:
        	                		    case NONE_SYMBOL:
        	                		    case NO_SYMBOL:
        	                		    case NO_WAIT_SYMBOL:
        	                		    case NUMBER_SYMBOL:
        	                		    case NVARCHAR_SYMBOL:
        	                		    case OFFSET_SYMBOL:
        	                		    case OLD_PASSWORD_SYMBOL:
        	                		    case ONE_SHOT_SYMBOL:
        	                		    case ONE_SYMBOL:
        	                		    case OPEN_SYMBOL:
        	                		    case OPTIONS_SYMBOL:
        	                		    case OWNER_SYMBOL:
        	                		    case PACK_KEYS_SYMBOL:
        	                		    case PAGE_SYMBOL:
        	                		    case PARSER_SYMBOL:
        	                		    case PARTIAL_SYMBOL:
        	                		    case PARTITIONING_SYMBOL:
        	                		    case PARTITIONS_SYMBOL:
        	                		    case PARTITION_SYMBOL:
        	                		    case PASSWORD_SYMBOL:
        	                		    case PHASE_SYMBOL:
        	                		    case PLUGINS_SYMBOL:
        	                		    case PLUGIN_DIR_SYMBOL:
        	                		    case PLUGIN_SYMBOL:
        	                		    case POINT_SYMBOL:
        	                		    case POLYGON_SYMBOL:
        	                		    case PORT_SYMBOL:
        	                		    case PREPARE_SYMBOL:
        	                		    case PRESERVE_SYMBOL:
        	                		    case PREV_SYMBOL:
        	                		    case PRIVILEGES_SYMBOL:
        	                		    case PROCESSLIST_SYMBOL:
        	                		    case PROCESS_SYMBOL:
        	                		    case PROFILES_SYMBOL:
        	                		    case PROFILE_SYMBOL:
        	                		    case PROXY_SYMBOL:
        	                		    case QUARTER_SYMBOL:
        	                		    case QUERY_SYMBOL:
        	                		    case QUICK_SYMBOL:
        	                		    case READ_ONLY_SYMBOL:
        	                		    case REBUILD_SYMBOL:
        	                		    case RECOVER_SYMBOL:
        	                		    case REDOFILE_SYMBOL:
        	                		    case REDO_BUFFER_SIZE_SYMBOL:
        	                		    case REDUNDANT_SYMBOL:
        	                		    case RELAYLOG_SYMBOL:
        	                		    case RELAY_LOG_FILE_SYMBOL:
        	                		    case RELAY_LOG_POS_SYMBOL:
        	                		    case RELAY_SYMBOL:
        	                		    case RELAY_THREAD_SYMBOL:
        	                		    case RELOAD_SYMBOL:
        	                		    case REMOVE_SYMBOL:
        	                		    case REORGANIZE_SYMBOL:
        	                		    case REPAIR_SYMBOL:
        	                		    case REPEATABLE_SYMBOL:
        	                		    case REPLICATION_SYMBOL:
        	                		    case RESET_SYMBOL:
        	                		    case RESTORE_SYMBOL:
        	                		    case RESUME_SYMBOL:
        	                		    case RETURNED_SQLSTATE_SYMBOL:
        	                		    case RETURNS_SYMBOL:
        	                		    case REVERSE_SYMBOL:
        	                		    case ROLLBACK_SYMBOL:
        	                		    case ROLLUP_SYMBOL:
        	                		    case ROUTINE_SYMBOL:
        	                		    case ROWS_SYMBOL:
        	                		    case ROW_COUNT_SYMBOL:
        	                		    case ROW_FORMAT_SYMBOL:
        	                		    case ROW_SYMBOL:
        	                		    case RTREE_SYMBOL:
        	                		    case SAVEPOINT_SYMBOL:
        	                		    case SCHEDULE_SYMBOL:
        	                		    case SCHEMA_NAME_SYMBOL:
        	                		    case SECOND_SYMBOL:
        	                		    case SECURITY_SYMBOL:
        	                		    case SEMICOLON_SYMBOL:
        	                		    case SERIALIZABLE_SYMBOL:
        	                		    case SERIAL_SYMBOL:
        	                		    case SERVER_SYMBOL:
        	                		    case SESSION_SYMBOL:
        	                		    case SHARE_SYMBOL:
        	                		    case SHUTDOWN_SYMBOL:
        	                		    case SIGNED_SYMBOL:
        	                		    case SIMPLE_SYMBOL:
        	                		    case SLAVE_SYMBOL:
        	                		    case SLOW_SYMBOL:
        	                		    case SNAPSHOT_SYMBOL:
        	                		    case SOCKET_SYMBOL:
        	                		    case SONAME_SYMBOL:
        	                		    case SOUNDS_SYMBOL:
        	                		    case SOURCE_SYMBOL:
        	                		    case SQL_AFTER_GTIDS_SYMBOL:
        	                		    case SQL_AFTER_MTS_GAPS_SYMBOL:
        	                		    case SQL_BEFORE_GTIDS_SYMBOL:
        	                		    case SQL_BUFFER_RESULT_SYMBOL:
        	                		    case SQL_CACHE_SYMBOL:
        	                		    case SQL_NO_CACHE_SYMBOL:
        	                		    case SQL_THREAD_SYMBOL:
        	                		    case STARTS_SYMBOL:
        	                		    case START_SYMBOL:
        	                		    case STATS_AUTO_RECALC_SYMBOL:
        	                		    case STATS_PERSISTENT_SYMBOL:
        	                		    case STATS_SAMPLE_PAGES_SYMBOL:
        	                		    case STATUS_SYMBOL:
        	                		    case STOP_SYMBOL:
        	                		    case STORAGE_SYMBOL:
        	                		    case STRING_SYMBOL:
        	                		    case SUBCLASS_ORIGIN_SYMBOL:
        	                		    case SUBDATE_SYMBOL:
        	                		    case SUBJECT_SYMBOL:
        	                		    case SUBPARTITIONS_SYMBOL:
        	                		    case SUBPARTITION_SYMBOL:
        	                		    case SUPER_SYMBOL:
        	                		    case SUSPEND_SYMBOL:
        	                		    case SWAPS_SYMBOL:
        	                		    case SWITCHES_SYMBOL:
        	                		    case TABLESPACE_SYMBOL:
        	                		    case TABLES_SYMBOL:
        	                		    case TABLE_CHECKSUM_SYMBOL:
        	                		    case TABLE_NAME_SYMBOL:
        	                		    case TEMPORARY_SYMBOL:
        	                		    case TEMPTABLE_SYMBOL:
        	                		    case TEXT_SYMBOL:
        	                		    case THAN_SYMBOL:
        	                		    case TIMESTAMP_ADD_SYMBOL:
        	                		    case TIMESTAMP_DIFF_SYMBOL:
        	                		    case TIMESTAMP_SYMBOL:
        	                		    case TIME_SYMBOL:
        	                		    case TRANSACTION_SYMBOL:
        	                		    case TRIGGERS_SYMBOL:
        	                		    case TRUNCATE_SYMBOL:
        	                		    case TYPES_SYMBOL:
        	                		    case TYPE_SYMBOL:
        	                		    case UDF_RETURNS_SYMBOL:
        	                		    case UNCOMMITTED_SYMBOL:
        	                		    case UNDEFINED_SYMBOL:
        	                		    case UNDOFILE_SYMBOL:
        	                		    case UNDO_BUFFER_SIZE_SYMBOL:
        	                		    case UNICODE_SYMBOL:
        	                		    case UNINSTALL_SYMBOL:
        	                		    case UNKNOWN_SYMBOL:
        	                		    case UNTIL_SYMBOL:
        	                		    case UPGRADE_SYMBOL:
        	                		    case USER_RESOURCES_SYMBOL:
        	                		    case USER_SYMBOL:
        	                		    case USE_FRM_SYMBOL:
        	                		    case VALUE_SYMBOL:
        	                		    case VARIABLES_SYMBOL:
        	                		    case VIEW_SYMBOL:
        	                		    case WAIT_SYMBOL:
        	                		    case WARNINGS_SYMBOL:
        	                		    case WEEK_SYMBOL:
        	                		    case WEIGHT_STRING_SYMBOL:
        	                		    case WORK_SYMBOL:
        	                		    case WRAPPER_SYMBOL:
        	                		    case X509_SYMBOL:
        	                		    case XA_SYMBOL:
        	                		    case XML_SYMBOL:
        	                		    case YEAR_SYMBOL:
        	                		    	{
        	                		    		alt82=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt82)
        	            {
        	        	case 1:
        	        	    // MySQL.g:396:39: no_write_to_bin_log
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_no_write_to_bin_log_in_alter_partition1418);
        	        	        no_write_to_bin_log281=no_write_to_bin_log(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_partitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, no_write_to_bin_log281.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:396:60: ( identifier_list INTO_SYMBOL partition_definitions )?
        	        {
        	            int alt83=2;
        	            {
        	                int LA83_0 = LA(1);
        	                if ( (LA83_0 == BACK_TICK_QUOTED_ID || LA83_0 == IDENTIFIER))
        	                {
        	                    alt83=1;
        	                }
        	                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA83_0 == DOUBLE_QUOTED_TEXT))
        	                {
        	                    alt83=1;
        	                }
        	                else if ( (((LA83_0 >= ACTION_SYMBOL) && (LA83_0 <= ADDDATE_SYMBOL)) || ((LA83_0 >= AFTER_SYMBOL) && (LA83_0 <= ALGORITHM_SYMBOL)) || LA83_0 == ANALYZE_SYMBOL || ((LA83_0 >= ANY_SYMBOL) && (LA83_0 <= ASCII_SYMBOL)) || ((LA83_0 >= AT_SYMBOL) && (LA83_0 <= BACKUP_SYMBOL)) || LA83_0 == BEGIN_SYMBOL || LA83_0 == BINLOG_SYMBOL || LA83_0 == BIT_SYMBOL || ((LA83_0 >= BLOCK_SYMBOL) && (LA83_0 <= BOOL_SYMBOL)) || ((LA83_0 >= BTREE_SYMBOL) && (LA83_0 <= BYTE_SYMBOL)) || LA83_0 == CACHE_SYMBOL || LA83_0 == CASCADED_SYMBOL || ((LA83_0 >= CATALOG_NAME_SYMBOL) && (LA83_0 <= CHANGED_SYMBOL)) || LA83_0 == CHARSET_SYMBOL || LA83_0 == CHECKSUM_SYMBOL || ((LA83_0 >= CIPHER_SYMBOL) && (LA83_0 <= CLIENT_SYMBOL)) || ((LA83_0 >= CLOSE_SYMBOL) && (LA83_0 <= CODE_SYMBOL)) || LA83_0 == COLLATION_SYMBOL || ((LA83_0 >= COLUMNS_SYMBOL) && (LA83_0 <= COLUMN_NAME_SYMBOL)) || ((LA83_0 >= COMMENT_SYMBOL) && (LA83_0 <= COMPRESSED_SYMBOL)) || LA83_0 == CONCURRENT_SYMBOL || ((LA83_0 >= CONNECTION_SYMBOL) && (LA83_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA83_0 >= CONTAINS_SYMBOL) && (LA83_0 <= CONTEXT_SYMBOL)) || LA83_0 == CONTRIBUTORS_SYMBOL || LA83_0 == CPU_SYMBOL || LA83_0 == CUBE_SYMBOL || LA83_0 == CURRENT_SYMBOL || LA83_0 == CURSOR_NAME_SYMBOL || ((LA83_0 >= DATAFILE_SYMBOL) && (LA83_0 <= DATETIME_SYMBOL)) || LA83_0 == DATE_SYMBOL || ((LA83_0 >= DAY_SYMBOL) && (LA83_0 <= DEALLOCATE_SYMBOL)) || LA83_0 == DEFAULT_AUTH_SYMBOL || LA83_0 == DEFINER_SYMBOL || LA83_0 == DELAY_KEY_WRITE_SYMBOL || LA83_0 == DES_KEY_FILE_SYMBOL || LA83_0 == DIAGNOSTICS_SYMBOL || ((LA83_0 >= DIRECTORY_SYMBOL) && (LA83_0 <= DISK_SYMBOL)) || LA83_0 == DO_SYMBOL || ((LA83_0 >= DUMPFILE_SYMBOL) && (LA83_0 <= DYNAMIC_SYMBOL)) || LA83_0 == ENABLE_SYMBOL || LA83_0 == ENDS_SYMBOL || ((LA83_0 >= END_SYMBOL) && (LA83_0 <= ENUM_SYMBOL)) || ((LA83_0 >= ERRORS_SYMBOL) && (LA83_0 <= ERROR_SYMBOL)) || ((LA83_0 >= ESCAPE_SYMBOL) && (LA83_0 <= EVERY_SYMBOL)) || LA83_0 == EXECUTE_SYMBOL || LA83_0 == EXPANSION_SYMBOL || LA83_0 == EXPORT_SYMBOL || ((LA83_0 >= EXTENDED_SYMBOL) && (LA83_0 <= EXTENT_SIZE_SYMBOL)) || ((LA83_0 >= FAST_SYMBOL) && (LA83_0 <= FAULTS_SYMBOL)) || ((LA83_0 >= FILE_SYMBOL) && (LA83_0 <= FIXED_SYMBOL)) || LA83_0 == FLUSH_SYMBOL || LA83_0 == FORMAT_SYMBOL || LA83_0 == FOUND_SYMBOL || LA83_0 == FULL_SYMBOL || ((LA83_0 >= FUNCTION_SYMBOL) && (LA83_0 <= GET_FORMAT_SYMBOL)) || ((LA83_0 >= GLOBAL_SYMBOL) && (LA83_0 <= GRANTS_SYMBOL)) || ((LA83_0 >= HANDLER_SYMBOL) && (LA83_0 <= HASH_SYMBOL)) || LA83_0 == HELP_SYMBOL || ((LA83_0 >= HOSTS_SYMBOL) && (LA83_0 <= HOST_SYMBOL)) || ((LA83_0 >= HOUR_SYMBOL) && (LA83_0 <= IDENTIFIED_SYMBOL)) || LA83_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA83_0 >= IMPORT_SYMBOL) && (LA83_0 <= INDEXES_SYMBOL)) || LA83_0 == INITIAL_SIZE_SYMBOL || LA83_0 == INNODB_SYMBOL || LA83_0 == INSERT_METHOD_SYMBOL || LA83_0 == INSTALL_SYMBOL || LA83_0 == INVOKER_SYMBOL || LA83_0 == IO_SYMBOL || ((LA83_0 >= IPC_SYMBOL) && (LA83_0 <= ISSUER_SYMBOL)) || LA83_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA83_0 >= LANGUAGE_SYMBOL) && (LA83_0 <= LAST_SYMBOL)) || LA83_0 == LEAVES_SYMBOL || LA83_0 == LESS_SYMBOL || LA83_0 == LEVEL_SYMBOL || LA83_0 == LINESTRING_SYMBOL || LA83_0 == LIST_SYMBOL || LA83_0 == LOCAL_SYMBOL || LA83_0 == LOCKS_SYMBOL || LA83_0 == LOGFILE_SYMBOL || LA83_0 == LOGS_SYMBOL || LA83_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA83_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA83_0 <= MASTER_SSL_SYMBOL)) || ((LA83_0 >= MASTER_SYMBOL) && (LA83_0 <= MASTER_USER_SYMBOL)) || ((LA83_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA83_0 <= MAX_SIZE_SYMBOL)) || ((LA83_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA83_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA83_0 >= MEDIUM_SYMBOL) && (LA83_0 <= MICROSECOND_SYMBOL)) || LA83_0 == MIGRATE_SYMBOL || ((LA83_0 >= MINUTE_SYMBOL) && (LA83_0 <= MIN_ROWS_SYMBOL)) || LA83_0 == MODE_SYMBOL || LA83_0 == MODIFY_SYMBOL || ((LA83_0 >= MONTH_SYMBOL) && (LA83_0 <= MULTILINESTRING_SYMBOL)) || ((LA83_0 >= MULTIPOINT_SYMBOL) && (LA83_0 <= MULTIPOLYGON_SYMBOL)) || ((LA83_0 >= MUTEX_SYMBOL) && (LA83_0 <= NATIONAL_SYMBOL)) || LA83_0 == NCHAR_SYMBOL || LA83_0 == NDBCLUSTER_SYMBOL || ((LA83_0 >= NEW_SYMBOL) && (LA83_0 <= NONE_SYMBOL)) || ((LA83_0 >= NO_SYMBOL) && (LA83_0 <= NO_WAIT_SYMBOL)) || LA83_0 == NUMBER_SYMBOL || LA83_0 == NVARCHAR_SYMBOL || ((LA83_0 >= OFFSET_SYMBOL) && (LA83_0 <= ONE_SYMBOL)) || LA83_0 == OPEN_SYMBOL || LA83_0 == OPTIONS_SYMBOL || ((LA83_0 >= OWNER_SYMBOL) && (LA83_0 <= PAGE_SYMBOL)) || ((LA83_0 >= PARSER_SYMBOL) && (LA83_0 <= PARTITION_SYMBOL)) || ((LA83_0 >= PASSWORD_SYMBOL) && (LA83_0 <= PLUGIN_SYMBOL)) || ((LA83_0 >= POINT_SYMBOL) && (LA83_0 <= PORT_SYMBOL)) || ((LA83_0 >= PREPARE_SYMBOL) && (LA83_0 <= PREV_SYMBOL)) || LA83_0 == PRIVILEGES_SYMBOL || ((LA83_0 >= PROCESSLIST_SYMBOL) && (LA83_0 <= PROXY_SYMBOL)) || ((LA83_0 >= QUARTER_SYMBOL) && (LA83_0 <= QUICK_SYMBOL)) || LA83_0 == READ_ONLY_SYMBOL || ((LA83_0 >= REBUILD_SYMBOL) && (LA83_0 <= REDUNDANT_SYMBOL)) || ((LA83_0 >= RELAYLOG_SYMBOL) && (LA83_0 <= RELAY_THREAD_SYMBOL)) || ((LA83_0 >= RELOAD_SYMBOL) && (LA83_0 <= REMOVE_SYMBOL)) || ((LA83_0 >= REORGANIZE_SYMBOL) && (LA83_0 <= REPEATABLE_SYMBOL)) || LA83_0 == REPLICATION_SYMBOL || LA83_0 == RESET_SYMBOL || LA83_0 == RESTORE_SYMBOL || ((LA83_0 >= RESUME_SYMBOL) && (LA83_0 <= RETURNS_SYMBOL)) || LA83_0 == REVERSE_SYMBOL || ((LA83_0 >= ROLLBACK_SYMBOL) && (LA83_0 <= SCHEDULE_SYMBOL)) || LA83_0 == SCHEMA_NAME_SYMBOL || ((LA83_0 >= SECOND_SYMBOL) && (LA83_0 <= SECURITY_SYMBOL)) || ((LA83_0 >= SERIALIZABLE_SYMBOL) && (LA83_0 <= SERIAL_SYMBOL)) || ((LA83_0 >= SERVER_SYMBOL) && (LA83_0 <= SESSION_SYMBOL)) || LA83_0 == SHARE_SYMBOL || LA83_0 == SHUTDOWN_SYMBOL || ((LA83_0 >= SIGNED_SYMBOL) && (LA83_0 <= SIMPLE_SYMBOL)) || ((LA83_0 >= SLAVE_SYMBOL) && (LA83_0 <= SLOW_SYMBOL)) || ((LA83_0 >= SNAPSHOT_SYMBOL) && (LA83_0 <= SOURCE_SYMBOL)) || ((LA83_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA83_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA83_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA83_0 <= SQL_CACHE_SYMBOL)) || LA83_0 == SQL_NO_CACHE_SYMBOL || LA83_0 == SQL_THREAD_SYMBOL || ((LA83_0 >= STARTS_SYMBOL) && (LA83_0 <= STATUS_SYMBOL)) || ((LA83_0 >= STOP_SYMBOL) && (LA83_0 <= STORAGE_SYMBOL)) || ((LA83_0 >= STRING_SYMBOL) && (LA83_0 <= SUBPARTITION_SYMBOL)) || ((LA83_0 >= SUPER_SYMBOL) && (LA83_0 <= SWITCHES_SYMBOL)) || ((LA83_0 >= TABLESPACE_SYMBOL) && (LA83_0 <= TABLE_NAME_SYMBOL)) || ((LA83_0 >= TEMPORARY_SYMBOL) && (LA83_0 <= TEMPTABLE_SYMBOL)) || ((LA83_0 >= TEXT_SYMBOL) && (LA83_0 <= THAN_SYMBOL)) || ((LA83_0 >= TIMESTAMP_ADD_SYMBOL) && (LA83_0 <= TIME_SYMBOL)) || ((LA83_0 >= TRANSACTION_SYMBOL) && (LA83_0 <= TRIGGERS_SYMBOL)) || ((LA83_0 >= TRUNCATE_SYMBOL) && (LA83_0 <= UDF_RETURNS_SYMBOL)) || ((LA83_0 >= UNCOMMITTED_SYMBOL) && (LA83_0 <= UNDEFINED_SYMBOL)) || ((LA83_0 >= UNDOFILE_SYMBOL) && (LA83_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA83_0 >= UNICODE_SYMBOL) && (LA83_0 <= UNINSTALL_SYMBOL)) || LA83_0 == UNKNOWN_SYMBOL || LA83_0 == UNTIL_SYMBOL || LA83_0 == UPGRADE_SYMBOL || ((LA83_0 >= USER_RESOURCES_SYMBOL) && (LA83_0 <= USE_FRM_SYMBOL)) || LA83_0 == VALUE_SYMBOL || LA83_0 == VARIABLES_SYMBOL || ((LA83_0 >= VIEW_SYMBOL) && (LA83_0 <= WEIGHT_STRING_SYMBOL)) || ((LA83_0 >= WORK_SYMBOL) && (LA83_0 <= WRAPPER_SYMBOL)) || LA83_0 == X509_SYMBOL || ((LA83_0 >= XA_SYMBOL) && (LA83_0 <= XML_SYMBOL)) || LA83_0 == YEAR_SYMBOL))
        	                {
        	                    alt83=1;
        	                }
        	            }
        	            switch (alt83)
        	            {
        	        	case 1:
        	        	    // MySQL.g:396:61: identifier_list INTO_SYMBOL partition_definitions
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_identifier_list_in_alter_partition1422);
        	        	        identifier_list282=identifier_list(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_partitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list282.tree);

        	        	        INTO_SYMBOL283 = (pANTLR3_COMMON_TOKEN) MATCHT(INTO_SYMBOL, &FOLLOW_INTO_SYMBOL_in_alter_partition1424);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_partitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        INTO_SYMBOL283_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTO_SYMBOL283));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, INTO_SYMBOL283_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_partition_definitions_in_alter_partition1426);
        	        	        partition_definitions284=partition_definitions(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_partitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partition_definitions284.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulealter_partitionEx; /* Prevent compiler warnings */
    rulealter_partitionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end alter_partition */

/**
 * $ANTLR start remove_partitioning
 * MySQL.g:399:1: remove_partitioning :{...}? => REMOVE_SYMBOL PARTITIONING_SYMBOL ;
 */
static MySQLParser_remove_partitioning_return
remove_partitioning(pMySQLParser ctx)
{
    MySQLParser_remove_partitioning_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    REMOVE_SYMBOL285;
    pANTLR3_COMMON_TOKEN    PARTITIONING_SYMBOL286;

    pANTLR3_BASE_TREE REMOVE_SYMBOL285_tree;
    pANTLR3_BASE_TREE PARTITIONING_SYMBOL286_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    REMOVE_SYMBOL285       = NULL;
    PARTITIONING_SYMBOL286       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    REMOVE_SYMBOL285_tree   = NULL;
    PARTITIONING_SYMBOL286_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:399:20: ({...}? => REMOVE_SYMBOL PARTITIONING_SYMBOL )
        // MySQL.g:400:2: {...}? => REMOVE_SYMBOL PARTITIONING_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            if ( !((SERVER_VERSION >= 50100)) )
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
                    EXCEPTION->message      = (void *)"SERVER_VERSION >= 50100";
                    EXCEPTION->ruleName	 = (void *)"remove_partitioning";


            }

            REMOVE_SYMBOL285 = (pANTLR3_COMMON_TOKEN) MATCHT(REMOVE_SYMBOL, &FOLLOW_REMOVE_SYMBOL_in_remove_partitioning1441);
            if  (HASEXCEPTION())
            {
                goto ruleremove_partitioningEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            REMOVE_SYMBOL285_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REMOVE_SYMBOL285));
            ADAPTOR->addChild(ADAPTOR, root_0, REMOVE_SYMBOL285_tree);
            }

            PARTITIONING_SYMBOL286 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITIONING_SYMBOL, &FOLLOW_PARTITIONING_SYMBOL_in_remove_partitioning1443);
            if  (HASEXCEPTION())
            {
                goto ruleremove_partitioningEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            PARTITIONING_SYMBOL286_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITIONING_SYMBOL286));
            ADAPTOR->addChild(ADAPTOR, root_0, PARTITIONING_SYMBOL286_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleremove_partitioningEx; /* Prevent compiler warnings */
    ruleremove_partitioningEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end remove_partitioning */

/**
 * $ANTLR start all_or_partition_name_list
 * MySQL.g:403:1: all_or_partition_name_list : ( ALL_SYMBOL | identifier_list );
 */
static MySQLParser_all_or_partition_name_list_return
all_or_partition_name_list(pMySQLParser ctx)
{
    MySQLParser_all_or_partition_name_list_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    ALL_SYMBOL287;
    MySQLParser_identifier_list_return identifier_list288;
    #undef	RETURN_TYPE_identifier_list288
    #define	RETURN_TYPE_identifier_list288 MySQLParser_identifier_list_return

    pANTLR3_BASE_TREE ALL_SYMBOL287_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ALL_SYMBOL287       = NULL;
    identifier_list288.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ALL_SYMBOL287_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:403:27: ( ALL_SYMBOL | identifier_list )

            ANTLR3_UINT32 alt85;

            alt85=2;

            {
                int LA85_0 = LA(1);
                if ( (LA85_0 == ALL_SYMBOL))
                {
                    alt85=1;
                }
                else if ( (LA85_0 == BACK_TICK_QUOTED_ID || LA85_0 == IDENTIFIER))
                {
                    alt85=2;
                }
                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA85_0 == DOUBLE_QUOTED_TEXT))
                {
                    alt85=2;
                }
                else if ( (((LA85_0 >= ACTION_SYMBOL) && (LA85_0 <= ADDDATE_SYMBOL)) || ((LA85_0 >= AFTER_SYMBOL) && (LA85_0 <= ALGORITHM_SYMBOL)) || LA85_0 == ANALYZE_SYMBOL || ((LA85_0 >= ANY_SYMBOL) && (LA85_0 <= ASCII_SYMBOL)) || ((LA85_0 >= AT_SYMBOL) && (LA85_0 <= BACKUP_SYMBOL)) || LA85_0 == BEGIN_SYMBOL || LA85_0 == BINLOG_SYMBOL || LA85_0 == BIT_SYMBOL || ((LA85_0 >= BLOCK_SYMBOL) && (LA85_0 <= BOOL_SYMBOL)) || ((LA85_0 >= BTREE_SYMBOL) && (LA85_0 <= BYTE_SYMBOL)) || LA85_0 == CACHE_SYMBOL || LA85_0 == CASCADED_SYMBOL || ((LA85_0 >= CATALOG_NAME_SYMBOL) && (LA85_0 <= CHANGED_SYMBOL)) || LA85_0 == CHARSET_SYMBOL || LA85_0 == CHECKSUM_SYMBOL || ((LA85_0 >= CIPHER_SYMBOL) && (LA85_0 <= CLIENT_SYMBOL)) || ((LA85_0 >= CLOSE_SYMBOL) && (LA85_0 <= CODE_SYMBOL)) || LA85_0 == COLLATION_SYMBOL || ((LA85_0 >= COLUMNS_SYMBOL) && (LA85_0 <= COLUMN_NAME_SYMBOL)) || ((LA85_0 >= COMMENT_SYMBOL) && (LA85_0 <= COMPRESSED_SYMBOL)) || LA85_0 == CONCURRENT_SYMBOL || ((LA85_0 >= CONNECTION_SYMBOL) && (LA85_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA85_0 >= CONTAINS_SYMBOL) && (LA85_0 <= CONTEXT_SYMBOL)) || LA85_0 == CONTRIBUTORS_SYMBOL || LA85_0 == CPU_SYMBOL || LA85_0 == CUBE_SYMBOL || LA85_0 == CURRENT_SYMBOL || LA85_0 == CURSOR_NAME_SYMBOL || ((LA85_0 >= DATAFILE_SYMBOL) && (LA85_0 <= DATETIME_SYMBOL)) || LA85_0 == DATE_SYMBOL || ((LA85_0 >= DAY_SYMBOL) && (LA85_0 <= DEALLOCATE_SYMBOL)) || LA85_0 == DEFAULT_AUTH_SYMBOL || LA85_0 == DEFINER_SYMBOL || LA85_0 == DELAY_KEY_WRITE_SYMBOL || LA85_0 == DES_KEY_FILE_SYMBOL || LA85_0 == DIAGNOSTICS_SYMBOL || ((LA85_0 >= DIRECTORY_SYMBOL) && (LA85_0 <= DISK_SYMBOL)) || LA85_0 == DO_SYMBOL || ((LA85_0 >= DUMPFILE_SYMBOL) && (LA85_0 <= DYNAMIC_SYMBOL)) || LA85_0 == ENABLE_SYMBOL || LA85_0 == ENDS_SYMBOL || ((LA85_0 >= END_SYMBOL) && (LA85_0 <= ENUM_SYMBOL)) || ((LA85_0 >= ERRORS_SYMBOL) && (LA85_0 <= ERROR_SYMBOL)) || ((LA85_0 >= ESCAPE_SYMBOL) && (LA85_0 <= EVERY_SYMBOL)) || LA85_0 == EXECUTE_SYMBOL || LA85_0 == EXPANSION_SYMBOL || LA85_0 == EXPORT_SYMBOL || ((LA85_0 >= EXTENDED_SYMBOL) && (LA85_0 <= EXTENT_SIZE_SYMBOL)) || ((LA85_0 >= FAST_SYMBOL) && (LA85_0 <= FAULTS_SYMBOL)) || ((LA85_0 >= FILE_SYMBOL) && (LA85_0 <= FIXED_SYMBOL)) || LA85_0 == FLUSH_SYMBOL || LA85_0 == FORMAT_SYMBOL || LA85_0 == FOUND_SYMBOL || LA85_0 == FULL_SYMBOL || ((LA85_0 >= FUNCTION_SYMBOL) && (LA85_0 <= GET_FORMAT_SYMBOL)) || ((LA85_0 >= GLOBAL_SYMBOL) && (LA85_0 <= GRANTS_SYMBOL)) || ((LA85_0 >= HANDLER_SYMBOL) && (LA85_0 <= HASH_SYMBOL)) || LA85_0 == HELP_SYMBOL || ((LA85_0 >= HOSTS_SYMBOL) && (LA85_0 <= HOST_SYMBOL)) || ((LA85_0 >= HOUR_SYMBOL) && (LA85_0 <= IDENTIFIED_SYMBOL)) || LA85_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA85_0 >= IMPORT_SYMBOL) && (LA85_0 <= INDEXES_SYMBOL)) || LA85_0 == INITIAL_SIZE_SYMBOL || LA85_0 == INNODB_SYMBOL || LA85_0 == INSERT_METHOD_SYMBOL || LA85_0 == INSTALL_SYMBOL || LA85_0 == INVOKER_SYMBOL || LA85_0 == IO_SYMBOL || ((LA85_0 >= IPC_SYMBOL) && (LA85_0 <= ISSUER_SYMBOL)) || LA85_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA85_0 >= LANGUAGE_SYMBOL) && (LA85_0 <= LAST_SYMBOL)) || LA85_0 == LEAVES_SYMBOL || LA85_0 == LESS_SYMBOL || LA85_0 == LEVEL_SYMBOL || LA85_0 == LINESTRING_SYMBOL || LA85_0 == LIST_SYMBOL || LA85_0 == LOCAL_SYMBOL || LA85_0 == LOCKS_SYMBOL || LA85_0 == LOGFILE_SYMBOL || LA85_0 == LOGS_SYMBOL || LA85_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA85_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA85_0 <= MASTER_SSL_SYMBOL)) || ((LA85_0 >= MASTER_SYMBOL) && (LA85_0 <= MASTER_USER_SYMBOL)) || ((LA85_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA85_0 <= MAX_SIZE_SYMBOL)) || ((LA85_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA85_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA85_0 >= MEDIUM_SYMBOL) && (LA85_0 <= MICROSECOND_SYMBOL)) || LA85_0 == MIGRATE_SYMBOL || ((LA85_0 >= MINUTE_SYMBOL) && (LA85_0 <= MIN_ROWS_SYMBOL)) || LA85_0 == MODE_SYMBOL || LA85_0 == MODIFY_SYMBOL || ((LA85_0 >= MONTH_SYMBOL) && (LA85_0 <= MULTILINESTRING_SYMBOL)) || ((LA85_0 >= MULTIPOINT_SYMBOL) && (LA85_0 <= MULTIPOLYGON_SYMBOL)) || ((LA85_0 >= MUTEX_SYMBOL) && (LA85_0 <= NATIONAL_SYMBOL)) || LA85_0 == NCHAR_SYMBOL || LA85_0 == NDBCLUSTER_SYMBOL || ((LA85_0 >= NEW_SYMBOL) && (LA85_0 <= NONE_SYMBOL)) || ((LA85_0 >= NO_SYMBOL) && (LA85_0 <= NO_WAIT_SYMBOL)) || LA85_0 == NUMBER_SYMBOL || LA85_0 == NVARCHAR_SYMBOL || ((LA85_0 >= OFFSET_SYMBOL) && (LA85_0 <= ONE_SYMBOL)) || LA85_0 == OPEN_SYMBOL || LA85_0 == OPTIONS_SYMBOL || ((LA85_0 >= OWNER_SYMBOL) && (LA85_0 <= PAGE_SYMBOL)) || ((LA85_0 >= PARSER_SYMBOL) && (LA85_0 <= PARTITION_SYMBOL)) || ((LA85_0 >= PASSWORD_SYMBOL) && (LA85_0 <= PLUGIN_SYMBOL)) || ((LA85_0 >= POINT_SYMBOL) && (LA85_0 <= PORT_SYMBOL)) || ((LA85_0 >= PREPARE_SYMBOL) && (LA85_0 <= PREV_SYMBOL)) || LA85_0 == PRIVILEGES_SYMBOL || ((LA85_0 >= PROCESSLIST_SYMBOL) && (LA85_0 <= PROXY_SYMBOL)) || ((LA85_0 >= QUARTER_SYMBOL) && (LA85_0 <= QUICK_SYMBOL)) || LA85_0 == READ_ONLY_SYMBOL || ((LA85_0 >= REBUILD_SYMBOL) && (LA85_0 <= REDUNDANT_SYMBOL)) || ((LA85_0 >= RELAYLOG_SYMBOL) && (LA85_0 <= RELAY_THREAD_SYMBOL)) || ((LA85_0 >= RELOAD_SYMBOL) && (LA85_0 <= REMOVE_SYMBOL)) || ((LA85_0 >= REORGANIZE_SYMBOL) && (LA85_0 <= REPEATABLE_SYMBOL)) || LA85_0 == REPLICATION_SYMBOL || LA85_0 == RESET_SYMBOL || LA85_0 == RESTORE_SYMBOL || ((LA85_0 >= RESUME_SYMBOL) && (LA85_0 <= RETURNS_SYMBOL)) || LA85_0 == REVERSE_SYMBOL || ((LA85_0 >= ROLLBACK_SYMBOL) && (LA85_0 <= SCHEDULE_SYMBOL)) || LA85_0 == SCHEMA_NAME_SYMBOL || ((LA85_0 >= SECOND_SYMBOL) && (LA85_0 <= SECURITY_SYMBOL)) || ((LA85_0 >= SERIALIZABLE_SYMBOL) && (LA85_0 <= SERIAL_SYMBOL)) || ((LA85_0 >= SERVER_SYMBOL) && (LA85_0 <= SESSION_SYMBOL)) || LA85_0 == SHARE_SYMBOL || LA85_0 == SHUTDOWN_SYMBOL || ((LA85_0 >= SIGNED_SYMBOL) && (LA85_0 <= SIMPLE_SYMBOL)) || ((LA85_0 >= SLAVE_SYMBOL) && (LA85_0 <= SLOW_SYMBOL)) || ((LA85_0 >= SNAPSHOT_SYMBOL) && (LA85_0 <= SOURCE_SYMBOL)) || ((LA85_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA85_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA85_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA85_0 <= SQL_CACHE_SYMBOL)) || LA85_0 == SQL_NO_CACHE_SYMBOL || LA85_0 == SQL_THREAD_SYMBOL || ((LA85_0 >= STARTS_SYMBOL) && (LA85_0 <= STATUS_SYMBOL)) || ((LA85_0 >= STOP_SYMBOL) && (LA85_0 <= STORAGE_SYMBOL)) || ((LA85_0 >= STRING_SYMBOL) && (LA85_0 <= SUBPARTITION_SYMBOL)) || ((LA85_0 >= SUPER_SYMBOL) && (LA85_0 <= SWITCHES_SYMBOL)) || ((LA85_0 >= TABLESPACE_SYMBOL) && (LA85_0 <= TABLE_NAME_SYMBOL)) || ((LA85_0 >= TEMPORARY_SYMBOL) && (LA85_0 <= TEMPTABLE_SYMBOL)) || ((LA85_0 >= TEXT_SYMBOL) && (LA85_0 <= THAN_SYMBOL)) || ((LA85_0 >= TIMESTAMP_ADD_SYMBOL) && (LA85_0 <= TIME_SYMBOL)) || ((LA85_0 >= TRANSACTION_SYMBOL) && (LA85_0 <= TRIGGERS_SYMBOL)) || ((LA85_0 >= TRUNCATE_SYMBOL) && (LA85_0 <= UDF_RETURNS_SYMBOL)) || ((LA85_0 >= UNCOMMITTED_SYMBOL) && (LA85_0 <= UNDEFINED_SYMBOL)) || ((LA85_0 >= UNDOFILE_SYMBOL) && (LA85_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA85_0 >= UNICODE_SYMBOL) && (LA85_0 <= UNINSTALL_SYMBOL)) || LA85_0 == UNKNOWN_SYMBOL || LA85_0 == UNTIL_SYMBOL || LA85_0 == UPGRADE_SYMBOL || ((LA85_0 >= USER_RESOURCES_SYMBOL) && (LA85_0 <= USE_FRM_SYMBOL)) || LA85_0 == VALUE_SYMBOL || LA85_0 == VARIABLES_SYMBOL || ((LA85_0 >= VIEW_SYMBOL) && (LA85_0 <= WEIGHT_STRING_SYMBOL)) || ((LA85_0 >= WORK_SYMBOL) && (LA85_0 <= WRAPPER_SYMBOL)) || LA85_0 == X509_SYMBOL || ((LA85_0 >= XA_SYMBOL) && (LA85_0 <= XML_SYMBOL)) || LA85_0 == YEAR_SYMBOL))
                {
                    alt85=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 85;
                    EXCEPTION->state        = 0;


                    goto ruleall_or_partition_name_listEx;

                }
            }
            switch (alt85)
            {
        	case 1:
        	    // MySQL.g:404:2: ALL_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ALL_SYMBOL287 = (pANTLR3_COMMON_TOKEN) MATCHT(ALL_SYMBOL, &FOLLOW_ALL_SYMBOL_in_all_or_partition_name_list1452);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleall_or_partition_name_listEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ALL_SYMBOL287_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALL_SYMBOL287));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ALL_SYMBOL287_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:405:4: identifier_list
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_identifier_list_in_all_or_partition_name_list1457);
        	        identifier_list288=identifier_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleall_or_partition_name_listEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list288.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleall_or_partition_name_listEx; /* Prevent compiler warnings */
    ruleall_or_partition_name_listEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end all_or_partition_name_list */

/**
 * $ANTLR start alter_tablespace
 * MySQL.g:408:1: alter_tablespace : TABLESPACE_SYMBOL identifier ( ADD_SYMBOL | DROP_SYMBOL ) DATAFILE_SYMBOL ( INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? INTEGER )? ( WAIT_SYMBOL )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? IDENTIFIER ;
 */
static MySQLParser_alter_tablespace_return
alter_tablespace(pMySQLParser ctx)
{
    MySQLParser_alter_tablespace_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    TABLESPACE_SYMBOL289;
    pANTLR3_COMMON_TOKEN    set291;
    pANTLR3_COMMON_TOKEN    DATAFILE_SYMBOL292;
    pANTLR3_COMMON_TOKEN    INITIAL_SIZE_SYMBOL293;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR294;
    pANTLR3_COMMON_TOKEN    INTEGER295;
    pANTLR3_COMMON_TOKEN    WAIT_SYMBOL296;
    pANTLR3_COMMON_TOKEN    ENGINE_SYMBOL297;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR298;
    pANTLR3_COMMON_TOKEN    IDENTIFIER299;
    MySQLParser_identifier_return identifier290;
    #undef	RETURN_TYPE_identifier290
    #define	RETURN_TYPE_identifier290 MySQLParser_identifier_return

    pANTLR3_BASE_TREE TABLESPACE_SYMBOL289_tree;
    pANTLR3_BASE_TREE set291_tree;
    pANTLR3_BASE_TREE DATAFILE_SYMBOL292_tree;
    pANTLR3_BASE_TREE INITIAL_SIZE_SYMBOL293_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR294_tree;
    pANTLR3_BASE_TREE INTEGER295_tree;
    pANTLR3_BASE_TREE WAIT_SYMBOL296_tree;
    pANTLR3_BASE_TREE ENGINE_SYMBOL297_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR298_tree;
    pANTLR3_BASE_TREE IDENTIFIER299_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    TABLESPACE_SYMBOL289       = NULL;
    set291       = NULL;
    DATAFILE_SYMBOL292       = NULL;
    INITIAL_SIZE_SYMBOL293       = NULL;
    EQUAL_OPERATOR294       = NULL;
    INTEGER295       = NULL;
    WAIT_SYMBOL296       = NULL;
    ENGINE_SYMBOL297       = NULL;
    EQUAL_OPERATOR298       = NULL;
    IDENTIFIER299       = NULL;
    identifier290.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    TABLESPACE_SYMBOL289_tree   = NULL;
    set291_tree   = NULL;
    DATAFILE_SYMBOL292_tree   = NULL;
    INITIAL_SIZE_SYMBOL293_tree   = NULL;
    EQUAL_OPERATOR294_tree   = NULL;
    INTEGER295_tree   = NULL;
    WAIT_SYMBOL296_tree   = NULL;
    ENGINE_SYMBOL297_tree   = NULL;
    EQUAL_OPERATOR298_tree   = NULL;
    IDENTIFIER299_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:408:17: ( TABLESPACE_SYMBOL identifier ( ADD_SYMBOL | DROP_SYMBOL ) DATAFILE_SYMBOL ( INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? INTEGER )? ( WAIT_SYMBOL )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? IDENTIFIER )
        // MySQL.g:409:2: TABLESPACE_SYMBOL identifier ( ADD_SYMBOL | DROP_SYMBOL ) DATAFILE_SYMBOL ( INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? INTEGER )? ( WAIT_SYMBOL )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? IDENTIFIER
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            TABLESPACE_SYMBOL289 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLESPACE_SYMBOL, &FOLLOW_TABLESPACE_SYMBOL_in_alter_tablespace1466);
            if  (HASEXCEPTION())
            {
                goto rulealter_tablespaceEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            TABLESPACE_SYMBOL289_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLESPACE_SYMBOL289));
            ADAPTOR->addChild(ADAPTOR, root_0, TABLESPACE_SYMBOL289_tree);
            }

            FOLLOWPUSH(FOLLOW_identifier_in_alter_tablespace1468);
            identifier290=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulealter_tablespaceEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier290.tree);

            set291=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == ADD_SYMBOL || LA(1) == DROP_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set291))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto rulealter_tablespaceEx;
            }


            DATAFILE_SYMBOL292 = (pANTLR3_COMMON_TOKEN) MATCHT(DATAFILE_SYMBOL, &FOLLOW_DATAFILE_SYMBOL_in_alter_tablespace1478);
            if  (HASEXCEPTION())
            {
                goto rulealter_tablespaceEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DATAFILE_SYMBOL292_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATAFILE_SYMBOL292));
            ADAPTOR->addChild(ADAPTOR, root_0, DATAFILE_SYMBOL292_tree);
            }

            // MySQL.g:409:75: ( INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? INTEGER )?
            {
                int alt87=2;
                switch ( LA(1) )
                {
                    case INITIAL_SIZE_SYMBOL:
                    	{
                    		alt87=1;
                    	}
                        break;
                }

                switch (alt87)
                {
            	case 1:
            	    // MySQL.g:409:76: INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? INTEGER
            	    {
            	        INITIAL_SIZE_SYMBOL293 = (pANTLR3_COMMON_TOKEN) MATCHT(INITIAL_SIZE_SYMBOL, &FOLLOW_INITIAL_SIZE_SYMBOL_in_alter_tablespace1482);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_tablespaceEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INITIAL_SIZE_SYMBOL293_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INITIAL_SIZE_SYMBOL293));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INITIAL_SIZE_SYMBOL293_tree);
            	        }

            	        // MySQL.g:409:96: ( EQUAL_OPERATOR )?
            	        {
            	            int alt86=2;
            	            switch ( LA(1) )
            	            {
            	                case EQUAL_OPERATOR:
            	                	{
            	                		alt86=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt86)
            	            {
            	        	case 1:
            	        	    // MySQL.g:409:96: EQUAL_OPERATOR
            	        	    {
            	        	        EQUAL_OPERATOR294 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_alter_tablespace1484);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulealter_tablespaceEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EQUAL_OPERATOR294_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR294));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR294_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        INTEGER295 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_alter_tablespace1487);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_tablespaceEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INTEGER295_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER295));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER295_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:410:3: ( WAIT_SYMBOL )?
            {
                int alt88=2;
                switch ( LA(1) )
                {
                    case WAIT_SYMBOL:
                    	{
                    		alt88=1;
                    	}
                        break;
                }

                switch (alt88)
                {
            	case 1:
            	    // MySQL.g:410:3: WAIT_SYMBOL
            	    {
            	        WAIT_SYMBOL296 = (pANTLR3_COMMON_TOKEN) MATCHT(WAIT_SYMBOL, &FOLLOW_WAIT_SYMBOL_in_alter_tablespace1493);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_tablespaceEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        WAIT_SYMBOL296_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WAIT_SYMBOL296));
            	        ADAPTOR->addChild(ADAPTOR, root_0, WAIT_SYMBOL296_tree);
            	        }

            	    }
            	    break;

                }
            }

            ENGINE_SYMBOL297 = (pANTLR3_COMMON_TOKEN) MATCHT(ENGINE_SYMBOL, &FOLLOW_ENGINE_SYMBOL_in_alter_tablespace1496);
            if  (HASEXCEPTION())
            {
                goto rulealter_tablespaceEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ENGINE_SYMBOL297_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ENGINE_SYMBOL297));
            ADAPTOR->addChild(ADAPTOR, root_0, ENGINE_SYMBOL297_tree);
            }

            // MySQL.g:410:30: ( EQUAL_OPERATOR )?
            {
                int alt89=2;
                switch ( LA(1) )
                {
                    case EQUAL_OPERATOR:
                    	{
                    		alt89=1;
                    	}
                        break;
                }

                switch (alt89)
                {
            	case 1:
            	    // MySQL.g:410:30: EQUAL_OPERATOR
            	    {
            	        EQUAL_OPERATOR298 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_alter_tablespace1498);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_tablespaceEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        EQUAL_OPERATOR298_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR298));
            	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR298_tree);
            	        }

            	    }
            	    break;

                }
            }

            IDENTIFIER299 = (pANTLR3_COMMON_TOKEN) MATCHT(IDENTIFIER, &FOLLOW_IDENTIFIER_in_alter_tablespace1501);
            if  (HASEXCEPTION())
            {
                goto rulealter_tablespaceEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            IDENTIFIER299_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IDENTIFIER299));
            ADAPTOR->addChild(ADAPTOR, root_0, IDENTIFIER299_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulealter_tablespaceEx; /* Prevent compiler warnings */
    rulealter_tablespaceEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end alter_tablespace */

/**
 * $ANTLR start alter_view
 * MySQL.g:413:1: alter_view : ( ALGORITHM_SYMBOL EQUAL_OPERATOR ( UNDEFINED_SYMBOL | MERGE_SYMBOL | TEMPTABLE_SYMBOL ) )? ( definer_clause )? ( SQL_SYMBOL SECURITY_SYMBOL ( DEFINER_SYMBOL | INVOKER_SYMBOL ) )? VIEW_SYMBOL identifier ( identifier_list_with_parentheses )? AS_SYMBOL select_statement ( WITH_SYMBOL ( CASCADED_SYMBOL | LOCAL_SYMBOL )? CHECK_SYMBOL OPTION_SYMBOL )? ;
 */
static MySQLParser_alter_view_return
alter_view(pMySQLParser ctx)
{
    MySQLParser_alter_view_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    ALGORITHM_SYMBOL300;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR301;
    pANTLR3_COMMON_TOKEN    set302;
    pANTLR3_COMMON_TOKEN    SQL_SYMBOL304;
    pANTLR3_COMMON_TOKEN    SECURITY_SYMBOL305;
    pANTLR3_COMMON_TOKEN    set306;
    pANTLR3_COMMON_TOKEN    VIEW_SYMBOL307;
    pANTLR3_COMMON_TOKEN    AS_SYMBOL310;
    pANTLR3_COMMON_TOKEN    WITH_SYMBOL312;
    pANTLR3_COMMON_TOKEN    set313;
    pANTLR3_COMMON_TOKEN    CHECK_SYMBOL314;
    pANTLR3_COMMON_TOKEN    OPTION_SYMBOL315;
    MySQLParser_definer_clause_return definer_clause303;
    #undef	RETURN_TYPE_definer_clause303
    #define	RETURN_TYPE_definer_clause303 MySQLParser_definer_clause_return

    MySQLParser_identifier_return identifier308;
    #undef	RETURN_TYPE_identifier308
    #define	RETURN_TYPE_identifier308 MySQLParser_identifier_return

    MySQLParser_identifier_list_with_parentheses_return identifier_list_with_parentheses309;
    #undef	RETURN_TYPE_identifier_list_with_parentheses309
    #define	RETURN_TYPE_identifier_list_with_parentheses309 MySQLParser_identifier_list_with_parentheses_return

    MySQLParser_select_statement_return select_statement311;
    #undef	RETURN_TYPE_select_statement311
    #define	RETURN_TYPE_select_statement311 MySQLParser_select_statement_return

    pANTLR3_BASE_TREE ALGORITHM_SYMBOL300_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR301_tree;
    pANTLR3_BASE_TREE set302_tree;
    pANTLR3_BASE_TREE SQL_SYMBOL304_tree;
    pANTLR3_BASE_TREE SECURITY_SYMBOL305_tree;
    pANTLR3_BASE_TREE set306_tree;
    pANTLR3_BASE_TREE VIEW_SYMBOL307_tree;
    pANTLR3_BASE_TREE AS_SYMBOL310_tree;
    pANTLR3_BASE_TREE WITH_SYMBOL312_tree;
    pANTLR3_BASE_TREE set313_tree;
    pANTLR3_BASE_TREE CHECK_SYMBOL314_tree;
    pANTLR3_BASE_TREE OPTION_SYMBOL315_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ALGORITHM_SYMBOL300       = NULL;
    EQUAL_OPERATOR301       = NULL;
    set302       = NULL;
    SQL_SYMBOL304       = NULL;
    SECURITY_SYMBOL305       = NULL;
    set306       = NULL;
    VIEW_SYMBOL307       = NULL;
    AS_SYMBOL310       = NULL;
    WITH_SYMBOL312       = NULL;
    set313       = NULL;
    CHECK_SYMBOL314       = NULL;
    OPTION_SYMBOL315       = NULL;
    definer_clause303.tree = NULL;

    identifier308.tree = NULL;

    identifier_list_with_parentheses309.tree = NULL;

    select_statement311.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ALGORITHM_SYMBOL300_tree   = NULL;
    EQUAL_OPERATOR301_tree   = NULL;
    set302_tree   = NULL;
    SQL_SYMBOL304_tree   = NULL;
    SECURITY_SYMBOL305_tree   = NULL;
    set306_tree   = NULL;
    VIEW_SYMBOL307_tree   = NULL;
    AS_SYMBOL310_tree   = NULL;
    WITH_SYMBOL312_tree   = NULL;
    set313_tree   = NULL;
    CHECK_SYMBOL314_tree   = NULL;
    OPTION_SYMBOL315_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:413:11: ( ( ALGORITHM_SYMBOL EQUAL_OPERATOR ( UNDEFINED_SYMBOL | MERGE_SYMBOL | TEMPTABLE_SYMBOL ) )? ( definer_clause )? ( SQL_SYMBOL SECURITY_SYMBOL ( DEFINER_SYMBOL | INVOKER_SYMBOL ) )? VIEW_SYMBOL identifier ( identifier_list_with_parentheses )? AS_SYMBOL select_statement ( WITH_SYMBOL ( CASCADED_SYMBOL | LOCAL_SYMBOL )? CHECK_SYMBOL OPTION_SYMBOL )? )
        // MySQL.g:414:2: ( ALGORITHM_SYMBOL EQUAL_OPERATOR ( UNDEFINED_SYMBOL | MERGE_SYMBOL | TEMPTABLE_SYMBOL ) )? ( definer_clause )? ( SQL_SYMBOL SECURITY_SYMBOL ( DEFINER_SYMBOL | INVOKER_SYMBOL ) )? VIEW_SYMBOL identifier ( identifier_list_with_parentheses )? AS_SYMBOL select_statement ( WITH_SYMBOL ( CASCADED_SYMBOL | LOCAL_SYMBOL )? CHECK_SYMBOL OPTION_SYMBOL )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:414:2: ( ALGORITHM_SYMBOL EQUAL_OPERATOR ( UNDEFINED_SYMBOL | MERGE_SYMBOL | TEMPTABLE_SYMBOL ) )?
            {
                int alt90=2;
                switch ( LA(1) )
                {
                    case ALGORITHM_SYMBOL:
                    	{
                    		alt90=1;
                    	}
                        break;
                }

                switch (alt90)
                {
            	case 1:
            	    // MySQL.g:414:3: ALGORITHM_SYMBOL EQUAL_OPERATOR ( UNDEFINED_SYMBOL | MERGE_SYMBOL | TEMPTABLE_SYMBOL )
            	    {
            	        ALGORITHM_SYMBOL300 = (pANTLR3_COMMON_TOKEN) MATCHT(ALGORITHM_SYMBOL, &FOLLOW_ALGORITHM_SYMBOL_in_alter_view1511);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_viewEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ALGORITHM_SYMBOL300_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALGORITHM_SYMBOL300));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ALGORITHM_SYMBOL300_tree);
            	        }

            	        EQUAL_OPERATOR301 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_alter_view1513);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_viewEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        EQUAL_OPERATOR301_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR301));
            	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR301_tree);
            	        }

            	        set302=(pANTLR3_COMMON_TOKEN)LT(1);

            	        if ( LA(1) == MERGE_SYMBOL || LA(1) == TEMPTABLE_SYMBOL || LA(1) == UNDEFINED_SYMBOL )
            	        {
            	            CONSUME();
            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set302))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	            CONSTRUCTEX();
            	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	            EXCEPTION->expectingSet = NULL;

            	            goto rulealter_viewEx;
            	        }


            	    }
            	    break;

                }
            }

            // MySQL.g:415:3: ( definer_clause )?
            {
                int alt91=2;
                switch ( LA(1) )
                {
                    case DEFINER_SYMBOL:
                    	{
                    		alt91=1;
                    	}
                        break;
                }

                switch (alt91)
                {
            	case 1:
            	    // MySQL.g:415:3: definer_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_definer_clause_in_alter_view1531);
            	        definer_clause303=definer_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_viewEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, definer_clause303.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:416:3: ( SQL_SYMBOL SECURITY_SYMBOL ( DEFINER_SYMBOL | INVOKER_SYMBOL ) )?
            {
                int alt92=2;
                switch ( LA(1) )
                {
                    case SQL_SYMBOL:
                    	{
                    		alt92=1;
                    	}
                        break;
                }

                switch (alt92)
                {
            	case 1:
            	    // MySQL.g:416:4: SQL_SYMBOL SECURITY_SYMBOL ( DEFINER_SYMBOL | INVOKER_SYMBOL )
            	    {
            	        SQL_SYMBOL304 = (pANTLR3_COMMON_TOKEN) MATCHT(SQL_SYMBOL, &FOLLOW_SQL_SYMBOL_in_alter_view1537);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_viewEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SQL_SYMBOL304_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SQL_SYMBOL304));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SQL_SYMBOL304_tree);
            	        }

            	        SECURITY_SYMBOL305 = (pANTLR3_COMMON_TOKEN) MATCHT(SECURITY_SYMBOL, &FOLLOW_SECURITY_SYMBOL_in_alter_view1539);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_viewEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SECURITY_SYMBOL305_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SECURITY_SYMBOL305));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SECURITY_SYMBOL305_tree);
            	        }

            	        set306=(pANTLR3_COMMON_TOKEN)LT(1);

            	        if ( LA(1) == DEFINER_SYMBOL || LA(1) == INVOKER_SYMBOL )
            	        {
            	            CONSUME();
            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set306))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	            CONSTRUCTEX();
            	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	            EXCEPTION->expectingSet = NULL;

            	            goto rulealter_viewEx;
            	        }


            	    }
            	    break;

                }
            }

            VIEW_SYMBOL307 = (pANTLR3_COMMON_TOKEN) MATCHT(VIEW_SYMBOL, &FOLLOW_VIEW_SYMBOL_in_alter_view1553);
            if  (HASEXCEPTION())
            {
                goto rulealter_viewEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            VIEW_SYMBOL307_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VIEW_SYMBOL307));
            ADAPTOR->addChild(ADAPTOR, root_0, VIEW_SYMBOL307_tree);
            }

            FOLLOWPUSH(FOLLOW_identifier_in_alter_view1555);
            identifier308=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulealter_viewEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier308.tree);

            // MySQL.g:417:26: ( identifier_list_with_parentheses )?
            {
                int alt93=2;
                switch ( LA(1) )
                {
                    case OPEN_PAR_SYMBOL:
                    	{
                    		alt93=1;
                    	}
                        break;
                }

                switch (alt93)
                {
            	case 1:
            	    // MySQL.g:417:26: identifier_list_with_parentheses
            	    {
            	        FOLLOWPUSH(FOLLOW_identifier_list_with_parentheses_in_alter_view1557);
            	        identifier_list_with_parentheses309=identifier_list_with_parentheses(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_viewEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list_with_parentheses309.tree);

            	    }
            	    break;

                }
            }

            AS_SYMBOL310 = (pANTLR3_COMMON_TOKEN) MATCHT(AS_SYMBOL, &FOLLOW_AS_SYMBOL_in_alter_view1560);
            if  (HASEXCEPTION())
            {
                goto rulealter_viewEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            AS_SYMBOL310_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AS_SYMBOL310));
            ADAPTOR->addChild(ADAPTOR, root_0, AS_SYMBOL310_tree);
            }

            FOLLOWPUSH(FOLLOW_select_statement_in_alter_view1562);
            select_statement311=select_statement(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulealter_viewEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_statement311.tree);

            // MySQL.g:418:3: ( WITH_SYMBOL ( CASCADED_SYMBOL | LOCAL_SYMBOL )? CHECK_SYMBOL OPTION_SYMBOL )?
            {
                int alt95=2;
                switch ( LA(1) )
                {
                    case WITH_SYMBOL:
                    	{
                    		alt95=1;
                    	}
                        break;
                }

                switch (alt95)
                {
            	case 1:
            	    // MySQL.g:418:4: WITH_SYMBOL ( CASCADED_SYMBOL | LOCAL_SYMBOL )? CHECK_SYMBOL OPTION_SYMBOL
            	    {
            	        WITH_SYMBOL312 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_alter_view1567);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_viewEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        WITH_SYMBOL312_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WITH_SYMBOL312));
            	        ADAPTOR->addChild(ADAPTOR, root_0, WITH_SYMBOL312_tree);
            	        }

            	        // MySQL.g:418:16: ( CASCADED_SYMBOL | LOCAL_SYMBOL )?
            	        {
            	            int alt94=2;
            	            switch ( LA(1) )
            	            {
            	                case CASCADED_SYMBOL:
            	                case LOCAL_SYMBOL:
            	                	{
            	                		alt94=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt94)
            	            {
            	        	case 1:
            	        	    // MySQL.g:
            	        	    {
            	        	        set313=(pANTLR3_COMMON_TOKEN)LT(1);

            	        	        if ( LA(1) == CASCADED_SYMBOL || LA(1) == LOCAL_SYMBOL )
            	        	        {
            	        	            CONSUME();
            	        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set313))
            	        	            );
            	        	            PERRORRECOVERY=ANTLR3_FALSE;
            	        	            FAILEDFLAG=ANTLR3_FALSE;

            	        	        }
            	        	        else
            	        	        {
            	        	            if (BACKTRACKING>0)
            	        	            {
            	        	                FAILEDFLAG = ANTLR3_TRUE;
            	        	                return retval;
            	        	            }

            	        	            CONSTRUCTEX();
            	        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	        	            EXCEPTION->expectingSet = NULL;

            	        	            goto rulealter_viewEx;
            	        	        }


            	        	    }
            	        	    break;

            	            }
            	        }

            	        CHECK_SYMBOL314 = (pANTLR3_COMMON_TOKEN) MATCHT(CHECK_SYMBOL, &FOLLOW_CHECK_SYMBOL_in_alter_view1578);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_viewEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CHECK_SYMBOL314_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHECK_SYMBOL314));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CHECK_SYMBOL314_tree);
            	        }

            	        OPTION_SYMBOL315 = (pANTLR3_COMMON_TOKEN) MATCHT(OPTION_SYMBOL, &FOLLOW_OPTION_SYMBOL_in_alter_view1580);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_viewEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPTION_SYMBOL315_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPTION_SYMBOL315));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPTION_SYMBOL315_tree);
            	        }

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulealter_viewEx; /* Prevent compiler warnings */
    rulealter_viewEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end alter_view */

/**
 * $ANTLR start create_statement
 * MySQL.g:423:1: create_statement : CREATE_SYMBOL ( create_table | create_index | create_database | ( definer_clause )? ({...}? => create_event | create_view | create_routine_or_udf | create_trigger ) | view_replace_or_algorithm ( definer_clause )? create_view | create_logfile_group | create_server | create_tablespace ) ;
 */
static MySQLParser_create_statement_return
create_statement(pMySQLParser ctx)
{
    MySQLParser_create_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    CREATE_SYMBOL316;
    MySQLParser_create_table_return create_table317;
    #undef	RETURN_TYPE_create_table317
    #define	RETURN_TYPE_create_table317 MySQLParser_create_table_return

    MySQLParser_create_index_return create_index318;
    #undef	RETURN_TYPE_create_index318
    #define	RETURN_TYPE_create_index318 MySQLParser_create_index_return

    MySQLParser_create_database_return create_database319;
    #undef	RETURN_TYPE_create_database319
    #define	RETURN_TYPE_create_database319 MySQLParser_create_database_return

    MySQLParser_definer_clause_return definer_clause320;
    #undef	RETURN_TYPE_definer_clause320
    #define	RETURN_TYPE_definer_clause320 MySQLParser_definer_clause_return

    MySQLParser_create_event_return create_event321;
    #undef	RETURN_TYPE_create_event321
    #define	RETURN_TYPE_create_event321 MySQLParser_create_event_return

    MySQLParser_create_view_return create_view322;
    #undef	RETURN_TYPE_create_view322
    #define	RETURN_TYPE_create_view322 MySQLParser_create_view_return

    MySQLParser_create_routine_or_udf_return create_routine_or_udf323;
    #undef	RETURN_TYPE_create_routine_or_udf323
    #define	RETURN_TYPE_create_routine_or_udf323 MySQLParser_create_routine_or_udf_return

    MySQLParser_create_trigger_return create_trigger324;
    #undef	RETURN_TYPE_create_trigger324
    #define	RETURN_TYPE_create_trigger324 MySQLParser_create_trigger_return

    MySQLParser_view_replace_or_algorithm_return view_replace_or_algorithm325;
    #undef	RETURN_TYPE_view_replace_or_algorithm325
    #define	RETURN_TYPE_view_replace_or_algorithm325 MySQLParser_view_replace_or_algorithm_return

    MySQLParser_definer_clause_return definer_clause326;
    #undef	RETURN_TYPE_definer_clause326
    #define	RETURN_TYPE_definer_clause326 MySQLParser_definer_clause_return

    MySQLParser_create_view_return create_view327;
    #undef	RETURN_TYPE_create_view327
    #define	RETURN_TYPE_create_view327 MySQLParser_create_view_return

    MySQLParser_create_logfile_group_return create_logfile_group328;
    #undef	RETURN_TYPE_create_logfile_group328
    #define	RETURN_TYPE_create_logfile_group328 MySQLParser_create_logfile_group_return

    MySQLParser_create_server_return create_server329;
    #undef	RETURN_TYPE_create_server329
    #define	RETURN_TYPE_create_server329 MySQLParser_create_server_return

    MySQLParser_create_tablespace_return create_tablespace330;
    #undef	RETURN_TYPE_create_tablespace330
    #define	RETURN_TYPE_create_tablespace330 MySQLParser_create_tablespace_return

    pANTLR3_BASE_TREE CREATE_SYMBOL316_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CREATE_SYMBOL316       = NULL;
    create_table317.tree = NULL;

    create_index318.tree = NULL;

    create_database319.tree = NULL;

    definer_clause320.tree = NULL;

    create_event321.tree = NULL;

    create_view322.tree = NULL;

    create_routine_or_udf323.tree = NULL;

    create_trigger324.tree = NULL;

    view_replace_or_algorithm325.tree = NULL;

    definer_clause326.tree = NULL;

    create_view327.tree = NULL;

    create_logfile_group328.tree = NULL;

    create_server329.tree = NULL;

    create_tablespace330.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CREATE_SYMBOL316_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:423:17: ( CREATE_SYMBOL ( create_table | create_index | create_database | ( definer_clause )? ({...}? => create_event | create_view | create_routine_or_udf | create_trigger ) | view_replace_or_algorithm ( definer_clause )? create_view | create_logfile_group | create_server | create_tablespace ) )
        // MySQL.g:424:2: CREATE_SYMBOL ( create_table | create_index | create_database | ( definer_clause )? ({...}? => create_event | create_view | create_routine_or_udf | create_trigger ) | view_replace_or_algorithm ( definer_clause )? create_view | create_logfile_group | create_server | create_tablespace )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            CREATE_SYMBOL316 = (pANTLR3_COMMON_TOKEN) MATCHT(CREATE_SYMBOL, &FOLLOW_CREATE_SYMBOL_in_create_statement1593);
            if  (HASEXCEPTION())
            {
                goto rulecreate_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CREATE_SYMBOL316_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CREATE_SYMBOL316));
            ADAPTOR->addChild(ADAPTOR, root_0, CREATE_SYMBOL316_tree);
            }

            // MySQL.g:425:2: ( create_table | create_index | create_database | ( definer_clause )? ({...}? => create_event | create_view | create_routine_or_udf | create_trigger ) | view_replace_or_algorithm ( definer_clause )? create_view | create_logfile_group | create_server | create_tablespace )
            {
                int alt99=8;
                {
                    int LA99_0 = LA(1);
                    if ( (((LA99_0 >= TABLE_SYMBOL) && (LA99_0 <= TEMPORARY_SYMBOL))))
                    {
                        alt99=1;
                    }
                    else if ( ((SERVER_VERSION < 50600)) && (LA99_0 == OFFLINE_SYMBOL || LA99_0 == ONLINE_SYMBOL))
                    {
                        alt99=2;
                    }
                    else if ( (LA99_0 == FULLTEXT_SYMBOL || LA99_0 == INDEX_SYMBOL || LA99_0 == SPATIAL_SYMBOL || LA99_0 == UNIQUE_SYMBOL))
                    {
                        alt99=2;
                    }
                    else if ( (LA99_0 == DATABASE_SYMBOL))
                    {
                        alt99=3;
                    }
                    else if ( (LA99_0 == DEFINER_SYMBOL))
                    {
                        alt99=4;
                    }
                    else if ( ((SERVER_VERSION >= 50100)) && (LA99_0 == EVENT_SYMBOL))
                    {
                        alt99=4;
                    }
                    else if ( (LA99_0 == AGGREGATE_SYMBOL || LA99_0 == FUNCTION_SYMBOL || LA99_0 == PROCEDURE_SYMBOL || LA99_0 == SQL_SYMBOL || LA99_0 == TRIGGER_SYMBOL || LA99_0 == VIEW_SYMBOL))
                    {
                        alt99=4;
                    }
                    else if ( (LA99_0 == ALGORITHM_SYMBOL || LA99_0 == OR_SYMBOL))
                    {
                        alt99=5;
                    }
                    else if ( (LA99_0 == LOGFILE_SYMBOL))
                    {
                        alt99=6;
                    }
                    else if ( (LA99_0 == SERVER_SYMBOL))
                    {
                        alt99=7;
                    }
                    else if ( (LA99_0 == TABLESPACE_SYMBOL))
                    {
                        alt99=8;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 99;
                        EXCEPTION->state        = 0;


                        goto rulecreate_statementEx;

                    }
                }
                switch (alt99)
                {
            	case 1:
            	    // MySQL.g:426:3: create_table
            	    {
            	        FOLLOWPUSH(FOLLOW_create_table_in_create_statement1601);
            	        create_table317=create_table(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_table317.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:427:5: create_index
            	    {
            	        FOLLOWPUSH(FOLLOW_create_index_in_create_statement1607);
            	        create_index318=create_index(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_index318.tree);

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:428:5: create_database
            	    {
            	        FOLLOWPUSH(FOLLOW_create_database_in_create_statement1613);
            	        create_database319=create_database(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_database319.tree);

            	    }
            	    break;
            	case 4:
            	    // MySQL.g:429:5: ( definer_clause )? ({...}? => create_event | create_view | create_routine_or_udf | create_trigger )
            	    {
            	        // MySQL.g:429:5: ( definer_clause )?
            	        {
            	            int alt96=2;
            	            switch ( LA(1) )
            	            {
            	                case DEFINER_SYMBOL:
            	                	{
            	                		alt96=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt96)
            	            {
            	        	case 1:
            	        	    // MySQL.g:429:5: definer_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_definer_clause_in_create_statement1619);
            	        	        definer_clause320=definer_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, definer_clause320.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:430:4: ({...}? => create_event | create_view | create_routine_or_udf | create_trigger )
            	        {
            	            int alt97=4;
            	            {
            	                int LA97_0 = LA(1);
            	                if ( ((SERVER_VERSION >= 50100)) && (LA97_0 == EVENT_SYMBOL))
            	                {
            	                    alt97=1;
            	                }
            	                else if ( (LA97_0 == SQL_SYMBOL || LA97_0 == VIEW_SYMBOL))
            	                {
            	                    alt97=2;
            	                }
            	                else if ( (LA97_0 == AGGREGATE_SYMBOL || LA97_0 == FUNCTION_SYMBOL || LA97_0 == PROCEDURE_SYMBOL))
            	                {
            	                    alt97=3;
            	                }
            	                else if ( (LA97_0 == TRIGGER_SYMBOL))
            	                {
            	                    alt97=4;
            	                }
            	                else
            	                {
            	                    if (BACKTRACKING>0)
            	                    {
            	                        FAILEDFLAG = ANTLR3_TRUE;
            	                        return retval;
            	                    }


            	                    CONSTRUCTEX();
            	                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    EXCEPTION->message      = (void *)"";
            	                    EXCEPTION->decisionNum  = 97;
            	                    EXCEPTION->state        = 0;


            	                    goto rulecreate_statementEx;

            	                }
            	            }
            	            switch (alt97)
            	            {
            	        	case 1:
            	        	    // MySQL.g:431:5: {...}? => create_event
            	        	    {
            	        	        if ( !((SERVER_VERSION >= 50100)) )
            	        	        {
            	        	            if (BACKTRACKING>0)
            	        	            {
            	        	                FAILEDFLAG = ANTLR3_TRUE;
            	        	                return retval;
            	        	            }

            	        	                CONSTRUCTEX();
            	        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
            	        	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50100";
            	        	                EXCEPTION->ruleName	 = (void *)"create_statement";


            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_create_event_in_create_statement1635);
            	        	        create_event321=create_event(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_event321.tree);

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:432:7: create_view
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_create_view_in_create_statement1643);
            	        	        create_view322=create_view(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_view322.tree);

            	        	    }
            	        	    break;
            	        	case 3:
            	        	    // MySQL.g:433:7: create_routine_or_udf
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_create_routine_or_udf_in_create_statement1651);
            	        	        create_routine_or_udf323=create_routine_or_udf(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_routine_or_udf323.tree);

            	        	    }
            	        	    break;
            	        	case 4:
            	        	    // MySQL.g:434:7: create_trigger
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_create_trigger_in_create_statement1659);
            	        	        create_trigger324=create_trigger(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_trigger324.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 5:
            	    // MySQL.g:436:5: view_replace_or_algorithm ( definer_clause )? create_view
            	    {
            	        FOLLOWPUSH(FOLLOW_view_replace_or_algorithm_in_create_statement1670);
            	        view_replace_or_algorithm325=view_replace_or_algorithm(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, view_replace_or_algorithm325.tree);

            	        // MySQL.g:436:31: ( definer_clause )?
            	        {
            	            int alt98=2;
            	            switch ( LA(1) )
            	            {
            	                case DEFINER_SYMBOL:
            	                	{
            	                		alt98=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt98)
            	            {
            	        	case 1:
            	        	    // MySQL.g:436:31: definer_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_definer_clause_in_create_statement1672);
            	        	        definer_clause326=definer_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, definer_clause326.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_create_view_in_create_statement1675);
            	        create_view327=create_view(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_view327.tree);

            	    }
            	    break;
            	case 6:
            	    // MySQL.g:437:5: create_logfile_group
            	    {
            	        FOLLOWPUSH(FOLLOW_create_logfile_group_in_create_statement1681);
            	        create_logfile_group328=create_logfile_group(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_logfile_group328.tree);

            	    }
            	    break;
            	case 7:
            	    // MySQL.g:438:5: create_server
            	    {
            	        FOLLOWPUSH(FOLLOW_create_server_in_create_statement1687);
            	        create_server329=create_server(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_server329.tree);

            	    }
            	    break;
            	case 8:
            	    // MySQL.g:439:5: create_tablespace
            	    {
            	        FOLLOWPUSH(FOLLOW_create_tablespace_in_create_statement1693);
            	        create_tablespace330=create_tablespace(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_tablespace330.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulecreate_statementEx; /* Prevent compiler warnings */
    rulecreate_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end create_statement */

/**
 * $ANTLR start create_database
 * MySQL.g:443:1: create_database : DATABASE_SYMBOL ( if_not_exists )? identifier ( database_option )* ;
 */
static MySQLParser_create_database_return
create_database(pMySQLParser ctx)
{
    MySQLParser_create_database_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    DATABASE_SYMBOL331;
    MySQLParser_if_not_exists_return if_not_exists332;
    #undef	RETURN_TYPE_if_not_exists332
    #define	RETURN_TYPE_if_not_exists332 MySQLParser_if_not_exists_return

    MySQLParser_identifier_return identifier333;
    #undef	RETURN_TYPE_identifier333
    #define	RETURN_TYPE_identifier333 MySQLParser_identifier_return

    MySQLParser_database_option_return database_option334;
    #undef	RETURN_TYPE_database_option334
    #define	RETURN_TYPE_database_option334 MySQLParser_database_option_return

    pANTLR3_BASE_TREE DATABASE_SYMBOL331_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DATABASE_SYMBOL331       = NULL;
    if_not_exists332.tree = NULL;

    identifier333.tree = NULL;

    database_option334.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DATABASE_SYMBOL331_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:443:16: ( DATABASE_SYMBOL ( if_not_exists )? identifier ( database_option )* )
        // MySQL.g:444:2: DATABASE_SYMBOL ( if_not_exists )? identifier ( database_option )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            DATABASE_SYMBOL331 = (pANTLR3_COMMON_TOKEN) MATCHT(DATABASE_SYMBOL, &FOLLOW_DATABASE_SYMBOL_in_create_database1705);
            if  (HASEXCEPTION())
            {
                goto rulecreate_databaseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DATABASE_SYMBOL331_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATABASE_SYMBOL331));
            ADAPTOR->addChild(ADAPTOR, root_0, DATABASE_SYMBOL331_tree);
            }

            // MySQL.g:444:18: ( if_not_exists )?
            {
                int alt100=2;
                switch ( LA(1) )
                {
                    case IF_SYMBOL:
                    	{
                    		alt100=1;
                    	}
                        break;
                }

                switch (alt100)
                {
            	case 1:
            	    // MySQL.g:444:18: if_not_exists
            	    {
            	        FOLLOWPUSH(FOLLOW_if_not_exists_in_create_database1707);
            	        if_not_exists332=if_not_exists(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_databaseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, if_not_exists332.tree);

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_identifier_in_create_database1710);
            identifier333=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_databaseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier333.tree);

            // MySQL.g:444:44: ( database_option )*

            for (;;)
            {
                int alt101=2;
                switch ( LA(1) )
                {
                case CHAR_SYMBOL:
                case COLLATE_SYMBOL:
                case DEFAULT_SYMBOL:
                	{
                		alt101=1;
                	}
                    break;

                }

                switch (alt101)
                {
            	case 1:
            	    // MySQL.g:444:44: database_option
            	    {
            	        FOLLOWPUSH(FOLLOW_database_option_in_create_database1712);
            	        database_option334=database_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_databaseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, database_option334.tree);

            	    }
            	    break;

            	default:
            	    goto loop101;	/* break out of the loop */
            	    break;
                }
            }
            loop101: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto rulecreate_databaseEx; /* Prevent compiler warnings */
    rulecreate_databaseEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end create_database */

/**
 * $ANTLR start create_event
 * MySQL.g:447:1: create_event : EVENT_SYMBOL ( if_not_exists )? identifier ON_SYMBOL SCHEDULE_SYMBOL schedule ( ON_SYMBOL COMPLETION_SYMBOL ( NOT_SYMBOL )? PRESERVE_SYMBOL )? ( ENABLE_SYMBOL | DISABLE_SYMBOL ( ON_SYMBOL SLAVE_SYMBOL )? )? ( COMMENT_SYMBOL string_literal )? DO_SYMBOL compound_statement ;
 */
static MySQLParser_create_event_return
create_event(pMySQLParser ctx)
{
    MySQLParser_create_event_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    EVENT_SYMBOL335;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL338;
    pANTLR3_COMMON_TOKEN    SCHEDULE_SYMBOL339;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL341;
    pANTLR3_COMMON_TOKEN    COMPLETION_SYMBOL342;
    pANTLR3_COMMON_TOKEN    NOT_SYMBOL343;
    pANTLR3_COMMON_TOKEN    PRESERVE_SYMBOL344;
    pANTLR3_COMMON_TOKEN    ENABLE_SYMBOL345;
    pANTLR3_COMMON_TOKEN    DISABLE_SYMBOL346;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL347;
    pANTLR3_COMMON_TOKEN    SLAVE_SYMBOL348;
    pANTLR3_COMMON_TOKEN    COMMENT_SYMBOL349;
    pANTLR3_COMMON_TOKEN    DO_SYMBOL351;
    MySQLParser_if_not_exists_return if_not_exists336;
    #undef	RETURN_TYPE_if_not_exists336
    #define	RETURN_TYPE_if_not_exists336 MySQLParser_if_not_exists_return

    MySQLParser_identifier_return identifier337;
    #undef	RETURN_TYPE_identifier337
    #define	RETURN_TYPE_identifier337 MySQLParser_identifier_return

    MySQLParser_schedule_return schedule340;
    #undef	RETURN_TYPE_schedule340
    #define	RETURN_TYPE_schedule340 MySQLParser_schedule_return

    MySQLParser_string_literal_return string_literal350;
    #undef	RETURN_TYPE_string_literal350
    #define	RETURN_TYPE_string_literal350 MySQLParser_string_literal_return

    MySQLParser_compound_statement_return compound_statement352;
    #undef	RETURN_TYPE_compound_statement352
    #define	RETURN_TYPE_compound_statement352 MySQLParser_compound_statement_return

    pANTLR3_BASE_TREE EVENT_SYMBOL335_tree;
    pANTLR3_BASE_TREE ON_SYMBOL338_tree;
    pANTLR3_BASE_TREE SCHEDULE_SYMBOL339_tree;
    pANTLR3_BASE_TREE ON_SYMBOL341_tree;
    pANTLR3_BASE_TREE COMPLETION_SYMBOL342_tree;
    pANTLR3_BASE_TREE NOT_SYMBOL343_tree;
    pANTLR3_BASE_TREE PRESERVE_SYMBOL344_tree;
    pANTLR3_BASE_TREE ENABLE_SYMBOL345_tree;
    pANTLR3_BASE_TREE DISABLE_SYMBOL346_tree;
    pANTLR3_BASE_TREE ON_SYMBOL347_tree;
    pANTLR3_BASE_TREE SLAVE_SYMBOL348_tree;
    pANTLR3_BASE_TREE COMMENT_SYMBOL349_tree;
    pANTLR3_BASE_TREE DO_SYMBOL351_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    EVENT_SYMBOL335       = NULL;
    ON_SYMBOL338       = NULL;
    SCHEDULE_SYMBOL339       = NULL;
    ON_SYMBOL341       = NULL;
    COMPLETION_SYMBOL342       = NULL;
    NOT_SYMBOL343       = NULL;
    PRESERVE_SYMBOL344       = NULL;
    ENABLE_SYMBOL345       = NULL;
    DISABLE_SYMBOL346       = NULL;
    ON_SYMBOL347       = NULL;
    SLAVE_SYMBOL348       = NULL;
    COMMENT_SYMBOL349       = NULL;
    DO_SYMBOL351       = NULL;
    if_not_exists336.tree = NULL;

    identifier337.tree = NULL;

    schedule340.tree = NULL;

    string_literal350.tree = NULL;

    compound_statement352.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    EVENT_SYMBOL335_tree   = NULL;
    ON_SYMBOL338_tree   = NULL;
    SCHEDULE_SYMBOL339_tree   = NULL;
    ON_SYMBOL341_tree   = NULL;
    COMPLETION_SYMBOL342_tree   = NULL;
    NOT_SYMBOL343_tree   = NULL;
    PRESERVE_SYMBOL344_tree   = NULL;
    ENABLE_SYMBOL345_tree   = NULL;
    DISABLE_SYMBOL346_tree   = NULL;
    ON_SYMBOL347_tree   = NULL;
    SLAVE_SYMBOL348_tree   = NULL;
    COMMENT_SYMBOL349_tree   = NULL;
    DO_SYMBOL351_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:447:13: ( EVENT_SYMBOL ( if_not_exists )? identifier ON_SYMBOL SCHEDULE_SYMBOL schedule ( ON_SYMBOL COMPLETION_SYMBOL ( NOT_SYMBOL )? PRESERVE_SYMBOL )? ( ENABLE_SYMBOL | DISABLE_SYMBOL ( ON_SYMBOL SLAVE_SYMBOL )? )? ( COMMENT_SYMBOL string_literal )? DO_SYMBOL compound_statement )
        // MySQL.g:448:2: EVENT_SYMBOL ( if_not_exists )? identifier ON_SYMBOL SCHEDULE_SYMBOL schedule ( ON_SYMBOL COMPLETION_SYMBOL ( NOT_SYMBOL )? PRESERVE_SYMBOL )? ( ENABLE_SYMBOL | DISABLE_SYMBOL ( ON_SYMBOL SLAVE_SYMBOL )? )? ( COMMENT_SYMBOL string_literal )? DO_SYMBOL compound_statement
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            EVENT_SYMBOL335 = (pANTLR3_COMMON_TOKEN) MATCHT(EVENT_SYMBOL, &FOLLOW_EVENT_SYMBOL_in_create_event1722);
            if  (HASEXCEPTION())
            {
                goto rulecreate_eventEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EVENT_SYMBOL335_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EVENT_SYMBOL335));
            ADAPTOR->addChild(ADAPTOR, root_0, EVENT_SYMBOL335_tree);
            }

            // MySQL.g:448:15: ( if_not_exists )?
            {
                int alt102=2;
                switch ( LA(1) )
                {
                    case IF_SYMBOL:
                    	{
                    		alt102=1;
                    	}
                        break;
                }

                switch (alt102)
                {
            	case 1:
            	    // MySQL.g:448:15: if_not_exists
            	    {
            	        FOLLOWPUSH(FOLLOW_if_not_exists_in_create_event1724);
            	        if_not_exists336=if_not_exists(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_eventEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, if_not_exists336.tree);

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_identifier_in_create_event1727);
            identifier337=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_eventEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier337.tree);

            ON_SYMBOL338 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_create_event1729);
            if  (HASEXCEPTION())
            {
                goto rulecreate_eventEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ON_SYMBOL338_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL338));
            ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL338_tree);
            }

            SCHEDULE_SYMBOL339 = (pANTLR3_COMMON_TOKEN) MATCHT(SCHEDULE_SYMBOL, &FOLLOW_SCHEDULE_SYMBOL_in_create_event1731);
            if  (HASEXCEPTION())
            {
                goto rulecreate_eventEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SCHEDULE_SYMBOL339_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SCHEDULE_SYMBOL339));
            ADAPTOR->addChild(ADAPTOR, root_0, SCHEDULE_SYMBOL339_tree);
            }

            FOLLOWPUSH(FOLLOW_schedule_in_create_event1733);
            schedule340=schedule(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_eventEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, schedule340.tree);

            // MySQL.g:449:3: ( ON_SYMBOL COMPLETION_SYMBOL ( NOT_SYMBOL )? PRESERVE_SYMBOL )?
            {
                int alt104=2;
                switch ( LA(1) )
                {
                    case ON_SYMBOL:
                    	{
                    		alt104=1;
                    	}
                        break;
                }

                switch (alt104)
                {
            	case 1:
            	    // MySQL.g:449:4: ON_SYMBOL COMPLETION_SYMBOL ( NOT_SYMBOL )? PRESERVE_SYMBOL
            	    {
            	        ON_SYMBOL341 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_create_event1738);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_eventEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ON_SYMBOL341_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL341));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL341_tree);
            	        }

            	        COMPLETION_SYMBOL342 = (pANTLR3_COMMON_TOKEN) MATCHT(COMPLETION_SYMBOL, &FOLLOW_COMPLETION_SYMBOL_in_create_event1740);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_eventEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMPLETION_SYMBOL342_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMPLETION_SYMBOL342));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMPLETION_SYMBOL342_tree);
            	        }

            	        // MySQL.g:449:32: ( NOT_SYMBOL )?
            	        {
            	            int alt103=2;
            	            switch ( LA(1) )
            	            {
            	                case NOT_SYMBOL:
            	                	{
            	                		alt103=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt103)
            	            {
            	        	case 1:
            	        	    // MySQL.g:449:32: NOT_SYMBOL
            	        	    {
            	        	        NOT_SYMBOL343 = (pANTLR3_COMMON_TOKEN) MATCHT(NOT_SYMBOL, &FOLLOW_NOT_SYMBOL_in_create_event1742);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_eventEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        NOT_SYMBOL343_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NOT_SYMBOL343));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, NOT_SYMBOL343_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        PRESERVE_SYMBOL344 = (pANTLR3_COMMON_TOKEN) MATCHT(PRESERVE_SYMBOL, &FOLLOW_PRESERVE_SYMBOL_in_create_event1745);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_eventEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PRESERVE_SYMBOL344_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PRESERVE_SYMBOL344));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PRESERVE_SYMBOL344_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:450:3: ( ENABLE_SYMBOL | DISABLE_SYMBOL ( ON_SYMBOL SLAVE_SYMBOL )? )?
            {
                int alt106=3;
                switch ( LA(1) )
                {
                    case ENABLE_SYMBOL:
                    	{
                    		alt106=1;
                    	}
                        break;
                    case DISABLE_SYMBOL:
                    	{
                    		alt106=2;
                    	}
                        break;
                }

                switch (alt106)
                {
            	case 1:
            	    // MySQL.g:450:4: ENABLE_SYMBOL
            	    {
            	        ENABLE_SYMBOL345 = (pANTLR3_COMMON_TOKEN) MATCHT(ENABLE_SYMBOL, &FOLLOW_ENABLE_SYMBOL_in_create_event1752);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_eventEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ENABLE_SYMBOL345_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ENABLE_SYMBOL345));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ENABLE_SYMBOL345_tree);
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:450:20: DISABLE_SYMBOL ( ON_SYMBOL SLAVE_SYMBOL )?
            	    {
            	        DISABLE_SYMBOL346 = (pANTLR3_COMMON_TOKEN) MATCHT(DISABLE_SYMBOL, &FOLLOW_DISABLE_SYMBOL_in_create_event1756);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_eventEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DISABLE_SYMBOL346_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DISABLE_SYMBOL346));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DISABLE_SYMBOL346_tree);
            	        }

            	        // MySQL.g:450:35: ( ON_SYMBOL SLAVE_SYMBOL )?
            	        {
            	            int alt105=2;
            	            switch ( LA(1) )
            	            {
            	                case ON_SYMBOL:
            	                	{
            	                		alt105=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt105)
            	            {
            	        	case 1:
            	        	    // MySQL.g:450:36: ON_SYMBOL SLAVE_SYMBOL
            	        	    {
            	        	        ON_SYMBOL347 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_create_event1759);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_eventEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        ON_SYMBOL347_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL347));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL347_tree);
            	        	        }

            	        	        SLAVE_SYMBOL348 = (pANTLR3_COMMON_TOKEN) MATCHT(SLAVE_SYMBOL, &FOLLOW_SLAVE_SYMBOL_in_create_event1761);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_eventEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        SLAVE_SYMBOL348_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SLAVE_SYMBOL348));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, SLAVE_SYMBOL348_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:451:3: ( COMMENT_SYMBOL string_literal )?
            {
                int alt107=2;
                switch ( LA(1) )
                {
                    case COMMENT_SYMBOL:
                    	{
                    		alt107=1;
                    	}
                        break;
                }

                switch (alt107)
                {
            	case 1:
            	    // MySQL.g:451:4: COMMENT_SYMBOL string_literal
            	    {
            	        COMMENT_SYMBOL349 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMENT_SYMBOL, &FOLLOW_COMMENT_SYMBOL_in_create_event1770);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_eventEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMENT_SYMBOL349_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMENT_SYMBOL349));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMENT_SYMBOL349_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_string_literal_in_create_event1772);
            	        string_literal350=string_literal(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_eventEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal350.tree);

            	    }
            	    break;

                }
            }

            DO_SYMBOL351 = (pANTLR3_COMMON_TOKEN) MATCHT(DO_SYMBOL, &FOLLOW_DO_SYMBOL_in_create_event1778);
            if  (HASEXCEPTION())
            {
                goto rulecreate_eventEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DO_SYMBOL351_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DO_SYMBOL351));
            ADAPTOR->addChild(ADAPTOR, root_0, DO_SYMBOL351_tree);
            }

            FOLLOWPUSH(FOLLOW_compound_statement_in_create_event1780);
            compound_statement352=compound_statement(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_eventEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, compound_statement352.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto rulecreate_eventEx; /* Prevent compiler warnings */
    rulecreate_eventEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end create_event */

/**
 * $ANTLR start create_routine_or_udf
 * MySQL.g:455:1: create_routine_or_udf : ( PROCEDURE_SYMBOL qualified_identifier OPEN_PAR_SYMBOL ( procedure_parameter ( COMMA_SYMBOL procedure_parameter )* )? CLOSE_PAR_SYMBOL ( routine_create_option )* compound_statement | FUNCTION_SYMBOL ( qualified_identifier OPEN_PAR_SYMBOL ( function_parameter ( COMMA_SYMBOL function_parameter )* )? CLOSE_PAR_SYMBOL RETURNS_SYMBOL data_type ( routine_create_option )* compound_statement | udf_tail ) | AGGREGATE_SYMBOL FUNCTION_SYMBOL udf_tail );
 */
static MySQLParser_create_routine_or_udf_return
create_routine_or_udf(pMySQLParser ctx)
{
    MySQLParser_create_routine_or_udf_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    PROCEDURE_SYMBOL353;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL355;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL357;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL359;
    pANTLR3_COMMON_TOKEN    FUNCTION_SYMBOL362;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL364;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL366;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL368;
    pANTLR3_COMMON_TOKEN    RETURNS_SYMBOL369;
    pANTLR3_COMMON_TOKEN    AGGREGATE_SYMBOL374;
    pANTLR3_COMMON_TOKEN    FUNCTION_SYMBOL375;
    MySQLParser_qualified_identifier_return qualified_identifier354;
    #undef	RETURN_TYPE_qualified_identifier354
    #define	RETURN_TYPE_qualified_identifier354 MySQLParser_qualified_identifier_return

    MySQLParser_procedure_parameter_return procedure_parameter356;
    #undef	RETURN_TYPE_procedure_parameter356
    #define	RETURN_TYPE_procedure_parameter356 MySQLParser_procedure_parameter_return

    MySQLParser_procedure_parameter_return procedure_parameter358;
    #undef	RETURN_TYPE_procedure_parameter358
    #define	RETURN_TYPE_procedure_parameter358 MySQLParser_procedure_parameter_return

    MySQLParser_routine_create_option_return routine_create_option360;
    #undef	RETURN_TYPE_routine_create_option360
    #define	RETURN_TYPE_routine_create_option360 MySQLParser_routine_create_option_return

    MySQLParser_compound_statement_return compound_statement361;
    #undef	RETURN_TYPE_compound_statement361
    #define	RETURN_TYPE_compound_statement361 MySQLParser_compound_statement_return

    MySQLParser_qualified_identifier_return qualified_identifier363;
    #undef	RETURN_TYPE_qualified_identifier363
    #define	RETURN_TYPE_qualified_identifier363 MySQLParser_qualified_identifier_return

    MySQLParser_function_parameter_return function_parameter365;
    #undef	RETURN_TYPE_function_parameter365
    #define	RETURN_TYPE_function_parameter365 MySQLParser_function_parameter_return

    MySQLParser_function_parameter_return function_parameter367;
    #undef	RETURN_TYPE_function_parameter367
    #define	RETURN_TYPE_function_parameter367 MySQLParser_function_parameter_return

    MySQLParser_data_type_return data_type370;
    #undef	RETURN_TYPE_data_type370
    #define	RETURN_TYPE_data_type370 MySQLParser_data_type_return

    MySQLParser_routine_create_option_return routine_create_option371;
    #undef	RETURN_TYPE_routine_create_option371
    #define	RETURN_TYPE_routine_create_option371 MySQLParser_routine_create_option_return

    MySQLParser_compound_statement_return compound_statement372;
    #undef	RETURN_TYPE_compound_statement372
    #define	RETURN_TYPE_compound_statement372 MySQLParser_compound_statement_return

    MySQLParser_udf_tail_return udf_tail373;
    #undef	RETURN_TYPE_udf_tail373
    #define	RETURN_TYPE_udf_tail373 MySQLParser_udf_tail_return

    MySQLParser_udf_tail_return udf_tail376;
    #undef	RETURN_TYPE_udf_tail376
    #define	RETURN_TYPE_udf_tail376 MySQLParser_udf_tail_return

    pANTLR3_BASE_TREE PROCEDURE_SYMBOL353_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL355_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL357_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL359_tree;
    pANTLR3_BASE_TREE FUNCTION_SYMBOL362_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL364_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL366_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL368_tree;
    pANTLR3_BASE_TREE RETURNS_SYMBOL369_tree;
    pANTLR3_BASE_TREE AGGREGATE_SYMBOL374_tree;
    pANTLR3_BASE_TREE FUNCTION_SYMBOL375_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PROCEDURE_SYMBOL353       = NULL;
    OPEN_PAR_SYMBOL355       = NULL;
    COMMA_SYMBOL357       = NULL;
    CLOSE_PAR_SYMBOL359       = NULL;
    FUNCTION_SYMBOL362       = NULL;
    OPEN_PAR_SYMBOL364       = NULL;
    COMMA_SYMBOL366       = NULL;
    CLOSE_PAR_SYMBOL368       = NULL;
    RETURNS_SYMBOL369       = NULL;
    AGGREGATE_SYMBOL374       = NULL;
    FUNCTION_SYMBOL375       = NULL;
    qualified_identifier354.tree = NULL;

    procedure_parameter356.tree = NULL;

    procedure_parameter358.tree = NULL;

    routine_create_option360.tree = NULL;

    compound_statement361.tree = NULL;

    qualified_identifier363.tree = NULL;

    function_parameter365.tree = NULL;

    function_parameter367.tree = NULL;

    data_type370.tree = NULL;

    routine_create_option371.tree = NULL;

    compound_statement372.tree = NULL;

    udf_tail373.tree = NULL;

    udf_tail376.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PROCEDURE_SYMBOL353_tree   = NULL;
    OPEN_PAR_SYMBOL355_tree   = NULL;
    COMMA_SYMBOL357_tree   = NULL;
    CLOSE_PAR_SYMBOL359_tree   = NULL;
    FUNCTION_SYMBOL362_tree   = NULL;
    OPEN_PAR_SYMBOL364_tree   = NULL;
    COMMA_SYMBOL366_tree   = NULL;
    CLOSE_PAR_SYMBOL368_tree   = NULL;
    RETURNS_SYMBOL369_tree   = NULL;
    AGGREGATE_SYMBOL374_tree   = NULL;
    FUNCTION_SYMBOL375_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:455:22: ( PROCEDURE_SYMBOL qualified_identifier OPEN_PAR_SYMBOL ( procedure_parameter ( COMMA_SYMBOL procedure_parameter )* )? CLOSE_PAR_SYMBOL ( routine_create_option )* compound_statement | FUNCTION_SYMBOL ( qualified_identifier OPEN_PAR_SYMBOL ( function_parameter ( COMMA_SYMBOL function_parameter )* )? CLOSE_PAR_SYMBOL RETURNS_SYMBOL data_type ( routine_create_option )* compound_statement | udf_tail ) | AGGREGATE_SYMBOL FUNCTION_SYMBOL udf_tail )

            ANTLR3_UINT32 alt115;

            alt115=3;

            switch ( LA(1) )
            {
            case PROCEDURE_SYMBOL:
            	{
            		alt115=1;
            	}
                break;
            case FUNCTION_SYMBOL:
            	{
            		alt115=2;
            	}
                break;
            case AGGREGATE_SYMBOL:
            	{
            		alt115=3;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 115;
                EXCEPTION->state        = 0;


                goto rulecreate_routine_or_udfEx;

            }

            switch (alt115)
            {
        	case 1:
        	    // MySQL.g:456:2: PROCEDURE_SYMBOL qualified_identifier OPEN_PAR_SYMBOL ( procedure_parameter ( COMMA_SYMBOL procedure_parameter )* )? CLOSE_PAR_SYMBOL ( routine_create_option )* compound_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PROCEDURE_SYMBOL353 = (pANTLR3_COMMON_TOKEN) MATCHT(PROCEDURE_SYMBOL, &FOLLOW_PROCEDURE_SYMBOL_in_create_routine_or_udf1789);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_routine_or_udfEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PROCEDURE_SYMBOL353_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PROCEDURE_SYMBOL353));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PROCEDURE_SYMBOL353_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_qualified_identifier_in_create_routine_or_udf1791);
        	        qualified_identifier354=qualified_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_routine_or_udfEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, qualified_identifier354.tree);

        	        OPEN_PAR_SYMBOL355 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_create_routine_or_udf1793);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_routine_or_udfEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL355_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL355));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL355_tree);
        	        }

        	        // MySQL.g:456:56: ( procedure_parameter ( COMMA_SYMBOL procedure_parameter )* )?
        	        {
        	            int alt109=2;
        	            {
        	                int LA109_0 = LA(1);
        	                if ( (LA109_0 == BACK_TICK_QUOTED_ID || LA109_0 == IDENTIFIER || LA109_0 == INOUT_SYMBOL || LA109_0 == IN_SYMBOL || LA109_0 == OUT_SYMBOL))
        	                {
        	                    alt109=1;
        	                }
        	                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA109_0 == DOUBLE_QUOTED_TEXT))
        	                {
        	                    alt109=1;
        	                }
        	                else if ( (((LA109_0 >= ACTION_SYMBOL) && (LA109_0 <= ADDDATE_SYMBOL)) || ((LA109_0 >= AFTER_SYMBOL) && (LA109_0 <= ALGORITHM_SYMBOL)) || LA109_0 == ANALYZE_SYMBOL || ((LA109_0 >= ANY_SYMBOL) && (LA109_0 <= ASCII_SYMBOL)) || ((LA109_0 >= AT_SYMBOL) && (LA109_0 <= BACKUP_SYMBOL)) || LA109_0 == BEGIN_SYMBOL || LA109_0 == BINLOG_SYMBOL || LA109_0 == BIT_SYMBOL || ((LA109_0 >= BLOCK_SYMBOL) && (LA109_0 <= BOOL_SYMBOL)) || ((LA109_0 >= BTREE_SYMBOL) && (LA109_0 <= BYTE_SYMBOL)) || LA109_0 == CACHE_SYMBOL || LA109_0 == CASCADED_SYMBOL || ((LA109_0 >= CATALOG_NAME_SYMBOL) && (LA109_0 <= CHANGED_SYMBOL)) || LA109_0 == CHARSET_SYMBOL || LA109_0 == CHECKSUM_SYMBOL || ((LA109_0 >= CIPHER_SYMBOL) && (LA109_0 <= CLIENT_SYMBOL)) || ((LA109_0 >= CLOSE_SYMBOL) && (LA109_0 <= CODE_SYMBOL)) || LA109_0 == COLLATION_SYMBOL || ((LA109_0 >= COLUMNS_SYMBOL) && (LA109_0 <= COLUMN_NAME_SYMBOL)) || ((LA109_0 >= COMMENT_SYMBOL) && (LA109_0 <= COMPRESSED_SYMBOL)) || LA109_0 == CONCURRENT_SYMBOL || ((LA109_0 >= CONNECTION_SYMBOL) && (LA109_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA109_0 >= CONTAINS_SYMBOL) && (LA109_0 <= CONTEXT_SYMBOL)) || LA109_0 == CONTRIBUTORS_SYMBOL || LA109_0 == CPU_SYMBOL || LA109_0 == CUBE_SYMBOL || LA109_0 == CURRENT_SYMBOL || LA109_0 == CURSOR_NAME_SYMBOL || ((LA109_0 >= DATAFILE_SYMBOL) && (LA109_0 <= DATETIME_SYMBOL)) || LA109_0 == DATE_SYMBOL || ((LA109_0 >= DAY_SYMBOL) && (LA109_0 <= DEALLOCATE_SYMBOL)) || LA109_0 == DEFAULT_AUTH_SYMBOL || LA109_0 == DEFINER_SYMBOL || LA109_0 == DELAY_KEY_WRITE_SYMBOL || LA109_0 == DES_KEY_FILE_SYMBOL || LA109_0 == DIAGNOSTICS_SYMBOL || ((LA109_0 >= DIRECTORY_SYMBOL) && (LA109_0 <= DISK_SYMBOL)) || LA109_0 == DO_SYMBOL || ((LA109_0 >= DUMPFILE_SYMBOL) && (LA109_0 <= DYNAMIC_SYMBOL)) || LA109_0 == ENABLE_SYMBOL || LA109_0 == ENDS_SYMBOL || ((LA109_0 >= END_SYMBOL) && (LA109_0 <= ENUM_SYMBOL)) || ((LA109_0 >= ERRORS_SYMBOL) && (LA109_0 <= ERROR_SYMBOL)) || ((LA109_0 >= ESCAPE_SYMBOL) && (LA109_0 <= EVERY_SYMBOL)) || LA109_0 == EXECUTE_SYMBOL || LA109_0 == EXPANSION_SYMBOL || LA109_0 == EXPORT_SYMBOL || ((LA109_0 >= EXTENDED_SYMBOL) && (LA109_0 <= EXTENT_SIZE_SYMBOL)) || ((LA109_0 >= FAST_SYMBOL) && (LA109_0 <= FAULTS_SYMBOL)) || ((LA109_0 >= FILE_SYMBOL) && (LA109_0 <= FIXED_SYMBOL)) || LA109_0 == FLUSH_SYMBOL || LA109_0 == FORMAT_SYMBOL || LA109_0 == FOUND_SYMBOL || LA109_0 == FULL_SYMBOL || ((LA109_0 >= FUNCTION_SYMBOL) && (LA109_0 <= GET_FORMAT_SYMBOL)) || ((LA109_0 >= GLOBAL_SYMBOL) && (LA109_0 <= GRANTS_SYMBOL)) || ((LA109_0 >= HANDLER_SYMBOL) && (LA109_0 <= HASH_SYMBOL)) || LA109_0 == HELP_SYMBOL || ((LA109_0 >= HOSTS_SYMBOL) && (LA109_0 <= HOST_SYMBOL)) || ((LA109_0 >= HOUR_SYMBOL) && (LA109_0 <= IDENTIFIED_SYMBOL)) || LA109_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA109_0 >= IMPORT_SYMBOL) && (LA109_0 <= INDEXES_SYMBOL)) || LA109_0 == INITIAL_SIZE_SYMBOL || LA109_0 == INNODB_SYMBOL || LA109_0 == INSERT_METHOD_SYMBOL || LA109_0 == INSTALL_SYMBOL || LA109_0 == INVOKER_SYMBOL || LA109_0 == IO_SYMBOL || ((LA109_0 >= IPC_SYMBOL) && (LA109_0 <= ISSUER_SYMBOL)) || LA109_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA109_0 >= LANGUAGE_SYMBOL) && (LA109_0 <= LAST_SYMBOL)) || LA109_0 == LEAVES_SYMBOL || LA109_0 == LESS_SYMBOL || LA109_0 == LEVEL_SYMBOL || LA109_0 == LINESTRING_SYMBOL || LA109_0 == LIST_SYMBOL || LA109_0 == LOCAL_SYMBOL || LA109_0 == LOCKS_SYMBOL || LA109_0 == LOGFILE_SYMBOL || LA109_0 == LOGS_SYMBOL || LA109_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA109_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA109_0 <= MASTER_SSL_SYMBOL)) || ((LA109_0 >= MASTER_SYMBOL) && (LA109_0 <= MASTER_USER_SYMBOL)) || ((LA109_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA109_0 <= MAX_SIZE_SYMBOL)) || ((LA109_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA109_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA109_0 >= MEDIUM_SYMBOL) && (LA109_0 <= MICROSECOND_SYMBOL)) || LA109_0 == MIGRATE_SYMBOL || ((LA109_0 >= MINUTE_SYMBOL) && (LA109_0 <= MIN_ROWS_SYMBOL)) || LA109_0 == MODE_SYMBOL || LA109_0 == MODIFY_SYMBOL || ((LA109_0 >= MONTH_SYMBOL) && (LA109_0 <= MULTILINESTRING_SYMBOL)) || ((LA109_0 >= MULTIPOINT_SYMBOL) && (LA109_0 <= MULTIPOLYGON_SYMBOL)) || ((LA109_0 >= MUTEX_SYMBOL) && (LA109_0 <= NATIONAL_SYMBOL)) || LA109_0 == NCHAR_SYMBOL || LA109_0 == NDBCLUSTER_SYMBOL || ((LA109_0 >= NEW_SYMBOL) && (LA109_0 <= NONE_SYMBOL)) || ((LA109_0 >= NO_SYMBOL) && (LA109_0 <= NO_WAIT_SYMBOL)) || LA109_0 == NUMBER_SYMBOL || LA109_0 == NVARCHAR_SYMBOL || ((LA109_0 >= OFFSET_SYMBOL) && (LA109_0 <= ONE_SYMBOL)) || LA109_0 == OPEN_SYMBOL || LA109_0 == OPTIONS_SYMBOL || ((LA109_0 >= OWNER_SYMBOL) && (LA109_0 <= PAGE_SYMBOL)) || ((LA109_0 >= PARSER_SYMBOL) && (LA109_0 <= PARTITION_SYMBOL)) || ((LA109_0 >= PASSWORD_SYMBOL) && (LA109_0 <= PLUGIN_SYMBOL)) || ((LA109_0 >= POINT_SYMBOL) && (LA109_0 <= PORT_SYMBOL)) || ((LA109_0 >= PREPARE_SYMBOL) && (LA109_0 <= PREV_SYMBOL)) || LA109_0 == PRIVILEGES_SYMBOL || ((LA109_0 >= PROCESSLIST_SYMBOL) && (LA109_0 <= PROXY_SYMBOL)) || ((LA109_0 >= QUARTER_SYMBOL) && (LA109_0 <= QUICK_SYMBOL)) || LA109_0 == READ_ONLY_SYMBOL || ((LA109_0 >= REBUILD_SYMBOL) && (LA109_0 <= REDUNDANT_SYMBOL)) || ((LA109_0 >= RELAYLOG_SYMBOL) && (LA109_0 <= RELAY_THREAD_SYMBOL)) || ((LA109_0 >= RELOAD_SYMBOL) && (LA109_0 <= REMOVE_SYMBOL)) || ((LA109_0 >= REORGANIZE_SYMBOL) && (LA109_0 <= REPEATABLE_SYMBOL)) || LA109_0 == REPLICATION_SYMBOL || LA109_0 == RESET_SYMBOL || LA109_0 == RESTORE_SYMBOL || ((LA109_0 >= RESUME_SYMBOL) && (LA109_0 <= RETURNS_SYMBOL)) || LA109_0 == REVERSE_SYMBOL || ((LA109_0 >= ROLLBACK_SYMBOL) && (LA109_0 <= SCHEDULE_SYMBOL)) || LA109_0 == SCHEMA_NAME_SYMBOL || ((LA109_0 >= SECOND_SYMBOL) && (LA109_0 <= SECURITY_SYMBOL)) || ((LA109_0 >= SERIALIZABLE_SYMBOL) && (LA109_0 <= SERIAL_SYMBOL)) || ((LA109_0 >= SERVER_SYMBOL) && (LA109_0 <= SESSION_SYMBOL)) || LA109_0 == SHARE_SYMBOL || LA109_0 == SHUTDOWN_SYMBOL || ((LA109_0 >= SIGNED_SYMBOL) && (LA109_0 <= SIMPLE_SYMBOL)) || ((LA109_0 >= SLAVE_SYMBOL) && (LA109_0 <= SLOW_SYMBOL)) || ((LA109_0 >= SNAPSHOT_SYMBOL) && (LA109_0 <= SOURCE_SYMBOL)) || ((LA109_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA109_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA109_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA109_0 <= SQL_CACHE_SYMBOL)) || LA109_0 == SQL_NO_CACHE_SYMBOL || LA109_0 == SQL_THREAD_SYMBOL || ((LA109_0 >= STARTS_SYMBOL) && (LA109_0 <= STATUS_SYMBOL)) || ((LA109_0 >= STOP_SYMBOL) && (LA109_0 <= STORAGE_SYMBOL)) || ((LA109_0 >= STRING_SYMBOL) && (LA109_0 <= SUBPARTITION_SYMBOL)) || ((LA109_0 >= SUPER_SYMBOL) && (LA109_0 <= SWITCHES_SYMBOL)) || ((LA109_0 >= TABLESPACE_SYMBOL) && (LA109_0 <= TABLE_NAME_SYMBOL)) || ((LA109_0 >= TEMPORARY_SYMBOL) && (LA109_0 <= TEMPTABLE_SYMBOL)) || ((LA109_0 >= TEXT_SYMBOL) && (LA109_0 <= THAN_SYMBOL)) || ((LA109_0 >= TIMESTAMP_ADD_SYMBOL) && (LA109_0 <= TIME_SYMBOL)) || ((LA109_0 >= TRANSACTION_SYMBOL) && (LA109_0 <= TRIGGERS_SYMBOL)) || ((LA109_0 >= TRUNCATE_SYMBOL) && (LA109_0 <= UDF_RETURNS_SYMBOL)) || ((LA109_0 >= UNCOMMITTED_SYMBOL) && (LA109_0 <= UNDEFINED_SYMBOL)) || ((LA109_0 >= UNDOFILE_SYMBOL) && (LA109_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA109_0 >= UNICODE_SYMBOL) && (LA109_0 <= UNINSTALL_SYMBOL)) || LA109_0 == UNKNOWN_SYMBOL || LA109_0 == UNTIL_SYMBOL || LA109_0 == UPGRADE_SYMBOL || ((LA109_0 >= USER_RESOURCES_SYMBOL) && (LA109_0 <= USE_FRM_SYMBOL)) || LA109_0 == VALUE_SYMBOL || LA109_0 == VARIABLES_SYMBOL || ((LA109_0 >= VIEW_SYMBOL) && (LA109_0 <= WEIGHT_STRING_SYMBOL)) || ((LA109_0 >= WORK_SYMBOL) && (LA109_0 <= WRAPPER_SYMBOL)) || LA109_0 == X509_SYMBOL || ((LA109_0 >= XA_SYMBOL) && (LA109_0 <= XML_SYMBOL)) || LA109_0 == YEAR_SYMBOL))
        	                {
        	                    alt109=1;
        	                }
        	            }
        	            switch (alt109)
        	            {
        	        	case 1:
        	        	    // MySQL.g:456:57: procedure_parameter ( COMMA_SYMBOL procedure_parameter )*
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_procedure_parameter_in_create_routine_or_udf1796);
        	        	        procedure_parameter356=procedure_parameter(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_routine_or_udfEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, procedure_parameter356.tree);

        	        	        // MySQL.g:456:77: ( COMMA_SYMBOL procedure_parameter )*

        	        	        for (;;)
        	        	        {
        	        	            int alt108=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	            case COMMA_SYMBOL:
        	        	            	{
        	        	            		alt108=1;
        	        	            	}
        	        	                break;

        	        	            }

        	        	            switch (alt108)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:456:78: COMMA_SYMBOL procedure_parameter
        	        	        	    {
        	        	        	        COMMA_SYMBOL357 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_create_routine_or_udf1799);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulecreate_routine_or_udfEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        COMMA_SYMBOL357_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL357));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL357_tree);
        	        	        	        }

        	        	        	        FOLLOWPUSH(FOLLOW_procedure_parameter_in_create_routine_or_udf1801);
        	        	        	        procedure_parameter358=procedure_parameter(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulecreate_routine_or_udfEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, procedure_parameter358.tree);

        	        	        	    }
        	        	        	    break;

        	        	        	default:
        	        	        	    goto loop108;	/* break out of the loop */
        	        	        	    break;
        	        	            }
        	        	        }
        	        	        loop108: ; /* Jump out to here if this rule does not match */


        	        	    }
        	        	    break;

        	            }
        	        }

        	        CLOSE_PAR_SYMBOL359 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_create_routine_or_udf1807);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_routine_or_udfEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL359_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL359));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL359_tree);
        	        }

        	        // MySQL.g:457:3: ( routine_create_option )*

        	        for (;;)
        	        {
        	            int alt110=2;
        	            switch ( LA(1) )
        	            {
        	            case COMMENT_SYMBOL:
        	            case CONTAINS_SYMBOL:
        	            case DETERMINISTIC_SYMBOL:
        	            case LANGUAGE_SYMBOL:
        	            case MODIFIES_SYMBOL:
        	            case NOT_SYMBOL:
        	            case NO_SYMBOL:
        	            case READS_SYMBOL:
        	            case SQL_SYMBOL:
        	            	{
        	            		alt110=1;
        	            	}
        	                break;

        	            }

        	            switch (alt110)
        	            {
        	        	case 1:
        	        	    // MySQL.g:457:3: routine_create_option
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_routine_create_option_in_create_routine_or_udf1811);
        	        	        routine_create_option360=routine_create_option(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_routine_or_udfEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, routine_create_option360.tree);

        	        	    }
        	        	    break;

        	        	default:
        	        	    goto loop110;	/* break out of the loop */
        	        	    break;
        	            }
        	        }
        	        loop110: ; /* Jump out to here if this rule does not match */


        	        FOLLOWPUSH(FOLLOW_compound_statement_in_create_routine_or_udf1814);
        	        compound_statement361=compound_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_routine_or_udfEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, compound_statement361.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:458:4: FUNCTION_SYMBOL ( qualified_identifier OPEN_PAR_SYMBOL ( function_parameter ( COMMA_SYMBOL function_parameter )* )? CLOSE_PAR_SYMBOL RETURNS_SYMBOL data_type ( routine_create_option )* compound_statement | udf_tail )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FUNCTION_SYMBOL362 = (pANTLR3_COMMON_TOKEN) MATCHT(FUNCTION_SYMBOL, &FOLLOW_FUNCTION_SYMBOL_in_create_routine_or_udf1819);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_routine_or_udfEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FUNCTION_SYMBOL362_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FUNCTION_SYMBOL362));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FUNCTION_SYMBOL362_tree);
        	        }

        	        // MySQL.g:459:3: ( qualified_identifier OPEN_PAR_SYMBOL ( function_parameter ( COMMA_SYMBOL function_parameter )* )? CLOSE_PAR_SYMBOL RETURNS_SYMBOL data_type ( routine_create_option )* compound_statement | udf_tail )
        	        {
        	            int alt114=2;
        	            {
        	                int LA114_0 = LA(1);
        	                if ( (LA114_0 == IDENTIFIER))
        	                {
        	                    switch ( LA(2) )
        	                    {
        	                    case DOT_SYMBOL:
        	                    case OPEN_PAR_SYMBOL:
        	                    	{
        	                    		alt114=1;
        	                    	}
        	                        break;
        	                    case RETURNS_SYMBOL:
        	                    	{
        	                    		alt114=2;
        	                    	}
        	                        break;

        	                    default:
        	                        if (BACKTRACKING>0)
        	                        {
        	                            FAILEDFLAG = ANTLR3_TRUE;
        	                            return retval;
        	                        }

        	                        CONSTRUCTEX();
        	                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                        EXCEPTION->message      = (void *)"";
        	                        EXCEPTION->decisionNum  = 114;
        	                        EXCEPTION->state        = 1;


        	                        goto rulecreate_routine_or_udfEx;

        	                    }

        	                }
        	                else if ( (LA114_0 == BACK_TICK_QUOTED_ID))
        	                {
        	                    switch ( LA(2) )
        	                    {
        	                    case DOT_SYMBOL:
        	                    case OPEN_PAR_SYMBOL:
        	                    	{
        	                    		alt114=1;
        	                    	}
        	                        break;
        	                    case RETURNS_SYMBOL:
        	                    	{
        	                    		alt114=2;
        	                    	}
        	                        break;

        	                    default:
        	                        if (BACKTRACKING>0)
        	                        {
        	                            FAILEDFLAG = ANTLR3_TRUE;
        	                            return retval;
        	                        }

        	                        CONSTRUCTEX();
        	                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                        EXCEPTION->message      = (void *)"";
        	                        EXCEPTION->decisionNum  = 114;
        	                        EXCEPTION->state        = 2;


        	                        goto rulecreate_routine_or_udfEx;

        	                    }

        	                }
        	                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA114_0 == DOUBLE_QUOTED_TEXT))
        	                {
        	                    {
        	                        int LA114_3 = LA(2);
        	                        if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA114_3 == DOT_SYMBOL || LA114_3 == OPEN_PAR_SYMBOL))
        	                        {
        	                            alt114=1;
        	                        }
        	                        else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA114_3 == RETURNS_SYMBOL))
        	                        {
        	                            alt114=2;
        	                        }
        	                        else
        	                        {
        	                            if (BACKTRACKING>0)
        	                            {
        	                                FAILEDFLAG = ANTLR3_TRUE;
        	                                return retval;
        	                            }


        	                            CONSTRUCTEX();
        	                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                            EXCEPTION->message      = (void *)"";
        	                            EXCEPTION->decisionNum  = 114;
        	                            EXCEPTION->state        = 3;


        	                            goto rulecreate_routine_or_udfEx;

        	                        }
        	                    }
        	                }
        	                else if ( (((LA114_0 >= ACTION_SYMBOL) && (LA114_0 <= ADDDATE_SYMBOL)) || ((LA114_0 >= AFTER_SYMBOL) && (LA114_0 <= ALGORITHM_SYMBOL)) || LA114_0 == ANALYZE_SYMBOL || LA114_0 == ANY_SYMBOL || ((LA114_0 >= AT_SYMBOL) && (LA114_0 <= AVG_SYMBOL)) || LA114_0 == BINLOG_SYMBOL || LA114_0 == BIT_SYMBOL || ((LA114_0 >= BLOCK_SYMBOL) && (LA114_0 <= BOOL_SYMBOL)) || LA114_0 == BTREE_SYMBOL || LA114_0 == CASCADED_SYMBOL || ((LA114_0 >= CATALOG_NAME_SYMBOL) && (LA114_0 <= CHANGED_SYMBOL)) || ((LA114_0 >= CIPHER_SYMBOL) && (LA114_0 <= CLIENT_SYMBOL)) || ((LA114_0 >= COALESCE_SYMBOL) && (LA114_0 <= CODE_SYMBOL)) || LA114_0 == COLLATION_SYMBOL || ((LA114_0 >= COLUMNS_SYMBOL) && (LA114_0 <= COLUMN_NAME_SYMBOL)) || LA114_0 == COMMITTED_SYMBOL || ((LA114_0 >= COMPACT_SYMBOL) && (LA114_0 <= COMPRESSED_SYMBOL)) || LA114_0 == CONCURRENT_SYMBOL || ((LA114_0 >= CONNECTION_SYMBOL) && (LA114_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || LA114_0 == CONTEXT_SYMBOL || LA114_0 == CONTRIBUTORS_SYMBOL || LA114_0 == CPU_SYMBOL || LA114_0 == CUBE_SYMBOL || LA114_0 == CURRENT_SYMBOL || LA114_0 == CURSOR_NAME_SYMBOL || ((LA114_0 >= DATAFILE_SYMBOL) && (LA114_0 <= DATETIME_SYMBOL)) || LA114_0 == DATE_SYMBOL || LA114_0 == DAY_SYMBOL || LA114_0 == DEFAULT_AUTH_SYMBOL || LA114_0 == DEFINER_SYMBOL || LA114_0 == DELAY_KEY_WRITE_SYMBOL || LA114_0 == DES_KEY_FILE_SYMBOL || LA114_0 == DIAGNOSTICS_SYMBOL || ((LA114_0 >= DIRECTORY_SYMBOL) && (LA114_0 <= DISK_SYMBOL)) || ((LA114_0 >= DUMPFILE_SYMBOL) && (LA114_0 <= DYNAMIC_SYMBOL)) || LA114_0 == ENABLE_SYMBOL || LA114_0 == ENDS_SYMBOL || ((LA114_0 >= ENGINES_SYMBOL) && (LA114_0 <= ENUM_SYMBOL)) || ((LA114_0 >= ERRORS_SYMBOL) && (LA114_0 <= ERROR_SYMBOL)) || ((LA114_0 >= ESCAPE_SYMBOL) && (LA114_0 <= EVERY_SYMBOL)) || LA114_0 == EXPANSION_SYMBOL || LA114_0 == EXPORT_SYMBOL || ((LA114_0 >= EXTENDED_SYMBOL) && (LA114_0 <= EXTENT_SIZE_SYMBOL)) || ((LA114_0 >= FAST_SYMBOL) && (LA114_0 <= FAULTS_SYMBOL)) || ((LA114_0 >= FILE_SYMBOL) && (LA114_0 <= FIXED_SYMBOL)) || LA114_0 == FOUND_SYMBOL || LA114_0 == FULL_SYMBOL || ((LA114_0 >= FUNCTION_SYMBOL) && (LA114_0 <= GET_FORMAT_SYMBOL)) || ((LA114_0 >= GLOBAL_SYMBOL) && (LA114_0 <= GRANTS_SYMBOL)) || LA114_0 == HASH_SYMBOL || LA114_0 == HOSTS_SYMBOL || ((LA114_0 >= HOUR_SYMBOL) && (LA114_0 <= IDENTIFIED_SYMBOL)) || LA114_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA114_0 >= IMPORT_SYMBOL) && (LA114_0 <= INDEXES_SYMBOL)) || LA114_0 == INITIAL_SIZE_SYMBOL || LA114_0 == INNODB_SYMBOL || LA114_0 == INSERT_METHOD_SYMBOL || LA114_0 == INVOKER_SYMBOL || LA114_0 == IO_SYMBOL || ((LA114_0 >= IPC_SYMBOL) && (LA114_0 <= ISSUER_SYMBOL)) || LA114_0 == KEY_BLOCK_SIZE_SYMBOL || LA114_0 == LAST_SYMBOL || LA114_0 == LEAVES_SYMBOL || LA114_0 == LESS_SYMBOL || LA114_0 == LEVEL_SYMBOL || LA114_0 == LINESTRING_SYMBOL || LA114_0 == LIST_SYMBOL || LA114_0 == LOCAL_SYMBOL || LA114_0 == LOCKS_SYMBOL || LA114_0 == LOGFILE_SYMBOL || LA114_0 == LOGS_SYMBOL || LA114_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA114_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA114_0 <= MASTER_SSL_SYMBOL)) || ((LA114_0 >= MASTER_SYMBOL) && (LA114_0 <= MASTER_USER_SYMBOL)) || ((LA114_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA114_0 <= MAX_SIZE_SYMBOL)) || ((LA114_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA114_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA114_0 >= MEDIUM_SYMBOL) && (LA114_0 <= MICROSECOND_SYMBOL)) || LA114_0 == MIGRATE_SYMBOL || ((LA114_0 >= MINUTE_SYMBOL) && (LA114_0 <= MIN_ROWS_SYMBOL)) || LA114_0 == MODE_SYMBOL || LA114_0 == MODIFY_SYMBOL || ((LA114_0 >= MONTH_SYMBOL) && (LA114_0 <= MULTILINESTRING_SYMBOL)) || ((LA114_0 >= MULTIPOINT_SYMBOL) && (LA114_0 <= MULTIPOLYGON_SYMBOL)) || ((LA114_0 >= MUTEX_SYMBOL) && (LA114_0 <= NATIONAL_SYMBOL)) || LA114_0 == NCHAR_SYMBOL || LA114_0 == NDBCLUSTER_SYMBOL || ((LA114_0 >= NEW_SYMBOL) && (LA114_0 <= NONE_SYMBOL)) || LA114_0 == NO_WAIT_SYMBOL || LA114_0 == NUMBER_SYMBOL || LA114_0 == NVARCHAR_SYMBOL || ((LA114_0 >= OFFSET_SYMBOL) && (LA114_0 <= ONE_SYMBOL)) || ((LA114_0 >= PACK_KEYS_SYMBOL) && (LA114_0 <= PAGE_SYMBOL)) || ((LA114_0 >= PARTIAL_SYMBOL) && (LA114_0 <= PARTITIONS_SYMBOL)) || ((LA114_0 >= PASSWORD_SYMBOL) && (LA114_0 <= PLUGIN_SYMBOL)) || ((LA114_0 >= POINT_SYMBOL) && (LA114_0 <= POLYGON_SYMBOL)) || ((LA114_0 >= PRESERVE_SYMBOL) && (LA114_0 <= PREV_SYMBOL)) || LA114_0 == PRIVILEGES_SYMBOL || ((LA114_0 >= PROCESSLIST_SYMBOL) && (LA114_0 <= PROXY_SYMBOL)) || ((LA114_0 >= QUARTER_SYMBOL) && (LA114_0 <= QUICK_SYMBOL)) || LA114_0 == READ_ONLY_SYMBOL || ((LA114_0 >= REBUILD_SYMBOL) && (LA114_0 <= REDUNDANT_SYMBOL)) || ((LA114_0 >= RELAYLOG_SYMBOL) && (LA114_0 <= RELAY_THREAD_SYMBOL)) || LA114_0 == RELOAD_SYMBOL || LA114_0 == REORGANIZE_SYMBOL || LA114_0 == REPEATABLE_SYMBOL || LA114_0 == REPLICATION_SYMBOL || ((LA114_0 >= RESUME_SYMBOL) && (LA114_0 <= RETURNS_SYMBOL)) || LA114_0 == REVERSE_SYMBOL || ((LA114_0 >= ROLLUP_SYMBOL) && (LA114_0 <= RTREE_SYMBOL)) || LA114_0 == SCHEDULE_SYMBOL || LA114_0 == SCHEMA_NAME_SYMBOL || LA114_0 == SECOND_SYMBOL || ((LA114_0 >= SERIALIZABLE_SYMBOL) && (LA114_0 <= SERIAL_SYMBOL)) || LA114_0 == SESSION_SYMBOL || LA114_0 == SHARE_SYMBOL || LA114_0 == SHUTDOWN_SYMBOL || LA114_0 == SIMPLE_SYMBOL || LA114_0 == SLOW_SYMBOL || LA114_0 == SNAPSHOT_SYMBOL || ((LA114_0 >= SOUNDS_SYMBOL) && (LA114_0 <= SOURCE_SYMBOL)) || ((LA114_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA114_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA114_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA114_0 <= SQL_CACHE_SYMBOL)) || LA114_0 == SQL_NO_CACHE_SYMBOL || LA114_0 == SQL_THREAD_SYMBOL || LA114_0 == STARTS_SYMBOL || ((LA114_0 >= STATS_AUTO_RECALC_SYMBOL) && (LA114_0 <= STATUS_SYMBOL)) || LA114_0 == STORAGE_SYMBOL || ((LA114_0 >= STRING_SYMBOL) && (LA114_0 <= SUBPARTITION_SYMBOL)) || ((LA114_0 >= SUPER_SYMBOL) && (LA114_0 <= SWITCHES_SYMBOL)) || ((LA114_0 >= TABLESPACE_SYMBOL) && (LA114_0 <= TABLE_NAME_SYMBOL)) || ((LA114_0 >= TEMPORARY_SYMBOL) && (LA114_0 <= TEMPTABLE_SYMBOL)) || ((LA114_0 >= TEXT_SYMBOL) && (LA114_0 <= THAN_SYMBOL)) || ((LA114_0 >= TIMESTAMP_ADD_SYMBOL) && (LA114_0 <= TIME_SYMBOL)) || ((LA114_0 >= TRANSACTION_SYMBOL) && (LA114_0 <= TRIGGERS_SYMBOL)) || ((LA114_0 >= TYPES_SYMBOL) && (LA114_0 <= UDF_RETURNS_SYMBOL)) || ((LA114_0 >= UNCOMMITTED_SYMBOL) && (LA114_0 <= UNDEFINED_SYMBOL)) || ((LA114_0 >= UNDOFILE_SYMBOL) && (LA114_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || LA114_0 == UNKNOWN_SYMBOL || LA114_0 == UNTIL_SYMBOL || ((LA114_0 >= USER_RESOURCES_SYMBOL) && (LA114_0 <= USE_FRM_SYMBOL)) || LA114_0 == VALUE_SYMBOL || LA114_0 == VARIABLES_SYMBOL || ((LA114_0 >= VIEW_SYMBOL) && (LA114_0 <= WEIGHT_STRING_SYMBOL)) || LA114_0 == WORK_SYMBOL || LA114_0 == X509_SYMBOL || LA114_0 == XML_SYMBOL || LA114_0 == YEAR_SYMBOL))
        	                {
        	                    switch ( LA(2) )
        	                    {
        	                    case DOT_SYMBOL:
        	                    case OPEN_PAR_SYMBOL:
        	                    	{
        	                    		alt114=1;
        	                    	}
        	                        break;
        	                    case RETURNS_SYMBOL:
        	                    	{
        	                    		alt114=2;
        	                    	}
        	                        break;

        	                    default:
        	                        if (BACKTRACKING>0)
        	                        {
        	                            FAILEDFLAG = ANTLR3_TRUE;
        	                            return retval;
        	                        }

        	                        CONSTRUCTEX();
        	                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                        EXCEPTION->message      = (void *)"";
        	                        EXCEPTION->decisionNum  = 114;
        	                        EXCEPTION->state        = 4;


        	                        goto rulecreate_routine_or_udfEx;

        	                    }

        	                }
        	                else if ( (LA114_0 == ASCII_SYMBOL || LA114_0 == BACKUP_SYMBOL || LA114_0 == BEGIN_SYMBOL || LA114_0 == BYTE_SYMBOL || LA114_0 == CACHE_SYMBOL || LA114_0 == CHARSET_SYMBOL || LA114_0 == CHECKSUM_SYMBOL || LA114_0 == CLOSE_SYMBOL || LA114_0 == COMMENT_SYMBOL || LA114_0 == COMMIT_SYMBOL || LA114_0 == CONTAINS_SYMBOL || LA114_0 == DEALLOCATE_SYMBOL || LA114_0 == DO_SYMBOL || LA114_0 == END_SYMBOL || LA114_0 == EXECUTE_SYMBOL || LA114_0 == FLUSH_SYMBOL || LA114_0 == FORMAT_SYMBOL || LA114_0 == HANDLER_SYMBOL || LA114_0 == HELP_SYMBOL || LA114_0 == HOST_SYMBOL || LA114_0 == INSTALL_SYMBOL || LA114_0 == LANGUAGE_SYMBOL || LA114_0 == NO_SYMBOL || LA114_0 == OPEN_SYMBOL || LA114_0 == OPTIONS_SYMBOL || LA114_0 == OWNER_SYMBOL || LA114_0 == PARSER_SYMBOL || LA114_0 == PARTITION_SYMBOL || LA114_0 == PORT_SYMBOL || LA114_0 == PREPARE_SYMBOL || LA114_0 == REMOVE_SYMBOL || LA114_0 == REPAIR_SYMBOL || LA114_0 == RESET_SYMBOL || LA114_0 == RESTORE_SYMBOL || LA114_0 == ROLLBACK_SYMBOL || LA114_0 == SAVEPOINT_SYMBOL || LA114_0 == SECURITY_SYMBOL || LA114_0 == SERVER_SYMBOL || LA114_0 == SIGNED_SYMBOL || LA114_0 == SLAVE_SYMBOL || ((LA114_0 >= SOCKET_SYMBOL) && (LA114_0 <= SONAME_SYMBOL)) || LA114_0 == START_SYMBOL || LA114_0 == STOP_SYMBOL || LA114_0 == TRUNCATE_SYMBOL || ((LA114_0 >= UNICODE_SYMBOL) && (LA114_0 <= UNINSTALL_SYMBOL)) || LA114_0 == UPGRADE_SYMBOL || LA114_0 == WRAPPER_SYMBOL || LA114_0 == XA_SYMBOL))
        	                {
        	                    switch ( LA(2) )
        	                    {
        	                    case DOT_SYMBOL:
        	                    case OPEN_PAR_SYMBOL:
        	                    	{
        	                    		alt114=1;
        	                    	}
        	                        break;
        	                    case RETURNS_SYMBOL:
        	                    	{
        	                    		alt114=2;
        	                    	}
        	                        break;

        	                    default:
        	                        if (BACKTRACKING>0)
        	                        {
        	                            FAILEDFLAG = ANTLR3_TRUE;
        	                            return retval;
        	                        }

        	                        CONSTRUCTEX();
        	                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                        EXCEPTION->message      = (void *)"";
        	                        EXCEPTION->decisionNum  = 114;
        	                        EXCEPTION->state        = 5;


        	                        goto rulecreate_routine_or_udfEx;

        	                    }

        	                }
        	                else
        	                {
        	                    if (BACKTRACKING>0)
        	                    {
        	                        FAILEDFLAG = ANTLR3_TRUE;
        	                        return retval;
        	                    }


        	                    CONSTRUCTEX();
        	                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    EXCEPTION->message      = (void *)"";
        	                    EXCEPTION->decisionNum  = 114;
        	                    EXCEPTION->state        = 0;


        	                    goto rulecreate_routine_or_udfEx;

        	                }
        	            }
        	            switch (alt114)
        	            {
        	        	case 1:
        	        	    // MySQL.g:460:4: qualified_identifier OPEN_PAR_SYMBOL ( function_parameter ( COMMA_SYMBOL function_parameter )* )? CLOSE_PAR_SYMBOL RETURNS_SYMBOL data_type ( routine_create_option )* compound_statement
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_qualified_identifier_in_create_routine_or_udf1828);
        	        	        qualified_identifier363=qualified_identifier(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_routine_or_udfEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, qualified_identifier363.tree);

        	        	        OPEN_PAR_SYMBOL364 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_create_routine_or_udf1830);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_routine_or_udfEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        OPEN_PAR_SYMBOL364_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL364));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL364_tree);
        	        	        }

        	        	        // MySQL.g:460:41: ( function_parameter ( COMMA_SYMBOL function_parameter )* )?
        	        	        {
        	        	            int alt112=2;
        	        	            {
        	        	                int LA112_0 = LA(1);
        	        	                if ( (LA112_0 == BACK_TICK_QUOTED_ID || LA112_0 == IDENTIFIER))
        	        	                {
        	        	                    alt112=1;
        	        	                }
        	        	                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA112_0 == DOUBLE_QUOTED_TEXT))
        	        	                {
        	        	                    alt112=1;
        	        	                }
        	        	                else if ( (((LA112_0 >= ACTION_SYMBOL) && (LA112_0 <= ADDDATE_SYMBOL)) || ((LA112_0 >= AFTER_SYMBOL) && (LA112_0 <= ALGORITHM_SYMBOL)) || LA112_0 == ANALYZE_SYMBOL || ((LA112_0 >= ANY_SYMBOL) && (LA112_0 <= ASCII_SYMBOL)) || ((LA112_0 >= AT_SYMBOL) && (LA112_0 <= BACKUP_SYMBOL)) || LA112_0 == BEGIN_SYMBOL || LA112_0 == BINLOG_SYMBOL || LA112_0 == BIT_SYMBOL || ((LA112_0 >= BLOCK_SYMBOL) && (LA112_0 <= BOOL_SYMBOL)) || ((LA112_0 >= BTREE_SYMBOL) && (LA112_0 <= BYTE_SYMBOL)) || LA112_0 == CACHE_SYMBOL || LA112_0 == CASCADED_SYMBOL || ((LA112_0 >= CATALOG_NAME_SYMBOL) && (LA112_0 <= CHANGED_SYMBOL)) || LA112_0 == CHARSET_SYMBOL || LA112_0 == CHECKSUM_SYMBOL || ((LA112_0 >= CIPHER_SYMBOL) && (LA112_0 <= CLIENT_SYMBOL)) || ((LA112_0 >= CLOSE_SYMBOL) && (LA112_0 <= CODE_SYMBOL)) || LA112_0 == COLLATION_SYMBOL || ((LA112_0 >= COLUMNS_SYMBOL) && (LA112_0 <= COLUMN_NAME_SYMBOL)) || ((LA112_0 >= COMMENT_SYMBOL) && (LA112_0 <= COMPRESSED_SYMBOL)) || LA112_0 == CONCURRENT_SYMBOL || ((LA112_0 >= CONNECTION_SYMBOL) && (LA112_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA112_0 >= CONTAINS_SYMBOL) && (LA112_0 <= CONTEXT_SYMBOL)) || LA112_0 == CONTRIBUTORS_SYMBOL || LA112_0 == CPU_SYMBOL || LA112_0 == CUBE_SYMBOL || LA112_0 == CURRENT_SYMBOL || LA112_0 == CURSOR_NAME_SYMBOL || ((LA112_0 >= DATAFILE_SYMBOL) && (LA112_0 <= DATETIME_SYMBOL)) || LA112_0 == DATE_SYMBOL || ((LA112_0 >= DAY_SYMBOL) && (LA112_0 <= DEALLOCATE_SYMBOL)) || LA112_0 == DEFAULT_AUTH_SYMBOL || LA112_0 == DEFINER_SYMBOL || LA112_0 == DELAY_KEY_WRITE_SYMBOL || LA112_0 == DES_KEY_FILE_SYMBOL || LA112_0 == DIAGNOSTICS_SYMBOL || ((LA112_0 >= DIRECTORY_SYMBOL) && (LA112_0 <= DISK_SYMBOL)) || LA112_0 == DO_SYMBOL || ((LA112_0 >= DUMPFILE_SYMBOL) && (LA112_0 <= DYNAMIC_SYMBOL)) || LA112_0 == ENABLE_SYMBOL || LA112_0 == ENDS_SYMBOL || ((LA112_0 >= END_SYMBOL) && (LA112_0 <= ENUM_SYMBOL)) || ((LA112_0 >= ERRORS_SYMBOL) && (LA112_0 <= ERROR_SYMBOL)) || ((LA112_0 >= ESCAPE_SYMBOL) && (LA112_0 <= EVERY_SYMBOL)) || LA112_0 == EXECUTE_SYMBOL || LA112_0 == EXPANSION_SYMBOL || LA112_0 == EXPORT_SYMBOL || ((LA112_0 >= EXTENDED_SYMBOL) && (LA112_0 <= EXTENT_SIZE_SYMBOL)) || ((LA112_0 >= FAST_SYMBOL) && (LA112_0 <= FAULTS_SYMBOL)) || ((LA112_0 >= FILE_SYMBOL) && (LA112_0 <= FIXED_SYMBOL)) || LA112_0 == FLUSH_SYMBOL || LA112_0 == FORMAT_SYMBOL || LA112_0 == FOUND_SYMBOL || LA112_0 == FULL_SYMBOL || ((LA112_0 >= FUNCTION_SYMBOL) && (LA112_0 <= GET_FORMAT_SYMBOL)) || ((LA112_0 >= GLOBAL_SYMBOL) && (LA112_0 <= GRANTS_SYMBOL)) || ((LA112_0 >= HANDLER_SYMBOL) && (LA112_0 <= HASH_SYMBOL)) || LA112_0 == HELP_SYMBOL || ((LA112_0 >= HOSTS_SYMBOL) && (LA112_0 <= HOST_SYMBOL)) || ((LA112_0 >= HOUR_SYMBOL) && (LA112_0 <= IDENTIFIED_SYMBOL)) || LA112_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA112_0 >= IMPORT_SYMBOL) && (LA112_0 <= INDEXES_SYMBOL)) || LA112_0 == INITIAL_SIZE_SYMBOL || LA112_0 == INNODB_SYMBOL || LA112_0 == INSERT_METHOD_SYMBOL || LA112_0 == INSTALL_SYMBOL || LA112_0 == INVOKER_SYMBOL || LA112_0 == IO_SYMBOL || ((LA112_0 >= IPC_SYMBOL) && (LA112_0 <= ISSUER_SYMBOL)) || LA112_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA112_0 >= LANGUAGE_SYMBOL) && (LA112_0 <= LAST_SYMBOL)) || LA112_0 == LEAVES_SYMBOL || LA112_0 == LESS_SYMBOL || LA112_0 == LEVEL_SYMBOL || LA112_0 == LINESTRING_SYMBOL || LA112_0 == LIST_SYMBOL || LA112_0 == LOCAL_SYMBOL || LA112_0 == LOCKS_SYMBOL || LA112_0 == LOGFILE_SYMBOL || LA112_0 == LOGS_SYMBOL || LA112_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA112_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA112_0 <= MASTER_SSL_SYMBOL)) || ((LA112_0 >= MASTER_SYMBOL) && (LA112_0 <= MASTER_USER_SYMBOL)) || ((LA112_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA112_0 <= MAX_SIZE_SYMBOL)) || ((LA112_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA112_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA112_0 >= MEDIUM_SYMBOL) && (LA112_0 <= MICROSECOND_SYMBOL)) || LA112_0 == MIGRATE_SYMBOL || ((LA112_0 >= MINUTE_SYMBOL) && (LA112_0 <= MIN_ROWS_SYMBOL)) || LA112_0 == MODE_SYMBOL || LA112_0 == MODIFY_SYMBOL || ((LA112_0 >= MONTH_SYMBOL) && (LA112_0 <= MULTILINESTRING_SYMBOL)) || ((LA112_0 >= MULTIPOINT_SYMBOL) && (LA112_0 <= MULTIPOLYGON_SYMBOL)) || ((LA112_0 >= MUTEX_SYMBOL) && (LA112_0 <= NATIONAL_SYMBOL)) || LA112_0 == NCHAR_SYMBOL || LA112_0 == NDBCLUSTER_SYMBOL || ((LA112_0 >= NEW_SYMBOL) && (LA112_0 <= NONE_SYMBOL)) || ((LA112_0 >= NO_SYMBOL) && (LA112_0 <= NO_WAIT_SYMBOL)) || LA112_0 == NUMBER_SYMBOL || LA112_0 == NVARCHAR_SYMBOL || ((LA112_0 >= OFFSET_SYMBOL) && (LA112_0 <= ONE_SYMBOL)) || LA112_0 == OPEN_SYMBOL || LA112_0 == OPTIONS_SYMBOL || ((LA112_0 >= OWNER_SYMBOL) && (LA112_0 <= PAGE_SYMBOL)) || ((LA112_0 >= PARSER_SYMBOL) && (LA112_0 <= PARTITION_SYMBOL)) || ((LA112_0 >= PASSWORD_SYMBOL) && (LA112_0 <= PLUGIN_SYMBOL)) || ((LA112_0 >= POINT_SYMBOL) && (LA112_0 <= PORT_SYMBOL)) || ((LA112_0 >= PREPARE_SYMBOL) && (LA112_0 <= PREV_SYMBOL)) || LA112_0 == PRIVILEGES_SYMBOL || ((LA112_0 >= PROCESSLIST_SYMBOL) && (LA112_0 <= PROXY_SYMBOL)) || ((LA112_0 >= QUARTER_SYMBOL) && (LA112_0 <= QUICK_SYMBOL)) || LA112_0 == READ_ONLY_SYMBOL || ((LA112_0 >= REBUILD_SYMBOL) && (LA112_0 <= REDUNDANT_SYMBOL)) || ((LA112_0 >= RELAYLOG_SYMBOL) && (LA112_0 <= RELAY_THREAD_SYMBOL)) || ((LA112_0 >= RELOAD_SYMBOL) && (LA112_0 <= REMOVE_SYMBOL)) || ((LA112_0 >= REORGANIZE_SYMBOL) && (LA112_0 <= REPEATABLE_SYMBOL)) || LA112_0 == REPLICATION_SYMBOL || LA112_0 == RESET_SYMBOL || LA112_0 == RESTORE_SYMBOL || ((LA112_0 >= RESUME_SYMBOL) && (LA112_0 <= RETURNS_SYMBOL)) || LA112_0 == REVERSE_SYMBOL || ((LA112_0 >= ROLLBACK_SYMBOL) && (LA112_0 <= SCHEDULE_SYMBOL)) || LA112_0 == SCHEMA_NAME_SYMBOL || ((LA112_0 >= SECOND_SYMBOL) && (LA112_0 <= SECURITY_SYMBOL)) || ((LA112_0 >= SERIALIZABLE_SYMBOL) && (LA112_0 <= SERIAL_SYMBOL)) || ((LA112_0 >= SERVER_SYMBOL) && (LA112_0 <= SESSION_SYMBOL)) || LA112_0 == SHARE_SYMBOL || LA112_0 == SHUTDOWN_SYMBOL || ((LA112_0 >= SIGNED_SYMBOL) && (LA112_0 <= SIMPLE_SYMBOL)) || ((LA112_0 >= SLAVE_SYMBOL) && (LA112_0 <= SLOW_SYMBOL)) || ((LA112_0 >= SNAPSHOT_SYMBOL) && (LA112_0 <= SOURCE_SYMBOL)) || ((LA112_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA112_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA112_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA112_0 <= SQL_CACHE_SYMBOL)) || LA112_0 == SQL_NO_CACHE_SYMBOL || LA112_0 == SQL_THREAD_SYMBOL || ((LA112_0 >= STARTS_SYMBOL) && (LA112_0 <= STATUS_SYMBOL)) || ((LA112_0 >= STOP_SYMBOL) && (LA112_0 <= STORAGE_SYMBOL)) || ((LA112_0 >= STRING_SYMBOL) && (LA112_0 <= SUBPARTITION_SYMBOL)) || ((LA112_0 >= SUPER_SYMBOL) && (LA112_0 <= SWITCHES_SYMBOL)) || ((LA112_0 >= TABLESPACE_SYMBOL) && (LA112_0 <= TABLE_NAME_SYMBOL)) || ((LA112_0 >= TEMPORARY_SYMBOL) && (LA112_0 <= TEMPTABLE_SYMBOL)) || ((LA112_0 >= TEXT_SYMBOL) && (LA112_0 <= THAN_SYMBOL)) || ((LA112_0 >= TIMESTAMP_ADD_SYMBOL) && (LA112_0 <= TIME_SYMBOL)) || ((LA112_0 >= TRANSACTION_SYMBOL) && (LA112_0 <= TRIGGERS_SYMBOL)) || ((LA112_0 >= TRUNCATE_SYMBOL) && (LA112_0 <= UDF_RETURNS_SYMBOL)) || ((LA112_0 >= UNCOMMITTED_SYMBOL) && (LA112_0 <= UNDEFINED_SYMBOL)) || ((LA112_0 >= UNDOFILE_SYMBOL) && (LA112_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA112_0 >= UNICODE_SYMBOL) && (LA112_0 <= UNINSTALL_SYMBOL)) || LA112_0 == UNKNOWN_SYMBOL || LA112_0 == UNTIL_SYMBOL || LA112_0 == UPGRADE_SYMBOL || ((LA112_0 >= USER_RESOURCES_SYMBOL) && (LA112_0 <= USE_FRM_SYMBOL)) || LA112_0 == VALUE_SYMBOL || LA112_0 == VARIABLES_SYMBOL || ((LA112_0 >= VIEW_SYMBOL) && (LA112_0 <= WEIGHT_STRING_SYMBOL)) || ((LA112_0 >= WORK_SYMBOL) && (LA112_0 <= WRAPPER_SYMBOL)) || LA112_0 == X509_SYMBOL || ((LA112_0 >= XA_SYMBOL) && (LA112_0 <= XML_SYMBOL)) || LA112_0 == YEAR_SYMBOL))
        	        	                {
        	        	                    alt112=1;
        	        	                }
        	        	            }
        	        	            switch (alt112)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:460:42: function_parameter ( COMMA_SYMBOL function_parameter )*
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_function_parameter_in_create_routine_or_udf1833);
        	        	        	        function_parameter365=function_parameter(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulecreate_routine_or_udfEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, function_parameter365.tree);

        	        	        	        // MySQL.g:460:61: ( COMMA_SYMBOL function_parameter )*

        	        	        	        for (;;)
        	        	        	        {
        	        	        	            int alt111=2;
        	        	        	            switch ( LA(1) )
        	        	        	            {
        	        	        	            case COMMA_SYMBOL:
        	        	        	            	{
        	        	        	            		alt111=1;
        	        	        	            	}
        	        	        	                break;

        	        	        	            }

        	        	        	            switch (alt111)
        	        	        	            {
        	        	        	        	case 1:
        	        	        	        	    // MySQL.g:460:62: COMMA_SYMBOL function_parameter
        	        	        	        	    {
        	        	        	        	        COMMA_SYMBOL366 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_create_routine_or_udf1836);
        	        	        	        	        if  (HASEXCEPTION())
        	        	        	        	        {
        	        	        	        	            goto rulecreate_routine_or_udfEx;
        	        	        	        	        }
        	        	        	        	        if (HASFAILED())
        	        	        	        	        {
        	        	        	        	            return retval;
        	        	        	        	        }

        	        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        	        COMMA_SYMBOL366_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL366));
        	        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL366_tree);
        	        	        	        	        }

        	        	        	        	        FOLLOWPUSH(FOLLOW_function_parameter_in_create_routine_or_udf1838);
        	        	        	        	        function_parameter367=function_parameter(ctx);

        	        	        	        	        FOLLOWPOP();
        	        	        	        	        if  (HASEXCEPTION())
        	        	        	        	        {
        	        	        	        	            goto rulecreate_routine_or_udfEx;
        	        	        	        	        }
        	        	        	        	        if (HASFAILED())
        	        	        	        	        {
        	        	        	        	            return retval;
        	        	        	        	        }

        	        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, function_parameter367.tree);

        	        	        	        	    }
        	        	        	        	    break;

        	        	        	        	default:
        	        	        	        	    goto loop111;	/* break out of the loop */
        	        	        	        	    break;
        	        	        	            }
        	        	        	        }
        	        	        	        loop111: ; /* Jump out to here if this rule does not match */


        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        CLOSE_PAR_SYMBOL368 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_create_routine_or_udf1844);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_routine_or_udfEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        CLOSE_PAR_SYMBOL368_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL368));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL368_tree);
        	        	        }

        	        	        RETURNS_SYMBOL369 = (pANTLR3_COMMON_TOKEN) MATCHT(RETURNS_SYMBOL, &FOLLOW_RETURNS_SYMBOL_in_create_routine_or_udf1846);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_routine_or_udfEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        RETURNS_SYMBOL369_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RETURNS_SYMBOL369));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, RETURNS_SYMBOL369_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_data_type_in_create_routine_or_udf1852);
        	        	        data_type370=data_type(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_routine_or_udfEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, data_type370.tree);

        	        	        // MySQL.g:461:15: ( routine_create_option )*

        	        	        for (;;)
        	        	        {
        	        	            int alt113=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	            case COMMENT_SYMBOL:
        	        	            case CONTAINS_SYMBOL:
        	        	            case DETERMINISTIC_SYMBOL:
        	        	            case LANGUAGE_SYMBOL:
        	        	            case MODIFIES_SYMBOL:
        	        	            case NOT_SYMBOL:
        	        	            case NO_SYMBOL:
        	        	            case READS_SYMBOL:
        	        	            case SQL_SYMBOL:
        	        	            	{
        	        	            		alt113=1;
        	        	            	}
        	        	                break;

        	        	            }

        	        	            switch (alt113)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:461:15: routine_create_option
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_routine_create_option_in_create_routine_or_udf1854);
        	        	        	        routine_create_option371=routine_create_option(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulecreate_routine_or_udfEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, routine_create_option371.tree);

        	        	        	    }
        	        	        	    break;

        	        	        	default:
        	        	        	    goto loop113;	/* break out of the loop */
        	        	        	    break;
        	        	            }
        	        	        }
        	        	        loop113: ; /* Jump out to here if this rule does not match */


        	        	        FOLLOWPUSH(FOLLOW_compound_statement_in_create_routine_or_udf1857);
        	        	        compound_statement372=compound_statement(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_routine_or_udfEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, compound_statement372.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:462:6: udf_tail
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_udf_tail_in_create_routine_or_udf1864);
        	        	        udf_tail373=udf_tail(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_routine_or_udfEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, udf_tail373.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:464:4: AGGREGATE_SYMBOL FUNCTION_SYMBOL udf_tail
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        AGGREGATE_SYMBOL374 = (pANTLR3_COMMON_TOKEN) MATCHT(AGGREGATE_SYMBOL, &FOLLOW_AGGREGATE_SYMBOL_in_create_routine_or_udf1873);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_routine_or_udfEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        AGGREGATE_SYMBOL374_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AGGREGATE_SYMBOL374));
        	        ADAPTOR->addChild(ADAPTOR, root_0, AGGREGATE_SYMBOL374_tree);
        	        }

        	        FUNCTION_SYMBOL375 = (pANTLR3_COMMON_TOKEN) MATCHT(FUNCTION_SYMBOL, &FOLLOW_FUNCTION_SYMBOL_in_create_routine_or_udf1875);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_routine_or_udfEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FUNCTION_SYMBOL375_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FUNCTION_SYMBOL375));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FUNCTION_SYMBOL375_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_udf_tail_in_create_routine_or_udf1877);
        	        udf_tail376=udf_tail(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_routine_or_udfEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, udf_tail376.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulecreate_routine_or_udfEx; /* Prevent compiler warnings */
    rulecreate_routine_or_udfEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end create_routine_or_udf */

/**
 * $ANTLR start udf_tail
 * MySQL.g:467:1: udf_tail : identifier RETURNS_SYMBOL ( STRING_SYMBOL | INTEGER_SYMBOL | REAL_SYMBOL | DECIMAL_SYMBOL ) SONAME_SYMBOL string_literal ;
 */
static MySQLParser_udf_tail_return
udf_tail(pMySQLParser ctx)
{
    MySQLParser_udf_tail_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    RETURNS_SYMBOL378;
    pANTLR3_COMMON_TOKEN    set379;
    pANTLR3_COMMON_TOKEN    SONAME_SYMBOL380;
    MySQLParser_identifier_return identifier377;
    #undef	RETURN_TYPE_identifier377
    #define	RETURN_TYPE_identifier377 MySQLParser_identifier_return

    MySQLParser_string_literal_return string_literal381;
    #undef	RETURN_TYPE_string_literal381
    #define	RETURN_TYPE_string_literal381 MySQLParser_string_literal_return

    pANTLR3_BASE_TREE RETURNS_SYMBOL378_tree;
    pANTLR3_BASE_TREE set379_tree;
    pANTLR3_BASE_TREE SONAME_SYMBOL380_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    RETURNS_SYMBOL378       = NULL;
    set379       = NULL;
    SONAME_SYMBOL380       = NULL;
    identifier377.tree = NULL;

    string_literal381.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    RETURNS_SYMBOL378_tree   = NULL;
    set379_tree   = NULL;
    SONAME_SYMBOL380_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:467:9: ( identifier RETURNS_SYMBOL ( STRING_SYMBOL | INTEGER_SYMBOL | REAL_SYMBOL | DECIMAL_SYMBOL ) SONAME_SYMBOL string_literal )
        // MySQL.g:468:2: identifier RETURNS_SYMBOL ( STRING_SYMBOL | INTEGER_SYMBOL | REAL_SYMBOL | DECIMAL_SYMBOL ) SONAME_SYMBOL string_literal
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_identifier_in_udf_tail1886);
            identifier377=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleudf_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier377.tree);

            RETURNS_SYMBOL378 = (pANTLR3_COMMON_TOKEN) MATCHT(RETURNS_SYMBOL, &FOLLOW_RETURNS_SYMBOL_in_udf_tail1888);
            if  (HASEXCEPTION())
            {
                goto ruleudf_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            RETURNS_SYMBOL378_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RETURNS_SYMBOL378));
            ADAPTOR->addChild(ADAPTOR, root_0, RETURNS_SYMBOL378_tree);
            }

            set379=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == DECIMAL_SYMBOL || LA(1) == INTEGER_SYMBOL || LA(1) == REAL_SYMBOL || LA(1) == STRING_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set379))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto ruleudf_tailEx;
            }


            SONAME_SYMBOL380 = (pANTLR3_COMMON_TOKEN) MATCHT(SONAME_SYMBOL, &FOLLOW_SONAME_SYMBOL_in_udf_tail1906);
            if  (HASEXCEPTION())
            {
                goto ruleudf_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SONAME_SYMBOL380_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SONAME_SYMBOL380));
            ADAPTOR->addChild(ADAPTOR, root_0, SONAME_SYMBOL380_tree);
            }

            FOLLOWPUSH(FOLLOW_string_literal_in_udf_tail1908);
            string_literal381=string_literal(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleudf_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal381.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleudf_tailEx; /* Prevent compiler warnings */
    ruleudf_tailEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end udf_tail */

/**
 * $ANTLR start routine_create_option
 * MySQL.g:471:1: routine_create_option : ( routine_option | ( NOT_SYMBOL )? DETERMINISTIC_SYMBOL );
 */
static MySQLParser_routine_create_option_return
routine_create_option(pMySQLParser ctx)
{
    MySQLParser_routine_create_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    NOT_SYMBOL383;
    pANTLR3_COMMON_TOKEN    DETERMINISTIC_SYMBOL384;
    MySQLParser_routine_option_return routine_option382;
    #undef	RETURN_TYPE_routine_option382
    #define	RETURN_TYPE_routine_option382 MySQLParser_routine_option_return

    pANTLR3_BASE_TREE NOT_SYMBOL383_tree;
    pANTLR3_BASE_TREE DETERMINISTIC_SYMBOL384_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    NOT_SYMBOL383       = NULL;
    DETERMINISTIC_SYMBOL384       = NULL;
    routine_option382.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    NOT_SYMBOL383_tree   = NULL;
    DETERMINISTIC_SYMBOL384_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:471:22: ( routine_option | ( NOT_SYMBOL )? DETERMINISTIC_SYMBOL )

            ANTLR3_UINT32 alt117;

            alt117=2;

            switch ( LA(1) )
            {
            case COMMENT_SYMBOL:
            case CONTAINS_SYMBOL:
            case LANGUAGE_SYMBOL:
            case MODIFIES_SYMBOL:
            case NO_SYMBOL:
            case READS_SYMBOL:
            case SQL_SYMBOL:
            	{
            		alt117=1;
            	}
                break;
            case DETERMINISTIC_SYMBOL:
            case NOT_SYMBOL:
            	{
            		alt117=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 117;
                EXCEPTION->state        = 0;


                goto ruleroutine_create_optionEx;

            }

            switch (alt117)
            {
        	case 1:
        	    // MySQL.g:472:2: routine_option
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_routine_option_in_routine_create_option1917);
        	        routine_option382=routine_option(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_create_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, routine_option382.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:473:4: ( NOT_SYMBOL )? DETERMINISTIC_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:473:4: ( NOT_SYMBOL )?
        	        {
        	            int alt116=2;
        	            switch ( LA(1) )
        	            {
        	                case NOT_SYMBOL:
        	                	{
        	                		alt116=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt116)
        	            {
        	        	case 1:
        	        	    // MySQL.g:473:4: NOT_SYMBOL
        	        	    {
        	        	        NOT_SYMBOL383 = (pANTLR3_COMMON_TOKEN) MATCHT(NOT_SYMBOL, &FOLLOW_NOT_SYMBOL_in_routine_create_option1922);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleroutine_create_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        NOT_SYMBOL383_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NOT_SYMBOL383));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, NOT_SYMBOL383_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        DETERMINISTIC_SYMBOL384 = (pANTLR3_COMMON_TOKEN) MATCHT(DETERMINISTIC_SYMBOL, &FOLLOW_DETERMINISTIC_SYMBOL_in_routine_create_option1925);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_create_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DETERMINISTIC_SYMBOL384_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DETERMINISTIC_SYMBOL384));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DETERMINISTIC_SYMBOL384_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleroutine_create_optionEx; /* Prevent compiler warnings */
    ruleroutine_create_optionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end routine_create_option */

/**
 * $ANTLR start routine_option
 * MySQL.g:476:1: routine_option : ( COMMENT_SYMBOL string_literal | LANGUAGE_SYMBOL SQL_SYMBOL | NO_SYMBOL SQL_SYMBOL | CONTAINS_SYMBOL SQL_SYMBOL | READS_SYMBOL SQL_SYMBOL DATA_SYMBOL | MODIFIES_SYMBOL SQL_SYMBOL DATA_SYMBOL | SQL_SYMBOL SECURITY_SYMBOL ( DEFINER_SYMBOL | INVOKER_SYMBOL ) );
 */
static MySQLParser_routine_option_return
routine_option(pMySQLParser ctx)
{
    MySQLParser_routine_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COMMENT_SYMBOL385;
    pANTLR3_COMMON_TOKEN    LANGUAGE_SYMBOL387;
    pANTLR3_COMMON_TOKEN    SQL_SYMBOL388;
    pANTLR3_COMMON_TOKEN    NO_SYMBOL389;
    pANTLR3_COMMON_TOKEN    SQL_SYMBOL390;
    pANTLR3_COMMON_TOKEN    CONTAINS_SYMBOL391;
    pANTLR3_COMMON_TOKEN    SQL_SYMBOL392;
    pANTLR3_COMMON_TOKEN    READS_SYMBOL393;
    pANTLR3_COMMON_TOKEN    SQL_SYMBOL394;
    pANTLR3_COMMON_TOKEN    DATA_SYMBOL395;
    pANTLR3_COMMON_TOKEN    MODIFIES_SYMBOL396;
    pANTLR3_COMMON_TOKEN    SQL_SYMBOL397;
    pANTLR3_COMMON_TOKEN    DATA_SYMBOL398;
    pANTLR3_COMMON_TOKEN    SQL_SYMBOL399;
    pANTLR3_COMMON_TOKEN    SECURITY_SYMBOL400;
    pANTLR3_COMMON_TOKEN    set401;
    MySQLParser_string_literal_return string_literal386;
    #undef	RETURN_TYPE_string_literal386
    #define	RETURN_TYPE_string_literal386 MySQLParser_string_literal_return

    pANTLR3_BASE_TREE COMMENT_SYMBOL385_tree;
    pANTLR3_BASE_TREE LANGUAGE_SYMBOL387_tree;
    pANTLR3_BASE_TREE SQL_SYMBOL388_tree;
    pANTLR3_BASE_TREE NO_SYMBOL389_tree;
    pANTLR3_BASE_TREE SQL_SYMBOL390_tree;
    pANTLR3_BASE_TREE CONTAINS_SYMBOL391_tree;
    pANTLR3_BASE_TREE SQL_SYMBOL392_tree;
    pANTLR3_BASE_TREE READS_SYMBOL393_tree;
    pANTLR3_BASE_TREE SQL_SYMBOL394_tree;
    pANTLR3_BASE_TREE DATA_SYMBOL395_tree;
    pANTLR3_BASE_TREE MODIFIES_SYMBOL396_tree;
    pANTLR3_BASE_TREE SQL_SYMBOL397_tree;
    pANTLR3_BASE_TREE DATA_SYMBOL398_tree;
    pANTLR3_BASE_TREE SQL_SYMBOL399_tree;
    pANTLR3_BASE_TREE SECURITY_SYMBOL400_tree;
    pANTLR3_BASE_TREE set401_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMENT_SYMBOL385       = NULL;
    LANGUAGE_SYMBOL387       = NULL;
    SQL_SYMBOL388       = NULL;
    NO_SYMBOL389       = NULL;
    SQL_SYMBOL390       = NULL;
    CONTAINS_SYMBOL391       = NULL;
    SQL_SYMBOL392       = NULL;
    READS_SYMBOL393       = NULL;
    SQL_SYMBOL394       = NULL;
    DATA_SYMBOL395       = NULL;
    MODIFIES_SYMBOL396       = NULL;
    SQL_SYMBOL397       = NULL;
    DATA_SYMBOL398       = NULL;
    SQL_SYMBOL399       = NULL;
    SECURITY_SYMBOL400       = NULL;
    set401       = NULL;
    string_literal386.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMENT_SYMBOL385_tree   = NULL;
    LANGUAGE_SYMBOL387_tree   = NULL;
    SQL_SYMBOL388_tree   = NULL;
    NO_SYMBOL389_tree   = NULL;
    SQL_SYMBOL390_tree   = NULL;
    CONTAINS_SYMBOL391_tree   = NULL;
    SQL_SYMBOL392_tree   = NULL;
    READS_SYMBOL393_tree   = NULL;
    SQL_SYMBOL394_tree   = NULL;
    DATA_SYMBOL395_tree   = NULL;
    MODIFIES_SYMBOL396_tree   = NULL;
    SQL_SYMBOL397_tree   = NULL;
    DATA_SYMBOL398_tree   = NULL;
    SQL_SYMBOL399_tree   = NULL;
    SECURITY_SYMBOL400_tree   = NULL;
    set401_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:476:15: ( COMMENT_SYMBOL string_literal | LANGUAGE_SYMBOL SQL_SYMBOL | NO_SYMBOL SQL_SYMBOL | CONTAINS_SYMBOL SQL_SYMBOL | READS_SYMBOL SQL_SYMBOL DATA_SYMBOL | MODIFIES_SYMBOL SQL_SYMBOL DATA_SYMBOL | SQL_SYMBOL SECURITY_SYMBOL ( DEFINER_SYMBOL | INVOKER_SYMBOL ) )

            ANTLR3_UINT32 alt118;

            alt118=7;

            switch ( LA(1) )
            {
            case COMMENT_SYMBOL:
            	{
            		alt118=1;
            	}
                break;
            case LANGUAGE_SYMBOL:
            	{
            		alt118=2;
            	}
                break;
            case NO_SYMBOL:
            	{
            		alt118=3;
            	}
                break;
            case CONTAINS_SYMBOL:
            	{
            		alt118=4;
            	}
                break;
            case READS_SYMBOL:
            	{
            		alt118=5;
            	}
                break;
            case MODIFIES_SYMBOL:
            	{
            		alt118=6;
            	}
                break;
            case SQL_SYMBOL:
            	{
            		alt118=7;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 118;
                EXCEPTION->state        = 0;


                goto ruleroutine_optionEx;

            }

            switch (alt118)
            {
        	case 1:
        	    // MySQL.g:477:2: COMMENT_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        COMMENT_SYMBOL385 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMENT_SYMBOL, &FOLLOW_COMMENT_SYMBOL_in_routine_option1934);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMENT_SYMBOL385_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMENT_SYMBOL385));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMENT_SYMBOL385_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_routine_option1936);
        	        string_literal386=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal386.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:478:4: LANGUAGE_SYMBOL SQL_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        LANGUAGE_SYMBOL387 = (pANTLR3_COMMON_TOKEN) MATCHT(LANGUAGE_SYMBOL, &FOLLOW_LANGUAGE_SYMBOL_in_routine_option1941);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LANGUAGE_SYMBOL387_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LANGUAGE_SYMBOL387));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LANGUAGE_SYMBOL387_tree);
        	        }

        	        SQL_SYMBOL388 = (pANTLR3_COMMON_TOKEN) MATCHT(SQL_SYMBOL, &FOLLOW_SQL_SYMBOL_in_routine_option1943);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SQL_SYMBOL388_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SQL_SYMBOL388));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SQL_SYMBOL388_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:479:4: NO_SYMBOL SQL_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NO_SYMBOL389 = (pANTLR3_COMMON_TOKEN) MATCHT(NO_SYMBOL, &FOLLOW_NO_SYMBOL_in_routine_option1948);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NO_SYMBOL389_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NO_SYMBOL389));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NO_SYMBOL389_tree);
        	        }

        	        SQL_SYMBOL390 = (pANTLR3_COMMON_TOKEN) MATCHT(SQL_SYMBOL, &FOLLOW_SQL_SYMBOL_in_routine_option1950);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SQL_SYMBOL390_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SQL_SYMBOL390));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SQL_SYMBOL390_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:480:4: CONTAINS_SYMBOL SQL_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CONTAINS_SYMBOL391 = (pANTLR3_COMMON_TOKEN) MATCHT(CONTAINS_SYMBOL, &FOLLOW_CONTAINS_SYMBOL_in_routine_option1955);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CONTAINS_SYMBOL391_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CONTAINS_SYMBOL391));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CONTAINS_SYMBOL391_tree);
        	        }

        	        SQL_SYMBOL392 = (pANTLR3_COMMON_TOKEN) MATCHT(SQL_SYMBOL, &FOLLOW_SQL_SYMBOL_in_routine_option1957);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SQL_SYMBOL392_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SQL_SYMBOL392));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SQL_SYMBOL392_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:481:4: READS_SYMBOL SQL_SYMBOL DATA_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        READS_SYMBOL393 = (pANTLR3_COMMON_TOKEN) MATCHT(READS_SYMBOL, &FOLLOW_READS_SYMBOL_in_routine_option1962);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        READS_SYMBOL393_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, READS_SYMBOL393));
        	        ADAPTOR->addChild(ADAPTOR, root_0, READS_SYMBOL393_tree);
        	        }

        	        SQL_SYMBOL394 = (pANTLR3_COMMON_TOKEN) MATCHT(SQL_SYMBOL, &FOLLOW_SQL_SYMBOL_in_routine_option1964);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SQL_SYMBOL394_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SQL_SYMBOL394));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SQL_SYMBOL394_tree);
        	        }

        	        DATA_SYMBOL395 = (pANTLR3_COMMON_TOKEN) MATCHT(DATA_SYMBOL, &FOLLOW_DATA_SYMBOL_in_routine_option1966);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DATA_SYMBOL395_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATA_SYMBOL395));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DATA_SYMBOL395_tree);
        	        }

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:482:4: MODIFIES_SYMBOL SQL_SYMBOL DATA_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MODIFIES_SYMBOL396 = (pANTLR3_COMMON_TOKEN) MATCHT(MODIFIES_SYMBOL, &FOLLOW_MODIFIES_SYMBOL_in_routine_option1971);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MODIFIES_SYMBOL396_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MODIFIES_SYMBOL396));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MODIFIES_SYMBOL396_tree);
        	        }

        	        SQL_SYMBOL397 = (pANTLR3_COMMON_TOKEN) MATCHT(SQL_SYMBOL, &FOLLOW_SQL_SYMBOL_in_routine_option1973);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SQL_SYMBOL397_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SQL_SYMBOL397));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SQL_SYMBOL397_tree);
        	        }

        	        DATA_SYMBOL398 = (pANTLR3_COMMON_TOKEN) MATCHT(DATA_SYMBOL, &FOLLOW_DATA_SYMBOL_in_routine_option1975);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DATA_SYMBOL398_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATA_SYMBOL398));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DATA_SYMBOL398_tree);
        	        }

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:483:4: SQL_SYMBOL SECURITY_SYMBOL ( DEFINER_SYMBOL | INVOKER_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SQL_SYMBOL399 = (pANTLR3_COMMON_TOKEN) MATCHT(SQL_SYMBOL, &FOLLOW_SQL_SYMBOL_in_routine_option1980);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SQL_SYMBOL399_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SQL_SYMBOL399));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SQL_SYMBOL399_tree);
        	        }

        	        SECURITY_SYMBOL400 = (pANTLR3_COMMON_TOKEN) MATCHT(SECURITY_SYMBOL, &FOLLOW_SECURITY_SYMBOL_in_routine_option1982);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SECURITY_SYMBOL400_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SECURITY_SYMBOL400));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SECURITY_SYMBOL400_tree);
        	        }

        	        set401=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == DEFINER_SYMBOL || LA(1) == INVOKER_SYMBOL )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set401))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	            CONSTRUCTEX();
        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
        	            EXCEPTION->expectingSet = NULL;

        	            goto ruleroutine_optionEx;
        	        }


        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleroutine_optionEx; /* Prevent compiler warnings */
    ruleroutine_optionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end routine_option */

/**
 * $ANTLR start create_index
 * MySQL.g:486:1: create_index : ( online_option )? ( UNIQUE_SYMBOL | FULLTEXT_SYMBOL | SPATIAL_SYMBOL )? INDEX_SYMBOL identifier ( index_type )? ON_SYMBOL table_identifier index_columns ( index_option )* ( index_lock_algorithm )? ;
 */
static MySQLParser_create_index_return
create_index(pMySQLParser ctx)
{
    MySQLParser_create_index_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set403;
    pANTLR3_COMMON_TOKEN    INDEX_SYMBOL404;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL407;
    MySQLParser_online_option_return online_option402;
    #undef	RETURN_TYPE_online_option402
    #define	RETURN_TYPE_online_option402 MySQLParser_online_option_return

    MySQLParser_identifier_return identifier405;
    #undef	RETURN_TYPE_identifier405
    #define	RETURN_TYPE_identifier405 MySQLParser_identifier_return

    MySQLParser_index_type_return index_type406;
    #undef	RETURN_TYPE_index_type406
    #define	RETURN_TYPE_index_type406 MySQLParser_index_type_return

    MySQLParser_table_identifier_return table_identifier408;
    #undef	RETURN_TYPE_table_identifier408
    #define	RETURN_TYPE_table_identifier408 MySQLParser_table_identifier_return

    MySQLParser_index_columns_return index_columns409;
    #undef	RETURN_TYPE_index_columns409
    #define	RETURN_TYPE_index_columns409 MySQLParser_index_columns_return

    MySQLParser_index_option_return index_option410;
    #undef	RETURN_TYPE_index_option410
    #define	RETURN_TYPE_index_option410 MySQLParser_index_option_return

    MySQLParser_index_lock_algorithm_return index_lock_algorithm411;
    #undef	RETURN_TYPE_index_lock_algorithm411
    #define	RETURN_TYPE_index_lock_algorithm411 MySQLParser_index_lock_algorithm_return

    pANTLR3_BASE_TREE set403_tree;
    pANTLR3_BASE_TREE INDEX_SYMBOL404_tree;
    pANTLR3_BASE_TREE ON_SYMBOL407_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set403       = NULL;
    INDEX_SYMBOL404       = NULL;
    ON_SYMBOL407       = NULL;
    online_option402.tree = NULL;

    identifier405.tree = NULL;

    index_type406.tree = NULL;

    table_identifier408.tree = NULL;

    index_columns409.tree = NULL;

    index_option410.tree = NULL;

    index_lock_algorithm411.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set403_tree   = NULL;
    INDEX_SYMBOL404_tree   = NULL;
    ON_SYMBOL407_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:486:13: ( ( online_option )? ( UNIQUE_SYMBOL | FULLTEXT_SYMBOL | SPATIAL_SYMBOL )? INDEX_SYMBOL identifier ( index_type )? ON_SYMBOL table_identifier index_columns ( index_option )* ( index_lock_algorithm )? )
        // MySQL.g:487:2: ( online_option )? ( UNIQUE_SYMBOL | FULLTEXT_SYMBOL | SPATIAL_SYMBOL )? INDEX_SYMBOL identifier ( index_type )? ON_SYMBOL table_identifier index_columns ( index_option )* ( index_lock_algorithm )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:487:2: ( online_option )?
            {
                int alt119=2;
                {
                    int LA119_0 = LA(1);
                    if ( ((SERVER_VERSION < 50600)) && (LA119_0 == OFFLINE_SYMBOL || LA119_0 == ONLINE_SYMBOL))
                    {
                        alt119=1;
                    }
                }
                switch (alt119)
                {
            	case 1:
            	    // MySQL.g:487:2: online_option
            	    {
            	        FOLLOWPUSH(FOLLOW_online_option_in_create_index1999);
            	        online_option402=online_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_indexEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, online_option402.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:487:17: ( UNIQUE_SYMBOL | FULLTEXT_SYMBOL | SPATIAL_SYMBOL )?
            {
                int alt120=2;
                switch ( LA(1) )
                {
                    case FULLTEXT_SYMBOL:
                    case SPATIAL_SYMBOL:
                    case UNIQUE_SYMBOL:
                    	{
                    		alt120=1;
                    	}
                        break;
                }

                switch (alt120)
                {
            	case 1:
            	    // MySQL.g:
            	    {
            	        set403=(pANTLR3_COMMON_TOKEN)LT(1);

            	        if ( LA(1) == FULLTEXT_SYMBOL || LA(1) == SPATIAL_SYMBOL || LA(1) == UNIQUE_SYMBOL )
            	        {
            	            CONSUME();
            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set403))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	            CONSTRUCTEX();
            	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	            EXCEPTION->expectingSet = NULL;

            	            goto rulecreate_indexEx;
            	        }


            	    }
            	    break;

                }
            }

            INDEX_SYMBOL404 = (pANTLR3_COMMON_TOKEN) MATCHT(INDEX_SYMBOL, &FOLLOW_INDEX_SYMBOL_in_create_index2015);
            if  (HASEXCEPTION())
            {
                goto rulecreate_indexEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            INDEX_SYMBOL404_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INDEX_SYMBOL404));
            ADAPTOR->addChild(ADAPTOR, root_0, INDEX_SYMBOL404_tree);
            }

            FOLLOWPUSH(FOLLOW_identifier_in_create_index2017);
            identifier405=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_indexEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier405.tree);

            // MySQL.g:488:3: ( index_type )?
            {
                int alt121=2;
                switch ( LA(1) )
                {
                    case TYPE_SYMBOL:
                    case USING_SYMBOL:
                    	{
                    		alt121=1;
                    	}
                        break;
                }

                switch (alt121)
                {
            	case 1:
            	    // MySQL.g:488:3: index_type
            	    {
            	        FOLLOWPUSH(FOLLOW_index_type_in_create_index2021);
            	        index_type406=index_type(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_indexEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_type406.tree);

            	    }
            	    break;

                }
            }

            ON_SYMBOL407 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_create_index2024);
            if  (HASEXCEPTION())
            {
                goto rulecreate_indexEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ON_SYMBOL407_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL407));
            ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL407_tree);
            }

            FOLLOWPUSH(FOLLOW_table_identifier_in_create_index2026);
            table_identifier408=table_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_indexEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_identifier408.tree);

            FOLLOWPUSH(FOLLOW_index_columns_in_create_index2028);
            index_columns409=index_columns(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_indexEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_columns409.tree);

            // MySQL.g:488:56: ( index_option )*

            for (;;)
            {
                int alt122=2;
                {
                   /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                    */
                    int LA122_0 = LA(1);
                    if ( (LA122_0 == KEY_BLOCK_SIZE_SYMBOL || LA122_0 == TYPE_SYMBOL || LA122_0 == USING_SYMBOL || LA122_0 == WITH_SYMBOL))
                    {
                        alt122=1;
                    }
                    else if ( ((SERVER_VERSION >= 50600)) && (LA122_0 == COMMENT_SYMBOL))
                    {
                        alt122=1;
                    }

                }
                switch (alt122)
                {
            	case 1:
            	    // MySQL.g:488:56: index_option
            	    {
            	        FOLLOWPUSH(FOLLOW_index_option_in_create_index2030);
            	        index_option410=index_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_indexEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_option410.tree);

            	    }
            	    break;

            	default:
            	    goto loop122;	/* break out of the loop */
            	    break;
                }
            }
            loop122: ; /* Jump out to here if this rule does not match */


            // MySQL.g:488:70: ( index_lock_algorithm )?
            {
                int alt123=2;
                {
                    int LA123_0 = LA(1);
                    if ( ((SERVER_VERSION >= 50600)) && (LA123_0 == ALGORITHM_SYMBOL || LA123_0 == LOCK_SYMBOL))
                    {
                        alt123=1;
                    }
                }
                switch (alt123)
                {
            	case 1:
            	    // MySQL.g:488:70: index_lock_algorithm
            	    {
            	        FOLLOWPUSH(FOLLOW_index_lock_algorithm_in_create_index2033);
            	        index_lock_algorithm411=index_lock_algorithm(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_indexEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_lock_algorithm411.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulecreate_indexEx; /* Prevent compiler warnings */
    rulecreate_indexEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end create_index */

/**
 * $ANTLR start create_logfile_group
 * MySQL.g:491:1: create_logfile_group : LOGFILE_SYMBOL GROUP_SYMBOL identifier ADD_SYMBOL UNDOFILE_SYMBOL string_literal ( INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? INTEGER )? ( UNDO_BUFFER_SIZE_SYMBOL ( EQUAL_OPERATOR )? INTEGER )? ( REDO_BUFFER_SIZE_SYMBOL ( EQUAL_OPERATOR )? INTEGER )? ( NODEGROUP_SYMBOL ( EQUAL_OPERATOR )? pure_identifier )? ( WAIT_SYMBOL )? ( COMMENT_SYMBOL ( EQUAL_OPERATOR )? string_literal )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? IDENTIFIER ;
 */
static MySQLParser_create_logfile_group_return
create_logfile_group(pMySQLParser ctx)
{
    MySQLParser_create_logfile_group_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    LOGFILE_SYMBOL412;
    pANTLR3_COMMON_TOKEN    GROUP_SYMBOL413;
    pANTLR3_COMMON_TOKEN    ADD_SYMBOL415;
    pANTLR3_COMMON_TOKEN    UNDOFILE_SYMBOL416;
    pANTLR3_COMMON_TOKEN    INITIAL_SIZE_SYMBOL418;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR419;
    pANTLR3_COMMON_TOKEN    INTEGER420;
    pANTLR3_COMMON_TOKEN    UNDO_BUFFER_SIZE_SYMBOL421;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR422;
    pANTLR3_COMMON_TOKEN    INTEGER423;
    pANTLR3_COMMON_TOKEN    REDO_BUFFER_SIZE_SYMBOL424;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR425;
    pANTLR3_COMMON_TOKEN    INTEGER426;
    pANTLR3_COMMON_TOKEN    NODEGROUP_SYMBOL427;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR428;
    pANTLR3_COMMON_TOKEN    WAIT_SYMBOL430;
    pANTLR3_COMMON_TOKEN    COMMENT_SYMBOL431;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR432;
    pANTLR3_COMMON_TOKEN    ENGINE_SYMBOL434;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR435;
    pANTLR3_COMMON_TOKEN    IDENTIFIER436;
    MySQLParser_identifier_return identifier414;
    #undef	RETURN_TYPE_identifier414
    #define	RETURN_TYPE_identifier414 MySQLParser_identifier_return

    MySQLParser_string_literal_return string_literal417;
    #undef	RETURN_TYPE_string_literal417
    #define	RETURN_TYPE_string_literal417 MySQLParser_string_literal_return

    MySQLParser_pure_identifier_return pure_identifier429;
    #undef	RETURN_TYPE_pure_identifier429
    #define	RETURN_TYPE_pure_identifier429 MySQLParser_pure_identifier_return

    MySQLParser_string_literal_return string_literal433;
    #undef	RETURN_TYPE_string_literal433
    #define	RETURN_TYPE_string_literal433 MySQLParser_string_literal_return

    pANTLR3_BASE_TREE LOGFILE_SYMBOL412_tree;
    pANTLR3_BASE_TREE GROUP_SYMBOL413_tree;
    pANTLR3_BASE_TREE ADD_SYMBOL415_tree;
    pANTLR3_BASE_TREE UNDOFILE_SYMBOL416_tree;
    pANTLR3_BASE_TREE INITIAL_SIZE_SYMBOL418_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR419_tree;
    pANTLR3_BASE_TREE INTEGER420_tree;
    pANTLR3_BASE_TREE UNDO_BUFFER_SIZE_SYMBOL421_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR422_tree;
    pANTLR3_BASE_TREE INTEGER423_tree;
    pANTLR3_BASE_TREE REDO_BUFFER_SIZE_SYMBOL424_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR425_tree;
    pANTLR3_BASE_TREE INTEGER426_tree;
    pANTLR3_BASE_TREE NODEGROUP_SYMBOL427_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR428_tree;
    pANTLR3_BASE_TREE WAIT_SYMBOL430_tree;
    pANTLR3_BASE_TREE COMMENT_SYMBOL431_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR432_tree;
    pANTLR3_BASE_TREE ENGINE_SYMBOL434_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR435_tree;
    pANTLR3_BASE_TREE IDENTIFIER436_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    LOGFILE_SYMBOL412       = NULL;
    GROUP_SYMBOL413       = NULL;
    ADD_SYMBOL415       = NULL;
    UNDOFILE_SYMBOL416       = NULL;
    INITIAL_SIZE_SYMBOL418       = NULL;
    EQUAL_OPERATOR419       = NULL;
    INTEGER420       = NULL;
    UNDO_BUFFER_SIZE_SYMBOL421       = NULL;
    EQUAL_OPERATOR422       = NULL;
    INTEGER423       = NULL;
    REDO_BUFFER_SIZE_SYMBOL424       = NULL;
    EQUAL_OPERATOR425       = NULL;
    INTEGER426       = NULL;
    NODEGROUP_SYMBOL427       = NULL;
    EQUAL_OPERATOR428       = NULL;
    WAIT_SYMBOL430       = NULL;
    COMMENT_SYMBOL431       = NULL;
    EQUAL_OPERATOR432       = NULL;
    ENGINE_SYMBOL434       = NULL;
    EQUAL_OPERATOR435       = NULL;
    IDENTIFIER436       = NULL;
    identifier414.tree = NULL;

    string_literal417.tree = NULL;

    pure_identifier429.tree = NULL;

    string_literal433.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    LOGFILE_SYMBOL412_tree   = NULL;
    GROUP_SYMBOL413_tree   = NULL;
    ADD_SYMBOL415_tree   = NULL;
    UNDOFILE_SYMBOL416_tree   = NULL;
    INITIAL_SIZE_SYMBOL418_tree   = NULL;
    EQUAL_OPERATOR419_tree   = NULL;
    INTEGER420_tree   = NULL;
    UNDO_BUFFER_SIZE_SYMBOL421_tree   = NULL;
    EQUAL_OPERATOR422_tree   = NULL;
    INTEGER423_tree   = NULL;
    REDO_BUFFER_SIZE_SYMBOL424_tree   = NULL;
    EQUAL_OPERATOR425_tree   = NULL;
    INTEGER426_tree   = NULL;
    NODEGROUP_SYMBOL427_tree   = NULL;
    EQUAL_OPERATOR428_tree   = NULL;
    WAIT_SYMBOL430_tree   = NULL;
    COMMENT_SYMBOL431_tree   = NULL;
    EQUAL_OPERATOR432_tree   = NULL;
    ENGINE_SYMBOL434_tree   = NULL;
    EQUAL_OPERATOR435_tree   = NULL;
    IDENTIFIER436_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:491:21: ( LOGFILE_SYMBOL GROUP_SYMBOL identifier ADD_SYMBOL UNDOFILE_SYMBOL string_literal ( INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? INTEGER )? ( UNDO_BUFFER_SIZE_SYMBOL ( EQUAL_OPERATOR )? INTEGER )? ( REDO_BUFFER_SIZE_SYMBOL ( EQUAL_OPERATOR )? INTEGER )? ( NODEGROUP_SYMBOL ( EQUAL_OPERATOR )? pure_identifier )? ( WAIT_SYMBOL )? ( COMMENT_SYMBOL ( EQUAL_OPERATOR )? string_literal )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? IDENTIFIER )
        // MySQL.g:492:2: LOGFILE_SYMBOL GROUP_SYMBOL identifier ADD_SYMBOL UNDOFILE_SYMBOL string_literal ( INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? INTEGER )? ( UNDO_BUFFER_SIZE_SYMBOL ( EQUAL_OPERATOR )? INTEGER )? ( REDO_BUFFER_SIZE_SYMBOL ( EQUAL_OPERATOR )? INTEGER )? ( NODEGROUP_SYMBOL ( EQUAL_OPERATOR )? pure_identifier )? ( WAIT_SYMBOL )? ( COMMENT_SYMBOL ( EQUAL_OPERATOR )? string_literal )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? IDENTIFIER
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            LOGFILE_SYMBOL412 = (pANTLR3_COMMON_TOKEN) MATCHT(LOGFILE_SYMBOL, &FOLLOW_LOGFILE_SYMBOL_in_create_logfile_group2043);
            if  (HASEXCEPTION())
            {
                goto rulecreate_logfile_groupEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            LOGFILE_SYMBOL412_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOGFILE_SYMBOL412));
            ADAPTOR->addChild(ADAPTOR, root_0, LOGFILE_SYMBOL412_tree);
            }

            GROUP_SYMBOL413 = (pANTLR3_COMMON_TOKEN) MATCHT(GROUP_SYMBOL, &FOLLOW_GROUP_SYMBOL_in_create_logfile_group2045);
            if  (HASEXCEPTION())
            {
                goto rulecreate_logfile_groupEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            GROUP_SYMBOL413_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GROUP_SYMBOL413));
            ADAPTOR->addChild(ADAPTOR, root_0, GROUP_SYMBOL413_tree);
            }

            FOLLOWPUSH(FOLLOW_identifier_in_create_logfile_group2047);
            identifier414=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_logfile_groupEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier414.tree);

            ADD_SYMBOL415 = (pANTLR3_COMMON_TOKEN) MATCHT(ADD_SYMBOL, &FOLLOW_ADD_SYMBOL_in_create_logfile_group2049);
            if  (HASEXCEPTION())
            {
                goto rulecreate_logfile_groupEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ADD_SYMBOL415_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ADD_SYMBOL415));
            ADAPTOR->addChild(ADAPTOR, root_0, ADD_SYMBOL415_tree);
            }

            UNDOFILE_SYMBOL416 = (pANTLR3_COMMON_TOKEN) MATCHT(UNDOFILE_SYMBOL, &FOLLOW_UNDOFILE_SYMBOL_in_create_logfile_group2051);
            if  (HASEXCEPTION())
            {
                goto rulecreate_logfile_groupEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            UNDOFILE_SYMBOL416_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNDOFILE_SYMBOL416));
            ADAPTOR->addChild(ADAPTOR, root_0, UNDOFILE_SYMBOL416_tree);
            }

            FOLLOWPUSH(FOLLOW_string_literal_in_create_logfile_group2053);
            string_literal417=string_literal(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_logfile_groupEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal417.tree);

            // MySQL.g:493:3: ( INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? INTEGER )?
            {
                int alt125=2;
                switch ( LA(1) )
                {
                    case INITIAL_SIZE_SYMBOL:
                    	{
                    		alt125=1;
                    	}
                        break;
                }

                switch (alt125)
                {
            	case 1:
            	    // MySQL.g:493:4: INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? INTEGER
            	    {
            	        INITIAL_SIZE_SYMBOL418 = (pANTLR3_COMMON_TOKEN) MATCHT(INITIAL_SIZE_SYMBOL, &FOLLOW_INITIAL_SIZE_SYMBOL_in_create_logfile_group2058);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_logfile_groupEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INITIAL_SIZE_SYMBOL418_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INITIAL_SIZE_SYMBOL418));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INITIAL_SIZE_SYMBOL418_tree);
            	        }

            	        // MySQL.g:493:24: ( EQUAL_OPERATOR )?
            	        {
            	            int alt124=2;
            	            switch ( LA(1) )
            	            {
            	                case EQUAL_OPERATOR:
            	                	{
            	                		alt124=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt124)
            	            {
            	        	case 1:
            	        	    // MySQL.g:493:24: EQUAL_OPERATOR
            	        	    {
            	        	        EQUAL_OPERATOR419 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_logfile_group2060);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_logfile_groupEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EQUAL_OPERATOR419_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR419));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR419_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        INTEGER420 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_create_logfile_group2063);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_logfile_groupEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INTEGER420_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER420));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER420_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:494:3: ( UNDO_BUFFER_SIZE_SYMBOL ( EQUAL_OPERATOR )? INTEGER )?
            {
                int alt127=2;
                switch ( LA(1) )
                {
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    	{
                    		alt127=1;
                    	}
                        break;
                }

                switch (alt127)
                {
            	case 1:
            	    // MySQL.g:494:4: UNDO_BUFFER_SIZE_SYMBOL ( EQUAL_OPERATOR )? INTEGER
            	    {
            	        UNDO_BUFFER_SIZE_SYMBOL421 = (pANTLR3_COMMON_TOKEN) MATCHT(UNDO_BUFFER_SIZE_SYMBOL, &FOLLOW_UNDO_BUFFER_SIZE_SYMBOL_in_create_logfile_group2070);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_logfile_groupEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        UNDO_BUFFER_SIZE_SYMBOL421_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNDO_BUFFER_SIZE_SYMBOL421));
            	        ADAPTOR->addChild(ADAPTOR, root_0, UNDO_BUFFER_SIZE_SYMBOL421_tree);
            	        }

            	        // MySQL.g:494:28: ( EQUAL_OPERATOR )?
            	        {
            	            int alt126=2;
            	            switch ( LA(1) )
            	            {
            	                case EQUAL_OPERATOR:
            	                	{
            	                		alt126=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt126)
            	            {
            	        	case 1:
            	        	    // MySQL.g:494:28: EQUAL_OPERATOR
            	        	    {
            	        	        EQUAL_OPERATOR422 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_logfile_group2072);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_logfile_groupEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EQUAL_OPERATOR422_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR422));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR422_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        INTEGER423 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_create_logfile_group2075);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_logfile_groupEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INTEGER423_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER423));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER423_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:495:3: ( REDO_BUFFER_SIZE_SYMBOL ( EQUAL_OPERATOR )? INTEGER )?
            {
                int alt129=2;
                switch ( LA(1) )
                {
                    case REDO_BUFFER_SIZE_SYMBOL:
                    	{
                    		alt129=1;
                    	}
                        break;
                }

                switch (alt129)
                {
            	case 1:
            	    // MySQL.g:495:4: REDO_BUFFER_SIZE_SYMBOL ( EQUAL_OPERATOR )? INTEGER
            	    {
            	        REDO_BUFFER_SIZE_SYMBOL424 = (pANTLR3_COMMON_TOKEN) MATCHT(REDO_BUFFER_SIZE_SYMBOL, &FOLLOW_REDO_BUFFER_SIZE_SYMBOL_in_create_logfile_group2082);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_logfile_groupEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        REDO_BUFFER_SIZE_SYMBOL424_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REDO_BUFFER_SIZE_SYMBOL424));
            	        ADAPTOR->addChild(ADAPTOR, root_0, REDO_BUFFER_SIZE_SYMBOL424_tree);
            	        }

            	        // MySQL.g:495:28: ( EQUAL_OPERATOR )?
            	        {
            	            int alt128=2;
            	            switch ( LA(1) )
            	            {
            	                case EQUAL_OPERATOR:
            	                	{
            	                		alt128=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt128)
            	            {
            	        	case 1:
            	        	    // MySQL.g:495:28: EQUAL_OPERATOR
            	        	    {
            	        	        EQUAL_OPERATOR425 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_logfile_group2084);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_logfile_groupEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EQUAL_OPERATOR425_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR425));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR425_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        INTEGER426 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_create_logfile_group2087);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_logfile_groupEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INTEGER426_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER426));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER426_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:496:3: ( NODEGROUP_SYMBOL ( EQUAL_OPERATOR )? pure_identifier )?
            {
                int alt131=2;
                switch ( LA(1) )
                {
                    case NODEGROUP_SYMBOL:
                    	{
                    		alt131=1;
                    	}
                        break;
                }

                switch (alt131)
                {
            	case 1:
            	    // MySQL.g:496:4: NODEGROUP_SYMBOL ( EQUAL_OPERATOR )? pure_identifier
            	    {
            	        NODEGROUP_SYMBOL427 = (pANTLR3_COMMON_TOKEN) MATCHT(NODEGROUP_SYMBOL, &FOLLOW_NODEGROUP_SYMBOL_in_create_logfile_group2094);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_logfile_groupEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        NODEGROUP_SYMBOL427_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NODEGROUP_SYMBOL427));
            	        ADAPTOR->addChild(ADAPTOR, root_0, NODEGROUP_SYMBOL427_tree);
            	        }

            	        // MySQL.g:496:21: ( EQUAL_OPERATOR )?
            	        {
            	            int alt130=2;
            	            switch ( LA(1) )
            	            {
            	                case EQUAL_OPERATOR:
            	                	{
            	                		alt130=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt130)
            	            {
            	        	case 1:
            	        	    // MySQL.g:496:21: EQUAL_OPERATOR
            	        	    {
            	        	        EQUAL_OPERATOR428 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_logfile_group2096);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_logfile_groupEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EQUAL_OPERATOR428_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR428));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR428_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_pure_identifier_in_create_logfile_group2099);
            	        pure_identifier429=pure_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_logfile_groupEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier429.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:497:3: ( WAIT_SYMBOL )?
            {
                int alt132=2;
                switch ( LA(1) )
                {
                    case WAIT_SYMBOL:
                    	{
                    		alt132=1;
                    	}
                        break;
                }

                switch (alt132)
                {
            	case 1:
            	    // MySQL.g:497:3: WAIT_SYMBOL
            	    {
            	        WAIT_SYMBOL430 = (pANTLR3_COMMON_TOKEN) MATCHT(WAIT_SYMBOL, &FOLLOW_WAIT_SYMBOL_in_create_logfile_group2105);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_logfile_groupEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        WAIT_SYMBOL430_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WAIT_SYMBOL430));
            	        ADAPTOR->addChild(ADAPTOR, root_0, WAIT_SYMBOL430_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:497:16: ( COMMENT_SYMBOL ( EQUAL_OPERATOR )? string_literal )?
            {
                int alt134=2;
                switch ( LA(1) )
                {
                    case COMMENT_SYMBOL:
                    	{
                    		alt134=1;
                    	}
                        break;
                }

                switch (alt134)
                {
            	case 1:
            	    // MySQL.g:497:17: COMMENT_SYMBOL ( EQUAL_OPERATOR )? string_literal
            	    {
            	        COMMENT_SYMBOL431 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMENT_SYMBOL, &FOLLOW_COMMENT_SYMBOL_in_create_logfile_group2109);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_logfile_groupEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMENT_SYMBOL431_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMENT_SYMBOL431));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMENT_SYMBOL431_tree);
            	        }

            	        // MySQL.g:497:32: ( EQUAL_OPERATOR )?
            	        {
            	            int alt133=2;
            	            switch ( LA(1) )
            	            {
            	                case EQUAL_OPERATOR:
            	                	{
            	                		alt133=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt133)
            	            {
            	        	case 1:
            	        	    // MySQL.g:497:32: EQUAL_OPERATOR
            	        	    {
            	        	        EQUAL_OPERATOR432 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_logfile_group2111);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_logfile_groupEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EQUAL_OPERATOR432_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR432));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR432_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_string_literal_in_create_logfile_group2114);
            	        string_literal433=string_literal(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_logfile_groupEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal433.tree);

            	    }
            	    break;

                }
            }

            ENGINE_SYMBOL434 = (pANTLR3_COMMON_TOKEN) MATCHT(ENGINE_SYMBOL, &FOLLOW_ENGINE_SYMBOL_in_create_logfile_group2118);
            if  (HASEXCEPTION())
            {
                goto rulecreate_logfile_groupEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ENGINE_SYMBOL434_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ENGINE_SYMBOL434));
            ADAPTOR->addChild(ADAPTOR, root_0, ENGINE_SYMBOL434_tree);
            }

            // MySQL.g:497:79: ( EQUAL_OPERATOR )?
            {
                int alt135=2;
                switch ( LA(1) )
                {
                    case EQUAL_OPERATOR:
                    	{
                    		alt135=1;
                    	}
                        break;
                }

                switch (alt135)
                {
            	case 1:
            	    // MySQL.g:497:79: EQUAL_OPERATOR
            	    {
            	        EQUAL_OPERATOR435 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_logfile_group2120);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_logfile_groupEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        EQUAL_OPERATOR435_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR435));
            	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR435_tree);
            	        }

            	    }
            	    break;

                }
            }

            IDENTIFIER436 = (pANTLR3_COMMON_TOKEN) MATCHT(IDENTIFIER, &FOLLOW_IDENTIFIER_in_create_logfile_group2123);
            if  (HASEXCEPTION())
            {
                goto rulecreate_logfile_groupEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            IDENTIFIER436_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IDENTIFIER436));
            ADAPTOR->addChild(ADAPTOR, root_0, IDENTIFIER436_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulecreate_logfile_groupEx; /* Prevent compiler warnings */
    rulecreate_logfile_groupEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end create_logfile_group */

/**
 * $ANTLR start create_server
 * MySQL.g:500:1: create_server : SERVER_SYMBOL identifier FOREIGN_SYMBOL DATA_SYMBOL WRAPPER_SYMBOL text_or_identifier OPTIONS_SYMBOL OPEN_PAR_SYMBOL server_option ( COMMA_SYMBOL server_option )* CLOSE_PAR_SYMBOL ;
 */
static MySQLParser_create_server_return
create_server(pMySQLParser ctx)
{
    MySQLParser_create_server_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    SERVER_SYMBOL437;
    pANTLR3_COMMON_TOKEN    FOREIGN_SYMBOL439;
    pANTLR3_COMMON_TOKEN    DATA_SYMBOL440;
    pANTLR3_COMMON_TOKEN    WRAPPER_SYMBOL441;
    pANTLR3_COMMON_TOKEN    OPTIONS_SYMBOL443;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL444;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL446;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL448;
    MySQLParser_identifier_return identifier438;
    #undef	RETURN_TYPE_identifier438
    #define	RETURN_TYPE_identifier438 MySQLParser_identifier_return

    MySQLParser_text_or_identifier_return text_or_identifier442;
    #undef	RETURN_TYPE_text_or_identifier442
    #define	RETURN_TYPE_text_or_identifier442 MySQLParser_text_or_identifier_return

    MySQLParser_server_option_return server_option445;
    #undef	RETURN_TYPE_server_option445
    #define	RETURN_TYPE_server_option445 MySQLParser_server_option_return

    MySQLParser_server_option_return server_option447;
    #undef	RETURN_TYPE_server_option447
    #define	RETURN_TYPE_server_option447 MySQLParser_server_option_return

    pANTLR3_BASE_TREE SERVER_SYMBOL437_tree;
    pANTLR3_BASE_TREE FOREIGN_SYMBOL439_tree;
    pANTLR3_BASE_TREE DATA_SYMBOL440_tree;
    pANTLR3_BASE_TREE WRAPPER_SYMBOL441_tree;
    pANTLR3_BASE_TREE OPTIONS_SYMBOL443_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL444_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL446_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL448_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SERVER_SYMBOL437       = NULL;
    FOREIGN_SYMBOL439       = NULL;
    DATA_SYMBOL440       = NULL;
    WRAPPER_SYMBOL441       = NULL;
    OPTIONS_SYMBOL443       = NULL;
    OPEN_PAR_SYMBOL444       = NULL;
    COMMA_SYMBOL446       = NULL;
    CLOSE_PAR_SYMBOL448       = NULL;
    identifier438.tree = NULL;

    text_or_identifier442.tree = NULL;

    server_option445.tree = NULL;

    server_option447.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SERVER_SYMBOL437_tree   = NULL;
    FOREIGN_SYMBOL439_tree   = NULL;
    DATA_SYMBOL440_tree   = NULL;
    WRAPPER_SYMBOL441_tree   = NULL;
    OPTIONS_SYMBOL443_tree   = NULL;
    OPEN_PAR_SYMBOL444_tree   = NULL;
    COMMA_SYMBOL446_tree   = NULL;
    CLOSE_PAR_SYMBOL448_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:500:14: ( SERVER_SYMBOL identifier FOREIGN_SYMBOL DATA_SYMBOL WRAPPER_SYMBOL text_or_identifier OPTIONS_SYMBOL OPEN_PAR_SYMBOL server_option ( COMMA_SYMBOL server_option )* CLOSE_PAR_SYMBOL )
        // MySQL.g:501:2: SERVER_SYMBOL identifier FOREIGN_SYMBOL DATA_SYMBOL WRAPPER_SYMBOL text_or_identifier OPTIONS_SYMBOL OPEN_PAR_SYMBOL server_option ( COMMA_SYMBOL server_option )* CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            SERVER_SYMBOL437 = (pANTLR3_COMMON_TOKEN) MATCHT(SERVER_SYMBOL, &FOLLOW_SERVER_SYMBOL_in_create_server2132);
            if  (HASEXCEPTION())
            {
                goto rulecreate_serverEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SERVER_SYMBOL437_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SERVER_SYMBOL437));
            ADAPTOR->addChild(ADAPTOR, root_0, SERVER_SYMBOL437_tree);
            }

            FOLLOWPUSH(FOLLOW_identifier_in_create_server2134);
            identifier438=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_serverEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier438.tree);

            FOREIGN_SYMBOL439 = (pANTLR3_COMMON_TOKEN) MATCHT(FOREIGN_SYMBOL, &FOLLOW_FOREIGN_SYMBOL_in_create_server2138);
            if  (HASEXCEPTION())
            {
                goto rulecreate_serverEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            FOREIGN_SYMBOL439_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOREIGN_SYMBOL439));
            ADAPTOR->addChild(ADAPTOR, root_0, FOREIGN_SYMBOL439_tree);
            }

            DATA_SYMBOL440 = (pANTLR3_COMMON_TOKEN) MATCHT(DATA_SYMBOL, &FOLLOW_DATA_SYMBOL_in_create_server2140);
            if  (HASEXCEPTION())
            {
                goto rulecreate_serverEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DATA_SYMBOL440_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATA_SYMBOL440));
            ADAPTOR->addChild(ADAPTOR, root_0, DATA_SYMBOL440_tree);
            }

            WRAPPER_SYMBOL441 = (pANTLR3_COMMON_TOKEN) MATCHT(WRAPPER_SYMBOL, &FOLLOW_WRAPPER_SYMBOL_in_create_server2142);
            if  (HASEXCEPTION())
            {
                goto rulecreate_serverEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            WRAPPER_SYMBOL441_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WRAPPER_SYMBOL441));
            ADAPTOR->addChild(ADAPTOR, root_0, WRAPPER_SYMBOL441_tree);
            }

            FOLLOWPUSH(FOLLOW_text_or_identifier_in_create_server2144);
            text_or_identifier442=text_or_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_serverEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_identifier442.tree);

            OPTIONS_SYMBOL443 = (pANTLR3_COMMON_TOKEN) MATCHT(OPTIONS_SYMBOL, &FOLLOW_OPTIONS_SYMBOL_in_create_server2148);
            if  (HASEXCEPTION())
            {
                goto rulecreate_serverEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPTIONS_SYMBOL443_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPTIONS_SYMBOL443));
            ADAPTOR->addChild(ADAPTOR, root_0, OPTIONS_SYMBOL443_tree);
            }

            OPEN_PAR_SYMBOL444 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_create_server2150);
            if  (HASEXCEPTION())
            {
                goto rulecreate_serverEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL444_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL444));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL444_tree);
            }

            FOLLOWPUSH(FOLLOW_server_option_in_create_server2152);
            server_option445=server_option(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_serverEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, server_option445.tree);

            // MySQL.g:503:48: ( COMMA_SYMBOL server_option )*

            for (;;)
            {
                int alt136=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt136=1;
                	}
                    break;

                }

                switch (alt136)
                {
            	case 1:
            	    // MySQL.g:503:49: COMMA_SYMBOL server_option
            	    {
            	        COMMA_SYMBOL446 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_create_server2155);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_serverEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL446_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL446));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL446_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_server_option_in_create_server2157);
            	        server_option447=server_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_serverEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, server_option447.tree);

            	    }
            	    break;

            	default:
            	    goto loop136;	/* break out of the loop */
            	    break;
                }
            }
            loop136: ; /* Jump out to here if this rule does not match */


            CLOSE_PAR_SYMBOL448 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_create_server2161);
            if  (HASEXCEPTION())
            {
                goto rulecreate_serverEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL448_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL448));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL448_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulecreate_serverEx; /* Prevent compiler warnings */
    rulecreate_serverEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end create_server */

/**
 * $ANTLR start create_table
 * MySQL.g:506:1: create_table : ( TEMPORARY_SYMBOL )? TABLE_SYMBOL ( if_not_exists )? table_identifier ( OPEN_PAR_SYMBOL ( create_table_definitions CLOSE_PAR_SYMBOL ( create_table_options )? ( partitioning )? ( table_creation_source )? | partitioning create_select CLOSE_PAR_SYMBOL ( union_clause )? ) | ( create_table_options )? ( partitioning )? table_creation_source | LIKE_SYMBOL table_identifier | OPEN_PAR_SYMBOL LIKE_SYMBOL table_identifier CLOSE_PAR_SYMBOL ) ;
 */
static MySQLParser_create_table_return
create_table(pMySQLParser ctx)
{
    MySQLParser_create_table_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    TEMPORARY_SYMBOL449;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL450;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL453;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL455;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL461;
    pANTLR3_COMMON_TOKEN    LIKE_SYMBOL466;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL468;
    pANTLR3_COMMON_TOKEN    LIKE_SYMBOL469;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL471;
    MySQLParser_if_not_exists_return if_not_exists451;
    #undef	RETURN_TYPE_if_not_exists451
    #define	RETURN_TYPE_if_not_exists451 MySQLParser_if_not_exists_return

    MySQLParser_table_identifier_return table_identifier452;
    #undef	RETURN_TYPE_table_identifier452
    #define	RETURN_TYPE_table_identifier452 MySQLParser_table_identifier_return

    MySQLParser_create_table_definitions_return create_table_definitions454;
    #undef	RETURN_TYPE_create_table_definitions454
    #define	RETURN_TYPE_create_table_definitions454 MySQLParser_create_table_definitions_return

    MySQLParser_create_table_options_return create_table_options456;
    #undef	RETURN_TYPE_create_table_options456
    #define	RETURN_TYPE_create_table_options456 MySQLParser_create_table_options_return

    MySQLParser_partitioning_return partitioning457;
    #undef	RETURN_TYPE_partitioning457
    #define	RETURN_TYPE_partitioning457 MySQLParser_partitioning_return

    MySQLParser_table_creation_source_return table_creation_source458;
    #undef	RETURN_TYPE_table_creation_source458
    #define	RETURN_TYPE_table_creation_source458 MySQLParser_table_creation_source_return

    MySQLParser_partitioning_return partitioning459;
    #undef	RETURN_TYPE_partitioning459
    #define	RETURN_TYPE_partitioning459 MySQLParser_partitioning_return

    MySQLParser_create_select_return create_select460;
    #undef	RETURN_TYPE_create_select460
    #define	RETURN_TYPE_create_select460 MySQLParser_create_select_return

    MySQLParser_union_clause_return union_clause462;
    #undef	RETURN_TYPE_union_clause462
    #define	RETURN_TYPE_union_clause462 MySQLParser_union_clause_return

    MySQLParser_create_table_options_return create_table_options463;
    #undef	RETURN_TYPE_create_table_options463
    #define	RETURN_TYPE_create_table_options463 MySQLParser_create_table_options_return

    MySQLParser_partitioning_return partitioning464;
    #undef	RETURN_TYPE_partitioning464
    #define	RETURN_TYPE_partitioning464 MySQLParser_partitioning_return

    MySQLParser_table_creation_source_return table_creation_source465;
    #undef	RETURN_TYPE_table_creation_source465
    #define	RETURN_TYPE_table_creation_source465 MySQLParser_table_creation_source_return

    MySQLParser_table_identifier_return table_identifier467;
    #undef	RETURN_TYPE_table_identifier467
    #define	RETURN_TYPE_table_identifier467 MySQLParser_table_identifier_return

    MySQLParser_table_identifier_return table_identifier470;
    #undef	RETURN_TYPE_table_identifier470
    #define	RETURN_TYPE_table_identifier470 MySQLParser_table_identifier_return

    pANTLR3_BASE_TREE TEMPORARY_SYMBOL449_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL450_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL453_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL455_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL461_tree;
    pANTLR3_BASE_TREE LIKE_SYMBOL466_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL468_tree;
    pANTLR3_BASE_TREE LIKE_SYMBOL469_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL471_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    TEMPORARY_SYMBOL449       = NULL;
    TABLE_SYMBOL450       = NULL;
    OPEN_PAR_SYMBOL453       = NULL;
    CLOSE_PAR_SYMBOL455       = NULL;
    CLOSE_PAR_SYMBOL461       = NULL;
    LIKE_SYMBOL466       = NULL;
    OPEN_PAR_SYMBOL468       = NULL;
    LIKE_SYMBOL469       = NULL;
    CLOSE_PAR_SYMBOL471       = NULL;
    if_not_exists451.tree = NULL;

    table_identifier452.tree = NULL;

    create_table_definitions454.tree = NULL;

    create_table_options456.tree = NULL;

    partitioning457.tree = NULL;

    table_creation_source458.tree = NULL;

    partitioning459.tree = NULL;

    create_select460.tree = NULL;

    union_clause462.tree = NULL;

    create_table_options463.tree = NULL;

    partitioning464.tree = NULL;

    table_creation_source465.tree = NULL;

    table_identifier467.tree = NULL;

    table_identifier470.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    TEMPORARY_SYMBOL449_tree   = NULL;
    TABLE_SYMBOL450_tree   = NULL;
    OPEN_PAR_SYMBOL453_tree   = NULL;
    CLOSE_PAR_SYMBOL455_tree   = NULL;
    CLOSE_PAR_SYMBOL461_tree   = NULL;
    LIKE_SYMBOL466_tree   = NULL;
    OPEN_PAR_SYMBOL468_tree   = NULL;
    LIKE_SYMBOL469_tree   = NULL;
    CLOSE_PAR_SYMBOL471_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:506:13: ( ( TEMPORARY_SYMBOL )? TABLE_SYMBOL ( if_not_exists )? table_identifier ( OPEN_PAR_SYMBOL ( create_table_definitions CLOSE_PAR_SYMBOL ( create_table_options )? ( partitioning )? ( table_creation_source )? | partitioning create_select CLOSE_PAR_SYMBOL ( union_clause )? ) | ( create_table_options )? ( partitioning )? table_creation_source | LIKE_SYMBOL table_identifier | OPEN_PAR_SYMBOL LIKE_SYMBOL table_identifier CLOSE_PAR_SYMBOL ) )
        // MySQL.g:507:2: ( TEMPORARY_SYMBOL )? TABLE_SYMBOL ( if_not_exists )? table_identifier ( OPEN_PAR_SYMBOL ( create_table_definitions CLOSE_PAR_SYMBOL ( create_table_options )? ( partitioning )? ( table_creation_source )? | partitioning create_select CLOSE_PAR_SYMBOL ( union_clause )? ) | ( create_table_options )? ( partitioning )? table_creation_source | LIKE_SYMBOL table_identifier | OPEN_PAR_SYMBOL LIKE_SYMBOL table_identifier CLOSE_PAR_SYMBOL )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:507:2: ( TEMPORARY_SYMBOL )?
            {
                int alt137=2;
                switch ( LA(1) )
                {
                    case TEMPORARY_SYMBOL:
                    	{
                    		alt137=1;
                    	}
                        break;
                }

                switch (alt137)
                {
            	case 1:
            	    // MySQL.g:507:2: TEMPORARY_SYMBOL
            	    {
            	        TEMPORARY_SYMBOL449 = (pANTLR3_COMMON_TOKEN) MATCHT(TEMPORARY_SYMBOL, &FOLLOW_TEMPORARY_SYMBOL_in_create_table2170);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_tableEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TEMPORARY_SYMBOL449_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TEMPORARY_SYMBOL449));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TEMPORARY_SYMBOL449_tree);
            	        }

            	    }
            	    break;

                }
            }

            TABLE_SYMBOL450 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_create_table2173);
            if  (HASEXCEPTION())
            {
                goto rulecreate_tableEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            TABLE_SYMBOL450_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL450));
            ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL450_tree);
            }

            // MySQL.g:507:33: ( if_not_exists )?
            {
                int alt138=2;
                switch ( LA(1) )
                {
                    case IF_SYMBOL:
                    	{
                    		alt138=1;
                    	}
                        break;
                }

                switch (alt138)
                {
            	case 1:
            	    // MySQL.g:507:33: if_not_exists
            	    {
            	        FOLLOWPUSH(FOLLOW_if_not_exists_in_create_table2175);
            	        if_not_exists451=if_not_exists(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_tableEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, if_not_exists451.tree);

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_table_identifier_in_create_table2178);
            table_identifier452=table_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_tableEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_identifier452.tree);

            // MySQL.g:508:3: ( OPEN_PAR_SYMBOL ( create_table_definitions CLOSE_PAR_SYMBOL ( create_table_options )? ( partitioning )? ( table_creation_source )? | partitioning create_select CLOSE_PAR_SYMBOL ( union_clause )? ) | ( create_table_options )? ( partitioning )? table_creation_source | LIKE_SYMBOL table_identifier | OPEN_PAR_SYMBOL LIKE_SYMBOL table_identifier CLOSE_PAR_SYMBOL )
            {
                int alt146=4;
                {
                    int LA146_0 = LA(1);
                    if ( (LA146_0 == OPEN_PAR_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case LIKE_SYMBOL:
                        	{
                        		alt146=4;
                        	}
                            break;
                        case ACTION_SYMBOL:
                        case ADDDATE_SYMBOL:
                        case AFTER_SYMBOL:
                        case AGAINST_SYMBOL:
                        case AGGREGATE_SYMBOL:
                        case ALGORITHM_SYMBOL:
                        case ANALYZE_SYMBOL:
                        case ANY_SYMBOL:
                        case ASCII_SYMBOL:
                        case AT_SYMBOL:
                        case AUTHORS_SYMBOL:
                        case AUTOEXTEND_SIZE_SYMBOL:
                        case AUTO_INCREMENT_SYMBOL:
                        case AVG_ROW_LENGTH_SYMBOL:
                        case AVG_SYMBOL:
                        case BACKUP_SYMBOL:
                        case BACK_TICK_QUOTED_ID:
                        case BEGIN_SYMBOL:
                        case BINLOG_SYMBOL:
                        case BIT_SYMBOL:
                        case BLOCK_SYMBOL:
                        case BOOLEAN_SYMBOL:
                        case BOOL_SYMBOL:
                        case BTREE_SYMBOL:
                        case BYTE_SYMBOL:
                        case CACHE_SYMBOL:
                        case CASCADED_SYMBOL:
                        case CATALOG_NAME_SYMBOL:
                        case CHAIN_SYMBOL:
                        case CHANGED_SYMBOL:
                        case CHARSET_SYMBOL:
                        case CHECKSUM_SYMBOL:
                        case CHECK_SYMBOL:
                        case CIPHER_SYMBOL:
                        case CLASS_ORIGIN_SYMBOL:
                        case CLIENT_SYMBOL:
                        case CLOSE_SYMBOL:
                        case COALESCE_SYMBOL:
                        case CODE_SYMBOL:
                        case COLLATION_SYMBOL:
                        case COLUMNS_SYMBOL:
                        case COLUMN_FORMAT_SYMBOL:
                        case COLUMN_NAME_SYMBOL:
                        case COMMENT_SYMBOL:
                        case COMMITTED_SYMBOL:
                        case COMMIT_SYMBOL:
                        case COMPACT_SYMBOL:
                        case COMPLETION_SYMBOL:
                        case COMPRESSED_SYMBOL:
                        case CONCURRENT_SYMBOL:
                        case CONNECTION_SYMBOL:
                        case CONSISTENT_SYMBOL:
                        case CONSTRAINT_CATALOG_SYMBOL:
                        case CONSTRAINT_NAME_SYMBOL:
                        case CONSTRAINT_SCHEMA_SYMBOL:
                        case CONSTRAINT_SYMBOL:
                        case CONTAINS_SYMBOL:
                        case CONTEXT_SYMBOL:
                        case CONTRIBUTORS_SYMBOL:
                        case CPU_SYMBOL:
                        case CUBE_SYMBOL:
                        case CURRENT_SYMBOL:
                        case CURSOR_NAME_SYMBOL:
                        case DATAFILE_SYMBOL:
                        case DATA_SYMBOL:
                        case DATETIME_SYMBOL:
                        case DATE_SYMBOL:
                        case DAY_SYMBOL:
                        case DEALLOCATE_SYMBOL:
                        case DEFAULT_AUTH_SYMBOL:
                        case DEFINER_SYMBOL:
                        case DELAY_KEY_WRITE_SYMBOL:
                        case DES_KEY_FILE_SYMBOL:
                        case DIAGNOSTICS_SYMBOL:
                        case DIRECTORY_SYMBOL:
                        case DISABLE_SYMBOL:
                        case DISCARD_SYMBOL:
                        case DISK_SYMBOL:
                        case DOUBLE_QUOTED_TEXT:
                        case DO_SYMBOL:
                        case DUMPFILE_SYMBOL:
                        case DUPLICATE_SYMBOL:
                        case DYNAMIC_SYMBOL:
                        case ENABLE_SYMBOL:
                        case ENDS_SYMBOL:
                        case END_SYMBOL:
                        case ENGINES_SYMBOL:
                        case ENGINE_SYMBOL:
                        case ENUM_SYMBOL:
                        case ERRORS_SYMBOL:
                        case ERROR_SYMBOL:
                        case ESCAPE_SYMBOL:
                        case EVENTS_SYMBOL:
                        case EVENT_SYMBOL:
                        case EVERY_SYMBOL:
                        case EXECUTE_SYMBOL:
                        case EXPANSION_SYMBOL:
                        case EXPORT_SYMBOL:
                        case EXTENDED_SYMBOL:
                        case EXTENT_SIZE_SYMBOL:
                        case FAST_SYMBOL:
                        case FAULTS_SYMBOL:
                        case FILE_SYMBOL:
                        case FIRST_SYMBOL:
                        case FIXED_SYMBOL:
                        case FLUSH_SYMBOL:
                        case FOREIGN_SYMBOL:
                        case FORMAT_SYMBOL:
                        case FOUND_SYMBOL:
                        case FULLTEXT_SYMBOL:
                        case FULL_SYMBOL:
                        case FUNCTION_SYMBOL:
                        case GENERAL_SYMBOL:
                        case GEOMETRYCOLLECTION_SYMBOL:
                        case GEOMETRY_SYMBOL:
                        case GET_FORMAT_SYMBOL:
                        case GLOBAL_SYMBOL:
                        case GRANTS_SYMBOL:
                        case HANDLER_SYMBOL:
                        case HASH_SYMBOL:
                        case HELP_SYMBOL:
                        case HOSTS_SYMBOL:
                        case HOST_SYMBOL:
                        case HOUR_SYMBOL:
                        case IDENTIFIED_SYMBOL:
                        case IDENTIFIER:
                        case IGNORE_SERVER_IDS_SYMBOL:
                        case IMPORT_SYMBOL:
                        case INDEXES_SYMBOL:
                        case INDEX_SYMBOL:
                        case INITIAL_SIZE_SYMBOL:
                        case INNODB_SYMBOL:
                        case INSERT_METHOD_SYMBOL:
                        case INSTALL_SYMBOL:
                        case INVOKER_SYMBOL:
                        case IO_SYMBOL:
                        case IPC_SYMBOL:
                        case ISOLATION_SYMBOL:
                        case ISSUER_SYMBOL:
                        case KEY_BLOCK_SIZE_SYMBOL:
                        case KEY_SYMBOL:
                        case LANGUAGE_SYMBOL:
                        case LAST_SYMBOL:
                        case LEAVES_SYMBOL:
                        case LESS_SYMBOL:
                        case LEVEL_SYMBOL:
                        case LINESTRING_SYMBOL:
                        case LIST_SYMBOL:
                        case LOCAL_SYMBOL:
                        case LOCKS_SYMBOL:
                        case LOGFILE_SYMBOL:
                        case LOGS_SYMBOL:
                        case MASTER_AUTO_POSITION_SYMBOL:
                        case MASTER_CONNECT_RETRY_SYMBOL:
                        case MASTER_DELAY_SYMBOL:
                        case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                        case MASTER_HOST_SYMBOL:
                        case MASTER_LOG_FILE_SYMBOL:
                        case MASTER_LOG_POS_SYMBOL:
                        case MASTER_PASSWORD_SYMBOL:
                        case MASTER_PORT_SYMBOL:
                        case MASTER_RETRY_COUNT_SYMBOL:
                        case MASTER_SERVER_ID_SYMBOL:
                        case MASTER_SSL_CAPATH_SYMBOL:
                        case MASTER_SSL_CA_SYMBOL:
                        case MASTER_SSL_CERT_SYMBOL:
                        case MASTER_SSL_CIPHER_SYMBOL:
                        case MASTER_SSL_CRLPATH_SYMBOL:
                        case MASTER_SSL_CRL_SYMBOL:
                        case MASTER_SSL_KEY_SYMBOL:
                        case MASTER_SSL_SYMBOL:
                        case MASTER_SYMBOL:
                        case MASTER_USER_SYMBOL:
                        case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                        case MAX_QUERIES_PER_HOUR_SYMBOL:
                        case MAX_ROWS_SYMBOL:
                        case MAX_SIZE_SYMBOL:
                        case MAX_UPDATES_PER_HOUR_SYMBOL:
                        case MAX_USER_CONNECTIONS_SYMBOL:
                        case MEDIUM_SYMBOL:
                        case MEMORY_SYMBOL:
                        case MERGE_SYMBOL:
                        case MESSAGE_TEXT_SYMBOL:
                        case MICROSECOND_SYMBOL:
                        case MIGRATE_SYMBOL:
                        case MINUTE_SYMBOL:
                        case MIN_ROWS_SYMBOL:
                        case MODE_SYMBOL:
                        case MODIFY_SYMBOL:
                        case MONTH_SYMBOL:
                        case MULTILINESTRING_SYMBOL:
                        case MULTIPOINT_SYMBOL:
                        case MULTIPOLYGON_SYMBOL:
                        case MUTEX_SYMBOL:
                        case MYSQL_ERRNO_SYMBOL:
                        case NAMES_SYMBOL:
                        case NAME_SYMBOL:
                        case NATIONAL_SYMBOL:
                        case NCHAR_SYMBOL:
                        case NDBCLUSTER_SYMBOL:
                        case NEW_SYMBOL:
                        case NEXT_SYMBOL:
                        case NODEGROUP_SYMBOL:
                        case NONE_SYMBOL:
                        case NO_SYMBOL:
                        case NO_WAIT_SYMBOL:
                        case NUMBER_SYMBOL:
                        case NVARCHAR_SYMBOL:
                        case OFFSET_SYMBOL:
                        case OLD_PASSWORD_SYMBOL:
                        case ONE_SHOT_SYMBOL:
                        case ONE_SYMBOL:
                        case OPEN_SYMBOL:
                        case OPTIONS_SYMBOL:
                        case OWNER_SYMBOL:
                        case PACK_KEYS_SYMBOL:
                        case PAGE_SYMBOL:
                        case PARSER_SYMBOL:
                        case PARTIAL_SYMBOL:
                        case PARTITIONING_SYMBOL:
                        case PARTITIONS_SYMBOL:
                        case PARTITION_SYMBOL:
                        case PASSWORD_SYMBOL:
                        case PHASE_SYMBOL:
                        case PLUGINS_SYMBOL:
                        case PLUGIN_DIR_SYMBOL:
                        case PLUGIN_SYMBOL:
                        case POINT_SYMBOL:
                        case POLYGON_SYMBOL:
                        case PORT_SYMBOL:
                        case PREPARE_SYMBOL:
                        case PRESERVE_SYMBOL:
                        case PREV_SYMBOL:
                        case PRIMARY_SYMBOL:
                        case PRIVILEGES_SYMBOL:
                        case PROCESSLIST_SYMBOL:
                        case PROCESS_SYMBOL:
                        case PROFILES_SYMBOL:
                        case PROFILE_SYMBOL:
                        case PROXY_SYMBOL:
                        case QUARTER_SYMBOL:
                        case QUERY_SYMBOL:
                        case QUICK_SYMBOL:
                        case READ_ONLY_SYMBOL:
                        case REBUILD_SYMBOL:
                        case RECOVER_SYMBOL:
                        case REDOFILE_SYMBOL:
                        case REDO_BUFFER_SIZE_SYMBOL:
                        case REDUNDANT_SYMBOL:
                        case RELAYLOG_SYMBOL:
                        case RELAY_LOG_FILE_SYMBOL:
                        case RELAY_LOG_POS_SYMBOL:
                        case RELAY_SYMBOL:
                        case RELAY_THREAD_SYMBOL:
                        case RELOAD_SYMBOL:
                        case REMOVE_SYMBOL:
                        case REORGANIZE_SYMBOL:
                        case REPAIR_SYMBOL:
                        case REPEATABLE_SYMBOL:
                        case REPLICATION_SYMBOL:
                        case RESET_SYMBOL:
                        case RESTORE_SYMBOL:
                        case RESUME_SYMBOL:
                        case RETURNED_SQLSTATE_SYMBOL:
                        case RETURNS_SYMBOL:
                        case REVERSE_SYMBOL:
                        case ROLLBACK_SYMBOL:
                        case ROLLUP_SYMBOL:
                        case ROUTINE_SYMBOL:
                        case ROWS_SYMBOL:
                        case ROW_COUNT_SYMBOL:
                        case ROW_FORMAT_SYMBOL:
                        case ROW_SYMBOL:
                        case RTREE_SYMBOL:
                        case SAVEPOINT_SYMBOL:
                        case SCHEDULE_SYMBOL:
                        case SCHEMA_NAME_SYMBOL:
                        case SECOND_SYMBOL:
                        case SECURITY_SYMBOL:
                        case SERIALIZABLE_SYMBOL:
                        case SERIAL_SYMBOL:
                        case SERVER_SYMBOL:
                        case SESSION_SYMBOL:
                        case SHARE_SYMBOL:
                        case SHUTDOWN_SYMBOL:
                        case SIGNED_SYMBOL:
                        case SIMPLE_SYMBOL:
                        case SLAVE_SYMBOL:
                        case SLOW_SYMBOL:
                        case SNAPSHOT_SYMBOL:
                        case SOCKET_SYMBOL:
                        case SONAME_SYMBOL:
                        case SOUNDS_SYMBOL:
                        case SOURCE_SYMBOL:
                        case SPATIAL_SYMBOL:
                        case SQL_AFTER_GTIDS_SYMBOL:
                        case SQL_AFTER_MTS_GAPS_SYMBOL:
                        case SQL_BEFORE_GTIDS_SYMBOL:
                        case SQL_BUFFER_RESULT_SYMBOL:
                        case SQL_CACHE_SYMBOL:
                        case SQL_NO_CACHE_SYMBOL:
                        case SQL_THREAD_SYMBOL:
                        case STARTS_SYMBOL:
                        case START_SYMBOL:
                        case STATS_AUTO_RECALC_SYMBOL:
                        case STATS_PERSISTENT_SYMBOL:
                        case STATS_SAMPLE_PAGES_SYMBOL:
                        case STATUS_SYMBOL:
                        case STOP_SYMBOL:
                        case STORAGE_SYMBOL:
                        case STRING_SYMBOL:
                        case SUBCLASS_ORIGIN_SYMBOL:
                        case SUBDATE_SYMBOL:
                        case SUBJECT_SYMBOL:
                        case SUBPARTITIONS_SYMBOL:
                        case SUBPARTITION_SYMBOL:
                        case SUPER_SYMBOL:
                        case SUSPEND_SYMBOL:
                        case SWAPS_SYMBOL:
                        case SWITCHES_SYMBOL:
                        case TABLESPACE_SYMBOL:
                        case TABLES_SYMBOL:
                        case TABLE_CHECKSUM_SYMBOL:
                        case TABLE_NAME_SYMBOL:
                        case TEMPORARY_SYMBOL:
                        case TEMPTABLE_SYMBOL:
                        case TEXT_SYMBOL:
                        case THAN_SYMBOL:
                        case TIMESTAMP_ADD_SYMBOL:
                        case TIMESTAMP_DIFF_SYMBOL:
                        case TIMESTAMP_SYMBOL:
                        case TIME_SYMBOL:
                        case TRANSACTION_SYMBOL:
                        case TRIGGERS_SYMBOL:
                        case TRUNCATE_SYMBOL:
                        case TYPES_SYMBOL:
                        case TYPE_SYMBOL:
                        case UDF_RETURNS_SYMBOL:
                        case UNCOMMITTED_SYMBOL:
                        case UNDEFINED_SYMBOL:
                        case UNDOFILE_SYMBOL:
                        case UNDO_BUFFER_SIZE_SYMBOL:
                        case UNICODE_SYMBOL:
                        case UNINSTALL_SYMBOL:
                        case UNIQUE_SYMBOL:
                        case UNKNOWN_SYMBOL:
                        case UNTIL_SYMBOL:
                        case UPGRADE_SYMBOL:
                        case USER_RESOURCES_SYMBOL:
                        case USER_SYMBOL:
                        case USE_FRM_SYMBOL:
                        case VALUE_SYMBOL:
                        case VARIABLES_SYMBOL:
                        case VIEW_SYMBOL:
                        case WAIT_SYMBOL:
                        case WARNINGS_SYMBOL:
                        case WEEK_SYMBOL:
                        case WEIGHT_STRING_SYMBOL:
                        case WORK_SYMBOL:
                        case WRAPPER_SYMBOL:
                        case X509_SYMBOL:
                        case XA_SYMBOL:
                        case XML_SYMBOL:
                        case YEAR_SYMBOL:
                        	{
                        		alt146=1;
                        	}
                            break;
                        case SELECT_SYMBOL:
                        	{
                        		alt146=2;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 146;
                            EXCEPTION->state        = 1;


                            goto rulecreate_tableEx;

                        }

                    }
                    else if ( (LA146_0 == ENGINE_SYMBOL))
                    {
                        alt146=2;
                    }
                    else if ( ((SERVER_VERSION < 50500)) && (LA146_0 == TYPE_SYMBOL))
                    {
                        alt146=2;
                    }
                    else if ( (((LA146_0 >= AUTO_INCREMENT_SYMBOL) && (LA146_0 <= AVG_ROW_LENGTH_SYMBOL)) || LA146_0 == COMMENT_SYMBOL || LA146_0 == MAX_ROWS_SYMBOL || LA146_0 == MIN_ROWS_SYMBOL || LA146_0 == PACK_KEYS_SYMBOL || LA146_0 == PASSWORD_SYMBOL))
                    {
                        alt146=2;
                    }
                    else if ( ((SERVER_VERSION >= 50600)) && (((LA146_0 >= STATS_AUTO_RECALC_SYMBOL) && (LA146_0 <= STATS_SAMPLE_PAGES_SYMBOL))))
                    {
                        alt146=2;
                    }
                    else if ( (((LA146_0 >= CHARSET_SYMBOL) && (LA146_0 <= CHECKSUM_SYMBOL)) || LA146_0 == COLLATE_SYMBOL || LA146_0 == CONNECTION_SYMBOL || LA146_0 == DATA_SYMBOL || LA146_0 == DEFAULT_SYMBOL || LA146_0 == DELAY_KEY_WRITE_SYMBOL || LA146_0 == INDEX_SYMBOL || LA146_0 == INSERT_METHOD_SYMBOL || LA146_0 == KEY_BLOCK_SIZE_SYMBOL || LA146_0 == ROW_FORMAT_SYMBOL || LA146_0 == STORAGE_SYMBOL || LA146_0 == TABLESPACE_SYMBOL || LA146_0 == TABLE_CHECKSUM_SYMBOL || LA146_0 == UNION_SYMBOL))
                    {
                        alt146=2;
                    }
                    else if ( ((SERVER_VERSION >= 50100)) && (LA146_0 == PARTITION_SYMBOL))
                    {
                        alt146=2;
                    }
                    else if ( (LA146_0 == AS_SYMBOL || LA146_0 == IGNORE_SYMBOL || LA146_0 == REPLACE_SYMBOL || LA146_0 == SELECT_SYMBOL))
                    {
                        alt146=2;
                    }
                    else if ( (LA146_0 == LIKE_SYMBOL))
                    {
                        alt146=3;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 146;
                        EXCEPTION->state        = 0;


                        goto rulecreate_tableEx;

                    }
                }
                switch (alt146)
                {
            	case 1:
            	    // MySQL.g:509:4: OPEN_PAR_SYMBOL ( create_table_definitions CLOSE_PAR_SYMBOL ( create_table_options )? ( partitioning )? ( table_creation_source )? | partitioning create_select CLOSE_PAR_SYMBOL ( union_clause )? )
            	    {
            	        OPEN_PAR_SYMBOL453 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_create_table2187);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_tableEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPEN_PAR_SYMBOL453_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL453));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL453_tree);
            	        }

            	        // MySQL.g:510:5: ( create_table_definitions CLOSE_PAR_SYMBOL ( create_table_options )? ( partitioning )? ( table_creation_source )? | partitioning create_select CLOSE_PAR_SYMBOL ( union_clause )? )
            	        {
            	            int alt143=2;
            	            {
            	                int LA143_0 = LA(1);
            	                if ( (LA143_0 == BACK_TICK_QUOTED_ID || LA143_0 == IDENTIFIER))
            	                {
            	                    alt143=1;
            	                }
            	                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA143_0 == DOUBLE_QUOTED_TEXT))
            	                {
            	                    alt143=1;
            	                }
            	                else if ( (((LA143_0 >= ACTION_SYMBOL) && (LA143_0 <= ADDDATE_SYMBOL)) || ((LA143_0 >= AFTER_SYMBOL) && (LA143_0 <= ALGORITHM_SYMBOL)) || LA143_0 == ANALYZE_SYMBOL || ((LA143_0 >= ANY_SYMBOL) && (LA143_0 <= ASCII_SYMBOL)) || ((LA143_0 >= AT_SYMBOL) && (LA143_0 <= BACKUP_SYMBOL)) || LA143_0 == BEGIN_SYMBOL || LA143_0 == BINLOG_SYMBOL || LA143_0 == BIT_SYMBOL || ((LA143_0 >= BLOCK_SYMBOL) && (LA143_0 <= BOOL_SYMBOL)) || ((LA143_0 >= BTREE_SYMBOL) && (LA143_0 <= BYTE_SYMBOL)) || LA143_0 == CACHE_SYMBOL || LA143_0 == CASCADED_SYMBOL || ((LA143_0 >= CATALOG_NAME_SYMBOL) && (LA143_0 <= CHANGED_SYMBOL)) || LA143_0 == CHARSET_SYMBOL || ((LA143_0 >= CHECKSUM_SYMBOL) && (LA143_0 <= CLIENT_SYMBOL)) || ((LA143_0 >= CLOSE_SYMBOL) && (LA143_0 <= CODE_SYMBOL)) || LA143_0 == COLLATION_SYMBOL || ((LA143_0 >= COLUMNS_SYMBOL) && (LA143_0 <= COLUMN_NAME_SYMBOL)) || ((LA143_0 >= COMMENT_SYMBOL) && (LA143_0 <= COMPRESSED_SYMBOL)) || LA143_0 == CONCURRENT_SYMBOL || ((LA143_0 >= CONNECTION_SYMBOL) && (LA143_0 <= CONTEXT_SYMBOL)) || LA143_0 == CONTRIBUTORS_SYMBOL || LA143_0 == CPU_SYMBOL || LA143_0 == CUBE_SYMBOL || LA143_0 == CURRENT_SYMBOL || LA143_0 == CURSOR_NAME_SYMBOL || ((LA143_0 >= DATAFILE_SYMBOL) && (LA143_0 <= DATETIME_SYMBOL)) || LA143_0 == DATE_SYMBOL || ((LA143_0 >= DAY_SYMBOL) && (LA143_0 <= DEALLOCATE_SYMBOL)) || LA143_0 == DEFAULT_AUTH_SYMBOL || LA143_0 == DEFINER_SYMBOL || LA143_0 == DELAY_KEY_WRITE_SYMBOL || LA143_0 == DES_KEY_FILE_SYMBOL || LA143_0 == DIAGNOSTICS_SYMBOL || ((LA143_0 >= DIRECTORY_SYMBOL) && (LA143_0 <= DISK_SYMBOL)) || LA143_0 == DO_SYMBOL || ((LA143_0 >= DUMPFILE_SYMBOL) && (LA143_0 <= DYNAMIC_SYMBOL)) || LA143_0 == ENABLE_SYMBOL || LA143_0 == ENDS_SYMBOL || ((LA143_0 >= END_SYMBOL) && (LA143_0 <= ENUM_SYMBOL)) || ((LA143_0 >= ERRORS_SYMBOL) && (LA143_0 <= ERROR_SYMBOL)) || ((LA143_0 >= ESCAPE_SYMBOL) && (LA143_0 <= EVERY_SYMBOL)) || LA143_0 == EXECUTE_SYMBOL || LA143_0 == EXPANSION_SYMBOL || LA143_0 == EXPORT_SYMBOL || ((LA143_0 >= EXTENDED_SYMBOL) && (LA143_0 <= EXTENT_SIZE_SYMBOL)) || ((LA143_0 >= FAST_SYMBOL) && (LA143_0 <= FAULTS_SYMBOL)) || ((LA143_0 >= FILE_SYMBOL) && (LA143_0 <= FIXED_SYMBOL)) || LA143_0 == FLUSH_SYMBOL || ((LA143_0 >= FOREIGN_SYMBOL) && (LA143_0 <= FORMAT_SYMBOL)) || LA143_0 == FOUND_SYMBOL || ((LA143_0 >= FULLTEXT_SYMBOL) && (LA143_0 <= FULL_SYMBOL)) || ((LA143_0 >= FUNCTION_SYMBOL) && (LA143_0 <= GET_FORMAT_SYMBOL)) || ((LA143_0 >= GLOBAL_SYMBOL) && (LA143_0 <= GRANTS_SYMBOL)) || ((LA143_0 >= HANDLER_SYMBOL) && (LA143_0 <= HASH_SYMBOL)) || LA143_0 == HELP_SYMBOL || ((LA143_0 >= HOSTS_SYMBOL) && (LA143_0 <= HOST_SYMBOL)) || ((LA143_0 >= HOUR_SYMBOL) && (LA143_0 <= IDENTIFIED_SYMBOL)) || LA143_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA143_0 >= IMPORT_SYMBOL) && (LA143_0 <= INDEXES_SYMBOL)) || LA143_0 == INDEX_SYMBOL || LA143_0 == INITIAL_SIZE_SYMBOL || LA143_0 == INNODB_SYMBOL || LA143_0 == INSERT_METHOD_SYMBOL || LA143_0 == INSTALL_SYMBOL || LA143_0 == INVOKER_SYMBOL || LA143_0 == IO_SYMBOL || ((LA143_0 >= IPC_SYMBOL) && (LA143_0 <= ISSUER_SYMBOL)) || ((LA143_0 >= KEY_BLOCK_SIZE_SYMBOL) && (LA143_0 <= KEY_SYMBOL)) || ((LA143_0 >= LANGUAGE_SYMBOL) && (LA143_0 <= LAST_SYMBOL)) || LA143_0 == LEAVES_SYMBOL || LA143_0 == LESS_SYMBOL || LA143_0 == LEVEL_SYMBOL || LA143_0 == LINESTRING_SYMBOL || LA143_0 == LIST_SYMBOL || LA143_0 == LOCAL_SYMBOL || LA143_0 == LOCKS_SYMBOL || LA143_0 == LOGFILE_SYMBOL || LA143_0 == LOGS_SYMBOL || LA143_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA143_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA143_0 <= MASTER_SSL_SYMBOL)) || ((LA143_0 >= MASTER_SYMBOL) && (LA143_0 <= MASTER_USER_SYMBOL)) || ((LA143_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA143_0 <= MAX_SIZE_SYMBOL)) || ((LA143_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA143_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA143_0 >= MEDIUM_SYMBOL) && (LA143_0 <= MICROSECOND_SYMBOL)) || LA143_0 == MIGRATE_SYMBOL || ((LA143_0 >= MINUTE_SYMBOL) && (LA143_0 <= MIN_ROWS_SYMBOL)) || LA143_0 == MODE_SYMBOL || LA143_0 == MODIFY_SYMBOL || ((LA143_0 >= MONTH_SYMBOL) && (LA143_0 <= MULTILINESTRING_SYMBOL)) || ((LA143_0 >= MULTIPOINT_SYMBOL) && (LA143_0 <= MULTIPOLYGON_SYMBOL)) || ((LA143_0 >= MUTEX_SYMBOL) && (LA143_0 <= NATIONAL_SYMBOL)) || LA143_0 == NCHAR_SYMBOL || LA143_0 == NDBCLUSTER_SYMBOL || ((LA143_0 >= NEW_SYMBOL) && (LA143_0 <= NONE_SYMBOL)) || ((LA143_0 >= NO_SYMBOL) && (LA143_0 <= NO_WAIT_SYMBOL)) || LA143_0 == NUMBER_SYMBOL || LA143_0 == NVARCHAR_SYMBOL || ((LA143_0 >= OFFSET_SYMBOL) && (LA143_0 <= ONE_SYMBOL)) || LA143_0 == OPEN_SYMBOL || LA143_0 == OPTIONS_SYMBOL || ((LA143_0 >= OWNER_SYMBOL) && (LA143_0 <= PAGE_SYMBOL)) || ((LA143_0 >= PARSER_SYMBOL) && (LA143_0 <= PARTITIONS_SYMBOL)) || ((LA143_0 >= PASSWORD_SYMBOL) && (LA143_0 <= PLUGIN_SYMBOL)) || ((LA143_0 >= POINT_SYMBOL) && (LA143_0 <= PORT_SYMBOL)) || ((LA143_0 >= PREPARE_SYMBOL) && (LA143_0 <= PRIVILEGES_SYMBOL)) || ((LA143_0 >= PROCESSLIST_SYMBOL) && (LA143_0 <= PROXY_SYMBOL)) || ((LA143_0 >= QUARTER_SYMBOL) && (LA143_0 <= QUICK_SYMBOL)) || LA143_0 == READ_ONLY_SYMBOL || ((LA143_0 >= REBUILD_SYMBOL) && (LA143_0 <= REDUNDANT_SYMBOL)) || ((LA143_0 >= RELAYLOG_SYMBOL) && (LA143_0 <= RELAY_THREAD_SYMBOL)) || ((LA143_0 >= RELOAD_SYMBOL) && (LA143_0 <= REMOVE_SYMBOL)) || ((LA143_0 >= REORGANIZE_SYMBOL) && (LA143_0 <= REPEATABLE_SYMBOL)) || LA143_0 == REPLICATION_SYMBOL || LA143_0 == RESET_SYMBOL || LA143_0 == RESTORE_SYMBOL || ((LA143_0 >= RESUME_SYMBOL) && (LA143_0 <= RETURNS_SYMBOL)) || LA143_0 == REVERSE_SYMBOL || ((LA143_0 >= ROLLBACK_SYMBOL) && (LA143_0 <= SCHEDULE_SYMBOL)) || LA143_0 == SCHEMA_NAME_SYMBOL || ((LA143_0 >= SECOND_SYMBOL) && (LA143_0 <= SECURITY_SYMBOL)) || ((LA143_0 >= SERIALIZABLE_SYMBOL) && (LA143_0 <= SERIAL_SYMBOL)) || ((LA143_0 >= SERVER_SYMBOL) && (LA143_0 <= SESSION_SYMBOL)) || LA143_0 == SHARE_SYMBOL || LA143_0 == SHUTDOWN_SYMBOL || ((LA143_0 >= SIGNED_SYMBOL) && (LA143_0 <= SIMPLE_SYMBOL)) || ((LA143_0 >= SLAVE_SYMBOL) && (LA143_0 <= SLOW_SYMBOL)) || ((LA143_0 >= SNAPSHOT_SYMBOL) && (LA143_0 <= SPATIAL_SYMBOL)) || ((LA143_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA143_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA143_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA143_0 <= SQL_CACHE_SYMBOL)) || LA143_0 == SQL_NO_CACHE_SYMBOL || LA143_0 == SQL_THREAD_SYMBOL || ((LA143_0 >= STARTS_SYMBOL) && (LA143_0 <= STATUS_SYMBOL)) || ((LA143_0 >= STOP_SYMBOL) && (LA143_0 <= STORAGE_SYMBOL)) || ((LA143_0 >= STRING_SYMBOL) && (LA143_0 <= SUBPARTITION_SYMBOL)) || ((LA143_0 >= SUPER_SYMBOL) && (LA143_0 <= SWITCHES_SYMBOL)) || ((LA143_0 >= TABLESPACE_SYMBOL) && (LA143_0 <= TABLE_NAME_SYMBOL)) || ((LA143_0 >= TEMPORARY_SYMBOL) && (LA143_0 <= TEMPTABLE_SYMBOL)) || ((LA143_0 >= TEXT_SYMBOL) && (LA143_0 <= THAN_SYMBOL)) || ((LA143_0 >= TIMESTAMP_ADD_SYMBOL) && (LA143_0 <= TIME_SYMBOL)) || ((LA143_0 >= TRANSACTION_SYMBOL) && (LA143_0 <= TRIGGERS_SYMBOL)) || ((LA143_0 >= TRUNCATE_SYMBOL) && (LA143_0 <= UDF_RETURNS_SYMBOL)) || ((LA143_0 >= UNCOMMITTED_SYMBOL) && (LA143_0 <= UNDEFINED_SYMBOL)) || ((LA143_0 >= UNDOFILE_SYMBOL) && (LA143_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA143_0 >= UNICODE_SYMBOL) && (LA143_0 <= UNINSTALL_SYMBOL)) || ((LA143_0 >= UNIQUE_SYMBOL) && (LA143_0 <= UNKNOWN_SYMBOL)) || LA143_0 == UNTIL_SYMBOL || LA143_0 == UPGRADE_SYMBOL || ((LA143_0 >= USER_RESOURCES_SYMBOL) && (LA143_0 <= USE_FRM_SYMBOL)) || LA143_0 == VALUE_SYMBOL || LA143_0 == VARIABLES_SYMBOL || ((LA143_0 >= VIEW_SYMBOL) && (LA143_0 <= WEIGHT_STRING_SYMBOL)) || ((LA143_0 >= WORK_SYMBOL) && (LA143_0 <= WRAPPER_SYMBOL)) || LA143_0 == X509_SYMBOL || ((LA143_0 >= XA_SYMBOL) && (LA143_0 <= XML_SYMBOL)) || LA143_0 == YEAR_SYMBOL))
            	                {
            	                    alt143=1;
            	                }
            	                else if ( (LA143_0 == PARTITION_SYMBOL))
            	                {
            	                    {
            	                        int LA143_5 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50100)) && (LA143_5 == BY_SYMBOL))
            	                        {
            	                            alt143=2;
            	                        }
            	                        else if ( (((LA143_5 >= BIGINT_SYMBOL) && (LA143_5 <= BINARY_SYMBOL)) || LA143_5 == BIT_SYMBOL || LA143_5 == BLOB_SYMBOL || ((LA143_5 >= BOOLEAN_SYMBOL) && (LA143_5 <= BOOL_SYMBOL)) || LA143_5 == CHAR_SYMBOL || LA143_5 == DATETIME_SYMBOL || LA143_5 == DATE_SYMBOL || LA143_5 == DECIMAL_SYMBOL || LA143_5 == DOUBLE_SYMBOL || LA143_5 == ENUM_SYMBOL || LA143_5 == FIXED_SYMBOL || LA143_5 == FLOAT_SYMBOL || ((LA143_5 >= GEOMETRYCOLLECTION_SYMBOL) && (LA143_5 <= GEOMETRY_SYMBOL)) || LA143_5 == INTEGER_SYMBOL || LA143_5 == INT_SYMBOL || LA143_5 == LINESTRING_SYMBOL || ((LA143_5 >= LONGBLOB_SYMBOL) && (LA143_5 <= LONGTEXT_SYMBOL)) || LA143_5 == LONG_SYMBOL || ((LA143_5 >= MEDIUMBLOB_SYMBOL) && (LA143_5 <= MEDIUMTEXT_SYMBOL)) || LA143_5 == MULTILINESTRING_SYMBOL || ((LA143_5 >= MULTIPOINT_SYMBOL) && (LA143_5 <= MULTIPOLYGON_SYMBOL)) || LA143_5 == NATIONAL_SYMBOL || LA143_5 == NCHAR_SYMBOL || LA143_5 == NUMERIC_SYMBOL || LA143_5 == NVARCHAR_SYMBOL || ((LA143_5 >= POINT_SYMBOL) && (LA143_5 <= POLYGON_SYMBOL)) || LA143_5 == REAL_SYMBOL || LA143_5 == SERIAL_SYMBOL || LA143_5 == SET_SYMBOL || LA143_5 == SMALLINT_SYMBOL || LA143_5 == TEXT_SYMBOL || ((LA143_5 >= TIMESTAMP_SYMBOL) && (LA143_5 <= TINYTEXT_SYMBOL)) || LA143_5 == VARBINARY_SYMBOL || LA143_5 == VARCHAR_SYMBOL || LA143_5 == YEAR_SYMBOL))
            	                        {
            	                            alt143=1;
            	                        }
            	                        else
            	                        {
            	                            if (BACKTRACKING>0)
            	                            {
            	                                FAILEDFLAG = ANTLR3_TRUE;
            	                                return retval;
            	                            }


            	                            CONSTRUCTEX();
            	                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                            EXCEPTION->message      = (void *)"";
            	                            EXCEPTION->decisionNum  = 143;
            	                            EXCEPTION->state        = 5;


            	                            goto rulecreate_tableEx;

            	                        }
            	                    }
            	                }
            	                else
            	                {
            	                    if (BACKTRACKING>0)
            	                    {
            	                        FAILEDFLAG = ANTLR3_TRUE;
            	                        return retval;
            	                    }


            	                    CONSTRUCTEX();
            	                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    EXCEPTION->message      = (void *)"";
            	                    EXCEPTION->decisionNum  = 143;
            	                    EXCEPTION->state        = 0;


            	                    goto rulecreate_tableEx;

            	                }
            	            }
            	            switch (alt143)
            	            {
            	        	case 1:
            	        	    // MySQL.g:511:6: create_table_definitions CLOSE_PAR_SYMBOL ( create_table_options )? ( partitioning )? ( table_creation_source )?
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_create_table_definitions_in_create_table2200);
            	        	        create_table_definitions454=create_table_definitions(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_tableEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_table_definitions454.tree);

            	        	        CLOSE_PAR_SYMBOL455 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_create_table2202);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_tableEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        CLOSE_PAR_SYMBOL455_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL455));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL455_tree);
            	        	        }

            	        	        // MySQL.g:511:48: ( create_table_options )?
            	        	        {
            	        	            int alt139=2;
            	        	            {
            	        	                int LA139_0 = LA(1);
            	        	                if ( (LA139_0 == ENGINE_SYMBOL))
            	        	                {
            	        	                    alt139=1;
            	        	                }
            	        	                else if ( ((SERVER_VERSION < 50500)) && (LA139_0 == TYPE_SYMBOL))
            	        	                {
            	        	                    alt139=1;
            	        	                }
            	        	                else if ( (((LA139_0 >= AUTO_INCREMENT_SYMBOL) && (LA139_0 <= AVG_ROW_LENGTH_SYMBOL)) || LA139_0 == COMMENT_SYMBOL || LA139_0 == MAX_ROWS_SYMBOL || LA139_0 == MIN_ROWS_SYMBOL || LA139_0 == PACK_KEYS_SYMBOL || LA139_0 == PASSWORD_SYMBOL))
            	        	                {
            	        	                    alt139=1;
            	        	                }
            	        	                else if ( ((SERVER_VERSION >= 50600)) && (((LA139_0 >= STATS_AUTO_RECALC_SYMBOL) && (LA139_0 <= STATS_SAMPLE_PAGES_SYMBOL))))
            	        	                {
            	        	                    alt139=1;
            	        	                }
            	        	                else if ( (((LA139_0 >= CHARSET_SYMBOL) && (LA139_0 <= CHECKSUM_SYMBOL)) || LA139_0 == COLLATE_SYMBOL || LA139_0 == CONNECTION_SYMBOL || LA139_0 == DATA_SYMBOL || LA139_0 == DEFAULT_SYMBOL || LA139_0 == DELAY_KEY_WRITE_SYMBOL || LA139_0 == INDEX_SYMBOL || LA139_0 == INSERT_METHOD_SYMBOL || LA139_0 == KEY_BLOCK_SIZE_SYMBOL || LA139_0 == ROW_FORMAT_SYMBOL || LA139_0 == STORAGE_SYMBOL || LA139_0 == TABLESPACE_SYMBOL || LA139_0 == TABLE_CHECKSUM_SYMBOL || LA139_0 == UNION_SYMBOL))
            	        	                {
            	        	                    alt139=1;
            	        	                }
            	        	            }
            	        	            switch (alt139)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:511:48: create_table_options
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_create_table_options_in_create_table2204);
            	        	        	        create_table_options456=create_table_options(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulecreate_tableEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_table_options456.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	        // MySQL.g:511:70: ( partitioning )?
            	        	        {
            	        	            int alt140=2;
            	        	            {
            	        	                int LA140_0 = LA(1);
            	        	                if ( ((SERVER_VERSION >= 50100)) && (LA140_0 == PARTITION_SYMBOL))
            	        	                {
            	        	                    alt140=1;
            	        	                }
            	        	            }
            	        	            switch (alt140)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:511:70: partitioning
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_partitioning_in_create_table2207);
            	        	        	        partitioning457=partitioning(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulecreate_tableEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partitioning457.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	        // MySQL.g:511:84: ( table_creation_source )?
            	        	        {
            	        	            int alt141=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case AS_SYMBOL:
            	        	                case IGNORE_SYMBOL:
            	        	                case OPEN_PAR_SYMBOL:
            	        	                case REPLACE_SYMBOL:
            	        	                case SELECT_SYMBOL:
            	        	                	{
            	        	                		alt141=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt141)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:511:84: table_creation_source
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_table_creation_source_in_create_table2210);
            	        	        	        table_creation_source458=table_creation_source(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulecreate_tableEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_creation_source458.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:512:8: partitioning create_select CLOSE_PAR_SYMBOL ( union_clause )?
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_partitioning_in_create_table2220);
            	        	        partitioning459=partitioning(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_tableEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partitioning459.tree);

            	        	        FOLLOWPUSH(FOLLOW_create_select_in_create_table2222);
            	        	        create_select460=create_select(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_tableEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_select460.tree);

            	        	        CLOSE_PAR_SYMBOL461 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_create_table2224);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_tableEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        CLOSE_PAR_SYMBOL461_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL461));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL461_tree);
            	        	        }

            	        	        // MySQL.g:512:52: ( union_clause )?
            	        	        {
            	        	            int alt142=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case UNION_SYMBOL:
            	        	                	{
            	        	                		alt142=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt142)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:512:52: union_clause
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_union_clause_in_create_table2226);
            	        	        	        union_clause462=union_clause(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulecreate_tableEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, union_clause462.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:514:6: ( create_table_options )? ( partitioning )? table_creation_source
            	    {
            	        // MySQL.g:514:6: ( create_table_options )?
            	        {
            	            int alt144=2;
            	            {
            	                int LA144_0 = LA(1);
            	                if ( (LA144_0 == ENGINE_SYMBOL))
            	                {
            	                    alt144=1;
            	                }
            	                else if ( ((SERVER_VERSION < 50500)) && (LA144_0 == TYPE_SYMBOL))
            	                {
            	                    alt144=1;
            	                }
            	                else if ( (((LA144_0 >= AUTO_INCREMENT_SYMBOL) && (LA144_0 <= AVG_ROW_LENGTH_SYMBOL)) || LA144_0 == COMMENT_SYMBOL || LA144_0 == MAX_ROWS_SYMBOL || LA144_0 == MIN_ROWS_SYMBOL || LA144_0 == PACK_KEYS_SYMBOL || LA144_0 == PASSWORD_SYMBOL))
            	                {
            	                    alt144=1;
            	                }
            	                else if ( ((SERVER_VERSION >= 50600)) && (((LA144_0 >= STATS_AUTO_RECALC_SYMBOL) && (LA144_0 <= STATS_SAMPLE_PAGES_SYMBOL))))
            	                {
            	                    alt144=1;
            	                }
            	                else if ( (((LA144_0 >= CHARSET_SYMBOL) && (LA144_0 <= CHECKSUM_SYMBOL)) || LA144_0 == COLLATE_SYMBOL || LA144_0 == CONNECTION_SYMBOL || LA144_0 == DATA_SYMBOL || LA144_0 == DEFAULT_SYMBOL || LA144_0 == DELAY_KEY_WRITE_SYMBOL || LA144_0 == INDEX_SYMBOL || LA144_0 == INSERT_METHOD_SYMBOL || LA144_0 == KEY_BLOCK_SIZE_SYMBOL || LA144_0 == ROW_FORMAT_SYMBOL || LA144_0 == STORAGE_SYMBOL || LA144_0 == TABLESPACE_SYMBOL || LA144_0 == TABLE_CHECKSUM_SYMBOL || LA144_0 == UNION_SYMBOL))
            	                {
            	                    alt144=1;
            	                }
            	            }
            	            switch (alt144)
            	            {
            	        	case 1:
            	        	    // MySQL.g:514:6: create_table_options
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_create_table_options_in_create_table2240);
            	        	        create_table_options463=create_table_options(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_tableEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_table_options463.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:514:28: ( partitioning )?
            	        {
            	            int alt145=2;
            	            {
            	                int LA145_0 = LA(1);
            	                if ( ((SERVER_VERSION >= 50100)) && (LA145_0 == PARTITION_SYMBOL))
            	                {
            	                    alt145=1;
            	                }
            	            }
            	            switch (alt145)
            	            {
            	        	case 1:
            	        	    // MySQL.g:514:28: partitioning
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_partitioning_in_create_table2243);
            	        	        partitioning464=partitioning(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_tableEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partitioning464.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_table_creation_source_in_create_table2246);
            	        table_creation_source465=table_creation_source(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_tableEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_creation_source465.tree);

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:515:6: LIKE_SYMBOL table_identifier
            	    {
            	        LIKE_SYMBOL466 = (pANTLR3_COMMON_TOKEN) MATCHT(LIKE_SYMBOL, &FOLLOW_LIKE_SYMBOL_in_create_table2253);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_tableEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        LIKE_SYMBOL466_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LIKE_SYMBOL466));
            	        ADAPTOR->addChild(ADAPTOR, root_0, LIKE_SYMBOL466_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_table_identifier_in_create_table2255);
            	        table_identifier467=table_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_tableEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_identifier467.tree);

            	    }
            	    break;
            	case 4:
            	    // MySQL.g:516:6: OPEN_PAR_SYMBOL LIKE_SYMBOL table_identifier CLOSE_PAR_SYMBOL
            	    {
            	        OPEN_PAR_SYMBOL468 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_create_table2262);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_tableEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPEN_PAR_SYMBOL468_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL468));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL468_tree);
            	        }

            	        LIKE_SYMBOL469 = (pANTLR3_COMMON_TOKEN) MATCHT(LIKE_SYMBOL, &FOLLOW_LIKE_SYMBOL_in_create_table2264);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_tableEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        LIKE_SYMBOL469_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LIKE_SYMBOL469));
            	        ADAPTOR->addChild(ADAPTOR, root_0, LIKE_SYMBOL469_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_table_identifier_in_create_table2266);
            	        table_identifier470=table_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_tableEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_identifier470.tree);

            	        CLOSE_PAR_SYMBOL471 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_create_table2268);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_tableEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CLOSE_PAR_SYMBOL471_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL471));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL471_tree);
            	        }

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulecreate_tableEx; /* Prevent compiler warnings */
    rulecreate_tableEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end create_table */

/**
 * $ANTLR start create_table_definitions
 * MySQL.g:520:1: create_table_definitions : create_table_definition ( COMMA_SYMBOL create_table_definition )* ;
 */
static MySQLParser_create_table_definitions_return
create_table_definitions(pMySQLParser ctx)
{
    MySQLParser_create_table_definitions_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL473;
    MySQLParser_create_table_definition_return create_table_definition472;
    #undef	RETURN_TYPE_create_table_definition472
    #define	RETURN_TYPE_create_table_definition472 MySQLParser_create_table_definition_return

    MySQLParser_create_table_definition_return create_table_definition474;
    #undef	RETURN_TYPE_create_table_definition474
    #define	RETURN_TYPE_create_table_definition474 MySQLParser_create_table_definition_return

    pANTLR3_BASE_TREE COMMA_SYMBOL473_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL473       = NULL;
    create_table_definition472.tree = NULL;

    create_table_definition474.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL473_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:520:25: ( create_table_definition ( COMMA_SYMBOL create_table_definition )* )
        // MySQL.g:521:2: create_table_definition ( COMMA_SYMBOL create_table_definition )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_create_table_definition_in_create_table_definitions2281);
            create_table_definition472=create_table_definition(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_table_definitionsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_table_definition472.tree);

            // MySQL.g:521:26: ( COMMA_SYMBOL create_table_definition )*

            for (;;)
            {
                int alt147=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt147=1;
                	}
                    break;

                }

                switch (alt147)
                {
            	case 1:
            	    // MySQL.g:521:27: COMMA_SYMBOL create_table_definition
            	    {
            	        COMMA_SYMBOL473 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_create_table_definitions2284);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_table_definitionsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL473_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL473));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL473_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_create_table_definition_in_create_table_definitions2286);
            	        create_table_definition474=create_table_definition(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_table_definitionsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_table_definition474.tree);

            	    }
            	    break;

            	default:
            	    goto loop147;	/* break out of the loop */
            	    break;
                }
            }
            loop147: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto rulecreate_table_definitionsEx; /* Prevent compiler warnings */
    rulecreate_table_definitionsEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end create_table_definitions */

/**
 * $ANTLR start create_table_definition
 * MySQL.g:524:1: create_table_definition : ( identifier column_definition | ( CONSTRAINT_SYMBOL ( identifier )? )? ( PRIMARY_SYMBOL KEY_SYMBOL ( index_type )? index_columns ( index_option )* | FOREIGN_SYMBOL KEY_SYMBOL ( pure_identifier )? index_columns reference_definition | UNIQUE_SYMBOL ( INDEX_SYMBOL | KEY_SYMBOL )? ( pure_identifier )? ( index_type )? index_columns ( index_option )* ) | ( INDEX_SYMBOL | KEY_SYMBOL ) ( pure_identifier )? ( index_type )? index_columns ( index_option )* | ( FULLTEXT_SYMBOL | SPATIAL_SYMBOL ) ( INDEX_SYMBOL | KEY_SYMBOL )? ( pure_identifier )? index_columns ( index_option )* | CHECK_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL );
 */
static MySQLParser_create_table_definition_return
create_table_definition(pMySQLParser ctx)
{
    MySQLParser_create_table_definition_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    CONSTRAINT_SYMBOL477;
    pANTLR3_COMMON_TOKEN    PRIMARY_SYMBOL479;
    pANTLR3_COMMON_TOKEN    KEY_SYMBOL480;
    pANTLR3_COMMON_TOKEN    FOREIGN_SYMBOL484;
    pANTLR3_COMMON_TOKEN    KEY_SYMBOL485;
    pANTLR3_COMMON_TOKEN    UNIQUE_SYMBOL489;
    pANTLR3_COMMON_TOKEN    set490;
    pANTLR3_COMMON_TOKEN    set495;
    pANTLR3_COMMON_TOKEN    set500;
    pANTLR3_COMMON_TOKEN    set501;
    pANTLR3_COMMON_TOKEN    CHECK_SYMBOL505;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL506;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL508;
    MySQLParser_identifier_return identifier475;
    #undef	RETURN_TYPE_identifier475
    #define	RETURN_TYPE_identifier475 MySQLParser_identifier_return

    MySQLParser_column_definition_return column_definition476;
    #undef	RETURN_TYPE_column_definition476
    #define	RETURN_TYPE_column_definition476 MySQLParser_column_definition_return

    MySQLParser_identifier_return identifier478;
    #undef	RETURN_TYPE_identifier478
    #define	RETURN_TYPE_identifier478 MySQLParser_identifier_return

    MySQLParser_index_type_return index_type481;
    #undef	RETURN_TYPE_index_type481
    #define	RETURN_TYPE_index_type481 MySQLParser_index_type_return

    MySQLParser_index_columns_return index_columns482;
    #undef	RETURN_TYPE_index_columns482
    #define	RETURN_TYPE_index_columns482 MySQLParser_index_columns_return

    MySQLParser_index_option_return index_option483;
    #undef	RETURN_TYPE_index_option483
    #define	RETURN_TYPE_index_option483 MySQLParser_index_option_return

    MySQLParser_pure_identifier_return pure_identifier486;
    #undef	RETURN_TYPE_pure_identifier486
    #define	RETURN_TYPE_pure_identifier486 MySQLParser_pure_identifier_return

    MySQLParser_index_columns_return index_columns487;
    #undef	RETURN_TYPE_index_columns487
    #define	RETURN_TYPE_index_columns487 MySQLParser_index_columns_return

    MySQLParser_reference_definition_return reference_definition488;
    #undef	RETURN_TYPE_reference_definition488
    #define	RETURN_TYPE_reference_definition488 MySQLParser_reference_definition_return

    MySQLParser_pure_identifier_return pure_identifier491;
    #undef	RETURN_TYPE_pure_identifier491
    #define	RETURN_TYPE_pure_identifier491 MySQLParser_pure_identifier_return

    MySQLParser_index_type_return index_type492;
    #undef	RETURN_TYPE_index_type492
    #define	RETURN_TYPE_index_type492 MySQLParser_index_type_return

    MySQLParser_index_columns_return index_columns493;
    #undef	RETURN_TYPE_index_columns493
    #define	RETURN_TYPE_index_columns493 MySQLParser_index_columns_return

    MySQLParser_index_option_return index_option494;
    #undef	RETURN_TYPE_index_option494
    #define	RETURN_TYPE_index_option494 MySQLParser_index_option_return

    MySQLParser_pure_identifier_return pure_identifier496;
    #undef	RETURN_TYPE_pure_identifier496
    #define	RETURN_TYPE_pure_identifier496 MySQLParser_pure_identifier_return

    MySQLParser_index_type_return index_type497;
    #undef	RETURN_TYPE_index_type497
    #define	RETURN_TYPE_index_type497 MySQLParser_index_type_return

    MySQLParser_index_columns_return index_columns498;
    #undef	RETURN_TYPE_index_columns498
    #define	RETURN_TYPE_index_columns498 MySQLParser_index_columns_return

    MySQLParser_index_option_return index_option499;
    #undef	RETURN_TYPE_index_option499
    #define	RETURN_TYPE_index_option499 MySQLParser_index_option_return

    MySQLParser_pure_identifier_return pure_identifier502;
    #undef	RETURN_TYPE_pure_identifier502
    #define	RETURN_TYPE_pure_identifier502 MySQLParser_pure_identifier_return

    MySQLParser_index_columns_return index_columns503;
    #undef	RETURN_TYPE_index_columns503
    #define	RETURN_TYPE_index_columns503 MySQLParser_index_columns_return

    MySQLParser_index_option_return index_option504;
    #undef	RETURN_TYPE_index_option504
    #define	RETURN_TYPE_index_option504 MySQLParser_index_option_return

    MySQLParser_expression_return expression507;
    #undef	RETURN_TYPE_expression507
    #define	RETURN_TYPE_expression507 MySQLParser_expression_return

    pANTLR3_BASE_TREE CONSTRAINT_SYMBOL477_tree;
    pANTLR3_BASE_TREE PRIMARY_SYMBOL479_tree;
    pANTLR3_BASE_TREE KEY_SYMBOL480_tree;
    pANTLR3_BASE_TREE FOREIGN_SYMBOL484_tree;
    pANTLR3_BASE_TREE KEY_SYMBOL485_tree;
    pANTLR3_BASE_TREE UNIQUE_SYMBOL489_tree;
    pANTLR3_BASE_TREE set490_tree;
    pANTLR3_BASE_TREE set495_tree;
    pANTLR3_BASE_TREE set500_tree;
    pANTLR3_BASE_TREE set501_tree;
    pANTLR3_BASE_TREE CHECK_SYMBOL505_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL506_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL508_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CONSTRAINT_SYMBOL477       = NULL;
    PRIMARY_SYMBOL479       = NULL;
    KEY_SYMBOL480       = NULL;
    FOREIGN_SYMBOL484       = NULL;
    KEY_SYMBOL485       = NULL;
    UNIQUE_SYMBOL489       = NULL;
    set490       = NULL;
    set495       = NULL;
    set500       = NULL;
    set501       = NULL;
    CHECK_SYMBOL505       = NULL;
    OPEN_PAR_SYMBOL506       = NULL;
    CLOSE_PAR_SYMBOL508       = NULL;
    identifier475.tree = NULL;

    column_definition476.tree = NULL;

    identifier478.tree = NULL;

    index_type481.tree = NULL;

    index_columns482.tree = NULL;

    index_option483.tree = NULL;

    pure_identifier486.tree = NULL;

    index_columns487.tree = NULL;

    reference_definition488.tree = NULL;

    pure_identifier491.tree = NULL;

    index_type492.tree = NULL;

    index_columns493.tree = NULL;

    index_option494.tree = NULL;

    pure_identifier496.tree = NULL;

    index_type497.tree = NULL;

    index_columns498.tree = NULL;

    index_option499.tree = NULL;

    pure_identifier502.tree = NULL;

    index_columns503.tree = NULL;

    index_option504.tree = NULL;

    expression507.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CONSTRAINT_SYMBOL477_tree   = NULL;
    PRIMARY_SYMBOL479_tree   = NULL;
    KEY_SYMBOL480_tree   = NULL;
    FOREIGN_SYMBOL484_tree   = NULL;
    KEY_SYMBOL485_tree   = NULL;
    UNIQUE_SYMBOL489_tree   = NULL;
    set490_tree   = NULL;
    set495_tree   = NULL;
    set500_tree   = NULL;
    set501_tree   = NULL;
    CHECK_SYMBOL505_tree   = NULL;
    OPEN_PAR_SYMBOL506_tree   = NULL;
    CLOSE_PAR_SYMBOL508_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:524:24: ( identifier column_definition | ( CONSTRAINT_SYMBOL ( identifier )? )? ( PRIMARY_SYMBOL KEY_SYMBOL ( index_type )? index_columns ( index_option )* | FOREIGN_SYMBOL KEY_SYMBOL ( pure_identifier )? index_columns reference_definition | UNIQUE_SYMBOL ( INDEX_SYMBOL | KEY_SYMBOL )? ( pure_identifier )? ( index_type )? index_columns ( index_option )* ) | ( INDEX_SYMBOL | KEY_SYMBOL ) ( pure_identifier )? ( index_type )? index_columns ( index_option )* | ( FULLTEXT_SYMBOL | SPATIAL_SYMBOL ) ( INDEX_SYMBOL | KEY_SYMBOL )? ( pure_identifier )? index_columns ( index_option )* | CHECK_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL )

            ANTLR3_UINT32 alt164;

            alt164=5;

            {
                int LA164_0 = LA(1);
                if ( (LA164_0 == BACK_TICK_QUOTED_ID || LA164_0 == IDENTIFIER))
                {
                    alt164=1;
                }
                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA164_0 == DOUBLE_QUOTED_TEXT))
                {
                    alt164=1;
                }
                else if ( (((LA164_0 >= ACTION_SYMBOL) && (LA164_0 <= ADDDATE_SYMBOL)) || ((LA164_0 >= AFTER_SYMBOL) && (LA164_0 <= ALGORITHM_SYMBOL)) || LA164_0 == ANALYZE_SYMBOL || ((LA164_0 >= ANY_SYMBOL) && (LA164_0 <= ASCII_SYMBOL)) || ((LA164_0 >= AT_SYMBOL) && (LA164_0 <= BACKUP_SYMBOL)) || LA164_0 == BEGIN_SYMBOL || LA164_0 == BINLOG_SYMBOL || LA164_0 == BIT_SYMBOL || ((LA164_0 >= BLOCK_SYMBOL) && (LA164_0 <= BOOL_SYMBOL)) || ((LA164_0 >= BTREE_SYMBOL) && (LA164_0 <= BYTE_SYMBOL)) || LA164_0 == CACHE_SYMBOL || LA164_0 == CASCADED_SYMBOL || ((LA164_0 >= CATALOG_NAME_SYMBOL) && (LA164_0 <= CHANGED_SYMBOL)) || LA164_0 == CHARSET_SYMBOL || LA164_0 == CHECKSUM_SYMBOL || ((LA164_0 >= CIPHER_SYMBOL) && (LA164_0 <= CLIENT_SYMBOL)) || ((LA164_0 >= CLOSE_SYMBOL) && (LA164_0 <= CODE_SYMBOL)) || LA164_0 == COLLATION_SYMBOL || ((LA164_0 >= COLUMNS_SYMBOL) && (LA164_0 <= COLUMN_NAME_SYMBOL)) || ((LA164_0 >= COMMENT_SYMBOL) && (LA164_0 <= COMPRESSED_SYMBOL)) || LA164_0 == CONCURRENT_SYMBOL || ((LA164_0 >= CONNECTION_SYMBOL) && (LA164_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA164_0 >= CONTAINS_SYMBOL) && (LA164_0 <= CONTEXT_SYMBOL)) || LA164_0 == CONTRIBUTORS_SYMBOL || LA164_0 == CPU_SYMBOL || LA164_0 == CUBE_SYMBOL || LA164_0 == CURRENT_SYMBOL || LA164_0 == CURSOR_NAME_SYMBOL || ((LA164_0 >= DATAFILE_SYMBOL) && (LA164_0 <= DATETIME_SYMBOL)) || LA164_0 == DATE_SYMBOL || ((LA164_0 >= DAY_SYMBOL) && (LA164_0 <= DEALLOCATE_SYMBOL)) || LA164_0 == DEFAULT_AUTH_SYMBOL || LA164_0 == DEFINER_SYMBOL || LA164_0 == DELAY_KEY_WRITE_SYMBOL || LA164_0 == DES_KEY_FILE_SYMBOL || LA164_0 == DIAGNOSTICS_SYMBOL || ((LA164_0 >= DIRECTORY_SYMBOL) && (LA164_0 <= DISK_SYMBOL)) || LA164_0 == DO_SYMBOL || ((LA164_0 >= DUMPFILE_SYMBOL) && (LA164_0 <= DYNAMIC_SYMBOL)) || LA164_0 == ENABLE_SYMBOL || LA164_0 == ENDS_SYMBOL || ((LA164_0 >= END_SYMBOL) && (LA164_0 <= ENUM_SYMBOL)) || ((LA164_0 >= ERRORS_SYMBOL) && (LA164_0 <= ERROR_SYMBOL)) || ((LA164_0 >= ESCAPE_SYMBOL) && (LA164_0 <= EVERY_SYMBOL)) || LA164_0 == EXECUTE_SYMBOL || LA164_0 == EXPANSION_SYMBOL || LA164_0 == EXPORT_SYMBOL || ((LA164_0 >= EXTENDED_SYMBOL) && (LA164_0 <= EXTENT_SIZE_SYMBOL)) || ((LA164_0 >= FAST_SYMBOL) && (LA164_0 <= FAULTS_SYMBOL)) || ((LA164_0 >= FILE_SYMBOL) && (LA164_0 <= FIXED_SYMBOL)) || LA164_0 == FLUSH_SYMBOL || LA164_0 == FORMAT_SYMBOL || LA164_0 == FOUND_SYMBOL || LA164_0 == FULL_SYMBOL || ((LA164_0 >= FUNCTION_SYMBOL) && (LA164_0 <= GET_FORMAT_SYMBOL)) || ((LA164_0 >= GLOBAL_SYMBOL) && (LA164_0 <= GRANTS_SYMBOL)) || ((LA164_0 >= HANDLER_SYMBOL) && (LA164_0 <= HASH_SYMBOL)) || LA164_0 == HELP_SYMBOL || ((LA164_0 >= HOSTS_SYMBOL) && (LA164_0 <= HOST_SYMBOL)) || ((LA164_0 >= HOUR_SYMBOL) && (LA164_0 <= IDENTIFIED_SYMBOL)) || LA164_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA164_0 >= IMPORT_SYMBOL) && (LA164_0 <= INDEXES_SYMBOL)) || LA164_0 == INITIAL_SIZE_SYMBOL || LA164_0 == INNODB_SYMBOL || LA164_0 == INSERT_METHOD_SYMBOL || LA164_0 == INSTALL_SYMBOL || LA164_0 == INVOKER_SYMBOL || LA164_0 == IO_SYMBOL || ((LA164_0 >= IPC_SYMBOL) && (LA164_0 <= ISSUER_SYMBOL)) || LA164_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA164_0 >= LANGUAGE_SYMBOL) && (LA164_0 <= LAST_SYMBOL)) || LA164_0 == LEAVES_SYMBOL || LA164_0 == LESS_SYMBOL || LA164_0 == LEVEL_SYMBOL || LA164_0 == LINESTRING_SYMBOL || LA164_0 == LIST_SYMBOL || LA164_0 == LOCAL_SYMBOL || LA164_0 == LOCKS_SYMBOL || LA164_0 == LOGFILE_SYMBOL || LA164_0 == LOGS_SYMBOL || LA164_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA164_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA164_0 <= MASTER_SSL_SYMBOL)) || ((LA164_0 >= MASTER_SYMBOL) && (LA164_0 <= MASTER_USER_SYMBOL)) || ((LA164_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA164_0 <= MAX_SIZE_SYMBOL)) || ((LA164_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA164_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA164_0 >= MEDIUM_SYMBOL) && (LA164_0 <= MICROSECOND_SYMBOL)) || LA164_0 == MIGRATE_SYMBOL || ((LA164_0 >= MINUTE_SYMBOL) && (LA164_0 <= MIN_ROWS_SYMBOL)) || LA164_0 == MODE_SYMBOL || LA164_0 == MODIFY_SYMBOL || ((LA164_0 >= MONTH_SYMBOL) && (LA164_0 <= MULTILINESTRING_SYMBOL)) || ((LA164_0 >= MULTIPOINT_SYMBOL) && (LA164_0 <= MULTIPOLYGON_SYMBOL)) || ((LA164_0 >= MUTEX_SYMBOL) && (LA164_0 <= NATIONAL_SYMBOL)) || LA164_0 == NCHAR_SYMBOL || LA164_0 == NDBCLUSTER_SYMBOL || ((LA164_0 >= NEW_SYMBOL) && (LA164_0 <= NONE_SYMBOL)) || ((LA164_0 >= NO_SYMBOL) && (LA164_0 <= NO_WAIT_SYMBOL)) || LA164_0 == NUMBER_SYMBOL || LA164_0 == NVARCHAR_SYMBOL || ((LA164_0 >= OFFSET_SYMBOL) && (LA164_0 <= ONE_SYMBOL)) || LA164_0 == OPEN_SYMBOL || LA164_0 == OPTIONS_SYMBOL || ((LA164_0 >= OWNER_SYMBOL) && (LA164_0 <= PAGE_SYMBOL)) || ((LA164_0 >= PARSER_SYMBOL) && (LA164_0 <= PARTITION_SYMBOL)) || ((LA164_0 >= PASSWORD_SYMBOL) && (LA164_0 <= PLUGIN_SYMBOL)) || ((LA164_0 >= POINT_SYMBOL) && (LA164_0 <= PORT_SYMBOL)) || ((LA164_0 >= PREPARE_SYMBOL) && (LA164_0 <= PREV_SYMBOL)) || LA164_0 == PRIVILEGES_SYMBOL || ((LA164_0 >= PROCESSLIST_SYMBOL) && (LA164_0 <= PROXY_SYMBOL)) || ((LA164_0 >= QUARTER_SYMBOL) && (LA164_0 <= QUICK_SYMBOL)) || LA164_0 == READ_ONLY_SYMBOL || ((LA164_0 >= REBUILD_SYMBOL) && (LA164_0 <= REDUNDANT_SYMBOL)) || ((LA164_0 >= RELAYLOG_SYMBOL) && (LA164_0 <= RELAY_THREAD_SYMBOL)) || ((LA164_0 >= RELOAD_SYMBOL) && (LA164_0 <= REMOVE_SYMBOL)) || ((LA164_0 >= REORGANIZE_SYMBOL) && (LA164_0 <= REPEATABLE_SYMBOL)) || LA164_0 == REPLICATION_SYMBOL || LA164_0 == RESET_SYMBOL || LA164_0 == RESTORE_SYMBOL || ((LA164_0 >= RESUME_SYMBOL) && (LA164_0 <= RETURNS_SYMBOL)) || LA164_0 == REVERSE_SYMBOL || ((LA164_0 >= ROLLBACK_SYMBOL) && (LA164_0 <= SCHEDULE_SYMBOL)) || LA164_0 == SCHEMA_NAME_SYMBOL || ((LA164_0 >= SECOND_SYMBOL) && (LA164_0 <= SECURITY_SYMBOL)) || ((LA164_0 >= SERIALIZABLE_SYMBOL) && (LA164_0 <= SERIAL_SYMBOL)) || ((LA164_0 >= SERVER_SYMBOL) && (LA164_0 <= SESSION_SYMBOL)) || LA164_0 == SHARE_SYMBOL || LA164_0 == SHUTDOWN_SYMBOL || ((LA164_0 >= SIGNED_SYMBOL) && (LA164_0 <= SIMPLE_SYMBOL)) || ((LA164_0 >= SLAVE_SYMBOL) && (LA164_0 <= SLOW_SYMBOL)) || ((LA164_0 >= SNAPSHOT_SYMBOL) && (LA164_0 <= SOURCE_SYMBOL)) || ((LA164_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA164_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA164_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA164_0 <= SQL_CACHE_SYMBOL)) || LA164_0 == SQL_NO_CACHE_SYMBOL || LA164_0 == SQL_THREAD_SYMBOL || ((LA164_0 >= STARTS_SYMBOL) && (LA164_0 <= STATUS_SYMBOL)) || ((LA164_0 >= STOP_SYMBOL) && (LA164_0 <= STORAGE_SYMBOL)) || ((LA164_0 >= STRING_SYMBOL) && (LA164_0 <= SUBPARTITION_SYMBOL)) || ((LA164_0 >= SUPER_SYMBOL) && (LA164_0 <= SWITCHES_SYMBOL)) || ((LA164_0 >= TABLESPACE_SYMBOL) && (LA164_0 <= TABLE_NAME_SYMBOL)) || ((LA164_0 >= TEMPORARY_SYMBOL) && (LA164_0 <= TEMPTABLE_SYMBOL)) || ((LA164_0 >= TEXT_SYMBOL) && (LA164_0 <= THAN_SYMBOL)) || ((LA164_0 >= TIMESTAMP_ADD_SYMBOL) && (LA164_0 <= TIME_SYMBOL)) || ((LA164_0 >= TRANSACTION_SYMBOL) && (LA164_0 <= TRIGGERS_SYMBOL)) || ((LA164_0 >= TRUNCATE_SYMBOL) && (LA164_0 <= UDF_RETURNS_SYMBOL)) || ((LA164_0 >= UNCOMMITTED_SYMBOL) && (LA164_0 <= UNDEFINED_SYMBOL)) || ((LA164_0 >= UNDOFILE_SYMBOL) && (LA164_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA164_0 >= UNICODE_SYMBOL) && (LA164_0 <= UNINSTALL_SYMBOL)) || LA164_0 == UNKNOWN_SYMBOL || LA164_0 == UNTIL_SYMBOL || LA164_0 == UPGRADE_SYMBOL || ((LA164_0 >= USER_RESOURCES_SYMBOL) && (LA164_0 <= USE_FRM_SYMBOL)) || LA164_0 == VALUE_SYMBOL || LA164_0 == VARIABLES_SYMBOL || ((LA164_0 >= VIEW_SYMBOL) && (LA164_0 <= WEIGHT_STRING_SYMBOL)) || ((LA164_0 >= WORK_SYMBOL) && (LA164_0 <= WRAPPER_SYMBOL)) || LA164_0 == X509_SYMBOL || ((LA164_0 >= XA_SYMBOL) && (LA164_0 <= XML_SYMBOL)) || LA164_0 == YEAR_SYMBOL))
                {
                    alt164=1;
                }
                else if ( (LA164_0 == CONSTRAINT_SYMBOL || LA164_0 == FOREIGN_SYMBOL || LA164_0 == PRIMARY_SYMBOL || LA164_0 == UNIQUE_SYMBOL))
                {
                    alt164=2;
                }
                else if ( (LA164_0 == INDEX_SYMBOL || LA164_0 == KEY_SYMBOL))
                {
                    alt164=3;
                }
                else if ( (LA164_0 == FULLTEXT_SYMBOL || LA164_0 == SPATIAL_SYMBOL))
                {
                    alt164=4;
                }
                else if ( (LA164_0 == CHECK_SYMBOL))
                {
                    alt164=5;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 164;
                    EXCEPTION->state        = 0;


                    goto rulecreate_table_definitionEx;

                }
            }
            switch (alt164)
            {
        	case 1:
        	    // MySQL.g:525:2: identifier column_definition
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_identifier_in_create_table_definition2297);
        	        identifier475=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier475.tree);

        	        FOLLOWPUSH(FOLLOW_column_definition_in_create_table_definition2299);
        	        column_definition476=column_definition(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, column_definition476.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:526:4: ( CONSTRAINT_SYMBOL ( identifier )? )? ( PRIMARY_SYMBOL KEY_SYMBOL ( index_type )? index_columns ( index_option )* | FOREIGN_SYMBOL KEY_SYMBOL ( pure_identifier )? index_columns reference_definition | UNIQUE_SYMBOL ( INDEX_SYMBOL | KEY_SYMBOL )? ( pure_identifier )? ( index_type )? index_columns ( index_option )* )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:526:4: ( CONSTRAINT_SYMBOL ( identifier )? )?
        	        {
        	            int alt149=2;
        	            switch ( LA(1) )
        	            {
        	                case CONSTRAINT_SYMBOL:
        	                	{
        	                		alt149=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt149)
        	            {
        	        	case 1:
        	        	    // MySQL.g:526:5: CONSTRAINT_SYMBOL ( identifier )?
        	        	    {
        	        	        CONSTRAINT_SYMBOL477 = (pANTLR3_COMMON_TOKEN) MATCHT(CONSTRAINT_SYMBOL, &FOLLOW_CONSTRAINT_SYMBOL_in_create_table_definition2305);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_definitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        CONSTRAINT_SYMBOL477_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CONSTRAINT_SYMBOL477));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, CONSTRAINT_SYMBOL477_tree);
        	        	        }

        	        	        // MySQL.g:526:23: ( identifier )?
        	        	        {
        	        	            int alt148=2;
        	        	            {
        	        	                int LA148_0 = LA(1);
        	        	                if ( (LA148_0 == BACK_TICK_QUOTED_ID || LA148_0 == IDENTIFIER))
        	        	                {
        	        	                    alt148=1;
        	        	                }
        	        	                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA148_0 == DOUBLE_QUOTED_TEXT))
        	        	                {
        	        	                    alt148=1;
        	        	                }
        	        	                else if ( (((LA148_0 >= ACTION_SYMBOL) && (LA148_0 <= ADDDATE_SYMBOL)) || ((LA148_0 >= AFTER_SYMBOL) && (LA148_0 <= ALGORITHM_SYMBOL)) || LA148_0 == ANALYZE_SYMBOL || ((LA148_0 >= ANY_SYMBOL) && (LA148_0 <= ASCII_SYMBOL)) || ((LA148_0 >= AT_SYMBOL) && (LA148_0 <= BACKUP_SYMBOL)) || LA148_0 == BEGIN_SYMBOL || LA148_0 == BINLOG_SYMBOL || LA148_0 == BIT_SYMBOL || ((LA148_0 >= BLOCK_SYMBOL) && (LA148_0 <= BOOL_SYMBOL)) || ((LA148_0 >= BTREE_SYMBOL) && (LA148_0 <= BYTE_SYMBOL)) || LA148_0 == CACHE_SYMBOL || LA148_0 == CASCADED_SYMBOL || ((LA148_0 >= CATALOG_NAME_SYMBOL) && (LA148_0 <= CHANGED_SYMBOL)) || LA148_0 == CHARSET_SYMBOL || LA148_0 == CHECKSUM_SYMBOL || ((LA148_0 >= CIPHER_SYMBOL) && (LA148_0 <= CLIENT_SYMBOL)) || ((LA148_0 >= CLOSE_SYMBOL) && (LA148_0 <= CODE_SYMBOL)) || LA148_0 == COLLATION_SYMBOL || ((LA148_0 >= COLUMNS_SYMBOL) && (LA148_0 <= COLUMN_NAME_SYMBOL)) || ((LA148_0 >= COMMENT_SYMBOL) && (LA148_0 <= COMPRESSED_SYMBOL)) || LA148_0 == CONCURRENT_SYMBOL || ((LA148_0 >= CONNECTION_SYMBOL) && (LA148_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA148_0 >= CONTAINS_SYMBOL) && (LA148_0 <= CONTEXT_SYMBOL)) || LA148_0 == CONTRIBUTORS_SYMBOL || LA148_0 == CPU_SYMBOL || LA148_0 == CUBE_SYMBOL || LA148_0 == CURRENT_SYMBOL || LA148_0 == CURSOR_NAME_SYMBOL || ((LA148_0 >= DATAFILE_SYMBOL) && (LA148_0 <= DATETIME_SYMBOL)) || LA148_0 == DATE_SYMBOL || ((LA148_0 >= DAY_SYMBOL) && (LA148_0 <= DEALLOCATE_SYMBOL)) || LA148_0 == DEFAULT_AUTH_SYMBOL || LA148_0 == DEFINER_SYMBOL || LA148_0 == DELAY_KEY_WRITE_SYMBOL || LA148_0 == DES_KEY_FILE_SYMBOL || LA148_0 == DIAGNOSTICS_SYMBOL || ((LA148_0 >= DIRECTORY_SYMBOL) && (LA148_0 <= DISK_SYMBOL)) || LA148_0 == DO_SYMBOL || ((LA148_0 >= DUMPFILE_SYMBOL) && (LA148_0 <= DYNAMIC_SYMBOL)) || LA148_0 == ENABLE_SYMBOL || LA148_0 == ENDS_SYMBOL || ((LA148_0 >= END_SYMBOL) && (LA148_0 <= ENUM_SYMBOL)) || ((LA148_0 >= ERRORS_SYMBOL) && (LA148_0 <= ERROR_SYMBOL)) || ((LA148_0 >= ESCAPE_SYMBOL) && (LA148_0 <= EVERY_SYMBOL)) || LA148_0 == EXECUTE_SYMBOL || LA148_0 == EXPANSION_SYMBOL || LA148_0 == EXPORT_SYMBOL || ((LA148_0 >= EXTENDED_SYMBOL) && (LA148_0 <= EXTENT_SIZE_SYMBOL)) || ((LA148_0 >= FAST_SYMBOL) && (LA148_0 <= FAULTS_SYMBOL)) || ((LA148_0 >= FILE_SYMBOL) && (LA148_0 <= FIXED_SYMBOL)) || LA148_0 == FLUSH_SYMBOL || LA148_0 == FORMAT_SYMBOL || LA148_0 == FOUND_SYMBOL || LA148_0 == FULL_SYMBOL || ((LA148_0 >= FUNCTION_SYMBOL) && (LA148_0 <= GET_FORMAT_SYMBOL)) || ((LA148_0 >= GLOBAL_SYMBOL) && (LA148_0 <= GRANTS_SYMBOL)) || ((LA148_0 >= HANDLER_SYMBOL) && (LA148_0 <= HASH_SYMBOL)) || LA148_0 == HELP_SYMBOL || ((LA148_0 >= HOSTS_SYMBOL) && (LA148_0 <= HOST_SYMBOL)) || ((LA148_0 >= HOUR_SYMBOL) && (LA148_0 <= IDENTIFIED_SYMBOL)) || LA148_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA148_0 >= IMPORT_SYMBOL) && (LA148_0 <= INDEXES_SYMBOL)) || LA148_0 == INITIAL_SIZE_SYMBOL || LA148_0 == INNODB_SYMBOL || LA148_0 == INSERT_METHOD_SYMBOL || LA148_0 == INSTALL_SYMBOL || LA148_0 == INVOKER_SYMBOL || LA148_0 == IO_SYMBOL || ((LA148_0 >= IPC_SYMBOL) && (LA148_0 <= ISSUER_SYMBOL)) || LA148_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA148_0 >= LANGUAGE_SYMBOL) && (LA148_0 <= LAST_SYMBOL)) || LA148_0 == LEAVES_SYMBOL || LA148_0 == LESS_SYMBOL || LA148_0 == LEVEL_SYMBOL || LA148_0 == LINESTRING_SYMBOL || LA148_0 == LIST_SYMBOL || LA148_0 == LOCAL_SYMBOL || LA148_0 == LOCKS_SYMBOL || LA148_0 == LOGFILE_SYMBOL || LA148_0 == LOGS_SYMBOL || LA148_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA148_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA148_0 <= MASTER_SSL_SYMBOL)) || ((LA148_0 >= MASTER_SYMBOL) && (LA148_0 <= MASTER_USER_SYMBOL)) || ((LA148_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA148_0 <= MAX_SIZE_SYMBOL)) || ((LA148_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA148_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA148_0 >= MEDIUM_SYMBOL) && (LA148_0 <= MICROSECOND_SYMBOL)) || LA148_0 == MIGRATE_SYMBOL || ((LA148_0 >= MINUTE_SYMBOL) && (LA148_0 <= MIN_ROWS_SYMBOL)) || LA148_0 == MODE_SYMBOL || LA148_0 == MODIFY_SYMBOL || ((LA148_0 >= MONTH_SYMBOL) && (LA148_0 <= MULTILINESTRING_SYMBOL)) || ((LA148_0 >= MULTIPOINT_SYMBOL) && (LA148_0 <= MULTIPOLYGON_SYMBOL)) || ((LA148_0 >= MUTEX_SYMBOL) && (LA148_0 <= NATIONAL_SYMBOL)) || LA148_0 == NCHAR_SYMBOL || LA148_0 == NDBCLUSTER_SYMBOL || ((LA148_0 >= NEW_SYMBOL) && (LA148_0 <= NONE_SYMBOL)) || ((LA148_0 >= NO_SYMBOL) && (LA148_0 <= NO_WAIT_SYMBOL)) || LA148_0 == NUMBER_SYMBOL || LA148_0 == NVARCHAR_SYMBOL || ((LA148_0 >= OFFSET_SYMBOL) && (LA148_0 <= ONE_SYMBOL)) || LA148_0 == OPEN_SYMBOL || LA148_0 == OPTIONS_SYMBOL || ((LA148_0 >= OWNER_SYMBOL) && (LA148_0 <= PAGE_SYMBOL)) || ((LA148_0 >= PARSER_SYMBOL) && (LA148_0 <= PARTITION_SYMBOL)) || ((LA148_0 >= PASSWORD_SYMBOL) && (LA148_0 <= PLUGIN_SYMBOL)) || ((LA148_0 >= POINT_SYMBOL) && (LA148_0 <= PORT_SYMBOL)) || ((LA148_0 >= PREPARE_SYMBOL) && (LA148_0 <= PREV_SYMBOL)) || LA148_0 == PRIVILEGES_SYMBOL || ((LA148_0 >= PROCESSLIST_SYMBOL) && (LA148_0 <= PROXY_SYMBOL)) || ((LA148_0 >= QUARTER_SYMBOL) && (LA148_0 <= QUICK_SYMBOL)) || LA148_0 == READ_ONLY_SYMBOL || ((LA148_0 >= REBUILD_SYMBOL) && (LA148_0 <= REDUNDANT_SYMBOL)) || ((LA148_0 >= RELAYLOG_SYMBOL) && (LA148_0 <= RELAY_THREAD_SYMBOL)) || ((LA148_0 >= RELOAD_SYMBOL) && (LA148_0 <= REMOVE_SYMBOL)) || ((LA148_0 >= REORGANIZE_SYMBOL) && (LA148_0 <= REPEATABLE_SYMBOL)) || LA148_0 == REPLICATION_SYMBOL || LA148_0 == RESET_SYMBOL || LA148_0 == RESTORE_SYMBOL || ((LA148_0 >= RESUME_SYMBOL) && (LA148_0 <= RETURNS_SYMBOL)) || LA148_0 == REVERSE_SYMBOL || ((LA148_0 >= ROLLBACK_SYMBOL) && (LA148_0 <= SCHEDULE_SYMBOL)) || LA148_0 == SCHEMA_NAME_SYMBOL || ((LA148_0 >= SECOND_SYMBOL) && (LA148_0 <= SECURITY_SYMBOL)) || ((LA148_0 >= SERIALIZABLE_SYMBOL) && (LA148_0 <= SERIAL_SYMBOL)) || ((LA148_0 >= SERVER_SYMBOL) && (LA148_0 <= SESSION_SYMBOL)) || LA148_0 == SHARE_SYMBOL || LA148_0 == SHUTDOWN_SYMBOL || ((LA148_0 >= SIGNED_SYMBOL) && (LA148_0 <= SIMPLE_SYMBOL)) || ((LA148_0 >= SLAVE_SYMBOL) && (LA148_0 <= SLOW_SYMBOL)) || ((LA148_0 >= SNAPSHOT_SYMBOL) && (LA148_0 <= SOURCE_SYMBOL)) || ((LA148_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA148_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA148_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA148_0 <= SQL_CACHE_SYMBOL)) || LA148_0 == SQL_NO_CACHE_SYMBOL || LA148_0 == SQL_THREAD_SYMBOL || ((LA148_0 >= STARTS_SYMBOL) && (LA148_0 <= STATUS_SYMBOL)) || ((LA148_0 >= STOP_SYMBOL) && (LA148_0 <= STORAGE_SYMBOL)) || ((LA148_0 >= STRING_SYMBOL) && (LA148_0 <= SUBPARTITION_SYMBOL)) || ((LA148_0 >= SUPER_SYMBOL) && (LA148_0 <= SWITCHES_SYMBOL)) || ((LA148_0 >= TABLESPACE_SYMBOL) && (LA148_0 <= TABLE_NAME_SYMBOL)) || ((LA148_0 >= TEMPORARY_SYMBOL) && (LA148_0 <= TEMPTABLE_SYMBOL)) || ((LA148_0 >= TEXT_SYMBOL) && (LA148_0 <= THAN_SYMBOL)) || ((LA148_0 >= TIMESTAMP_ADD_SYMBOL) && (LA148_0 <= TIME_SYMBOL)) || ((LA148_0 >= TRANSACTION_SYMBOL) && (LA148_0 <= TRIGGERS_SYMBOL)) || ((LA148_0 >= TRUNCATE_SYMBOL) && (LA148_0 <= UDF_RETURNS_SYMBOL)) || ((LA148_0 >= UNCOMMITTED_SYMBOL) && (LA148_0 <= UNDEFINED_SYMBOL)) || ((LA148_0 >= UNDOFILE_SYMBOL) && (LA148_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA148_0 >= UNICODE_SYMBOL) && (LA148_0 <= UNINSTALL_SYMBOL)) || LA148_0 == UNKNOWN_SYMBOL || LA148_0 == UNTIL_SYMBOL || LA148_0 == UPGRADE_SYMBOL || ((LA148_0 >= USER_RESOURCES_SYMBOL) && (LA148_0 <= USE_FRM_SYMBOL)) || LA148_0 == VALUE_SYMBOL || LA148_0 == VARIABLES_SYMBOL || ((LA148_0 >= VIEW_SYMBOL) && (LA148_0 <= WEIGHT_STRING_SYMBOL)) || ((LA148_0 >= WORK_SYMBOL) && (LA148_0 <= WRAPPER_SYMBOL)) || LA148_0 == X509_SYMBOL || ((LA148_0 >= XA_SYMBOL) && (LA148_0 <= XML_SYMBOL)) || LA148_0 == YEAR_SYMBOL))
        	        	                {
        	        	                    alt148=1;
        	        	                }
        	        	            }
        	        	            switch (alt148)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:526:23: identifier
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_identifier_in_create_table_definition2307);
        	        	        	        identifier478=identifier(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulecreate_table_definitionEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier478.tree);

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:527:3: ( PRIMARY_SYMBOL KEY_SYMBOL ( index_type )? index_columns ( index_option )* | FOREIGN_SYMBOL KEY_SYMBOL ( pure_identifier )? index_columns reference_definition | UNIQUE_SYMBOL ( INDEX_SYMBOL | KEY_SYMBOL )? ( pure_identifier )? ( index_type )? index_columns ( index_option )* )
        	        {
        	            int alt157=3;
        	            switch ( LA(1) )
        	            {
        	            case PRIMARY_SYMBOL:
        	            	{
        	            		alt157=1;
        	            	}
        	                break;
        	            case FOREIGN_SYMBOL:
        	            	{
        	            		alt157=2;
        	            	}
        	                break;
        	            case UNIQUE_SYMBOL:
        	            	{
        	            		alt157=3;
        	            	}
        	                break;

        	            default:
        	                if (BACKTRACKING>0)
        	                {
        	                    FAILEDFLAG = ANTLR3_TRUE;
        	                    return retval;
        	                }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                EXCEPTION->message      = (void *)"";
        	                EXCEPTION->decisionNum  = 157;
        	                EXCEPTION->state        = 0;


        	                goto rulecreate_table_definitionEx;

        	            }

        	            switch (alt157)
        	            {
        	        	case 1:
        	        	    // MySQL.g:528:4: PRIMARY_SYMBOL KEY_SYMBOL ( index_type )? index_columns ( index_option )*
        	        	    {
        	        	        PRIMARY_SYMBOL479 = (pANTLR3_COMMON_TOKEN) MATCHT(PRIMARY_SYMBOL, &FOLLOW_PRIMARY_SYMBOL_in_create_table_definition2319);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_definitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        PRIMARY_SYMBOL479_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PRIMARY_SYMBOL479));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, PRIMARY_SYMBOL479_tree);
        	        	        }

        	        	        KEY_SYMBOL480 = (pANTLR3_COMMON_TOKEN) MATCHT(KEY_SYMBOL, &FOLLOW_KEY_SYMBOL_in_create_table_definition2321);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_definitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        KEY_SYMBOL480_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, KEY_SYMBOL480));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, KEY_SYMBOL480_tree);
        	        	        }

        	        	        // MySQL.g:528:30: ( index_type )?
        	        	        {
        	        	            int alt150=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case TYPE_SYMBOL:
        	        	                case USING_SYMBOL:
        	        	                	{
        	        	                		alt150=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt150)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:528:30: index_type
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_index_type_in_create_table_definition2323);
        	        	        	        index_type481=index_type(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulecreate_table_definitionEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_type481.tree);

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_index_columns_in_create_table_definition2326);
        	        	        index_columns482=index_columns(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_definitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_columns482.tree);

        	        	        // MySQL.g:528:56: ( index_option )*

        	        	        for (;;)
        	        	        {
        	        	            int alt151=2;
        	        	            {
        	        	               /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
        	        	                */
        	        	                int LA151_0 = LA(1);
        	        	                if ( (LA151_0 == KEY_BLOCK_SIZE_SYMBOL || LA151_0 == TYPE_SYMBOL || LA151_0 == USING_SYMBOL || LA151_0 == WITH_SYMBOL))
        	        	                {
        	        	                    alt151=1;
        	        	                }
        	        	                else if ( ((SERVER_VERSION >= 50600)) && (LA151_0 == COMMENT_SYMBOL))
        	        	                {
        	        	                    alt151=1;
        	        	                }

        	        	            }
        	        	            switch (alt151)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:528:56: index_option
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_index_option_in_create_table_definition2328);
        	        	        	        index_option483=index_option(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulecreate_table_definitionEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_option483.tree);

        	        	        	    }
        	        	        	    break;

        	        	        	default:
        	        	        	    goto loop151;	/* break out of the loop */
        	        	        	    break;
        	        	            }
        	        	        }
        	        	        loop151: ; /* Jump out to here if this rule does not match */


        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:529:6: FOREIGN_SYMBOL KEY_SYMBOL ( pure_identifier )? index_columns reference_definition
        	        	    {
        	        	        FOREIGN_SYMBOL484 = (pANTLR3_COMMON_TOKEN) MATCHT(FOREIGN_SYMBOL, &FOLLOW_FOREIGN_SYMBOL_in_create_table_definition2336);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_definitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        FOREIGN_SYMBOL484_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOREIGN_SYMBOL484));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, FOREIGN_SYMBOL484_tree);
        	        	        }

        	        	        KEY_SYMBOL485 = (pANTLR3_COMMON_TOKEN) MATCHT(KEY_SYMBOL, &FOLLOW_KEY_SYMBOL_in_create_table_definition2338);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_definitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        KEY_SYMBOL485_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, KEY_SYMBOL485));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, KEY_SYMBOL485_tree);
        	        	        }

        	        	        // MySQL.g:529:32: ( pure_identifier )?
        	        	        {
        	        	            int alt152=2;
        	        	            {
        	        	                int LA152_0 = LA(1);
        	        	                if ( (LA152_0 == BACK_TICK_QUOTED_ID || LA152_0 == IDENTIFIER))
        	        	                {
        	        	                    alt152=1;
        	        	                }
        	        	                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA152_0 == DOUBLE_QUOTED_TEXT))
        	        	                {
        	        	                    alt152=1;
        	        	                }
        	        	            }
        	        	            switch (alt152)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:529:32: pure_identifier
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_pure_identifier_in_create_table_definition2340);
        	        	        	        pure_identifier486=pure_identifier(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulecreate_table_definitionEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier486.tree);

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_index_columns_in_create_table_definition2343);
        	        	        index_columns487=index_columns(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_definitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_columns487.tree);

        	        	        FOLLOWPUSH(FOLLOW_reference_definition_in_create_table_definition2345);
        	        	        reference_definition488=reference_definition(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_definitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, reference_definition488.tree);

        	        	    }
        	        	    break;
        	        	case 3:
        	        	    // MySQL.g:530:6: UNIQUE_SYMBOL ( INDEX_SYMBOL | KEY_SYMBOL )? ( pure_identifier )? ( index_type )? index_columns ( index_option )*
        	        	    {
        	        	        UNIQUE_SYMBOL489 = (pANTLR3_COMMON_TOKEN) MATCHT(UNIQUE_SYMBOL, &FOLLOW_UNIQUE_SYMBOL_in_create_table_definition2352);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_definitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        UNIQUE_SYMBOL489_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNIQUE_SYMBOL489));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, UNIQUE_SYMBOL489_tree);
        	        	        }

        	        	        // MySQL.g:530:20: ( INDEX_SYMBOL | KEY_SYMBOL )?
        	        	        {
        	        	            int alt153=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case INDEX_SYMBOL:
        	        	                case KEY_SYMBOL:
        	        	                	{
        	        	                		alt153=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt153)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:
        	        	        	    {
        	        	        	        set490=(pANTLR3_COMMON_TOKEN)LT(1);

        	        	        	        if ( LA(1) == INDEX_SYMBOL || LA(1) == KEY_SYMBOL )
        	        	        	        {
        	        	        	            CONSUME();
        	        	        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	        	        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set490))
        	        	        	            );
        	        	        	            PERRORRECOVERY=ANTLR3_FALSE;
        	        	        	            FAILEDFLAG=ANTLR3_FALSE;

        	        	        	        }
        	        	        	        else
        	        	        	        {
        	        	        	            if (BACKTRACKING>0)
        	        	        	            {
        	        	        	                FAILEDFLAG = ANTLR3_TRUE;
        	        	        	                return retval;
        	        	        	            }

        	        	        	            CONSTRUCTEX();
        	        	        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
        	        	        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
        	        	        	            EXCEPTION->expectingSet = NULL;

        	        	        	            goto rulecreate_table_definitionEx;
        	        	        	        }


        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        // MySQL.g:530:49: ( pure_identifier )?
        	        	        {
        	        	            int alt154=2;
        	        	            {
        	        	                int LA154_0 = LA(1);
        	        	                if ( (LA154_0 == BACK_TICK_QUOTED_ID || LA154_0 == IDENTIFIER))
        	        	                {
        	        	                    alt154=1;
        	        	                }
        	        	                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA154_0 == DOUBLE_QUOTED_TEXT))
        	        	                {
        	        	                    alt154=1;
        	        	                }
        	        	            }
        	        	            switch (alt154)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:530:49: pure_identifier
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_pure_identifier_in_create_table_definition2363);
        	        	        	        pure_identifier491=pure_identifier(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulecreate_table_definitionEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier491.tree);

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        // MySQL.g:530:66: ( index_type )?
        	        	        {
        	        	            int alt155=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case TYPE_SYMBOL:
        	        	                case USING_SYMBOL:
        	        	                	{
        	        	                		alt155=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt155)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:530:66: index_type
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_index_type_in_create_table_definition2366);
        	        	        	        index_type492=index_type(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulecreate_table_definitionEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_type492.tree);

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_index_columns_in_create_table_definition2369);
        	        	        index_columns493=index_columns(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_definitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_columns493.tree);

        	        	        // MySQL.g:530:92: ( index_option )*

        	        	        for (;;)
        	        	        {
        	        	            int alt156=2;
        	        	            {
        	        	               /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
        	        	                */
        	        	                int LA156_0 = LA(1);
        	        	                if ( (LA156_0 == KEY_BLOCK_SIZE_SYMBOL || LA156_0 == TYPE_SYMBOL || LA156_0 == USING_SYMBOL || LA156_0 == WITH_SYMBOL))
        	        	                {
        	        	                    alt156=1;
        	        	                }
        	        	                else if ( ((SERVER_VERSION >= 50600)) && (LA156_0 == COMMENT_SYMBOL))
        	        	                {
        	        	                    alt156=1;
        	        	                }

        	        	            }
        	        	            switch (alt156)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:530:92: index_option
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_index_option_in_create_table_definition2371);
        	        	        	        index_option494=index_option(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulecreate_table_definitionEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_option494.tree);

        	        	        	    }
        	        	        	    break;

        	        	        	default:
        	        	        	    goto loop156;	/* break out of the loop */
        	        	        	    break;
        	        	            }
        	        	        }
        	        	        loop156: ; /* Jump out to here if this rule does not match */


        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:532:4: ( INDEX_SYMBOL | KEY_SYMBOL ) ( pure_identifier )? ( index_type )? index_columns ( index_option )*
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set495=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == INDEX_SYMBOL || LA(1) == KEY_SYMBOL )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set495))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	            CONSTRUCTEX();
        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
        	            EXCEPTION->expectingSet = NULL;

        	            goto rulecreate_table_definitionEx;
        	        }


        	        // MySQL.g:532:32: ( pure_identifier )?
        	        {
        	            int alt158=2;
        	            {
        	                int LA158_0 = LA(1);
        	                if ( (LA158_0 == BACK_TICK_QUOTED_ID || LA158_0 == IDENTIFIER))
        	                {
        	                    alt158=1;
        	                }
        	                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA158_0 == DOUBLE_QUOTED_TEXT))
        	                {
        	                    alt158=1;
        	                }
        	            }
        	            switch (alt158)
        	            {
        	        	case 1:
        	        	    // MySQL.g:532:32: pure_identifier
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_pure_identifier_in_create_table_definition2389);
        	        	        pure_identifier496=pure_identifier(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_definitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier496.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:532:49: ( index_type )?
        	        {
        	            int alt159=2;
        	            switch ( LA(1) )
        	            {
        	                case TYPE_SYMBOL:
        	                case USING_SYMBOL:
        	                	{
        	                		alt159=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt159)
        	            {
        	        	case 1:
        	        	    // MySQL.g:532:49: index_type
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_index_type_in_create_table_definition2392);
        	        	        index_type497=index_type(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_definitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_type497.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_index_columns_in_create_table_definition2395);
        	        index_columns498=index_columns(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_columns498.tree);

        	        // MySQL.g:532:75: ( index_option )*

        	        for (;;)
        	        {
        	            int alt160=2;
        	            {
        	               /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
        	                */
        	                int LA160_0 = LA(1);
        	                if ( (LA160_0 == KEY_BLOCK_SIZE_SYMBOL || LA160_0 == TYPE_SYMBOL || LA160_0 == USING_SYMBOL || LA160_0 == WITH_SYMBOL))
        	                {
        	                    alt160=1;
        	                }
        	                else if ( ((SERVER_VERSION >= 50600)) && (LA160_0 == COMMENT_SYMBOL))
        	                {
        	                    alt160=1;
        	                }

        	            }
        	            switch (alt160)
        	            {
        	        	case 1:
        	        	    // MySQL.g:532:75: index_option
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_index_option_in_create_table_definition2397);
        	        	        index_option499=index_option(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_definitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_option499.tree);

        	        	    }
        	        	    break;

        	        	default:
        	        	    goto loop160;	/* break out of the loop */
        	        	    break;
        	            }
        	        }
        	        loop160: ; /* Jump out to here if this rule does not match */


        	    }
        	    break;
        	case 4:
        	    // MySQL.g:533:4: ( FULLTEXT_SYMBOL | SPATIAL_SYMBOL ) ( INDEX_SYMBOL | KEY_SYMBOL )? ( pure_identifier )? index_columns ( index_option )*
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set500=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == FULLTEXT_SYMBOL || LA(1) == SPATIAL_SYMBOL )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set500))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	            CONSTRUCTEX();
        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
        	            EXCEPTION->expectingSet = NULL;

        	            goto rulecreate_table_definitionEx;
        	        }


        	        // MySQL.g:533:39: ( INDEX_SYMBOL | KEY_SYMBOL )?
        	        {
        	            int alt161=2;
        	            switch ( LA(1) )
        	            {
        	                case INDEX_SYMBOL:
        	                case KEY_SYMBOL:
        	                	{
        	                		alt161=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt161)
        	            {
        	        	case 1:
        	        	    // MySQL.g:
        	        	    {
        	        	        set501=(pANTLR3_COMMON_TOKEN)LT(1);

        	        	        if ( LA(1) == INDEX_SYMBOL || LA(1) == KEY_SYMBOL )
        	        	        {
        	        	            CONSUME();
        	        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set501))
        	        	            );
        	        	            PERRORRECOVERY=ANTLR3_FALSE;
        	        	            FAILEDFLAG=ANTLR3_FALSE;

        	        	        }
        	        	        else
        	        	        {
        	        	            if (BACKTRACKING>0)
        	        	            {
        	        	                FAILEDFLAG = ANTLR3_TRUE;
        	        	                return retval;
        	        	            }

        	        	            CONSTRUCTEX();
        	        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
        	        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
        	        	            EXCEPTION->expectingSet = NULL;

        	        	            goto rulecreate_table_definitionEx;
        	        	        }


        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:533:68: ( pure_identifier )?
        	        {
        	            int alt162=2;
        	            {
        	                int LA162_0 = LA(1);
        	                if ( (LA162_0 == BACK_TICK_QUOTED_ID || LA162_0 == IDENTIFIER))
        	                {
        	                    alt162=1;
        	                }
        	                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA162_0 == DOUBLE_QUOTED_TEXT))
        	                {
        	                    alt162=1;
        	                }
        	            }
        	            switch (alt162)
        	            {
        	        	case 1:
        	        	    // MySQL.g:533:68: pure_identifier
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_pure_identifier_in_create_table_definition2420);
        	        	        pure_identifier502=pure_identifier(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_definitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier502.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_index_columns_in_create_table_definition2423);
        	        index_columns503=index_columns(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_columns503.tree);

        	        // MySQL.g:533:99: ( index_option )*

        	        for (;;)
        	        {
        	            int alt163=2;
        	            {
        	               /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
        	                */
        	                int LA163_0 = LA(1);
        	                if ( (LA163_0 == KEY_BLOCK_SIZE_SYMBOL || LA163_0 == TYPE_SYMBOL || LA163_0 == USING_SYMBOL || LA163_0 == WITH_SYMBOL))
        	                {
        	                    alt163=1;
        	                }
        	                else if ( ((SERVER_VERSION >= 50600)) && (LA163_0 == COMMENT_SYMBOL))
        	                {
        	                    alt163=1;
        	                }

        	            }
        	            switch (alt163)
        	            {
        	        	case 1:
        	        	    // MySQL.g:533:99: index_option
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_index_option_in_create_table_definition2425);
        	        	        index_option504=index_option(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_definitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_option504.tree);

        	        	    }
        	        	    break;

        	        	default:
        	        	    goto loop163;	/* break out of the loop */
        	        	    break;
        	            }
        	        }
        	        loop163: ; /* Jump out to here if this rule does not match */


        	    }
        	    break;
        	case 5:
        	    // MySQL.g:534:4: CHECK_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CHECK_SYMBOL505 = (pANTLR3_COMMON_TOKEN) MATCHT(CHECK_SYMBOL, &FOLLOW_CHECK_SYMBOL_in_create_table_definition2431);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CHECK_SYMBOL505_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHECK_SYMBOL505));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CHECK_SYMBOL505_tree);
        	        }

        	        OPEN_PAR_SYMBOL506 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_create_table_definition2433);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL506_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL506));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL506_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_create_table_definition2435);
        	        expression507=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression507.tree);

        	        CLOSE_PAR_SYMBOL508 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_definition2437);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL508_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL508));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL508_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulecreate_table_definitionEx; /* Prevent compiler warnings */
    rulecreate_table_definitionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end create_table_definition */

/**
 * $ANTLR start table_creation_source
 * MySQL.g:537:1: table_creation_source : ( REPLACE_SYMBOL | IGNORE_SYMBOL )? ( AS_SYMBOL )? ( create_select | OPEN_PAR_SYMBOL create_select CLOSE_PAR_SYMBOL ) ( union_clause )? ;
 */
static MySQLParser_table_creation_source_return
table_creation_source(pMySQLParser ctx)
{
    MySQLParser_table_creation_source_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set509;
    pANTLR3_COMMON_TOKEN    AS_SYMBOL510;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL512;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL514;
    MySQLParser_create_select_return create_select511;
    #undef	RETURN_TYPE_create_select511
    #define	RETURN_TYPE_create_select511 MySQLParser_create_select_return

    MySQLParser_create_select_return create_select513;
    #undef	RETURN_TYPE_create_select513
    #define	RETURN_TYPE_create_select513 MySQLParser_create_select_return

    MySQLParser_union_clause_return union_clause515;
    #undef	RETURN_TYPE_union_clause515
    #define	RETURN_TYPE_union_clause515 MySQLParser_union_clause_return

    pANTLR3_BASE_TREE set509_tree;
    pANTLR3_BASE_TREE AS_SYMBOL510_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL512_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL514_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set509       = NULL;
    AS_SYMBOL510       = NULL;
    OPEN_PAR_SYMBOL512       = NULL;
    CLOSE_PAR_SYMBOL514       = NULL;
    create_select511.tree = NULL;

    create_select513.tree = NULL;

    union_clause515.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set509_tree   = NULL;
    AS_SYMBOL510_tree   = NULL;
    OPEN_PAR_SYMBOL512_tree   = NULL;
    CLOSE_PAR_SYMBOL514_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:537:22: ( ( REPLACE_SYMBOL | IGNORE_SYMBOL )? ( AS_SYMBOL )? ( create_select | OPEN_PAR_SYMBOL create_select CLOSE_PAR_SYMBOL ) ( union_clause )? )
        // MySQL.g:538:2: ( REPLACE_SYMBOL | IGNORE_SYMBOL )? ( AS_SYMBOL )? ( create_select | OPEN_PAR_SYMBOL create_select CLOSE_PAR_SYMBOL ) ( union_clause )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:538:2: ( REPLACE_SYMBOL | IGNORE_SYMBOL )?
            {
                int alt165=2;
                switch ( LA(1) )
                {
                    case IGNORE_SYMBOL:
                    case REPLACE_SYMBOL:
                    	{
                    		alt165=1;
                    	}
                        break;
                }

                switch (alt165)
                {
            	case 1:
            	    // MySQL.g:
            	    {
            	        set509=(pANTLR3_COMMON_TOKEN)LT(1);

            	        if ( LA(1) == IGNORE_SYMBOL || LA(1) == REPLACE_SYMBOL )
            	        {
            	            CONSUME();
            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set509))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	            CONSTRUCTEX();
            	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	            EXCEPTION->expectingSet = NULL;

            	            goto ruletable_creation_sourceEx;
            	        }


            	    }
            	    break;

                }
            }

            // MySQL.g:538:36: ( AS_SYMBOL )?
            {
                int alt166=2;
                switch ( LA(1) )
                {
                    case AS_SYMBOL:
                    	{
                    		alt166=1;
                    	}
                        break;
                }

                switch (alt166)
                {
            	case 1:
            	    // MySQL.g:538:36: AS_SYMBOL
            	    {
            	        AS_SYMBOL510 = (pANTLR3_COMMON_TOKEN) MATCHT(AS_SYMBOL, &FOLLOW_AS_SYMBOL_in_table_creation_source2455);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_creation_sourceEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        AS_SYMBOL510_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AS_SYMBOL510));
            	        ADAPTOR->addChild(ADAPTOR, root_0, AS_SYMBOL510_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:538:47: ( create_select | OPEN_PAR_SYMBOL create_select CLOSE_PAR_SYMBOL )
            {
                int alt167=2;
                switch ( LA(1) )
                {
                case SELECT_SYMBOL:
                	{
                		alt167=1;
                	}
                    break;
                case OPEN_PAR_SYMBOL:
                	{
                		alt167=2;
                	}
                    break;

                default:
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 167;
                    EXCEPTION->state        = 0;


                    goto ruletable_creation_sourceEx;

                }

                switch (alt167)
                {
            	case 1:
            	    // MySQL.g:538:48: create_select
            	    {
            	        FOLLOWPUSH(FOLLOW_create_select_in_table_creation_source2459);
            	        create_select511=create_select(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_creation_sourceEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_select511.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:538:64: OPEN_PAR_SYMBOL create_select CLOSE_PAR_SYMBOL
            	    {
            	        OPEN_PAR_SYMBOL512 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_table_creation_source2463);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_creation_sourceEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPEN_PAR_SYMBOL512_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL512));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL512_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_create_select_in_table_creation_source2465);
            	        create_select513=create_select(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_creation_sourceEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_select513.tree);

            	        CLOSE_PAR_SYMBOL514 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_table_creation_source2467);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_creation_sourceEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CLOSE_PAR_SYMBOL514_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL514));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL514_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:538:112: ( union_clause )?
            {
                int alt168=2;
                switch ( LA(1) )
                {
                    case UNION_SYMBOL:
                    	{
                    		alt168=1;
                    	}
                        break;
                }

                switch (alt168)
                {
            	case 1:
            	    // MySQL.g:538:112: union_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_union_clause_in_table_creation_source2470);
            	        union_clause515=union_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_creation_sourceEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, union_clause515.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruletable_creation_sourceEx; /* Prevent compiler warnings */
    ruletable_creation_sourceEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end table_creation_source */

/**
 * $ANTLR start create_select
 * MySQL.g:542:1: create_select : SELECT_SYMBOL ( options {greedy=true; } : select_option )* select_item_list ( select_source_and_options )? ( select_from_tail )? ;
 */
static MySQLParser_create_select_return
create_select(pMySQLParser ctx)
{
    MySQLParser_create_select_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    SELECT_SYMBOL516;
    MySQLParser_select_option_return select_option517;
    #undef	RETURN_TYPE_select_option517
    #define	RETURN_TYPE_select_option517 MySQLParser_select_option_return

    MySQLParser_select_item_list_return select_item_list518;
    #undef	RETURN_TYPE_select_item_list518
    #define	RETURN_TYPE_select_item_list518 MySQLParser_select_item_list_return

    MySQLParser_select_source_and_options_return select_source_and_options519;
    #undef	RETURN_TYPE_select_source_and_options519
    #define	RETURN_TYPE_select_source_and_options519 MySQLParser_select_source_and_options_return

    MySQLParser_select_from_tail_return select_from_tail520;
    #undef	RETURN_TYPE_select_from_tail520
    #define	RETURN_TYPE_select_from_tail520 MySQLParser_select_from_tail_return

    pANTLR3_BASE_TREE SELECT_SYMBOL516_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SELECT_SYMBOL516       = NULL;
    select_option517.tree = NULL;

    select_item_list518.tree = NULL;

    select_source_and_options519.tree = NULL;

    select_from_tail520.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SELECT_SYMBOL516_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:542:14: ( SELECT_SYMBOL ( options {greedy=true; } : select_option )* select_item_list ( select_source_and_options )? ( select_from_tail )? )
        // MySQL.g:543:2: SELECT_SYMBOL ( options {greedy=true; } : select_option )* select_item_list ( select_source_and_options )? ( select_from_tail )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            SELECT_SYMBOL516 = (pANTLR3_COMMON_TOKEN) MATCHT(SELECT_SYMBOL, &FOLLOW_SELECT_SYMBOL_in_create_select2481);
            if  (HASEXCEPTION())
            {
                goto rulecreate_selectEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SELECT_SYMBOL516_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SELECT_SYMBOL516));
            ADAPTOR->addChild(ADAPTOR, root_0, SELECT_SYMBOL516_tree);
            }

            // MySQL.g:543:16: ( options {greedy=true; } : select_option )*

            for (;;)
            {
                int alt169=2;
                switch ( LA(1) )
                {
                case SQL_BUFFER_RESULT_SYMBOL:
                	{
                		alt169=1;
                	}
                    break;
                case ALL_SYMBOL:
                case DISTINCT_SYMBOL:
                case HIGH_PRIORITY_SYMBOL:
                case SQL_BIG_RESULT_SYMBOL:
                case SQL_CALC_FOUND_ROWS_SYMBOL:
                case SQL_NO_CACHE_SYMBOL:
                case SQL_SMALL_RESULT_SYMBOL:
                case STRAIGHT_JOIN_SYMBOL:
                	{
                		alt169=1;
                	}
                    break;
                case SQL_CACHE_SYMBOL:
                	{
                		alt169=1;
                	}
                    break;

                }

                switch (alt169)
                {
            	case 1:
            	    // MySQL.g:543:46: select_option
            	    {
            	        FOLLOWPUSH(FOLLOW_select_option_in_create_select2497);
            	        select_option517=select_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_selectEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_option517.tree);

            	    }
            	    break;

            	default:
            	    goto loop169;	/* break out of the loop */
            	    break;
                }
            }
            loop169: ; /* Jump out to here if this rule does not match */


            FOLLOWPUSH(FOLLOW_select_item_list_in_create_select2501);
            select_item_list518=select_item_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_selectEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_item_list518.tree);

            // MySQL.g:543:79: ( select_source_and_options )?
            {
                int alt170=2;
                switch ( LA(1) )
                {
                    case FROM_SYMBOL:
                    case INTO_SYMBOL:
                    case LIMIT_SYMBOL:
                    	{
                    		alt170=1;
                    	}
                        break;
                }

                switch (alt170)
                {
            	case 1:
            	    // MySQL.g:543:79: select_source_and_options
            	    {
            	        FOLLOWPUSH(FOLLOW_select_source_and_options_in_create_select2503);
            	        select_source_and_options519=select_source_and_options(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_selectEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_source_and_options519.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:543:106: ( select_from_tail )?
            {
                int alt171=2;
                switch ( LA(1) )
                {
                    case FOR_SYMBOL:
                    case LOCK_SYMBOL:
                    	{
                    		alt171=1;
                    	}
                        break;
                }

                switch (alt171)
                {
            	case 1:
            	    // MySQL.g:543:106: select_from_tail
            	    {
            	        FOLLOWPUSH(FOLLOW_select_from_tail_in_create_select2506);
            	        select_from_tail520=select_from_tail(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_selectEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_from_tail520.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulecreate_selectEx; /* Prevent compiler warnings */
    rulecreate_selectEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end create_select */

/**
 * $ANTLR start create_tablespace
 * MySQL.g:546:1: create_tablespace : TABLESPACE_SYMBOL identifier ADD_SYMBOL DATAFILE_SYMBOL string_literal USE_SYMBOL LOGFILE_SYMBOL GROUP_SYMBOL pure_identifier ( tablespace_option )* ;
 */
static MySQLParser_create_tablespace_return
create_tablespace(pMySQLParser ctx)
{
    MySQLParser_create_tablespace_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    TABLESPACE_SYMBOL521;
    pANTLR3_COMMON_TOKEN    ADD_SYMBOL523;
    pANTLR3_COMMON_TOKEN    DATAFILE_SYMBOL524;
    pANTLR3_COMMON_TOKEN    USE_SYMBOL526;
    pANTLR3_COMMON_TOKEN    LOGFILE_SYMBOL527;
    pANTLR3_COMMON_TOKEN    GROUP_SYMBOL528;
    MySQLParser_identifier_return identifier522;
    #undef	RETURN_TYPE_identifier522
    #define	RETURN_TYPE_identifier522 MySQLParser_identifier_return

    MySQLParser_string_literal_return string_literal525;
    #undef	RETURN_TYPE_string_literal525
    #define	RETURN_TYPE_string_literal525 MySQLParser_string_literal_return

    MySQLParser_pure_identifier_return pure_identifier529;
    #undef	RETURN_TYPE_pure_identifier529
    #define	RETURN_TYPE_pure_identifier529 MySQLParser_pure_identifier_return

    MySQLParser_tablespace_option_return tablespace_option530;
    #undef	RETURN_TYPE_tablespace_option530
    #define	RETURN_TYPE_tablespace_option530 MySQLParser_tablespace_option_return

    pANTLR3_BASE_TREE TABLESPACE_SYMBOL521_tree;
    pANTLR3_BASE_TREE ADD_SYMBOL523_tree;
    pANTLR3_BASE_TREE DATAFILE_SYMBOL524_tree;
    pANTLR3_BASE_TREE USE_SYMBOL526_tree;
    pANTLR3_BASE_TREE LOGFILE_SYMBOL527_tree;
    pANTLR3_BASE_TREE GROUP_SYMBOL528_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    TABLESPACE_SYMBOL521       = NULL;
    ADD_SYMBOL523       = NULL;
    DATAFILE_SYMBOL524       = NULL;
    USE_SYMBOL526       = NULL;
    LOGFILE_SYMBOL527       = NULL;
    GROUP_SYMBOL528       = NULL;
    identifier522.tree = NULL;

    string_literal525.tree = NULL;

    pure_identifier529.tree = NULL;

    tablespace_option530.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    TABLESPACE_SYMBOL521_tree   = NULL;
    ADD_SYMBOL523_tree   = NULL;
    DATAFILE_SYMBOL524_tree   = NULL;
    USE_SYMBOL526_tree   = NULL;
    LOGFILE_SYMBOL527_tree   = NULL;
    GROUP_SYMBOL528_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:546:18: ( TABLESPACE_SYMBOL identifier ADD_SYMBOL DATAFILE_SYMBOL string_literal USE_SYMBOL LOGFILE_SYMBOL GROUP_SYMBOL pure_identifier ( tablespace_option )* )
        // MySQL.g:547:2: TABLESPACE_SYMBOL identifier ADD_SYMBOL DATAFILE_SYMBOL string_literal USE_SYMBOL LOGFILE_SYMBOL GROUP_SYMBOL pure_identifier ( tablespace_option )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            TABLESPACE_SYMBOL521 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLESPACE_SYMBOL, &FOLLOW_TABLESPACE_SYMBOL_in_create_tablespace2516);
            if  (HASEXCEPTION())
            {
                goto rulecreate_tablespaceEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            TABLESPACE_SYMBOL521_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLESPACE_SYMBOL521));
            ADAPTOR->addChild(ADAPTOR, root_0, TABLESPACE_SYMBOL521_tree);
            }

            FOLLOWPUSH(FOLLOW_identifier_in_create_tablespace2518);
            identifier522=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_tablespaceEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier522.tree);

            ADD_SYMBOL523 = (pANTLR3_COMMON_TOKEN) MATCHT(ADD_SYMBOL, &FOLLOW_ADD_SYMBOL_in_create_tablespace2520);
            if  (HASEXCEPTION())
            {
                goto rulecreate_tablespaceEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ADD_SYMBOL523_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ADD_SYMBOL523));
            ADAPTOR->addChild(ADAPTOR, root_0, ADD_SYMBOL523_tree);
            }

            DATAFILE_SYMBOL524 = (pANTLR3_COMMON_TOKEN) MATCHT(DATAFILE_SYMBOL, &FOLLOW_DATAFILE_SYMBOL_in_create_tablespace2522);
            if  (HASEXCEPTION())
            {
                goto rulecreate_tablespaceEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DATAFILE_SYMBOL524_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATAFILE_SYMBOL524));
            ADAPTOR->addChild(ADAPTOR, root_0, DATAFILE_SYMBOL524_tree);
            }

            FOLLOWPUSH(FOLLOW_string_literal_in_create_tablespace2524);
            string_literal525=string_literal(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_tablespaceEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal525.tree);

            USE_SYMBOL526 = (pANTLR3_COMMON_TOKEN) MATCHT(USE_SYMBOL, &FOLLOW_USE_SYMBOL_in_create_tablespace2528);
            if  (HASEXCEPTION())
            {
                goto rulecreate_tablespaceEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            USE_SYMBOL526_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USE_SYMBOL526));
            ADAPTOR->addChild(ADAPTOR, root_0, USE_SYMBOL526_tree);
            }

            LOGFILE_SYMBOL527 = (pANTLR3_COMMON_TOKEN) MATCHT(LOGFILE_SYMBOL, &FOLLOW_LOGFILE_SYMBOL_in_create_tablespace2530);
            if  (HASEXCEPTION())
            {
                goto rulecreate_tablespaceEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            LOGFILE_SYMBOL527_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOGFILE_SYMBOL527));
            ADAPTOR->addChild(ADAPTOR, root_0, LOGFILE_SYMBOL527_tree);
            }

            GROUP_SYMBOL528 = (pANTLR3_COMMON_TOKEN) MATCHT(GROUP_SYMBOL, &FOLLOW_GROUP_SYMBOL_in_create_tablespace2532);
            if  (HASEXCEPTION())
            {
                goto rulecreate_tablespaceEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            GROUP_SYMBOL528_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GROUP_SYMBOL528));
            ADAPTOR->addChild(ADAPTOR, root_0, GROUP_SYMBOL528_tree);
            }

            FOLLOWPUSH(FOLLOW_pure_identifier_in_create_tablespace2534);
            pure_identifier529=pure_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_tablespaceEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier529.tree);

            // MySQL.g:548:58: ( tablespace_option )*

            for (;;)
            {
                int alt172=2;
                switch ( LA(1) )
                {
                case AUTOEXTEND_SIZE_SYMBOL:
                case COMMENT_SYMBOL:
                case ENGINE_SYMBOL:
                case EXTENT_SIZE_SYMBOL:
                case INITIAL_SIZE_SYMBOL:
                case MAX_SIZE_SYMBOL:
                case NODEGROUP_SYMBOL:
                case WAIT_SYMBOL:
                	{
                		alt172=1;
                	}
                    break;

                }

                switch (alt172)
                {
            	case 1:
            	    // MySQL.g:548:58: tablespace_option
            	    {
            	        FOLLOWPUSH(FOLLOW_tablespace_option_in_create_tablespace2536);
            	        tablespace_option530=tablespace_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_tablespaceEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, tablespace_option530.tree);

            	    }
            	    break;

            	default:
            	    goto loop172;	/* break out of the loop */
            	    break;
                }
            }
            loop172: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto rulecreate_tablespaceEx; /* Prevent compiler warnings */
    rulecreate_tablespaceEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end create_tablespace */

/**
 * $ANTLR start tablespace_option
 * MySQL.g:551:1: tablespace_option : ( EXTENT_SIZE_SYMBOL ( EQUAL_OPERATOR )? INTEGER | INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? INTEGER | AUTOEXTEND_SIZE_SYMBOL ( EQUAL_OPERATOR )? INTEGER | MAX_SIZE_SYMBOL ( EQUAL_OPERATOR )? INTEGER | NODEGROUP_SYMBOL ( EQUAL_OPERATOR )? pure_identifier | WAIT_SYMBOL | COMMENT_SYMBOL string_literal | ENGINE_SYMBOL ( EQUAL_OPERATOR )? IDENTIFIER );
 */
static MySQLParser_tablespace_option_return
tablespace_option(pMySQLParser ctx)
{
    MySQLParser_tablespace_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    EXTENT_SIZE_SYMBOL531;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR532;
    pANTLR3_COMMON_TOKEN    INTEGER533;
    pANTLR3_COMMON_TOKEN    INITIAL_SIZE_SYMBOL534;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR535;
    pANTLR3_COMMON_TOKEN    INTEGER536;
    pANTLR3_COMMON_TOKEN    AUTOEXTEND_SIZE_SYMBOL537;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR538;
    pANTLR3_COMMON_TOKEN    INTEGER539;
    pANTLR3_COMMON_TOKEN    MAX_SIZE_SYMBOL540;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR541;
    pANTLR3_COMMON_TOKEN    INTEGER542;
    pANTLR3_COMMON_TOKEN    NODEGROUP_SYMBOL543;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR544;
    pANTLR3_COMMON_TOKEN    WAIT_SYMBOL546;
    pANTLR3_COMMON_TOKEN    COMMENT_SYMBOL547;
    pANTLR3_COMMON_TOKEN    ENGINE_SYMBOL549;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR550;
    pANTLR3_COMMON_TOKEN    IDENTIFIER551;
    MySQLParser_pure_identifier_return pure_identifier545;
    #undef	RETURN_TYPE_pure_identifier545
    #define	RETURN_TYPE_pure_identifier545 MySQLParser_pure_identifier_return

    MySQLParser_string_literal_return string_literal548;
    #undef	RETURN_TYPE_string_literal548
    #define	RETURN_TYPE_string_literal548 MySQLParser_string_literal_return

    pANTLR3_BASE_TREE EXTENT_SIZE_SYMBOL531_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR532_tree;
    pANTLR3_BASE_TREE INTEGER533_tree;
    pANTLR3_BASE_TREE INITIAL_SIZE_SYMBOL534_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR535_tree;
    pANTLR3_BASE_TREE INTEGER536_tree;
    pANTLR3_BASE_TREE AUTOEXTEND_SIZE_SYMBOL537_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR538_tree;
    pANTLR3_BASE_TREE INTEGER539_tree;
    pANTLR3_BASE_TREE MAX_SIZE_SYMBOL540_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR541_tree;
    pANTLR3_BASE_TREE INTEGER542_tree;
    pANTLR3_BASE_TREE NODEGROUP_SYMBOL543_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR544_tree;
    pANTLR3_BASE_TREE WAIT_SYMBOL546_tree;
    pANTLR3_BASE_TREE COMMENT_SYMBOL547_tree;
    pANTLR3_BASE_TREE ENGINE_SYMBOL549_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR550_tree;
    pANTLR3_BASE_TREE IDENTIFIER551_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    EXTENT_SIZE_SYMBOL531       = NULL;
    EQUAL_OPERATOR532       = NULL;
    INTEGER533       = NULL;
    INITIAL_SIZE_SYMBOL534       = NULL;
    EQUAL_OPERATOR535       = NULL;
    INTEGER536       = NULL;
    AUTOEXTEND_SIZE_SYMBOL537       = NULL;
    EQUAL_OPERATOR538       = NULL;
    INTEGER539       = NULL;
    MAX_SIZE_SYMBOL540       = NULL;
    EQUAL_OPERATOR541       = NULL;
    INTEGER542       = NULL;
    NODEGROUP_SYMBOL543       = NULL;
    EQUAL_OPERATOR544       = NULL;
    WAIT_SYMBOL546       = NULL;
    COMMENT_SYMBOL547       = NULL;
    ENGINE_SYMBOL549       = NULL;
    EQUAL_OPERATOR550       = NULL;
    IDENTIFIER551       = NULL;
    pure_identifier545.tree = NULL;

    string_literal548.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    EXTENT_SIZE_SYMBOL531_tree   = NULL;
    EQUAL_OPERATOR532_tree   = NULL;
    INTEGER533_tree   = NULL;
    INITIAL_SIZE_SYMBOL534_tree   = NULL;
    EQUAL_OPERATOR535_tree   = NULL;
    INTEGER536_tree   = NULL;
    AUTOEXTEND_SIZE_SYMBOL537_tree   = NULL;
    EQUAL_OPERATOR538_tree   = NULL;
    INTEGER539_tree   = NULL;
    MAX_SIZE_SYMBOL540_tree   = NULL;
    EQUAL_OPERATOR541_tree   = NULL;
    INTEGER542_tree   = NULL;
    NODEGROUP_SYMBOL543_tree   = NULL;
    EQUAL_OPERATOR544_tree   = NULL;
    WAIT_SYMBOL546_tree   = NULL;
    COMMENT_SYMBOL547_tree   = NULL;
    ENGINE_SYMBOL549_tree   = NULL;
    EQUAL_OPERATOR550_tree   = NULL;
    IDENTIFIER551_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:551:18: ( EXTENT_SIZE_SYMBOL ( EQUAL_OPERATOR )? INTEGER | INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? INTEGER | AUTOEXTEND_SIZE_SYMBOL ( EQUAL_OPERATOR )? INTEGER | MAX_SIZE_SYMBOL ( EQUAL_OPERATOR )? INTEGER | NODEGROUP_SYMBOL ( EQUAL_OPERATOR )? pure_identifier | WAIT_SYMBOL | COMMENT_SYMBOL string_literal | ENGINE_SYMBOL ( EQUAL_OPERATOR )? IDENTIFIER )

            ANTLR3_UINT32 alt179;

            alt179=8;

            switch ( LA(1) )
            {
            case EXTENT_SIZE_SYMBOL:
            	{
            		alt179=1;
            	}
                break;
            case INITIAL_SIZE_SYMBOL:
            	{
            		alt179=2;
            	}
                break;
            case AUTOEXTEND_SIZE_SYMBOL:
            	{
            		alt179=3;
            	}
                break;
            case MAX_SIZE_SYMBOL:
            	{
            		alt179=4;
            	}
                break;
            case NODEGROUP_SYMBOL:
            	{
            		alt179=5;
            	}
                break;
            case WAIT_SYMBOL:
            	{
            		alt179=6;
            	}
                break;
            case COMMENT_SYMBOL:
            	{
            		alt179=7;
            	}
                break;
            case ENGINE_SYMBOL:
            	{
            		alt179=8;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 179;
                EXCEPTION->state        = 0;


                goto ruletablespace_optionEx;

            }

            switch (alt179)
            {
        	case 1:
        	    // MySQL.g:552:2: EXTENT_SIZE_SYMBOL ( EQUAL_OPERATOR )? INTEGER
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        EXTENT_SIZE_SYMBOL531 = (pANTLR3_COMMON_TOKEN) MATCHT(EXTENT_SIZE_SYMBOL, &FOLLOW_EXTENT_SIZE_SYMBOL_in_tablespace_option2546);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EXTENT_SIZE_SYMBOL531_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXTENT_SIZE_SYMBOL531));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EXTENT_SIZE_SYMBOL531_tree);
        	        }

        	        // MySQL.g:552:21: ( EQUAL_OPERATOR )?
        	        {
        	            int alt173=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt173=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt173)
        	            {
        	        	case 1:
        	        	    // MySQL.g:552:21: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR532 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_tablespace_option2548);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletablespace_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR532_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR532));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR532_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        INTEGER533 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_tablespace_option2551);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INTEGER533_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER533));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER533_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:553:4: INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? INTEGER
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        INITIAL_SIZE_SYMBOL534 = (pANTLR3_COMMON_TOKEN) MATCHT(INITIAL_SIZE_SYMBOL, &FOLLOW_INITIAL_SIZE_SYMBOL_in_tablespace_option2556);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INITIAL_SIZE_SYMBOL534_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INITIAL_SIZE_SYMBOL534));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INITIAL_SIZE_SYMBOL534_tree);
        	        }

        	        // MySQL.g:553:24: ( EQUAL_OPERATOR )?
        	        {
        	            int alt174=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt174=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt174)
        	            {
        	        	case 1:
        	        	    // MySQL.g:553:24: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR535 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_tablespace_option2558);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletablespace_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR535_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR535));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR535_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        INTEGER536 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_tablespace_option2561);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INTEGER536_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER536));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER536_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:554:4: AUTOEXTEND_SIZE_SYMBOL ( EQUAL_OPERATOR )? INTEGER
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        AUTOEXTEND_SIZE_SYMBOL537 = (pANTLR3_COMMON_TOKEN) MATCHT(AUTOEXTEND_SIZE_SYMBOL, &FOLLOW_AUTOEXTEND_SIZE_SYMBOL_in_tablespace_option2566);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        AUTOEXTEND_SIZE_SYMBOL537_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AUTOEXTEND_SIZE_SYMBOL537));
        	        ADAPTOR->addChild(ADAPTOR, root_0, AUTOEXTEND_SIZE_SYMBOL537_tree);
        	        }

        	        // MySQL.g:554:27: ( EQUAL_OPERATOR )?
        	        {
        	            int alt175=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt175=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt175)
        	            {
        	        	case 1:
        	        	    // MySQL.g:554:27: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR538 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_tablespace_option2568);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletablespace_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR538_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR538));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR538_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        INTEGER539 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_tablespace_option2571);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INTEGER539_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER539));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER539_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:555:4: MAX_SIZE_SYMBOL ( EQUAL_OPERATOR )? INTEGER
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MAX_SIZE_SYMBOL540 = (pANTLR3_COMMON_TOKEN) MATCHT(MAX_SIZE_SYMBOL, &FOLLOW_MAX_SIZE_SYMBOL_in_tablespace_option2576);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MAX_SIZE_SYMBOL540_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAX_SIZE_SYMBOL540));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MAX_SIZE_SYMBOL540_tree);
        	        }

        	        // MySQL.g:555:20: ( EQUAL_OPERATOR )?
        	        {
        	            int alt176=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt176=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt176)
        	            {
        	        	case 1:
        	        	    // MySQL.g:555:20: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR541 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_tablespace_option2578);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletablespace_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR541_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR541));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR541_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        INTEGER542 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_tablespace_option2581);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INTEGER542_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER542));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER542_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:556:4: NODEGROUP_SYMBOL ( EQUAL_OPERATOR )? pure_identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NODEGROUP_SYMBOL543 = (pANTLR3_COMMON_TOKEN) MATCHT(NODEGROUP_SYMBOL, &FOLLOW_NODEGROUP_SYMBOL_in_tablespace_option2586);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NODEGROUP_SYMBOL543_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NODEGROUP_SYMBOL543));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NODEGROUP_SYMBOL543_tree);
        	        }

        	        // MySQL.g:556:21: ( EQUAL_OPERATOR )?
        	        {
        	            int alt177=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt177=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt177)
        	            {
        	        	case 1:
        	        	    // MySQL.g:556:21: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR544 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_tablespace_option2588);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletablespace_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR544_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR544));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR544_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_pure_identifier_in_tablespace_option2591);
        	        pure_identifier545=pure_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier545.tree);

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:557:4: WAIT_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        WAIT_SYMBOL546 = (pANTLR3_COMMON_TOKEN) MATCHT(WAIT_SYMBOL, &FOLLOW_WAIT_SYMBOL_in_tablespace_option2596);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        WAIT_SYMBOL546_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WAIT_SYMBOL546));
        	        ADAPTOR->addChild(ADAPTOR, root_0, WAIT_SYMBOL546_tree);
        	        }

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:558:4: COMMENT_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        COMMENT_SYMBOL547 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMENT_SYMBOL, &FOLLOW_COMMENT_SYMBOL_in_tablespace_option2601);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMENT_SYMBOL547_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMENT_SYMBOL547));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMENT_SYMBOL547_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_tablespace_option2603);
        	        string_literal548=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal548.tree);

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:559:4: ENGINE_SYMBOL ( EQUAL_OPERATOR )? IDENTIFIER
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ENGINE_SYMBOL549 = (pANTLR3_COMMON_TOKEN) MATCHT(ENGINE_SYMBOL, &FOLLOW_ENGINE_SYMBOL_in_tablespace_option2608);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ENGINE_SYMBOL549_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ENGINE_SYMBOL549));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ENGINE_SYMBOL549_tree);
        	        }

        	        // MySQL.g:559:18: ( EQUAL_OPERATOR )?
        	        {
        	            int alt178=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt178=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt178)
        	            {
        	        	case 1:
        	        	    // MySQL.g:559:18: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR550 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_tablespace_option2610);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletablespace_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR550_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR550));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR550_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        IDENTIFIER551 = (pANTLR3_COMMON_TOKEN) MATCHT(IDENTIFIER, &FOLLOW_IDENTIFIER_in_tablespace_option2613);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        IDENTIFIER551_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IDENTIFIER551));
        	        ADAPTOR->addChild(ADAPTOR, root_0, IDENTIFIER551_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruletablespace_optionEx; /* Prevent compiler warnings */
    ruletablespace_optionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end tablespace_option */

/**
 * $ANTLR start create_trigger
 * MySQL.g:562:1: create_trigger : TRIGGER_SYMBOL pure_identifier ( BEFORE_SYMBOL | AFTER_SYMBOL ) ( INSERT_SYMBOL | UPDATE_SYMBOL | DELETE_SYMBOL ) ON_SYMBOL qualified_identifier FOR_SYMBOL EACH_SYMBOL ROW_SYMBOL compound_statement ;
 */
static MySQLParser_create_trigger_return
create_trigger(pMySQLParser ctx)
{
    MySQLParser_create_trigger_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    TRIGGER_SYMBOL552;
    pANTLR3_COMMON_TOKEN    set554;
    pANTLR3_COMMON_TOKEN    set555;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL556;
    pANTLR3_COMMON_TOKEN    FOR_SYMBOL558;
    pANTLR3_COMMON_TOKEN    EACH_SYMBOL559;
    pANTLR3_COMMON_TOKEN    ROW_SYMBOL560;
    MySQLParser_pure_identifier_return pure_identifier553;
    #undef	RETURN_TYPE_pure_identifier553
    #define	RETURN_TYPE_pure_identifier553 MySQLParser_pure_identifier_return

    MySQLParser_qualified_identifier_return qualified_identifier557;
    #undef	RETURN_TYPE_qualified_identifier557
    #define	RETURN_TYPE_qualified_identifier557 MySQLParser_qualified_identifier_return

    MySQLParser_compound_statement_return compound_statement561;
    #undef	RETURN_TYPE_compound_statement561
    #define	RETURN_TYPE_compound_statement561 MySQLParser_compound_statement_return

    pANTLR3_BASE_TREE TRIGGER_SYMBOL552_tree;
    pANTLR3_BASE_TREE set554_tree;
    pANTLR3_BASE_TREE set555_tree;
    pANTLR3_BASE_TREE ON_SYMBOL556_tree;
    pANTLR3_BASE_TREE FOR_SYMBOL558_tree;
    pANTLR3_BASE_TREE EACH_SYMBOL559_tree;
    pANTLR3_BASE_TREE ROW_SYMBOL560_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    TRIGGER_SYMBOL552       = NULL;
    set554       = NULL;
    set555       = NULL;
    ON_SYMBOL556       = NULL;
    FOR_SYMBOL558       = NULL;
    EACH_SYMBOL559       = NULL;
    ROW_SYMBOL560       = NULL;
    pure_identifier553.tree = NULL;

    qualified_identifier557.tree = NULL;

    compound_statement561.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    TRIGGER_SYMBOL552_tree   = NULL;
    set554_tree   = NULL;
    set555_tree   = NULL;
    ON_SYMBOL556_tree   = NULL;
    FOR_SYMBOL558_tree   = NULL;
    EACH_SYMBOL559_tree   = NULL;
    ROW_SYMBOL560_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:562:15: ( TRIGGER_SYMBOL pure_identifier ( BEFORE_SYMBOL | AFTER_SYMBOL ) ( INSERT_SYMBOL | UPDATE_SYMBOL | DELETE_SYMBOL ) ON_SYMBOL qualified_identifier FOR_SYMBOL EACH_SYMBOL ROW_SYMBOL compound_statement )
        // MySQL.g:563:2: TRIGGER_SYMBOL pure_identifier ( BEFORE_SYMBOL | AFTER_SYMBOL ) ( INSERT_SYMBOL | UPDATE_SYMBOL | DELETE_SYMBOL ) ON_SYMBOL qualified_identifier FOR_SYMBOL EACH_SYMBOL ROW_SYMBOL compound_statement
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            TRIGGER_SYMBOL552 = (pANTLR3_COMMON_TOKEN) MATCHT(TRIGGER_SYMBOL, &FOLLOW_TRIGGER_SYMBOL_in_create_trigger2622);
            if  (HASEXCEPTION())
            {
                goto rulecreate_triggerEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            TRIGGER_SYMBOL552_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TRIGGER_SYMBOL552));
            ADAPTOR->addChild(ADAPTOR, root_0, TRIGGER_SYMBOL552_tree);
            }

            FOLLOWPUSH(FOLLOW_pure_identifier_in_create_trigger2624);
            pure_identifier553=pure_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_triggerEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier553.tree);

            set554=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == AFTER_SYMBOL || LA(1) == BEFORE_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set554))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto rulecreate_triggerEx;
            }


            set555=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == DELETE_SYMBOL || LA(1) == INSERT_SYMBOL || LA(1) == UPDATE_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set555))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto rulecreate_triggerEx;
            }


            ON_SYMBOL556 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_create_trigger2648);
            if  (HASEXCEPTION())
            {
                goto rulecreate_triggerEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ON_SYMBOL556_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL556));
            ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL556_tree);
            }

            FOLLOWPUSH(FOLLOW_qualified_identifier_in_create_trigger2650);
            qualified_identifier557=qualified_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_triggerEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, qualified_identifier557.tree);

            FOR_SYMBOL558 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_create_trigger2652);
            if  (HASEXCEPTION())
            {
                goto rulecreate_triggerEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            FOR_SYMBOL558_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL558));
            ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL558_tree);
            }

            EACH_SYMBOL559 = (pANTLR3_COMMON_TOKEN) MATCHT(EACH_SYMBOL, &FOLLOW_EACH_SYMBOL_in_create_trigger2654);
            if  (HASEXCEPTION())
            {
                goto rulecreate_triggerEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EACH_SYMBOL559_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EACH_SYMBOL559));
            ADAPTOR->addChild(ADAPTOR, root_0, EACH_SYMBOL559_tree);
            }

            ROW_SYMBOL560 = (pANTLR3_COMMON_TOKEN) MATCHT(ROW_SYMBOL, &FOLLOW_ROW_SYMBOL_in_create_trigger2656);
            if  (HASEXCEPTION())
            {
                goto rulecreate_triggerEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ROW_SYMBOL560_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ROW_SYMBOL560));
            ADAPTOR->addChild(ADAPTOR, root_0, ROW_SYMBOL560_tree);
            }

            FOLLOWPUSH(FOLLOW_compound_statement_in_create_trigger2658);
            compound_statement561=compound_statement(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_triggerEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, compound_statement561.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto rulecreate_triggerEx; /* Prevent compiler warnings */
    rulecreate_triggerEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end create_trigger */

/**
 * $ANTLR start create_view
 * MySQL.g:567:1: create_view : ( SQL_SYMBOL SECURITY_SYMBOL ( DEFINER_SYMBOL | INVOKER_SYMBOL ) )? VIEW_SYMBOL qualified_identifier ( identifier_list_with_parentheses )? AS_SYMBOL select_statement ( WITH_SYMBOL ( CASCADED_SYMBOL | LOCAL_SYMBOL )? CHECK_SYMBOL OPTION_SYMBOL )? ;
 */
static MySQLParser_create_view_return
create_view(pMySQLParser ctx)
{
    MySQLParser_create_view_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    SQL_SYMBOL562;
    pANTLR3_COMMON_TOKEN    SECURITY_SYMBOL563;
    pANTLR3_COMMON_TOKEN    set564;
    pANTLR3_COMMON_TOKEN    VIEW_SYMBOL565;
    pANTLR3_COMMON_TOKEN    AS_SYMBOL568;
    pANTLR3_COMMON_TOKEN    WITH_SYMBOL570;
    pANTLR3_COMMON_TOKEN    set571;
    pANTLR3_COMMON_TOKEN    CHECK_SYMBOL572;
    pANTLR3_COMMON_TOKEN    OPTION_SYMBOL573;
    MySQLParser_qualified_identifier_return qualified_identifier566;
    #undef	RETURN_TYPE_qualified_identifier566
    #define	RETURN_TYPE_qualified_identifier566 MySQLParser_qualified_identifier_return

    MySQLParser_identifier_list_with_parentheses_return identifier_list_with_parentheses567;
    #undef	RETURN_TYPE_identifier_list_with_parentheses567
    #define	RETURN_TYPE_identifier_list_with_parentheses567 MySQLParser_identifier_list_with_parentheses_return

    MySQLParser_select_statement_return select_statement569;
    #undef	RETURN_TYPE_select_statement569
    #define	RETURN_TYPE_select_statement569 MySQLParser_select_statement_return

    pANTLR3_BASE_TREE SQL_SYMBOL562_tree;
    pANTLR3_BASE_TREE SECURITY_SYMBOL563_tree;
    pANTLR3_BASE_TREE set564_tree;
    pANTLR3_BASE_TREE VIEW_SYMBOL565_tree;
    pANTLR3_BASE_TREE AS_SYMBOL568_tree;
    pANTLR3_BASE_TREE WITH_SYMBOL570_tree;
    pANTLR3_BASE_TREE set571_tree;
    pANTLR3_BASE_TREE CHECK_SYMBOL572_tree;
    pANTLR3_BASE_TREE OPTION_SYMBOL573_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SQL_SYMBOL562       = NULL;
    SECURITY_SYMBOL563       = NULL;
    set564       = NULL;
    VIEW_SYMBOL565       = NULL;
    AS_SYMBOL568       = NULL;
    WITH_SYMBOL570       = NULL;
    set571       = NULL;
    CHECK_SYMBOL572       = NULL;
    OPTION_SYMBOL573       = NULL;
    qualified_identifier566.tree = NULL;

    identifier_list_with_parentheses567.tree = NULL;

    select_statement569.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SQL_SYMBOL562_tree   = NULL;
    SECURITY_SYMBOL563_tree   = NULL;
    set564_tree   = NULL;
    VIEW_SYMBOL565_tree   = NULL;
    AS_SYMBOL568_tree   = NULL;
    WITH_SYMBOL570_tree   = NULL;
    set571_tree   = NULL;
    CHECK_SYMBOL572_tree   = NULL;
    OPTION_SYMBOL573_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:567:12: ( ( SQL_SYMBOL SECURITY_SYMBOL ( DEFINER_SYMBOL | INVOKER_SYMBOL ) )? VIEW_SYMBOL qualified_identifier ( identifier_list_with_parentheses )? AS_SYMBOL select_statement ( WITH_SYMBOL ( CASCADED_SYMBOL | LOCAL_SYMBOL )? CHECK_SYMBOL OPTION_SYMBOL )? )
        // MySQL.g:568:2: ( SQL_SYMBOL SECURITY_SYMBOL ( DEFINER_SYMBOL | INVOKER_SYMBOL ) )? VIEW_SYMBOL qualified_identifier ( identifier_list_with_parentheses )? AS_SYMBOL select_statement ( WITH_SYMBOL ( CASCADED_SYMBOL | LOCAL_SYMBOL )? CHECK_SYMBOL OPTION_SYMBOL )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:568:2: ( SQL_SYMBOL SECURITY_SYMBOL ( DEFINER_SYMBOL | INVOKER_SYMBOL ) )?
            {
                int alt180=2;
                switch ( LA(1) )
                {
                    case SQL_SYMBOL:
                    	{
                    		alt180=1;
                    	}
                        break;
                }

                switch (alt180)
                {
            	case 1:
            	    // MySQL.g:568:3: SQL_SYMBOL SECURITY_SYMBOL ( DEFINER_SYMBOL | INVOKER_SYMBOL )
            	    {
            	        SQL_SYMBOL562 = (pANTLR3_COMMON_TOKEN) MATCHT(SQL_SYMBOL, &FOLLOW_SQL_SYMBOL_in_create_view2668);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_viewEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SQL_SYMBOL562_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SQL_SYMBOL562));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SQL_SYMBOL562_tree);
            	        }

            	        SECURITY_SYMBOL563 = (pANTLR3_COMMON_TOKEN) MATCHT(SECURITY_SYMBOL, &FOLLOW_SECURITY_SYMBOL_in_create_view2670);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_viewEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SECURITY_SYMBOL563_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SECURITY_SYMBOL563));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SECURITY_SYMBOL563_tree);
            	        }

            	        set564=(pANTLR3_COMMON_TOKEN)LT(1);

            	        if ( LA(1) == DEFINER_SYMBOL || LA(1) == INVOKER_SYMBOL )
            	        {
            	            CONSUME();
            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set564))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	            CONSTRUCTEX();
            	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	            EXCEPTION->expectingSet = NULL;

            	            goto rulecreate_viewEx;
            	        }


            	    }
            	    break;

                }
            }

            VIEW_SYMBOL565 = (pANTLR3_COMMON_TOKEN) MATCHT(VIEW_SYMBOL, &FOLLOW_VIEW_SYMBOL_in_create_view2684);
            if  (HASEXCEPTION())
            {
                goto rulecreate_viewEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            VIEW_SYMBOL565_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VIEW_SYMBOL565));
            ADAPTOR->addChild(ADAPTOR, root_0, VIEW_SYMBOL565_tree);
            }

            FOLLOWPUSH(FOLLOW_qualified_identifier_in_create_view2686);
            qualified_identifier566=qualified_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_viewEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, qualified_identifier566.tree);

            // MySQL.g:569:36: ( identifier_list_with_parentheses )?
            {
                int alt181=2;
                switch ( LA(1) )
                {
                    case OPEN_PAR_SYMBOL:
                    	{
                    		alt181=1;
                    	}
                        break;
                }

                switch (alt181)
                {
            	case 1:
            	    // MySQL.g:569:36: identifier_list_with_parentheses
            	    {
            	        FOLLOWPUSH(FOLLOW_identifier_list_with_parentheses_in_create_view2688);
            	        identifier_list_with_parentheses567=identifier_list_with_parentheses(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_viewEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list_with_parentheses567.tree);

            	    }
            	    break;

                }
            }

            AS_SYMBOL568 = (pANTLR3_COMMON_TOKEN) MATCHT(AS_SYMBOL, &FOLLOW_AS_SYMBOL_in_create_view2693);
            if  (HASEXCEPTION())
            {
                goto rulecreate_viewEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            AS_SYMBOL568_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AS_SYMBOL568));
            ADAPTOR->addChild(ADAPTOR, root_0, AS_SYMBOL568_tree);
            }

            FOLLOWPUSH(FOLLOW_select_statement_in_create_view2695);
            select_statement569=select_statement(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_viewEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_statement569.tree);

            // MySQL.g:571:3: ( WITH_SYMBOL ( CASCADED_SYMBOL | LOCAL_SYMBOL )? CHECK_SYMBOL OPTION_SYMBOL )?
            {
                int alt183=2;
                switch ( LA(1) )
                {
                    case WITH_SYMBOL:
                    	{
                    		alt183=1;
                    	}
                        break;
                }

                switch (alt183)
                {
            	case 1:
            	    // MySQL.g:571:4: WITH_SYMBOL ( CASCADED_SYMBOL | LOCAL_SYMBOL )? CHECK_SYMBOL OPTION_SYMBOL
            	    {
            	        WITH_SYMBOL570 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_create_view2700);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_viewEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        WITH_SYMBOL570_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WITH_SYMBOL570));
            	        ADAPTOR->addChild(ADAPTOR, root_0, WITH_SYMBOL570_tree);
            	        }

            	        // MySQL.g:571:16: ( CASCADED_SYMBOL | LOCAL_SYMBOL )?
            	        {
            	            int alt182=2;
            	            switch ( LA(1) )
            	            {
            	                case CASCADED_SYMBOL:
            	                case LOCAL_SYMBOL:
            	                	{
            	                		alt182=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt182)
            	            {
            	        	case 1:
            	        	    // MySQL.g:
            	        	    {
            	        	        set571=(pANTLR3_COMMON_TOKEN)LT(1);

            	        	        if ( LA(1) == CASCADED_SYMBOL || LA(1) == LOCAL_SYMBOL )
            	        	        {
            	        	            CONSUME();
            	        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set571))
            	        	            );
            	        	            PERRORRECOVERY=ANTLR3_FALSE;
            	        	            FAILEDFLAG=ANTLR3_FALSE;

            	        	        }
            	        	        else
            	        	        {
            	        	            if (BACKTRACKING>0)
            	        	            {
            	        	                FAILEDFLAG = ANTLR3_TRUE;
            	        	                return retval;
            	        	            }

            	        	            CONSTRUCTEX();
            	        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	        	            EXCEPTION->expectingSet = NULL;

            	        	            goto rulecreate_viewEx;
            	        	        }


            	        	    }
            	        	    break;

            	            }
            	        }

            	        CHECK_SYMBOL572 = (pANTLR3_COMMON_TOKEN) MATCHT(CHECK_SYMBOL, &FOLLOW_CHECK_SYMBOL_in_create_view2711);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_viewEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CHECK_SYMBOL572_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHECK_SYMBOL572));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CHECK_SYMBOL572_tree);
            	        }

            	        OPTION_SYMBOL573 = (pANTLR3_COMMON_TOKEN) MATCHT(OPTION_SYMBOL, &FOLLOW_OPTION_SYMBOL_in_create_view2713);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_viewEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPTION_SYMBOL573_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPTION_SYMBOL573));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPTION_SYMBOL573_tree);
            	        }

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulecreate_viewEx; /* Prevent compiler warnings */
    rulecreate_viewEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end create_view */

/**
 * $ANTLR start view_replace_or_algorithm
 * MySQL.g:574:1: view_replace_or_algorithm : ( OR_SYMBOL REPLACE_SYMBOL ( view_algorithm )? | view_algorithm );
 */
static MySQLParser_view_replace_or_algorithm_return
view_replace_or_algorithm(pMySQLParser ctx)
{
    MySQLParser_view_replace_or_algorithm_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    OR_SYMBOL574;
    pANTLR3_COMMON_TOKEN    REPLACE_SYMBOL575;
    MySQLParser_view_algorithm_return view_algorithm576;
    #undef	RETURN_TYPE_view_algorithm576
    #define	RETURN_TYPE_view_algorithm576 MySQLParser_view_algorithm_return

    MySQLParser_view_algorithm_return view_algorithm577;
    #undef	RETURN_TYPE_view_algorithm577
    #define	RETURN_TYPE_view_algorithm577 MySQLParser_view_algorithm_return

    pANTLR3_BASE_TREE OR_SYMBOL574_tree;
    pANTLR3_BASE_TREE REPLACE_SYMBOL575_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OR_SYMBOL574       = NULL;
    REPLACE_SYMBOL575       = NULL;
    view_algorithm576.tree = NULL;

    view_algorithm577.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OR_SYMBOL574_tree   = NULL;
    REPLACE_SYMBOL575_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:574:26: ( OR_SYMBOL REPLACE_SYMBOL ( view_algorithm )? | view_algorithm )

            ANTLR3_UINT32 alt185;

            alt185=2;

            switch ( LA(1) )
            {
            case OR_SYMBOL:
            	{
            		alt185=1;
            	}
                break;
            case ALGORITHM_SYMBOL:
            	{
            		alt185=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 185;
                EXCEPTION->state        = 0;


                goto ruleview_replace_or_algorithmEx;

            }

            switch (alt185)
            {
        	case 1:
        	    // MySQL.g:575:2: OR_SYMBOL REPLACE_SYMBOL ( view_algorithm )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        OR_SYMBOL574 = (pANTLR3_COMMON_TOKEN) MATCHT(OR_SYMBOL, &FOLLOW_OR_SYMBOL_in_view_replace_or_algorithm2724);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleview_replace_or_algorithmEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OR_SYMBOL574_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OR_SYMBOL574));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OR_SYMBOL574_tree);
        	        }

        	        REPLACE_SYMBOL575 = (pANTLR3_COMMON_TOKEN) MATCHT(REPLACE_SYMBOL, &FOLLOW_REPLACE_SYMBOL_in_view_replace_or_algorithm2726);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleview_replace_or_algorithmEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REPLACE_SYMBOL575_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPLACE_SYMBOL575));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REPLACE_SYMBOL575_tree);
        	        }

        	        // MySQL.g:575:27: ( view_algorithm )?
        	        {
        	            int alt184=2;
        	            switch ( LA(1) )
        	            {
        	                case ALGORITHM_SYMBOL:
        	                	{
        	                		alt184=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt184)
        	            {
        	        	case 1:
        	        	    // MySQL.g:575:27: view_algorithm
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_view_algorithm_in_view_replace_or_algorithm2728);
        	        	        view_algorithm576=view_algorithm(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleview_replace_or_algorithmEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, view_algorithm576.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:576:4: view_algorithm
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_view_algorithm_in_view_replace_or_algorithm2734);
        	        view_algorithm577=view_algorithm(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleview_replace_or_algorithmEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, view_algorithm577.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleview_replace_or_algorithmEx; /* Prevent compiler warnings */
    ruleview_replace_or_algorithmEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end view_replace_or_algorithm */

/**
 * $ANTLR start view_algorithm
 * MySQL.g:579:1: view_algorithm : ALGORITHM_SYMBOL EQUAL_OPERATOR ( UNDEFINED_SYMBOL | MERGE_SYMBOL | TEMPTABLE_SYMBOL ) ;
 */
static MySQLParser_view_algorithm_return
view_algorithm(pMySQLParser ctx)
{
    MySQLParser_view_algorithm_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    ALGORITHM_SYMBOL578;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR579;
    pANTLR3_COMMON_TOKEN    set580;

    pANTLR3_BASE_TREE ALGORITHM_SYMBOL578_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR579_tree;
    pANTLR3_BASE_TREE set580_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ALGORITHM_SYMBOL578       = NULL;
    EQUAL_OPERATOR579       = NULL;
    set580       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ALGORITHM_SYMBOL578_tree   = NULL;
    EQUAL_OPERATOR579_tree   = NULL;
    set580_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:579:15: ( ALGORITHM_SYMBOL EQUAL_OPERATOR ( UNDEFINED_SYMBOL | MERGE_SYMBOL | TEMPTABLE_SYMBOL ) )
        // MySQL.g:580:2: ALGORITHM_SYMBOL EQUAL_OPERATOR ( UNDEFINED_SYMBOL | MERGE_SYMBOL | TEMPTABLE_SYMBOL )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            ALGORITHM_SYMBOL578 = (pANTLR3_COMMON_TOKEN) MATCHT(ALGORITHM_SYMBOL, &FOLLOW_ALGORITHM_SYMBOL_in_view_algorithm2743);
            if  (HASEXCEPTION())
            {
                goto ruleview_algorithmEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ALGORITHM_SYMBOL578_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALGORITHM_SYMBOL578));
            ADAPTOR->addChild(ADAPTOR, root_0, ALGORITHM_SYMBOL578_tree);
            }

            EQUAL_OPERATOR579 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_view_algorithm2745);
            if  (HASEXCEPTION())
            {
                goto ruleview_algorithmEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EQUAL_OPERATOR579_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR579));
            ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR579_tree);
            }

            set580=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == MERGE_SYMBOL || LA(1) == TEMPTABLE_SYMBOL || LA(1) == UNDEFINED_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set580))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto ruleview_algorithmEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto ruleview_algorithmEx; /* Prevent compiler warnings */
    ruleview_algorithmEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end view_algorithm */

/**
 * $ANTLR start drop_statement
 * MySQL.g:585:1: drop_statement : DROP_SYMBOL ( DATABASE_SYMBOL ( IF_SYMBOL EXISTS_SYMBOL )? identifier |{...}? => EVENT_SYMBOL ( IF_SYMBOL EXISTS_SYMBOL )? identifier | ( FUNCTION_SYMBOL | PROCEDURE_SYMBOL ) ( IF_SYMBOL EXISTS_SYMBOL )? qualified_identifier | ( online_option )? INDEX_SYMBOL identifier ON_SYMBOL qualified_identifier ( index_lock_algorithm )? | LOGFILE_SYMBOL GROUP_SYMBOL identifier ENGINE_SYMBOL ( EQUAL_OPERATOR )? pure_identifier | SERVER_SYMBOL ( IF_SYMBOL EXISTS_SYMBOL )? pure_identifier | ( TEMPORARY_SYMBOL )? TABLE_SYMBOL ( IF_SYMBOL EXISTS_SYMBOL )? qualified_identifier_list ( RESTRICT_SYMBOL | CASCADE_SYMBOL )? | TABLESPACE_SYMBOL identifier ENGINE_SYMBOL ( EQUAL_OPERATOR )? pure_identifier | TRIGGER_SYMBOL ( IF_SYMBOL EXISTS_SYMBOL )? qualified_identifier | VIEW_SYMBOL ( IF_SYMBOL EXISTS_SYMBOL )? qualified_identifier_list ( RESTRICT_SYMBOL | CASCADE_SYMBOL )? ) ;
 */
static MySQLParser_drop_statement_return
drop_statement(pMySQLParser ctx)
{
    MySQLParser_drop_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    DROP_SYMBOL581;
    pANTLR3_COMMON_TOKEN    DATABASE_SYMBOL582;
    pANTLR3_COMMON_TOKEN    IF_SYMBOL583;
    pANTLR3_COMMON_TOKEN    EXISTS_SYMBOL584;
    pANTLR3_COMMON_TOKEN    EVENT_SYMBOL586;
    pANTLR3_COMMON_TOKEN    IF_SYMBOL587;
    pANTLR3_COMMON_TOKEN    EXISTS_SYMBOL588;
    pANTLR3_COMMON_TOKEN    set590;
    pANTLR3_COMMON_TOKEN    IF_SYMBOL591;
    pANTLR3_COMMON_TOKEN    EXISTS_SYMBOL592;
    pANTLR3_COMMON_TOKEN    INDEX_SYMBOL595;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL597;
    pANTLR3_COMMON_TOKEN    LOGFILE_SYMBOL600;
    pANTLR3_COMMON_TOKEN    GROUP_SYMBOL601;
    pANTLR3_COMMON_TOKEN    ENGINE_SYMBOL603;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR604;
    pANTLR3_COMMON_TOKEN    SERVER_SYMBOL606;
    pANTLR3_COMMON_TOKEN    IF_SYMBOL607;
    pANTLR3_COMMON_TOKEN    EXISTS_SYMBOL608;
    pANTLR3_COMMON_TOKEN    TEMPORARY_SYMBOL610;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL611;
    pANTLR3_COMMON_TOKEN    IF_SYMBOL612;
    pANTLR3_COMMON_TOKEN    EXISTS_SYMBOL613;
    pANTLR3_COMMON_TOKEN    set615;
    pANTLR3_COMMON_TOKEN    TABLESPACE_SYMBOL616;
    pANTLR3_COMMON_TOKEN    ENGINE_SYMBOL618;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR619;
    pANTLR3_COMMON_TOKEN    TRIGGER_SYMBOL621;
    pANTLR3_COMMON_TOKEN    IF_SYMBOL622;
    pANTLR3_COMMON_TOKEN    EXISTS_SYMBOL623;
    pANTLR3_COMMON_TOKEN    VIEW_SYMBOL625;
    pANTLR3_COMMON_TOKEN    IF_SYMBOL626;
    pANTLR3_COMMON_TOKEN    EXISTS_SYMBOL627;
    pANTLR3_COMMON_TOKEN    set629;
    MySQLParser_identifier_return identifier585;
    #undef	RETURN_TYPE_identifier585
    #define	RETURN_TYPE_identifier585 MySQLParser_identifier_return

    MySQLParser_identifier_return identifier589;
    #undef	RETURN_TYPE_identifier589
    #define	RETURN_TYPE_identifier589 MySQLParser_identifier_return

    MySQLParser_qualified_identifier_return qualified_identifier593;
    #undef	RETURN_TYPE_qualified_identifier593
    #define	RETURN_TYPE_qualified_identifier593 MySQLParser_qualified_identifier_return

    MySQLParser_online_option_return online_option594;
    #undef	RETURN_TYPE_online_option594
    #define	RETURN_TYPE_online_option594 MySQLParser_online_option_return

    MySQLParser_identifier_return identifier596;
    #undef	RETURN_TYPE_identifier596
    #define	RETURN_TYPE_identifier596 MySQLParser_identifier_return

    MySQLParser_qualified_identifier_return qualified_identifier598;
    #undef	RETURN_TYPE_qualified_identifier598
    #define	RETURN_TYPE_qualified_identifier598 MySQLParser_qualified_identifier_return

    MySQLParser_index_lock_algorithm_return index_lock_algorithm599;
    #undef	RETURN_TYPE_index_lock_algorithm599
    #define	RETURN_TYPE_index_lock_algorithm599 MySQLParser_index_lock_algorithm_return

    MySQLParser_identifier_return identifier602;
    #undef	RETURN_TYPE_identifier602
    #define	RETURN_TYPE_identifier602 MySQLParser_identifier_return

    MySQLParser_pure_identifier_return pure_identifier605;
    #undef	RETURN_TYPE_pure_identifier605
    #define	RETURN_TYPE_pure_identifier605 MySQLParser_pure_identifier_return

    MySQLParser_pure_identifier_return pure_identifier609;
    #undef	RETURN_TYPE_pure_identifier609
    #define	RETURN_TYPE_pure_identifier609 MySQLParser_pure_identifier_return

    MySQLParser_qualified_identifier_list_return qualified_identifier_list614;
    #undef	RETURN_TYPE_qualified_identifier_list614
    #define	RETURN_TYPE_qualified_identifier_list614 MySQLParser_qualified_identifier_list_return

    MySQLParser_identifier_return identifier617;
    #undef	RETURN_TYPE_identifier617
    #define	RETURN_TYPE_identifier617 MySQLParser_identifier_return

    MySQLParser_pure_identifier_return pure_identifier620;
    #undef	RETURN_TYPE_pure_identifier620
    #define	RETURN_TYPE_pure_identifier620 MySQLParser_pure_identifier_return

    MySQLParser_qualified_identifier_return qualified_identifier624;
    #undef	RETURN_TYPE_qualified_identifier624
    #define	RETURN_TYPE_qualified_identifier624 MySQLParser_qualified_identifier_return

    MySQLParser_qualified_identifier_list_return qualified_identifier_list628;
    #undef	RETURN_TYPE_qualified_identifier_list628
    #define	RETURN_TYPE_qualified_identifier_list628 MySQLParser_qualified_identifier_list_return

    pANTLR3_BASE_TREE DROP_SYMBOL581_tree;
    pANTLR3_BASE_TREE DATABASE_SYMBOL582_tree;
    pANTLR3_BASE_TREE IF_SYMBOL583_tree;
    pANTLR3_BASE_TREE EXISTS_SYMBOL584_tree;
    pANTLR3_BASE_TREE EVENT_SYMBOL586_tree;
    pANTLR3_BASE_TREE IF_SYMBOL587_tree;
    pANTLR3_BASE_TREE EXISTS_SYMBOL588_tree;
    pANTLR3_BASE_TREE set590_tree;
    pANTLR3_BASE_TREE IF_SYMBOL591_tree;
    pANTLR3_BASE_TREE EXISTS_SYMBOL592_tree;
    pANTLR3_BASE_TREE INDEX_SYMBOL595_tree;
    pANTLR3_BASE_TREE ON_SYMBOL597_tree;
    pANTLR3_BASE_TREE LOGFILE_SYMBOL600_tree;
    pANTLR3_BASE_TREE GROUP_SYMBOL601_tree;
    pANTLR3_BASE_TREE ENGINE_SYMBOL603_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR604_tree;
    pANTLR3_BASE_TREE SERVER_SYMBOL606_tree;
    pANTLR3_BASE_TREE IF_SYMBOL607_tree;
    pANTLR3_BASE_TREE EXISTS_SYMBOL608_tree;
    pANTLR3_BASE_TREE TEMPORARY_SYMBOL610_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL611_tree;
    pANTLR3_BASE_TREE IF_SYMBOL612_tree;
    pANTLR3_BASE_TREE EXISTS_SYMBOL613_tree;
    pANTLR3_BASE_TREE set615_tree;
    pANTLR3_BASE_TREE TABLESPACE_SYMBOL616_tree;
    pANTLR3_BASE_TREE ENGINE_SYMBOL618_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR619_tree;
    pANTLR3_BASE_TREE TRIGGER_SYMBOL621_tree;
    pANTLR3_BASE_TREE IF_SYMBOL622_tree;
    pANTLR3_BASE_TREE EXISTS_SYMBOL623_tree;
    pANTLR3_BASE_TREE VIEW_SYMBOL625_tree;
    pANTLR3_BASE_TREE IF_SYMBOL626_tree;
    pANTLR3_BASE_TREE EXISTS_SYMBOL627_tree;
    pANTLR3_BASE_TREE set629_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DROP_SYMBOL581       = NULL;
    DATABASE_SYMBOL582       = NULL;
    IF_SYMBOL583       = NULL;
    EXISTS_SYMBOL584       = NULL;
    EVENT_SYMBOL586       = NULL;
    IF_SYMBOL587       = NULL;
    EXISTS_SYMBOL588       = NULL;
    set590       = NULL;
    IF_SYMBOL591       = NULL;
    EXISTS_SYMBOL592       = NULL;
    INDEX_SYMBOL595       = NULL;
    ON_SYMBOL597       = NULL;
    LOGFILE_SYMBOL600       = NULL;
    GROUP_SYMBOL601       = NULL;
    ENGINE_SYMBOL603       = NULL;
    EQUAL_OPERATOR604       = NULL;
    SERVER_SYMBOL606       = NULL;
    IF_SYMBOL607       = NULL;
    EXISTS_SYMBOL608       = NULL;
    TEMPORARY_SYMBOL610       = NULL;
    TABLE_SYMBOL611       = NULL;
    IF_SYMBOL612       = NULL;
    EXISTS_SYMBOL613       = NULL;
    set615       = NULL;
    TABLESPACE_SYMBOL616       = NULL;
    ENGINE_SYMBOL618       = NULL;
    EQUAL_OPERATOR619       = NULL;
    TRIGGER_SYMBOL621       = NULL;
    IF_SYMBOL622       = NULL;
    EXISTS_SYMBOL623       = NULL;
    VIEW_SYMBOL625       = NULL;
    IF_SYMBOL626       = NULL;
    EXISTS_SYMBOL627       = NULL;
    set629       = NULL;
    identifier585.tree = NULL;

    identifier589.tree = NULL;

    qualified_identifier593.tree = NULL;

    online_option594.tree = NULL;

    identifier596.tree = NULL;

    qualified_identifier598.tree = NULL;

    index_lock_algorithm599.tree = NULL;

    identifier602.tree = NULL;

    pure_identifier605.tree = NULL;

    pure_identifier609.tree = NULL;

    qualified_identifier_list614.tree = NULL;

    identifier617.tree = NULL;

    pure_identifier620.tree = NULL;

    qualified_identifier624.tree = NULL;

    qualified_identifier_list628.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DROP_SYMBOL581_tree   = NULL;
    DATABASE_SYMBOL582_tree   = NULL;
    IF_SYMBOL583_tree   = NULL;
    EXISTS_SYMBOL584_tree   = NULL;
    EVENT_SYMBOL586_tree   = NULL;
    IF_SYMBOL587_tree   = NULL;
    EXISTS_SYMBOL588_tree   = NULL;
    set590_tree   = NULL;
    IF_SYMBOL591_tree   = NULL;
    EXISTS_SYMBOL592_tree   = NULL;
    INDEX_SYMBOL595_tree   = NULL;
    ON_SYMBOL597_tree   = NULL;
    LOGFILE_SYMBOL600_tree   = NULL;
    GROUP_SYMBOL601_tree   = NULL;
    ENGINE_SYMBOL603_tree   = NULL;
    EQUAL_OPERATOR604_tree   = NULL;
    SERVER_SYMBOL606_tree   = NULL;
    IF_SYMBOL607_tree   = NULL;
    EXISTS_SYMBOL608_tree   = NULL;
    TEMPORARY_SYMBOL610_tree   = NULL;
    TABLE_SYMBOL611_tree   = NULL;
    IF_SYMBOL612_tree   = NULL;
    EXISTS_SYMBOL613_tree   = NULL;
    set615_tree   = NULL;
    TABLESPACE_SYMBOL616_tree   = NULL;
    ENGINE_SYMBOL618_tree   = NULL;
    EQUAL_OPERATOR619_tree   = NULL;
    TRIGGER_SYMBOL621_tree   = NULL;
    IF_SYMBOL622_tree   = NULL;
    EXISTS_SYMBOL623_tree   = NULL;
    VIEW_SYMBOL625_tree   = NULL;
    IF_SYMBOL626_tree   = NULL;
    EXISTS_SYMBOL627_tree   = NULL;
    set629_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:585:15: ( DROP_SYMBOL ( DATABASE_SYMBOL ( IF_SYMBOL EXISTS_SYMBOL )? identifier |{...}? => EVENT_SYMBOL ( IF_SYMBOL EXISTS_SYMBOL )? identifier | ( FUNCTION_SYMBOL | PROCEDURE_SYMBOL ) ( IF_SYMBOL EXISTS_SYMBOL )? qualified_identifier | ( online_option )? INDEX_SYMBOL identifier ON_SYMBOL qualified_identifier ( index_lock_algorithm )? | LOGFILE_SYMBOL GROUP_SYMBOL identifier ENGINE_SYMBOL ( EQUAL_OPERATOR )? pure_identifier | SERVER_SYMBOL ( IF_SYMBOL EXISTS_SYMBOL )? pure_identifier | ( TEMPORARY_SYMBOL )? TABLE_SYMBOL ( IF_SYMBOL EXISTS_SYMBOL )? qualified_identifier_list ( RESTRICT_SYMBOL | CASCADE_SYMBOL )? | TABLESPACE_SYMBOL identifier ENGINE_SYMBOL ( EQUAL_OPERATOR )? pure_identifier | TRIGGER_SYMBOL ( IF_SYMBOL EXISTS_SYMBOL )? qualified_identifier | VIEW_SYMBOL ( IF_SYMBOL EXISTS_SYMBOL )? qualified_identifier_list ( RESTRICT_SYMBOL | CASCADE_SYMBOL )? ) )
        // MySQL.g:586:2: DROP_SYMBOL ( DATABASE_SYMBOL ( IF_SYMBOL EXISTS_SYMBOL )? identifier |{...}? => EVENT_SYMBOL ( IF_SYMBOL EXISTS_SYMBOL )? identifier | ( FUNCTION_SYMBOL | PROCEDURE_SYMBOL ) ( IF_SYMBOL EXISTS_SYMBOL )? qualified_identifier | ( online_option )? INDEX_SYMBOL identifier ON_SYMBOL qualified_identifier ( index_lock_algorithm )? | LOGFILE_SYMBOL GROUP_SYMBOL identifier ENGINE_SYMBOL ( EQUAL_OPERATOR )? pure_identifier | SERVER_SYMBOL ( IF_SYMBOL EXISTS_SYMBOL )? pure_identifier | ( TEMPORARY_SYMBOL )? TABLE_SYMBOL ( IF_SYMBOL EXISTS_SYMBOL )? qualified_identifier_list ( RESTRICT_SYMBOL | CASCADE_SYMBOL )? | TABLESPACE_SYMBOL identifier ENGINE_SYMBOL ( EQUAL_OPERATOR )? pure_identifier | TRIGGER_SYMBOL ( IF_SYMBOL EXISTS_SYMBOL )? qualified_identifier | VIEW_SYMBOL ( IF_SYMBOL EXISTS_SYMBOL )? qualified_identifier_list ( RESTRICT_SYMBOL | CASCADE_SYMBOL )? )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            DROP_SYMBOL581 = (pANTLR3_COMMON_TOKEN) MATCHT(DROP_SYMBOL, &FOLLOW_DROP_SYMBOL_in_drop_statement2768);
            if  (HASEXCEPTION())
            {
                goto ruledrop_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DROP_SYMBOL581_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DROP_SYMBOL581));
            ADAPTOR->addChild(ADAPTOR, root_0, DROP_SYMBOL581_tree);
            }

            // MySQL.g:587:2: ( DATABASE_SYMBOL ( IF_SYMBOL EXISTS_SYMBOL )? identifier |{...}? => EVENT_SYMBOL ( IF_SYMBOL EXISTS_SYMBOL )? identifier | ( FUNCTION_SYMBOL | PROCEDURE_SYMBOL ) ( IF_SYMBOL EXISTS_SYMBOL )? qualified_identifier | ( online_option )? INDEX_SYMBOL identifier ON_SYMBOL qualified_identifier ( index_lock_algorithm )? | LOGFILE_SYMBOL GROUP_SYMBOL identifier ENGINE_SYMBOL ( EQUAL_OPERATOR )? pure_identifier | SERVER_SYMBOL ( IF_SYMBOL EXISTS_SYMBOL )? pure_identifier | ( TEMPORARY_SYMBOL )? TABLE_SYMBOL ( IF_SYMBOL EXISTS_SYMBOL )? qualified_identifier_list ( RESTRICT_SYMBOL | CASCADE_SYMBOL )? | TABLESPACE_SYMBOL identifier ENGINE_SYMBOL ( EQUAL_OPERATOR )? pure_identifier | TRIGGER_SYMBOL ( IF_SYMBOL EXISTS_SYMBOL )? qualified_identifier | VIEW_SYMBOL ( IF_SYMBOL EXISTS_SYMBOL )? qualified_identifier_list ( RESTRICT_SYMBOL | CASCADE_SYMBOL )? )
            {
                int alt200=10;
                {
                    int LA200_0 = LA(1);
                    if ( (LA200_0 == DATABASE_SYMBOL))
                    {
                        alt200=1;
                    }
                    else if ( ((SERVER_VERSION >= 50100)) && (LA200_0 == EVENT_SYMBOL))
                    {
                        alt200=2;
                    }
                    else if ( (LA200_0 == FUNCTION_SYMBOL || LA200_0 == PROCEDURE_SYMBOL))
                    {
                        alt200=3;
                    }
                    else if ( ((SERVER_VERSION < 50600)) && (LA200_0 == OFFLINE_SYMBOL || LA200_0 == ONLINE_SYMBOL))
                    {
                        alt200=4;
                    }
                    else if ( (LA200_0 == INDEX_SYMBOL))
                    {
                        alt200=4;
                    }
                    else if ( (LA200_0 == LOGFILE_SYMBOL))
                    {
                        alt200=5;
                    }
                    else if ( (LA200_0 == SERVER_SYMBOL))
                    {
                        alt200=6;
                    }
                    else if ( (((LA200_0 >= TABLE_SYMBOL) && (LA200_0 <= TEMPORARY_SYMBOL))))
                    {
                        alt200=7;
                    }
                    else if ( (LA200_0 == TABLESPACE_SYMBOL))
                    {
                        alt200=8;
                    }
                    else if ( (LA200_0 == TRIGGER_SYMBOL))
                    {
                        alt200=9;
                    }
                    else if ( (LA200_0 == VIEW_SYMBOL))
                    {
                        alt200=10;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 200;
                        EXCEPTION->state        = 0;


                        goto ruledrop_statementEx;

                    }
                }
                switch (alt200)
                {
            	case 1:
            	    // MySQL.g:588:3: DATABASE_SYMBOL ( IF_SYMBOL EXISTS_SYMBOL )? identifier
            	    {
            	        DATABASE_SYMBOL582 = (pANTLR3_COMMON_TOKEN) MATCHT(DATABASE_SYMBOL, &FOLLOW_DATABASE_SYMBOL_in_drop_statement2775);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DATABASE_SYMBOL582_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATABASE_SYMBOL582));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DATABASE_SYMBOL582_tree);
            	        }

            	        // MySQL.g:588:19: ( IF_SYMBOL EXISTS_SYMBOL )?
            	        {
            	            int alt186=2;
            	            switch ( LA(1) )
            	            {
            	                case IF_SYMBOL:
            	                	{
            	                		alt186=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt186)
            	            {
            	        	case 1:
            	        	    // MySQL.g:588:20: IF_SYMBOL EXISTS_SYMBOL
            	        	    {
            	        	        IF_SYMBOL583 = (pANTLR3_COMMON_TOKEN) MATCHT(IF_SYMBOL, &FOLLOW_IF_SYMBOL_in_drop_statement2778);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        IF_SYMBOL583_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IF_SYMBOL583));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, IF_SYMBOL583_tree);
            	        	        }

            	        	        EXISTS_SYMBOL584 = (pANTLR3_COMMON_TOKEN) MATCHT(EXISTS_SYMBOL, &FOLLOW_EXISTS_SYMBOL_in_drop_statement2780);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EXISTS_SYMBOL584_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXISTS_SYMBOL584));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EXISTS_SYMBOL584_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_identifier_in_drop_statement2784);
            	        identifier585=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier585.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:589:5: {...}? => EVENT_SYMBOL ( IF_SYMBOL EXISTS_SYMBOL )? identifier
            	    {
            	        if ( !((SERVER_VERSION >= 50100)) )
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
            	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50100";
            	                EXCEPTION->ruleName	 = (void *)"drop_statement";


            	        }

            	        EVENT_SYMBOL586 = (pANTLR3_COMMON_TOKEN) MATCHT(EVENT_SYMBOL, &FOLLOW_EVENT_SYMBOL_in_drop_statement2794);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        EVENT_SYMBOL586_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EVENT_SYMBOL586));
            	        ADAPTOR->addChild(ADAPTOR, root_0, EVENT_SYMBOL586_tree);
            	        }

            	        // MySQL.g:589:48: ( IF_SYMBOL EXISTS_SYMBOL )?
            	        {
            	            int alt187=2;
            	            switch ( LA(1) )
            	            {
            	                case IF_SYMBOL:
            	                	{
            	                		alt187=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt187)
            	            {
            	        	case 1:
            	        	    // MySQL.g:589:49: IF_SYMBOL EXISTS_SYMBOL
            	        	    {
            	        	        IF_SYMBOL587 = (pANTLR3_COMMON_TOKEN) MATCHT(IF_SYMBOL, &FOLLOW_IF_SYMBOL_in_drop_statement2797);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        IF_SYMBOL587_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IF_SYMBOL587));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, IF_SYMBOL587_tree);
            	        	        }

            	        	        EXISTS_SYMBOL588 = (pANTLR3_COMMON_TOKEN) MATCHT(EXISTS_SYMBOL, &FOLLOW_EXISTS_SYMBOL_in_drop_statement2799);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EXISTS_SYMBOL588_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXISTS_SYMBOL588));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EXISTS_SYMBOL588_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_identifier_in_drop_statement2803);
            	        identifier589=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier589.tree);

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:590:5: ( FUNCTION_SYMBOL | PROCEDURE_SYMBOL ) ( IF_SYMBOL EXISTS_SYMBOL )? qualified_identifier
            	    {
            	        set590=(pANTLR3_COMMON_TOKEN)LT(1);

            	        if ( LA(1) == FUNCTION_SYMBOL || LA(1) == PROCEDURE_SYMBOL )
            	        {
            	            CONSUME();
            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set590))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	            CONSTRUCTEX();
            	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	            EXCEPTION->expectingSet = NULL;

            	            goto ruledrop_statementEx;
            	        }


            	        // MySQL.g:590:42: ( IF_SYMBOL EXISTS_SYMBOL )?
            	        {
            	            int alt188=2;
            	            switch ( LA(1) )
            	            {
            	                case IF_SYMBOL:
            	                	{
            	                		alt188=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt188)
            	            {
            	        	case 1:
            	        	    // MySQL.g:590:43: IF_SYMBOL EXISTS_SYMBOL
            	        	    {
            	        	        IF_SYMBOL591 = (pANTLR3_COMMON_TOKEN) MATCHT(IF_SYMBOL, &FOLLOW_IF_SYMBOL_in_drop_statement2818);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        IF_SYMBOL591_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IF_SYMBOL591));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, IF_SYMBOL591_tree);
            	        	        }

            	        	        EXISTS_SYMBOL592 = (pANTLR3_COMMON_TOKEN) MATCHT(EXISTS_SYMBOL, &FOLLOW_EXISTS_SYMBOL_in_drop_statement2820);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EXISTS_SYMBOL592_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXISTS_SYMBOL592));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EXISTS_SYMBOL592_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_qualified_identifier_in_drop_statement2824);
            	        qualified_identifier593=qualified_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, qualified_identifier593.tree);

            	    }
            	    break;
            	case 4:
            	    // MySQL.g:591:5: ( online_option )? INDEX_SYMBOL identifier ON_SYMBOL qualified_identifier ( index_lock_algorithm )?
            	    {
            	        // MySQL.g:591:5: ( online_option )?
            	        {
            	            int alt189=2;
            	            {
            	                int LA189_0 = LA(1);
            	                if ( ((SERVER_VERSION < 50600)) && (LA189_0 == OFFLINE_SYMBOL || LA189_0 == ONLINE_SYMBOL))
            	                {
            	                    alt189=1;
            	                }
            	            }
            	            switch (alt189)
            	            {
            	        	case 1:
            	        	    // MySQL.g:591:5: online_option
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_online_option_in_drop_statement2831);
            	        	        online_option594=online_option(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, online_option594.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        INDEX_SYMBOL595 = (pANTLR3_COMMON_TOKEN) MATCHT(INDEX_SYMBOL, &FOLLOW_INDEX_SYMBOL_in_drop_statement2834);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INDEX_SYMBOL595_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INDEX_SYMBOL595));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INDEX_SYMBOL595_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_identifier_in_drop_statement2836);
            	        identifier596=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier596.tree);

            	        ON_SYMBOL597 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_drop_statement2838);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ON_SYMBOL597_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL597));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL597_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_qualified_identifier_in_drop_statement2840);
            	        qualified_identifier598=qualified_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, qualified_identifier598.tree);

            	        // MySQL.g:591:75: ( index_lock_algorithm )?
            	        {
            	            int alt190=2;
            	            {
            	                int LA190_0 = LA(1);
            	                if ( ((SERVER_VERSION >= 50600)) && (LA190_0 == ALGORITHM_SYMBOL || LA190_0 == LOCK_SYMBOL))
            	                {
            	                    alt190=1;
            	                }
            	            }
            	            switch (alt190)
            	            {
            	        	case 1:
            	        	    // MySQL.g:591:75: index_lock_algorithm
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_index_lock_algorithm_in_drop_statement2842);
            	        	        index_lock_algorithm599=index_lock_algorithm(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_lock_algorithm599.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 5:
            	    // MySQL.g:592:5: LOGFILE_SYMBOL GROUP_SYMBOL identifier ENGINE_SYMBOL ( EQUAL_OPERATOR )? pure_identifier
            	    {
            	        LOGFILE_SYMBOL600 = (pANTLR3_COMMON_TOKEN) MATCHT(LOGFILE_SYMBOL, &FOLLOW_LOGFILE_SYMBOL_in_drop_statement2849);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        LOGFILE_SYMBOL600_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOGFILE_SYMBOL600));
            	        ADAPTOR->addChild(ADAPTOR, root_0, LOGFILE_SYMBOL600_tree);
            	        }

            	        GROUP_SYMBOL601 = (pANTLR3_COMMON_TOKEN) MATCHT(GROUP_SYMBOL, &FOLLOW_GROUP_SYMBOL_in_drop_statement2851);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        GROUP_SYMBOL601_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GROUP_SYMBOL601));
            	        ADAPTOR->addChild(ADAPTOR, root_0, GROUP_SYMBOL601_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_identifier_in_drop_statement2853);
            	        identifier602=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier602.tree);

            	        ENGINE_SYMBOL603 = (pANTLR3_COMMON_TOKEN) MATCHT(ENGINE_SYMBOL, &FOLLOW_ENGINE_SYMBOL_in_drop_statement2855);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ENGINE_SYMBOL603_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ENGINE_SYMBOL603));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ENGINE_SYMBOL603_tree);
            	        }

            	        // MySQL.g:592:58: ( EQUAL_OPERATOR )?
            	        {
            	            int alt191=2;
            	            switch ( LA(1) )
            	            {
            	                case EQUAL_OPERATOR:
            	                	{
            	                		alt191=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt191)
            	            {
            	        	case 1:
            	        	    // MySQL.g:592:58: EQUAL_OPERATOR
            	        	    {
            	        	        EQUAL_OPERATOR604 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_drop_statement2857);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EQUAL_OPERATOR604_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR604));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR604_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_pure_identifier_in_drop_statement2860);
            	        pure_identifier605=pure_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier605.tree);

            	    }
            	    break;
            	case 6:
            	    // MySQL.g:593:5: SERVER_SYMBOL ( IF_SYMBOL EXISTS_SYMBOL )? pure_identifier
            	    {
            	        SERVER_SYMBOL606 = (pANTLR3_COMMON_TOKEN) MATCHT(SERVER_SYMBOL, &FOLLOW_SERVER_SYMBOL_in_drop_statement2866);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SERVER_SYMBOL606_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SERVER_SYMBOL606));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SERVER_SYMBOL606_tree);
            	        }

            	        // MySQL.g:593:19: ( IF_SYMBOL EXISTS_SYMBOL )?
            	        {
            	            int alt192=2;
            	            switch ( LA(1) )
            	            {
            	                case IF_SYMBOL:
            	                	{
            	                		alt192=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt192)
            	            {
            	        	case 1:
            	        	    // MySQL.g:593:20: IF_SYMBOL EXISTS_SYMBOL
            	        	    {
            	        	        IF_SYMBOL607 = (pANTLR3_COMMON_TOKEN) MATCHT(IF_SYMBOL, &FOLLOW_IF_SYMBOL_in_drop_statement2869);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        IF_SYMBOL607_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IF_SYMBOL607));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, IF_SYMBOL607_tree);
            	        	        }

            	        	        EXISTS_SYMBOL608 = (pANTLR3_COMMON_TOKEN) MATCHT(EXISTS_SYMBOL, &FOLLOW_EXISTS_SYMBOL_in_drop_statement2871);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EXISTS_SYMBOL608_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXISTS_SYMBOL608));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EXISTS_SYMBOL608_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_pure_identifier_in_drop_statement2875);
            	        pure_identifier609=pure_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier609.tree);

            	    }
            	    break;
            	case 7:
            	    // MySQL.g:594:5: ( TEMPORARY_SYMBOL )? TABLE_SYMBOL ( IF_SYMBOL EXISTS_SYMBOL )? qualified_identifier_list ( RESTRICT_SYMBOL | CASCADE_SYMBOL )?
            	    {
            	        // MySQL.g:594:5: ( TEMPORARY_SYMBOL )?
            	        {
            	            int alt193=2;
            	            switch ( LA(1) )
            	            {
            	                case TEMPORARY_SYMBOL:
            	                	{
            	                		alt193=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt193)
            	            {
            	        	case 1:
            	        	    // MySQL.g:594:5: TEMPORARY_SYMBOL
            	        	    {
            	        	        TEMPORARY_SYMBOL610 = (pANTLR3_COMMON_TOKEN) MATCHT(TEMPORARY_SYMBOL, &FOLLOW_TEMPORARY_SYMBOL_in_drop_statement2881);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        TEMPORARY_SYMBOL610_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TEMPORARY_SYMBOL610));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, TEMPORARY_SYMBOL610_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        TABLE_SYMBOL611 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_drop_statement2884);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TABLE_SYMBOL611_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL611));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL611_tree);
            	        }

            	        // MySQL.g:594:36: ( IF_SYMBOL EXISTS_SYMBOL )?
            	        {
            	            int alt194=2;
            	            switch ( LA(1) )
            	            {
            	                case IF_SYMBOL:
            	                	{
            	                		alt194=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt194)
            	            {
            	        	case 1:
            	        	    // MySQL.g:594:37: IF_SYMBOL EXISTS_SYMBOL
            	        	    {
            	        	        IF_SYMBOL612 = (pANTLR3_COMMON_TOKEN) MATCHT(IF_SYMBOL, &FOLLOW_IF_SYMBOL_in_drop_statement2887);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        IF_SYMBOL612_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IF_SYMBOL612));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, IF_SYMBOL612_tree);
            	        	        }

            	        	        EXISTS_SYMBOL613 = (pANTLR3_COMMON_TOKEN) MATCHT(EXISTS_SYMBOL, &FOLLOW_EXISTS_SYMBOL_in_drop_statement2889);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EXISTS_SYMBOL613_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXISTS_SYMBOL613));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EXISTS_SYMBOL613_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_qualified_identifier_list_in_drop_statement2893);
            	        qualified_identifier_list614=qualified_identifier_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, qualified_identifier_list614.tree);

            	        // MySQL.g:594:89: ( RESTRICT_SYMBOL | CASCADE_SYMBOL )?
            	        {
            	            int alt195=2;
            	            switch ( LA(1) )
            	            {
            	                case CASCADE_SYMBOL:
            	                case RESTRICT_SYMBOL:
            	                	{
            	                		alt195=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt195)
            	            {
            	        	case 1:
            	        	    // MySQL.g:
            	        	    {
            	        	        set615=(pANTLR3_COMMON_TOKEN)LT(1);

            	        	        if ( LA(1) == CASCADE_SYMBOL || LA(1) == RESTRICT_SYMBOL )
            	        	        {
            	        	            CONSUME();
            	        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set615))
            	        	            );
            	        	            PERRORRECOVERY=ANTLR3_FALSE;
            	        	            FAILEDFLAG=ANTLR3_FALSE;

            	        	        }
            	        	        else
            	        	        {
            	        	            if (BACKTRACKING>0)
            	        	            {
            	        	                FAILEDFLAG = ANTLR3_TRUE;
            	        	                return retval;
            	        	            }

            	        	            CONSTRUCTEX();
            	        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	        	            EXCEPTION->expectingSet = NULL;

            	        	            goto ruledrop_statementEx;
            	        	        }


            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 8:
            	    // MySQL.g:595:5: TABLESPACE_SYMBOL identifier ENGINE_SYMBOL ( EQUAL_OPERATOR )? pure_identifier
            	    {
            	        TABLESPACE_SYMBOL616 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLESPACE_SYMBOL, &FOLLOW_TABLESPACE_SYMBOL_in_drop_statement2908);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TABLESPACE_SYMBOL616_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLESPACE_SYMBOL616));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TABLESPACE_SYMBOL616_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_identifier_in_drop_statement2910);
            	        identifier617=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier617.tree);

            	        ENGINE_SYMBOL618 = (pANTLR3_COMMON_TOKEN) MATCHT(ENGINE_SYMBOL, &FOLLOW_ENGINE_SYMBOL_in_drop_statement2912);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ENGINE_SYMBOL618_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ENGINE_SYMBOL618));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ENGINE_SYMBOL618_tree);
            	        }

            	        // MySQL.g:595:48: ( EQUAL_OPERATOR )?
            	        {
            	            int alt196=2;
            	            switch ( LA(1) )
            	            {
            	                case EQUAL_OPERATOR:
            	                	{
            	                		alt196=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt196)
            	            {
            	        	case 1:
            	        	    // MySQL.g:595:48: EQUAL_OPERATOR
            	        	    {
            	        	        EQUAL_OPERATOR619 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_drop_statement2914);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EQUAL_OPERATOR619_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR619));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR619_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_pure_identifier_in_drop_statement2917);
            	        pure_identifier620=pure_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier620.tree);

            	    }
            	    break;
            	case 9:
            	    // MySQL.g:596:5: TRIGGER_SYMBOL ( IF_SYMBOL EXISTS_SYMBOL )? qualified_identifier
            	    {
            	        TRIGGER_SYMBOL621 = (pANTLR3_COMMON_TOKEN) MATCHT(TRIGGER_SYMBOL, &FOLLOW_TRIGGER_SYMBOL_in_drop_statement2923);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TRIGGER_SYMBOL621_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TRIGGER_SYMBOL621));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TRIGGER_SYMBOL621_tree);
            	        }

            	        // MySQL.g:596:20: ( IF_SYMBOL EXISTS_SYMBOL )?
            	        {
            	            int alt197=2;
            	            switch ( LA(1) )
            	            {
            	                case IF_SYMBOL:
            	                	{
            	                		alt197=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt197)
            	            {
            	        	case 1:
            	        	    // MySQL.g:596:21: IF_SYMBOL EXISTS_SYMBOL
            	        	    {
            	        	        IF_SYMBOL622 = (pANTLR3_COMMON_TOKEN) MATCHT(IF_SYMBOL, &FOLLOW_IF_SYMBOL_in_drop_statement2926);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        IF_SYMBOL622_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IF_SYMBOL622));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, IF_SYMBOL622_tree);
            	        	        }

            	        	        EXISTS_SYMBOL623 = (pANTLR3_COMMON_TOKEN) MATCHT(EXISTS_SYMBOL, &FOLLOW_EXISTS_SYMBOL_in_drop_statement2928);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EXISTS_SYMBOL623_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXISTS_SYMBOL623));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EXISTS_SYMBOL623_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_qualified_identifier_in_drop_statement2932);
            	        qualified_identifier624=qualified_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, qualified_identifier624.tree);

            	    }
            	    break;
            	case 10:
            	    // MySQL.g:597:5: VIEW_SYMBOL ( IF_SYMBOL EXISTS_SYMBOL )? qualified_identifier_list ( RESTRICT_SYMBOL | CASCADE_SYMBOL )?
            	    {
            	        VIEW_SYMBOL625 = (pANTLR3_COMMON_TOKEN) MATCHT(VIEW_SYMBOL, &FOLLOW_VIEW_SYMBOL_in_drop_statement2938);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        VIEW_SYMBOL625_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VIEW_SYMBOL625));
            	        ADAPTOR->addChild(ADAPTOR, root_0, VIEW_SYMBOL625_tree);
            	        }

            	        // MySQL.g:597:17: ( IF_SYMBOL EXISTS_SYMBOL )?
            	        {
            	            int alt198=2;
            	            switch ( LA(1) )
            	            {
            	                case IF_SYMBOL:
            	                	{
            	                		alt198=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt198)
            	            {
            	        	case 1:
            	        	    // MySQL.g:597:18: IF_SYMBOL EXISTS_SYMBOL
            	        	    {
            	        	        IF_SYMBOL626 = (pANTLR3_COMMON_TOKEN) MATCHT(IF_SYMBOL, &FOLLOW_IF_SYMBOL_in_drop_statement2941);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        IF_SYMBOL626_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IF_SYMBOL626));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, IF_SYMBOL626_tree);
            	        	        }

            	        	        EXISTS_SYMBOL627 = (pANTLR3_COMMON_TOKEN) MATCHT(EXISTS_SYMBOL, &FOLLOW_EXISTS_SYMBOL_in_drop_statement2943);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EXISTS_SYMBOL627_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXISTS_SYMBOL627));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EXISTS_SYMBOL627_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_qualified_identifier_list_in_drop_statement2947);
            	        qualified_identifier_list628=qualified_identifier_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, qualified_identifier_list628.tree);

            	        // MySQL.g:597:70: ( RESTRICT_SYMBOL | CASCADE_SYMBOL )?
            	        {
            	            int alt199=2;
            	            switch ( LA(1) )
            	            {
            	                case CASCADE_SYMBOL:
            	                case RESTRICT_SYMBOL:
            	                	{
            	                		alt199=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt199)
            	            {
            	        	case 1:
            	        	    // MySQL.g:
            	        	    {
            	        	        set629=(pANTLR3_COMMON_TOKEN)LT(1);

            	        	        if ( LA(1) == CASCADE_SYMBOL || LA(1) == RESTRICT_SYMBOL )
            	        	        {
            	        	            CONSUME();
            	        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set629))
            	        	            );
            	        	            PERRORRECOVERY=ANTLR3_FALSE;
            	        	            FAILEDFLAG=ANTLR3_FALSE;

            	        	        }
            	        	        else
            	        	        {
            	        	            if (BACKTRACKING>0)
            	        	            {
            	        	                FAILEDFLAG = ANTLR3_TRUE;
            	        	                return retval;
            	        	            }

            	        	            CONSTRUCTEX();
            	        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	        	            EXCEPTION->expectingSet = NULL;

            	        	            goto ruledrop_statementEx;
            	        	        }


            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruledrop_statementEx; /* Prevent compiler warnings */
    ruledrop_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end drop_statement */

/**
 * $ANTLR start rename_table_statement
 * MySQL.g:603:1: rename_table_statement : RENAME_SYMBOL TABLE_SYMBOL qualified_identifier TO_SYMBOL qualified_identifier ( COMMA_SYMBOL qualified_identifier TO_SYMBOL qualified_identifier )* ;
 */
static MySQLParser_rename_table_statement_return
rename_table_statement(pMySQLParser ctx)
{
    MySQLParser_rename_table_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    RENAME_SYMBOL630;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL631;
    pANTLR3_COMMON_TOKEN    TO_SYMBOL633;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL635;
    pANTLR3_COMMON_TOKEN    TO_SYMBOL637;
    MySQLParser_qualified_identifier_return qualified_identifier632;
    #undef	RETURN_TYPE_qualified_identifier632
    #define	RETURN_TYPE_qualified_identifier632 MySQLParser_qualified_identifier_return

    MySQLParser_qualified_identifier_return qualified_identifier634;
    #undef	RETURN_TYPE_qualified_identifier634
    #define	RETURN_TYPE_qualified_identifier634 MySQLParser_qualified_identifier_return

    MySQLParser_qualified_identifier_return qualified_identifier636;
    #undef	RETURN_TYPE_qualified_identifier636
    #define	RETURN_TYPE_qualified_identifier636 MySQLParser_qualified_identifier_return

    MySQLParser_qualified_identifier_return qualified_identifier638;
    #undef	RETURN_TYPE_qualified_identifier638
    #define	RETURN_TYPE_qualified_identifier638 MySQLParser_qualified_identifier_return

    pANTLR3_BASE_TREE RENAME_SYMBOL630_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL631_tree;
    pANTLR3_BASE_TREE TO_SYMBOL633_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL635_tree;
    pANTLR3_BASE_TREE TO_SYMBOL637_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    RENAME_SYMBOL630       = NULL;
    TABLE_SYMBOL631       = NULL;
    TO_SYMBOL633       = NULL;
    COMMA_SYMBOL635       = NULL;
    TO_SYMBOL637       = NULL;
    qualified_identifier632.tree = NULL;

    qualified_identifier634.tree = NULL;

    qualified_identifier636.tree = NULL;

    qualified_identifier638.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    RENAME_SYMBOL630_tree   = NULL;
    TABLE_SYMBOL631_tree   = NULL;
    TO_SYMBOL633_tree   = NULL;
    COMMA_SYMBOL635_tree   = NULL;
    TO_SYMBOL637_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:603:23: ( RENAME_SYMBOL TABLE_SYMBOL qualified_identifier TO_SYMBOL qualified_identifier ( COMMA_SYMBOL qualified_identifier TO_SYMBOL qualified_identifier )* )
        // MySQL.g:604:2: RENAME_SYMBOL TABLE_SYMBOL qualified_identifier TO_SYMBOL qualified_identifier ( COMMA_SYMBOL qualified_identifier TO_SYMBOL qualified_identifier )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            RENAME_SYMBOL630 = (pANTLR3_COMMON_TOKEN) MATCHT(RENAME_SYMBOL, &FOLLOW_RENAME_SYMBOL_in_rename_table_statement2970);
            if  (HASEXCEPTION())
            {
                goto rulerename_table_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            RENAME_SYMBOL630_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RENAME_SYMBOL630));
            ADAPTOR->addChild(ADAPTOR, root_0, RENAME_SYMBOL630_tree);
            }

            TABLE_SYMBOL631 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_rename_table_statement2972);
            if  (HASEXCEPTION())
            {
                goto rulerename_table_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            TABLE_SYMBOL631_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL631));
            ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL631_tree);
            }

            FOLLOWPUSH(FOLLOW_qualified_identifier_in_rename_table_statement2974);
            qualified_identifier632=qualified_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulerename_table_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, qualified_identifier632.tree);

            TO_SYMBOL633 = (pANTLR3_COMMON_TOKEN) MATCHT(TO_SYMBOL, &FOLLOW_TO_SYMBOL_in_rename_table_statement2976);
            if  (HASEXCEPTION())
            {
                goto rulerename_table_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            TO_SYMBOL633_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TO_SYMBOL633));
            ADAPTOR->addChild(ADAPTOR, root_0, TO_SYMBOL633_tree);
            }

            FOLLOWPUSH(FOLLOW_qualified_identifier_in_rename_table_statement2980);
            qualified_identifier634=qualified_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulerename_table_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, qualified_identifier634.tree);

            // MySQL.g:605:24: ( COMMA_SYMBOL qualified_identifier TO_SYMBOL qualified_identifier )*

            for (;;)
            {
                int alt201=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt201=1;
                	}
                    break;

                }

                switch (alt201)
                {
            	case 1:
            	    // MySQL.g:605:25: COMMA_SYMBOL qualified_identifier TO_SYMBOL qualified_identifier
            	    {
            	        COMMA_SYMBOL635 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_rename_table_statement2983);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerename_table_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL635_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL635));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL635_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_qualified_identifier_in_rename_table_statement2985);
            	        qualified_identifier636=qualified_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerename_table_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, qualified_identifier636.tree);

            	        TO_SYMBOL637 = (pANTLR3_COMMON_TOKEN) MATCHT(TO_SYMBOL, &FOLLOW_TO_SYMBOL_in_rename_table_statement2987);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerename_table_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TO_SYMBOL637_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TO_SYMBOL637));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TO_SYMBOL637_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_qualified_identifier_in_rename_table_statement2989);
            	        qualified_identifier638=qualified_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerename_table_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, qualified_identifier638.tree);

            	    }
            	    break;

            	default:
            	    goto loop201;	/* break out of the loop */
            	    break;
                }
            }
            loop201: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto rulerename_table_statementEx; /* Prevent compiler warnings */
    rulerename_table_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end rename_table_statement */

/**
 * $ANTLR start truncate_table_statement
 * MySQL.g:610:1: truncate_table_statement : TRUNCATE_SYMBOL ( TABLE_SYMBOL )? qualified_identifier ;
 */
static MySQLParser_truncate_table_statement_return
truncate_table_statement(pMySQLParser ctx)
{
    MySQLParser_truncate_table_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    TRUNCATE_SYMBOL639;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL640;
    MySQLParser_qualified_identifier_return qualified_identifier641;
    #undef	RETURN_TYPE_qualified_identifier641
    #define	RETURN_TYPE_qualified_identifier641 MySQLParser_qualified_identifier_return

    pANTLR3_BASE_TREE TRUNCATE_SYMBOL639_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL640_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    TRUNCATE_SYMBOL639       = NULL;
    TABLE_SYMBOL640       = NULL;
    qualified_identifier641.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    TRUNCATE_SYMBOL639_tree   = NULL;
    TABLE_SYMBOL640_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:610:25: ( TRUNCATE_SYMBOL ( TABLE_SYMBOL )? qualified_identifier )
        // MySQL.g:611:2: TRUNCATE_SYMBOL ( TABLE_SYMBOL )? qualified_identifier
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            TRUNCATE_SYMBOL639 = (pANTLR3_COMMON_TOKEN) MATCHT(TRUNCATE_SYMBOL, &FOLLOW_TRUNCATE_SYMBOL_in_truncate_table_statement3003);
            if  (HASEXCEPTION())
            {
                goto ruletruncate_table_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            TRUNCATE_SYMBOL639_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TRUNCATE_SYMBOL639));
            ADAPTOR->addChild(ADAPTOR, root_0, TRUNCATE_SYMBOL639_tree);
            }

            // MySQL.g:611:18: ( TABLE_SYMBOL )?
            {
                int alt202=2;
                switch ( LA(1) )
                {
                    case TABLE_SYMBOL:
                    	{
                    		alt202=1;
                    	}
                        break;
                }

                switch (alt202)
                {
            	case 1:
            	    // MySQL.g:611:18: TABLE_SYMBOL
            	    {
            	        TABLE_SYMBOL640 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_truncate_table_statement3005);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletruncate_table_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TABLE_SYMBOL640_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL640));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL640_tree);
            	        }

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_qualified_identifier_in_truncate_table_statement3008);
            qualified_identifier641=qualified_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruletruncate_table_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, qualified_identifier641.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto ruletruncate_table_statementEx; /* Prevent compiler warnings */
    ruletruncate_table_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end truncate_table_statement */

/**
 * $ANTLR start call_statement
 * MySQL.g:616:1: call_statement : CALL_SYMBOL identifier ( OPEN_PAR_SYMBOL ( expression_list )? CLOSE_PAR_SYMBOL )? ;
 */
static MySQLParser_call_statement_return
call_statement(pMySQLParser ctx)
{
    MySQLParser_call_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    CALL_SYMBOL642;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL644;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL646;
    MySQLParser_identifier_return identifier643;
    #undef	RETURN_TYPE_identifier643
    #define	RETURN_TYPE_identifier643 MySQLParser_identifier_return

    MySQLParser_expression_list_return expression_list645;
    #undef	RETURN_TYPE_expression_list645
    #define	RETURN_TYPE_expression_list645 MySQLParser_expression_list_return

    pANTLR3_BASE_TREE CALL_SYMBOL642_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL644_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL646_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CALL_SYMBOL642       = NULL;
    OPEN_PAR_SYMBOL644       = NULL;
    CLOSE_PAR_SYMBOL646       = NULL;
    identifier643.tree = NULL;

    expression_list645.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CALL_SYMBOL642_tree   = NULL;
    OPEN_PAR_SYMBOL644_tree   = NULL;
    CLOSE_PAR_SYMBOL646_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:616:15: ( CALL_SYMBOL identifier ( OPEN_PAR_SYMBOL ( expression_list )? CLOSE_PAR_SYMBOL )? )
        // MySQL.g:617:2: CALL_SYMBOL identifier ( OPEN_PAR_SYMBOL ( expression_list )? CLOSE_PAR_SYMBOL )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            CALL_SYMBOL642 = (pANTLR3_COMMON_TOKEN) MATCHT(CALL_SYMBOL, &FOLLOW_CALL_SYMBOL_in_call_statement3019);
            if  (HASEXCEPTION())
            {
                goto rulecall_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CALL_SYMBOL642_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CALL_SYMBOL642));
            ADAPTOR->addChild(ADAPTOR, root_0, CALL_SYMBOL642_tree);
            }

            FOLLOWPUSH(FOLLOW_identifier_in_call_statement3021);
            identifier643=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecall_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier643.tree);

            // MySQL.g:617:25: ( OPEN_PAR_SYMBOL ( expression_list )? CLOSE_PAR_SYMBOL )?
            {
                int alt204=2;
                switch ( LA(1) )
                {
                    case OPEN_PAR_SYMBOL:
                    	{
                    		alt204=1;
                    	}
                        break;
                }

                switch (alt204)
                {
            	case 1:
            	    // MySQL.g:617:26: OPEN_PAR_SYMBOL ( expression_list )? CLOSE_PAR_SYMBOL
            	    {
            	        OPEN_PAR_SYMBOL644 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_call_statement3024);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecall_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPEN_PAR_SYMBOL644_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL644));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL644_tree);
            	        }

            	        // MySQL.g:617:42: ( expression_list )?
            	        {
            	            int alt203=2;
            	            {
            	                int LA203_0 = LA(1);
            	                if ( (LA203_0 == BITWISE_NOT_OPERATOR || LA203_0 == DATE_SYMBOL || LA203_0 == INTERVAL_SYMBOL || LA203_0 == LOGICAL_NOT_OPERATOR || LA203_0 == MINUS_OPERATOR || LA203_0 == NCHAR_TEXT || LA203_0 == NOT2_SYMBOL || LA203_0 == NOT_SYMBOL || LA203_0 == PLUS_OPERATOR || LA203_0 == SINGLE_QUOTED_TEXT || ((LA203_0 >= TIMESTAMP_SYMBOL) && (LA203_0 <= TIME_SYMBOL)) || LA203_0 == UNDERSCORE_CHARSET))
            	                {
            	                    alt203=1;
            	                }
            	                else if ( ((((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)))||((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))) && (LA203_0 == DOUBLE_QUOTED_TEXT))
            	                {
            	                    alt203=1;
            	                }
            	                else if ( (LA203_0 == FALSE_SYMBOL || LA203_0 == FLOAT || ((LA203_0 >= HEXNUMBER) && (LA203_0 <= HEXSTRING)) || LA203_0 == INTEGER || LA203_0 == TRUE_SYMBOL))
            	                {
            	                    alt203=1;
            	                }
            	                else if ( ((SERVER_VERSION >= 50003)) && (((LA203_0 >= BITNUMBER) && (LA203_0 <= BITSTRING))))
            	                {
            	                    alt203=1;
            	                }
            	                else if ( (((LA203_0 >= ACTION_SYMBOL) && (LA203_0 <= ADDDATE_SYMBOL)) || ((LA203_0 >= AFTER_SYMBOL) && (LA203_0 <= ALGORITHM_SYMBOL)) || LA203_0 == ANALYZE_SYMBOL || ((LA203_0 >= ANY_SYMBOL) && (LA203_0 <= ASCII_SYMBOL)) || ((LA203_0 >= AT_AT_SIGN_SYMBOL) && (LA203_0 <= BACKUP_SYMBOL)) || LA203_0 == BACK_TICK_QUOTED_ID || LA203_0 == BEGIN_SYMBOL || ((LA203_0 >= BINARY_SYMBOL) && (LA203_0 <= BINLOG_SYMBOL)) || ((LA203_0 >= BIT_AND_SYMBOL) && (LA203_0 <= BIT_XOR_SYMBOL)) || ((LA203_0 >= BLOCK_SYMBOL) && (LA203_0 <= BOOL_SYMBOL)) || ((LA203_0 >= BTREE_SYMBOL) && (LA203_0 <= BYTE_SYMBOL)) || LA203_0 == CACHE_SYMBOL || LA203_0 == CASCADED_SYMBOL || ((LA203_0 >= CASE_SYMBOL) && (LA203_0 <= CHANGED_SYMBOL)) || ((LA203_0 >= CHARSET_SYMBOL) && (LA203_0 <= CHECKSUM_SYMBOL)) || ((LA203_0 >= CIPHER_SYMBOL) && (LA203_0 <= CLIENT_SYMBOL)) || ((LA203_0 >= CLOSE_SYMBOL) && (LA203_0 <= CODE_SYMBOL)) || LA203_0 == COLLATION_SYMBOL || ((LA203_0 >= COLUMNS_SYMBOL) && (LA203_0 <= COLUMN_NAME_SYMBOL)) || ((LA203_0 >= COMMENT_SYMBOL) && (LA203_0 <= COMPRESSED_SYMBOL)) || LA203_0 == CONCURRENT_SYMBOL || ((LA203_0 >= CONNECTION_SYMBOL) && (LA203_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA203_0 >= CONTAINS_SYMBOL) && (LA203_0 <= CONTEXT_SYMBOL)) || ((LA203_0 >= CONTRIBUTORS_SYMBOL) && (LA203_0 <= CPU_SYMBOL)) || ((LA203_0 >= CUBE_SYMBOL) && (LA203_0 <= CURRENT_SYMBOL)) || ((LA203_0 >= CURRENT_USER_SYMBOL) && (LA203_0 <= CURSOR_NAME_SYMBOL)) || LA203_0 == CURTIME_SYMBOL || ((LA203_0 >= DATABASE_SYMBOL) && (LA203_0 <= DATETIME_SYMBOL)) || LA203_0 == DATE_ADD_SYMBOL || LA203_0 == DATE_SUB_SYMBOL || ((LA203_0 >= DAY_SYMBOL) && (LA203_0 <= DEALLOCATE_SYMBOL)) || LA203_0 == DEFAULT_AUTH_SYMBOL || LA203_0 == DEFINER_SYMBOL || LA203_0 == DELAY_KEY_WRITE_SYMBOL || LA203_0 == DES_KEY_FILE_SYMBOL || LA203_0 == DIAGNOSTICS_SYMBOL || ((LA203_0 >= DIRECTORY_SYMBOL) && (LA203_0 <= DISK_SYMBOL)) || LA203_0 == DOT_SYMBOL || LA203_0 == DO_SYMBOL || ((LA203_0 >= DUMPFILE_SYMBOL) && (LA203_0 <= DYNAMIC_SYMBOL)) || LA203_0 == ENABLE_SYMBOL || LA203_0 == ENDS_SYMBOL || ((LA203_0 >= END_SYMBOL) && (LA203_0 <= ENUM_SYMBOL)) || ((LA203_0 >= ERRORS_SYMBOL) && (LA203_0 <= ERROR_SYMBOL)) || ((LA203_0 >= ESCAPE_SYMBOL) && (LA203_0 <= EVERY_SYMBOL)) || ((LA203_0 >= EXECUTE_SYMBOL) && (LA203_0 <= EXISTS_SYMBOL)) || LA203_0 == EXPANSION_SYMBOL || LA203_0 == EXPORT_SYMBOL || ((LA203_0 >= EXTENDED_SYMBOL) && (LA203_0 <= EXTRACT_SYMBOL)) || ((LA203_0 >= FAST_SYMBOL) && (LA203_0 <= FAULTS_SYMBOL)) || ((LA203_0 >= FILE_SYMBOL) && (LA203_0 <= FIXED_SYMBOL)) || LA203_0 == FLUSH_SYMBOL || LA203_0 == FORMAT_SYMBOL || LA203_0 == FOUND_SYMBOL || LA203_0 == FULL_SYMBOL || ((LA203_0 >= FUNCTION_SYMBOL) && (LA203_0 <= GET_FORMAT_SYMBOL)) || ((LA203_0 >= GLOBAL_SYMBOL) && (LA203_0 <= GRANTS_SYMBOL)) || LA203_0 == GROUP_CONCAT_SYMBOL || ((LA203_0 >= HANDLER_SYMBOL) && (LA203_0 <= HASH_SYMBOL)) || LA203_0 == HELP_SYMBOL || ((LA203_0 >= HOSTS_SYMBOL) && (LA203_0 <= HOST_SYMBOL)) || ((LA203_0 >= HOUR_SYMBOL) && (LA203_0 <= IGNORE_SERVER_IDS_SYMBOL)) || ((LA203_0 >= IMPORT_SYMBOL) && (LA203_0 <= INDEXES_SYMBOL)) || LA203_0 == INITIAL_SIZE_SYMBOL || LA203_0 == INNODB_SYMBOL || ((LA203_0 >= INSERT_METHOD_SYMBOL) && (LA203_0 <= INSTALL_SYMBOL)) || LA203_0 == INVOKER_SYMBOL || LA203_0 == IO_SYMBOL || ((LA203_0 >= IPC_SYMBOL) && (LA203_0 <= ISSUER_SYMBOL)) || LA203_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA203_0 >= LANGUAGE_SYMBOL) && (LA203_0 <= LAST_SYMBOL)) || LA203_0 == LEAVES_SYMBOL || LA203_0 == LEFT_SYMBOL || LA203_0 == LESS_SYMBOL || LA203_0 == LEVEL_SYMBOL || LA203_0 == LINESTRING_SYMBOL || LA203_0 == LIST_SYMBOL || LA203_0 == LOCAL_SYMBOL || LA203_0 == LOCKS_SYMBOL || LA203_0 == LOGFILE_SYMBOL || LA203_0 == LOGS_SYMBOL || LA203_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA203_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA203_0 <= MASTER_SSL_SYMBOL)) || ((LA203_0 >= MASTER_SYMBOL) && (LA203_0 <= MATCH_SYMBOL)) || ((LA203_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA203_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA203_0 >= MEDIUM_SYMBOL) && (LA203_0 <= MICROSECOND_SYMBOL)) || LA203_0 == MIGRATE_SYMBOL || ((LA203_0 >= MINUTE_SYMBOL) && (LA203_0 <= MIN_SYMBOL)) || LA203_0 == MODE_SYMBOL || LA203_0 == MODIFY_SYMBOL || ((LA203_0 >= MOD_SYMBOL) && (LA203_0 <= MULTILINESTRING_SYMBOL)) || ((LA203_0 >= MULTIPOINT_SYMBOL) && (LA203_0 <= MULTIPOLYGON_SYMBOL)) || ((LA203_0 >= MUTEX_SYMBOL) && (LA203_0 <= NATIONAL_SYMBOL)) || LA203_0 == NCHAR_SYMBOL || LA203_0 == NDBCLUSTER_SYMBOL || ((LA203_0 >= NEW_SYMBOL) && (LA203_0 <= NONE_SYMBOL)) || ((LA203_0 >= NOW_SYMBOL) && (LA203_0 <= NO_WAIT_SYMBOL)) || LA203_0 == NULL2_SYMBOL || ((LA203_0 >= NULL_SYMBOL) && (LA203_0 <= NUMBER_SYMBOL)) || LA203_0 == NVARCHAR_SYMBOL || ((LA203_0 >= OFFSET_SYMBOL) && (LA203_0 <= ONE_SYMBOL)) || ((LA203_0 >= OPEN_PAR_SYMBOL) && (LA203_0 <= OPEN_SYMBOL)) || LA203_0 == OPTIONS_SYMBOL || ((LA203_0 >= OWNER_SYMBOL) && (LA203_0 <= PARAM_MARKER)) || ((LA203_0 >= PARSER_SYMBOL) && (LA203_0 <= PARTITION_SYMBOL)) || ((LA203_0 >= PASSWORD_SYMBOL) && (LA203_0 <= PLUGIN_SYMBOL)) || ((LA203_0 >= POINT_SYMBOL) && (LA203_0 <= POSITION_SYMBOL)) || ((LA203_0 >= PREPARE_SYMBOL) && (LA203_0 <= PREV_SYMBOL)) || LA203_0 == PRIVILEGES_SYMBOL || ((LA203_0 >= PROCESSLIST_SYMBOL) && (LA203_0 <= PROXY_SYMBOL)) || ((LA203_0 >= QUARTER_SYMBOL) && (LA203_0 <= QUICK_SYMBOL)) || LA203_0 == READ_ONLY_SYMBOL || ((LA203_0 >= REBUILD_SYMBOL) && (LA203_0 <= REDUNDANT_SYMBOL)) || ((LA203_0 >= RELAYLOG_SYMBOL) && (LA203_0 <= RELAY_THREAD_SYMBOL)) || ((LA203_0 >= RELOAD_SYMBOL) && (LA203_0 <= REMOVE_SYMBOL)) || ((LA203_0 >= REORGANIZE_SYMBOL) && (LA203_0 <= REPLICATION_SYMBOL)) || LA203_0 == RESET_SYMBOL || LA203_0 == RESTORE_SYMBOL || ((LA203_0 >= RESUME_SYMBOL) && (LA203_0 <= RETURNS_SYMBOL)) || LA203_0 == REVERSE_SYMBOL || LA203_0 == RIGHT_SYMBOL || ((LA203_0 >= ROLLBACK_SYMBOL) && (LA203_0 <= SCHEDULE_SYMBOL)) || LA203_0 == SCHEMA_NAME_SYMBOL || ((LA203_0 >= SECOND_SYMBOL) && (LA203_0 <= SECURITY_SYMBOL)) || ((LA203_0 >= SERIALIZABLE_SYMBOL) && (LA203_0 <= SERIAL_SYMBOL)) || ((LA203_0 >= SERVER_SYMBOL) && (LA203_0 <= SESSION_SYMBOL)) || LA203_0 == SHARE_SYMBOL || LA203_0 == SHUTDOWN_SYMBOL || ((LA203_0 >= SIGNED_SYMBOL) && (LA203_0 <= SIMPLE_SYMBOL)) || ((LA203_0 >= SLAVE_SYMBOL) && (LA203_0 <= SLOW_SYMBOL)) || ((LA203_0 >= SNAPSHOT_SYMBOL) && (LA203_0 <= SOURCE_SYMBOL)) || ((LA203_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA203_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA203_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA203_0 <= SQL_CACHE_SYMBOL)) || LA203_0 == SQL_NO_CACHE_SYMBOL || LA203_0 == SQL_THREAD_SYMBOL || ((LA203_0 >= STARTS_SYMBOL) && (LA203_0 <= STATUS_SYMBOL)) || LA203_0 == STDDEV_SAMP_SYMBOL || ((LA203_0 >= STD_SYMBOL) && (LA203_0 <= STORAGE_SYMBOL)) || ((LA203_0 >= STRING_SYMBOL) && (LA203_0 <= SUBPARTITION_SYMBOL)) || LA203_0 == SUBSTRING_SYMBOL || ((LA203_0 >= SUM_SYMBOL) && (LA203_0 <= SYSDATE_SYMBOL)) || ((LA203_0 >= TABLESPACE_SYMBOL) && (LA203_0 <= TABLE_NAME_SYMBOL)) || ((LA203_0 >= TEMPORARY_SYMBOL) && (LA203_0 <= TEMPTABLE_SYMBOL)) || ((LA203_0 >= TEXT_SYMBOL) && (LA203_0 <= THAN_SYMBOL)) || ((LA203_0 >= TIMESTAMP_ADD_SYMBOL) && (LA203_0 <= TIMESTAMP_DIFF_SYMBOL)) || ((LA203_0 >= TRANSACTION_SYMBOL) && (LA203_0 <= TRIGGERS_SYMBOL)) || LA203_0 == TRIM_SYMBOL || ((LA203_0 >= TRUNCATE_SYMBOL) && (LA203_0 <= UDF_RETURNS_SYMBOL)) || ((LA203_0 >= UNCOMMITTED_SYMBOL) && (LA203_0 <= UNDEFINED_SYMBOL)) || ((LA203_0 >= UNDOFILE_SYMBOL) && (LA203_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA203_0 >= UNICODE_SYMBOL) && (LA203_0 <= UNINSTALL_SYMBOL)) || LA203_0 == UNKNOWN_SYMBOL || LA203_0 == UNTIL_SYMBOL || LA203_0 == UPGRADE_SYMBOL || ((LA203_0 >= USER_RESOURCES_SYMBOL) && (LA203_0 <= USE_FRM_SYMBOL)) || ((LA203_0 >= UTC_DATE_SYMBOL) && (LA203_0 <= VALUE_SYMBOL)) || ((LA203_0 >= VARIABLES_SYMBOL) && (LA203_0 <= VARIANCE_SYMBOL)) || LA203_0 == VAR_SAMP_SYMBOL || ((LA203_0 >= VIEW_SYMBOL) && (LA203_0 <= WEIGHT_STRING_SYMBOL)) || ((LA203_0 >= WORK_SYMBOL) && (LA203_0 <= WRAPPER_SYMBOL)) || LA203_0 == X509_SYMBOL || ((LA203_0 >= XA_SYMBOL) && (LA203_0 <= XML_SYMBOL)) || LA203_0 == YEAR_SYMBOL || LA203_0 == 732))
            	                {
            	                    alt203=1;
            	                }
            	            }
            	            switch (alt203)
            	            {
            	        	case 1:
            	        	    // MySQL.g:617:42: expression_list
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_expression_list_in_call_statement3026);
            	        	        expression_list645=expression_list(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecall_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression_list645.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        CLOSE_PAR_SYMBOL646 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_call_statement3029);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecall_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CLOSE_PAR_SYMBOL646_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL646));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL646_tree);
            	        }

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulecall_statementEx; /* Prevent compiler warnings */
    rulecall_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end call_statement */

/**
 * $ANTLR start delete_statement
 * MySQL.g:620:1: delete_statement : DELETE_SYMBOL ( options {greedy=true; } : delete_option )* ( FROM_SYMBOL table_identifier ( ( partition_delete )? ( where_clause )? ( order_by_clause )? ( LIMIT_SYMBOL INTEGER )? | table_name_list_with_wildcards USING_SYMBOL table_references ( where_clause )? ) | table_name_list_with_wildcards FROM_SYMBOL table_references ( where_clause )? ) ;
 */
static MySQLParser_delete_statement_return
delete_statement(pMySQLParser ctx)
{
    MySQLParser_delete_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    DELETE_SYMBOL647;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL649;
    pANTLR3_COMMON_TOKEN    LIMIT_SYMBOL654;
    pANTLR3_COMMON_TOKEN    INTEGER655;
    pANTLR3_COMMON_TOKEN    USING_SYMBOL657;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL661;
    MySQLParser_delete_option_return delete_option648;
    #undef	RETURN_TYPE_delete_option648
    #define	RETURN_TYPE_delete_option648 MySQLParser_delete_option_return

    MySQLParser_table_identifier_return table_identifier650;
    #undef	RETURN_TYPE_table_identifier650
    #define	RETURN_TYPE_table_identifier650 MySQLParser_table_identifier_return

    MySQLParser_partition_delete_return partition_delete651;
    #undef	RETURN_TYPE_partition_delete651
    #define	RETURN_TYPE_partition_delete651 MySQLParser_partition_delete_return

    MySQLParser_where_clause_return where_clause652;
    #undef	RETURN_TYPE_where_clause652
    #define	RETURN_TYPE_where_clause652 MySQLParser_where_clause_return

    MySQLParser_order_by_clause_return order_by_clause653;
    #undef	RETURN_TYPE_order_by_clause653
    #define	RETURN_TYPE_order_by_clause653 MySQLParser_order_by_clause_return

    MySQLParser_table_name_list_with_wildcards_return table_name_list_with_wildcards656;
    #undef	RETURN_TYPE_table_name_list_with_wildcards656
    #define	RETURN_TYPE_table_name_list_with_wildcards656 MySQLParser_table_name_list_with_wildcards_return

    MySQLParser_table_references_return table_references658;
    #undef	RETURN_TYPE_table_references658
    #define	RETURN_TYPE_table_references658 MySQLParser_table_references_return

    MySQLParser_where_clause_return where_clause659;
    #undef	RETURN_TYPE_where_clause659
    #define	RETURN_TYPE_where_clause659 MySQLParser_where_clause_return

    MySQLParser_table_name_list_with_wildcards_return table_name_list_with_wildcards660;
    #undef	RETURN_TYPE_table_name_list_with_wildcards660
    #define	RETURN_TYPE_table_name_list_with_wildcards660 MySQLParser_table_name_list_with_wildcards_return

    MySQLParser_table_references_return table_references662;
    #undef	RETURN_TYPE_table_references662
    #define	RETURN_TYPE_table_references662 MySQLParser_table_references_return

    MySQLParser_where_clause_return where_clause663;
    #undef	RETURN_TYPE_where_clause663
    #define	RETURN_TYPE_where_clause663 MySQLParser_where_clause_return

    pANTLR3_BASE_TREE DELETE_SYMBOL647_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL649_tree;
    pANTLR3_BASE_TREE LIMIT_SYMBOL654_tree;
    pANTLR3_BASE_TREE INTEGER655_tree;
    pANTLR3_BASE_TREE USING_SYMBOL657_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL661_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DELETE_SYMBOL647       = NULL;
    FROM_SYMBOL649       = NULL;
    LIMIT_SYMBOL654       = NULL;
    INTEGER655       = NULL;
    USING_SYMBOL657       = NULL;
    FROM_SYMBOL661       = NULL;
    delete_option648.tree = NULL;

    table_identifier650.tree = NULL;

    partition_delete651.tree = NULL;

    where_clause652.tree = NULL;

    order_by_clause653.tree = NULL;

    table_name_list_with_wildcards656.tree = NULL;

    table_references658.tree = NULL;

    where_clause659.tree = NULL;

    table_name_list_with_wildcards660.tree = NULL;

    table_references662.tree = NULL;

    where_clause663.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DELETE_SYMBOL647_tree   = NULL;
    FROM_SYMBOL649_tree   = NULL;
    LIMIT_SYMBOL654_tree   = NULL;
    INTEGER655_tree   = NULL;
    USING_SYMBOL657_tree   = NULL;
    FROM_SYMBOL661_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:620:17: ( DELETE_SYMBOL ( options {greedy=true; } : delete_option )* ( FROM_SYMBOL table_identifier ( ( partition_delete )? ( where_clause )? ( order_by_clause )? ( LIMIT_SYMBOL INTEGER )? | table_name_list_with_wildcards USING_SYMBOL table_references ( where_clause )? ) | table_name_list_with_wildcards FROM_SYMBOL table_references ( where_clause )? ) )
        // MySQL.g:621:2: DELETE_SYMBOL ( options {greedy=true; } : delete_option )* ( FROM_SYMBOL table_identifier ( ( partition_delete )? ( where_clause )? ( order_by_clause )? ( LIMIT_SYMBOL INTEGER )? | table_name_list_with_wildcards USING_SYMBOL table_references ( where_clause )? ) | table_name_list_with_wildcards FROM_SYMBOL table_references ( where_clause )? )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            DELETE_SYMBOL647 = (pANTLR3_COMMON_TOKEN) MATCHT(DELETE_SYMBOL, &FOLLOW_DELETE_SYMBOL_in_delete_statement3040);
            if  (HASEXCEPTION())
            {
                goto ruledelete_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DELETE_SYMBOL647_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DELETE_SYMBOL647));
            ADAPTOR->addChild(ADAPTOR, root_0, DELETE_SYMBOL647_tree);
            }

            // MySQL.g:621:16: ( options {greedy=true; } : delete_option )*

            for (;;)
            {
                int alt205=2;
                switch ( LA(1) )
                {
                case QUICK_SYMBOL:
                	{
                		switch ( LA(2) )
                		{
                		case FROM_SYMBOL:
                			{
                				alt205=1;
                			}
                		    break;
                		case ACTION_SYMBOL:
                		case ADDDATE_SYMBOL:
                		case AFTER_SYMBOL:
                		case AGAINST_SYMBOL:
                		case AGGREGATE_SYMBOL:
                		case ALGORITHM_SYMBOL:
                		case ANALYZE_SYMBOL:
                		case ANY_SYMBOL:
                		case ASCII_SYMBOL:
                		case AT_SYMBOL:
                		case AUTHORS_SYMBOL:
                		case AUTOEXTEND_SIZE_SYMBOL:
                		case AUTO_INCREMENT_SYMBOL:
                		case AVG_ROW_LENGTH_SYMBOL:
                		case AVG_SYMBOL:
                		case BACKUP_SYMBOL:
                		case BACK_TICK_QUOTED_ID:
                		case BEGIN_SYMBOL:
                		case BINLOG_SYMBOL:
                		case BIT_SYMBOL:
                		case BLOCK_SYMBOL:
                		case BOOLEAN_SYMBOL:
                		case BOOL_SYMBOL:
                		case BTREE_SYMBOL:
                		case BYTE_SYMBOL:
                		case CACHE_SYMBOL:
                		case CASCADED_SYMBOL:
                		case CATALOG_NAME_SYMBOL:
                		case CHAIN_SYMBOL:
                		case CHANGED_SYMBOL:
                		case CHARSET_SYMBOL:
                		case CHECKSUM_SYMBOL:
                		case CIPHER_SYMBOL:
                		case CLASS_ORIGIN_SYMBOL:
                		case CLIENT_SYMBOL:
                		case CLOSE_SYMBOL:
                		case COALESCE_SYMBOL:
                		case CODE_SYMBOL:
                		case COLLATION_SYMBOL:
                		case COLUMNS_SYMBOL:
                		case COLUMN_FORMAT_SYMBOL:
                		case COLUMN_NAME_SYMBOL:
                		case COMMENT_SYMBOL:
                		case COMMITTED_SYMBOL:
                		case COMMIT_SYMBOL:
                		case COMPACT_SYMBOL:
                		case COMPLETION_SYMBOL:
                		case COMPRESSED_SYMBOL:
                		case CONCURRENT_SYMBOL:
                		case CONNECTION_SYMBOL:
                		case CONSISTENT_SYMBOL:
                		case CONSTRAINT_CATALOG_SYMBOL:
                		case CONSTRAINT_NAME_SYMBOL:
                		case CONSTRAINT_SCHEMA_SYMBOL:
                		case CONTAINS_SYMBOL:
                		case CONTEXT_SYMBOL:
                		case CONTRIBUTORS_SYMBOL:
                		case CPU_SYMBOL:
                		case CUBE_SYMBOL:
                		case CURRENT_SYMBOL:
                		case CURSOR_NAME_SYMBOL:
                		case DATAFILE_SYMBOL:
                		case DATA_SYMBOL:
                		case DATETIME_SYMBOL:
                		case DATE_SYMBOL:
                		case DAY_SYMBOL:
                		case DEALLOCATE_SYMBOL:
                		case DEFAULT_AUTH_SYMBOL:
                		case DEFINER_SYMBOL:
                		case DELAY_KEY_WRITE_SYMBOL:
                		case DES_KEY_FILE_SYMBOL:
                		case DIAGNOSTICS_SYMBOL:
                		case DIRECTORY_SYMBOL:
                		case DISABLE_SYMBOL:
                		case DISCARD_SYMBOL:
                		case DISK_SYMBOL:
                		case DOUBLE_QUOTED_TEXT:
                		case DO_SYMBOL:
                		case DUMPFILE_SYMBOL:
                		case DUPLICATE_SYMBOL:
                		case DYNAMIC_SYMBOL:
                		case ENABLE_SYMBOL:
                		case ENDS_SYMBOL:
                		case END_SYMBOL:
                		case ENGINES_SYMBOL:
                		case ENGINE_SYMBOL:
                		case ENUM_SYMBOL:
                		case ERRORS_SYMBOL:
                		case ERROR_SYMBOL:
                		case ESCAPE_SYMBOL:
                		case EVENTS_SYMBOL:
                		case EVENT_SYMBOL:
                		case EVERY_SYMBOL:
                		case EXECUTE_SYMBOL:
                		case EXPANSION_SYMBOL:
                		case EXPORT_SYMBOL:
                		case EXTENDED_SYMBOL:
                		case EXTENT_SIZE_SYMBOL:
                		case FAST_SYMBOL:
                		case FAULTS_SYMBOL:
                		case FILE_SYMBOL:
                		case FIRST_SYMBOL:
                		case FIXED_SYMBOL:
                		case FLUSH_SYMBOL:
                		case FORMAT_SYMBOL:
                		case FOUND_SYMBOL:
                		case FULL_SYMBOL:
                		case FUNCTION_SYMBOL:
                		case GENERAL_SYMBOL:
                		case GEOMETRYCOLLECTION_SYMBOL:
                		case GEOMETRY_SYMBOL:
                		case GET_FORMAT_SYMBOL:
                		case GLOBAL_SYMBOL:
                		case GRANTS_SYMBOL:
                		case HANDLER_SYMBOL:
                		case HASH_SYMBOL:
                		case HELP_SYMBOL:
                		case HOSTS_SYMBOL:
                		case HOST_SYMBOL:
                		case HOUR_SYMBOL:
                		case IDENTIFIED_SYMBOL:
                		case IDENTIFIER:
                		case IGNORE_SERVER_IDS_SYMBOL:
                		case IGNORE_SYMBOL:
                		case IMPORT_SYMBOL:
                		case INDEXES_SYMBOL:
                		case INITIAL_SIZE_SYMBOL:
                		case INNODB_SYMBOL:
                		case INSERT_METHOD_SYMBOL:
                		case INSTALL_SYMBOL:
                		case INVOKER_SYMBOL:
                		case IO_SYMBOL:
                		case IPC_SYMBOL:
                		case ISOLATION_SYMBOL:
                		case ISSUER_SYMBOL:
                		case KEY_BLOCK_SIZE_SYMBOL:
                		case LANGUAGE_SYMBOL:
                		case LAST_SYMBOL:
                		case LEAVES_SYMBOL:
                		case LESS_SYMBOL:
                		case LEVEL_SYMBOL:
                		case LINESTRING_SYMBOL:
                		case LIST_SYMBOL:
                		case LOCAL_SYMBOL:
                		case LOCKS_SYMBOL:
                		case LOGFILE_SYMBOL:
                		case LOGS_SYMBOL:
                		case LOW_PRIORITY_SYMBOL:
                		case MASTER_AUTO_POSITION_SYMBOL:
                		case MASTER_CONNECT_RETRY_SYMBOL:
                		case MASTER_DELAY_SYMBOL:
                		case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                		case MASTER_HOST_SYMBOL:
                		case MASTER_LOG_FILE_SYMBOL:
                		case MASTER_LOG_POS_SYMBOL:
                		case MASTER_PASSWORD_SYMBOL:
                		case MASTER_PORT_SYMBOL:
                		case MASTER_RETRY_COUNT_SYMBOL:
                		case MASTER_SERVER_ID_SYMBOL:
                		case MASTER_SSL_CAPATH_SYMBOL:
                		case MASTER_SSL_CA_SYMBOL:
                		case MASTER_SSL_CERT_SYMBOL:
                		case MASTER_SSL_CIPHER_SYMBOL:
                		case MASTER_SSL_CRLPATH_SYMBOL:
                		case MASTER_SSL_CRL_SYMBOL:
                		case MASTER_SSL_KEY_SYMBOL:
                		case MASTER_SSL_SYMBOL:
                		case MASTER_SYMBOL:
                		case MASTER_USER_SYMBOL:
                		case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                		case MAX_QUERIES_PER_HOUR_SYMBOL:
                		case MAX_ROWS_SYMBOL:
                		case MAX_SIZE_SYMBOL:
                		case MAX_UPDATES_PER_HOUR_SYMBOL:
                		case MAX_USER_CONNECTIONS_SYMBOL:
                		case MEDIUM_SYMBOL:
                		case MEMORY_SYMBOL:
                		case MERGE_SYMBOL:
                		case MESSAGE_TEXT_SYMBOL:
                		case MICROSECOND_SYMBOL:
                		case MIGRATE_SYMBOL:
                		case MINUTE_SYMBOL:
                		case MIN_ROWS_SYMBOL:
                		case MODE_SYMBOL:
                		case MODIFY_SYMBOL:
                		case MONTH_SYMBOL:
                		case MULTILINESTRING_SYMBOL:
                		case MULTIPOINT_SYMBOL:
                		case MULTIPOLYGON_SYMBOL:
                		case MUTEX_SYMBOL:
                		case MYSQL_ERRNO_SYMBOL:
                		case NAMES_SYMBOL:
                		case NAME_SYMBOL:
                		case NATIONAL_SYMBOL:
                		case NCHAR_SYMBOL:
                		case NDBCLUSTER_SYMBOL:
                		case NEW_SYMBOL:
                		case NEXT_SYMBOL:
                		case NODEGROUP_SYMBOL:
                		case NONE_SYMBOL:
                		case NO_SYMBOL:
                		case NO_WAIT_SYMBOL:
                		case NUMBER_SYMBOL:
                		case NVARCHAR_SYMBOL:
                		case OFFSET_SYMBOL:
                		case OLD_PASSWORD_SYMBOL:
                		case ONE_SHOT_SYMBOL:
                		case ONE_SYMBOL:
                		case OPEN_SYMBOL:
                		case OPTIONS_SYMBOL:
                		case OWNER_SYMBOL:
                		case PACK_KEYS_SYMBOL:
                		case PAGE_SYMBOL:
                		case PARSER_SYMBOL:
                		case PARTIAL_SYMBOL:
                		case PARTITIONING_SYMBOL:
                		case PARTITIONS_SYMBOL:
                		case PARTITION_SYMBOL:
                		case PASSWORD_SYMBOL:
                		case PHASE_SYMBOL:
                		case PLUGINS_SYMBOL:
                		case PLUGIN_DIR_SYMBOL:
                		case PLUGIN_SYMBOL:
                		case POINT_SYMBOL:
                		case POLYGON_SYMBOL:
                		case PORT_SYMBOL:
                		case PREPARE_SYMBOL:
                		case PRESERVE_SYMBOL:
                		case PREV_SYMBOL:
                		case PRIVILEGES_SYMBOL:
                		case PROCESSLIST_SYMBOL:
                		case PROCESS_SYMBOL:
                		case PROFILES_SYMBOL:
                		case PROFILE_SYMBOL:
                		case PROXY_SYMBOL:
                		case QUARTER_SYMBOL:
                		case QUERY_SYMBOL:
                		case QUICK_SYMBOL:
                		case READ_ONLY_SYMBOL:
                		case REBUILD_SYMBOL:
                		case RECOVER_SYMBOL:
                		case REDOFILE_SYMBOL:
                		case REDO_BUFFER_SIZE_SYMBOL:
                		case REDUNDANT_SYMBOL:
                		case RELAYLOG_SYMBOL:
                		case RELAY_LOG_FILE_SYMBOL:
                		case RELAY_LOG_POS_SYMBOL:
                		case RELAY_SYMBOL:
                		case RELAY_THREAD_SYMBOL:
                		case RELOAD_SYMBOL:
                		case REMOVE_SYMBOL:
                		case REORGANIZE_SYMBOL:
                		case REPAIR_SYMBOL:
                		case REPEATABLE_SYMBOL:
                		case REPLICATION_SYMBOL:
                		case RESET_SYMBOL:
                		case RESTORE_SYMBOL:
                		case RESUME_SYMBOL:
                		case RETURNED_SQLSTATE_SYMBOL:
                		case RETURNS_SYMBOL:
                		case REVERSE_SYMBOL:
                		case ROLLBACK_SYMBOL:
                		case ROLLUP_SYMBOL:
                		case ROUTINE_SYMBOL:
                		case ROWS_SYMBOL:
                		case ROW_COUNT_SYMBOL:
                		case ROW_FORMAT_SYMBOL:
                		case ROW_SYMBOL:
                		case RTREE_SYMBOL:
                		case SAVEPOINT_SYMBOL:
                		case SCHEDULE_SYMBOL:
                		case SCHEMA_NAME_SYMBOL:
                		case SECOND_SYMBOL:
                		case SECURITY_SYMBOL:
                		case SERIALIZABLE_SYMBOL:
                		case SERIAL_SYMBOL:
                		case SERVER_SYMBOL:
                		case SESSION_SYMBOL:
                		case SHARE_SYMBOL:
                		case SHUTDOWN_SYMBOL:
                		case SIGNED_SYMBOL:
                		case SIMPLE_SYMBOL:
                		case SLAVE_SYMBOL:
                		case SLOW_SYMBOL:
                		case SNAPSHOT_SYMBOL:
                		case SOCKET_SYMBOL:
                		case SONAME_SYMBOL:
                		case SOUNDS_SYMBOL:
                		case SOURCE_SYMBOL:
                		case SQL_AFTER_GTIDS_SYMBOL:
                		case SQL_AFTER_MTS_GAPS_SYMBOL:
                		case SQL_BEFORE_GTIDS_SYMBOL:
                		case SQL_BUFFER_RESULT_SYMBOL:
                		case SQL_CACHE_SYMBOL:
                		case SQL_NO_CACHE_SYMBOL:
                		case SQL_THREAD_SYMBOL:
                		case STARTS_SYMBOL:
                		case START_SYMBOL:
                		case STATS_AUTO_RECALC_SYMBOL:
                		case STATS_PERSISTENT_SYMBOL:
                		case STATS_SAMPLE_PAGES_SYMBOL:
                		case STATUS_SYMBOL:
                		case STOP_SYMBOL:
                		case STORAGE_SYMBOL:
                		case STRING_SYMBOL:
                		case SUBCLASS_ORIGIN_SYMBOL:
                		case SUBDATE_SYMBOL:
                		case SUBJECT_SYMBOL:
                		case SUBPARTITIONS_SYMBOL:
                		case SUBPARTITION_SYMBOL:
                		case SUPER_SYMBOL:
                		case SUSPEND_SYMBOL:
                		case SWAPS_SYMBOL:
                		case SWITCHES_SYMBOL:
                		case TABLESPACE_SYMBOL:
                		case TABLES_SYMBOL:
                		case TABLE_CHECKSUM_SYMBOL:
                		case TABLE_NAME_SYMBOL:
                		case TEMPORARY_SYMBOL:
                		case TEMPTABLE_SYMBOL:
                		case TEXT_SYMBOL:
                		case THAN_SYMBOL:
                		case TIMESTAMP_ADD_SYMBOL:
                		case TIMESTAMP_DIFF_SYMBOL:
                		case TIMESTAMP_SYMBOL:
                		case TIME_SYMBOL:
                		case TRANSACTION_SYMBOL:
                		case TRIGGERS_SYMBOL:
                		case TRUNCATE_SYMBOL:
                		case TYPES_SYMBOL:
                		case TYPE_SYMBOL:
                		case UDF_RETURNS_SYMBOL:
                		case UNCOMMITTED_SYMBOL:
                		case UNDEFINED_SYMBOL:
                		case UNDOFILE_SYMBOL:
                		case UNDO_BUFFER_SIZE_SYMBOL:
                		case UNICODE_SYMBOL:
                		case UNINSTALL_SYMBOL:
                		case UNKNOWN_SYMBOL:
                		case UNTIL_SYMBOL:
                		case UPGRADE_SYMBOL:
                		case USER_RESOURCES_SYMBOL:
                		case USER_SYMBOL:
                		case USE_FRM_SYMBOL:
                		case VALUE_SYMBOL:
                		case VARIABLES_SYMBOL:
                		case VIEW_SYMBOL:
                		case WAIT_SYMBOL:
                		case WARNINGS_SYMBOL:
                		case WEEK_SYMBOL:
                		case WEIGHT_STRING_SYMBOL:
                		case WORK_SYMBOL:
                		case WRAPPER_SYMBOL:
                		case X509_SYMBOL:
                		case XA_SYMBOL:
                		case XML_SYMBOL:
                		case YEAR_SYMBOL:
                			{
                				alt205=1;
                			}
                		    break;

                		}

                	}
                    break;
                case IGNORE_SYMBOL:
                case LOW_PRIORITY_SYMBOL:
                	{
                		alt205=1;
                	}
                    break;

                }

                switch (alt205)
                {
            	case 1:
            	    // MySQL.g:621:46: delete_option
            	    {
            	        FOLLOWPUSH(FOLLOW_delete_option_in_delete_statement3056);
            	        delete_option648=delete_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledelete_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, delete_option648.tree);

            	    }
            	    break;

            	default:
            	    goto loop205;	/* break out of the loop */
            	    break;
                }
            }
            loop205: ; /* Jump out to here if this rule does not match */


            // MySQL.g:622:3: ( FROM_SYMBOL table_identifier ( ( partition_delete )? ( where_clause )? ( order_by_clause )? ( LIMIT_SYMBOL INTEGER )? | table_name_list_with_wildcards USING_SYMBOL table_references ( where_clause )? ) | table_name_list_with_wildcards FROM_SYMBOL table_references ( where_clause )? )
            {
                int alt213=2;
                {
                    int LA213_0 = LA(1);
                    if ( (LA213_0 == FROM_SYMBOL))
                    {
                        alt213=1;
                    }
                    else if ( (LA213_0 == BACK_TICK_QUOTED_ID || LA213_0 == IDENTIFIER))
                    {
                        alt213=2;
                    }
                    else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA213_0 == DOUBLE_QUOTED_TEXT))
                    {
                        alt213=2;
                    }
                    else if ( (((LA213_0 >= ACTION_SYMBOL) && (LA213_0 <= ADDDATE_SYMBOL)) || ((LA213_0 >= AFTER_SYMBOL) && (LA213_0 <= ALGORITHM_SYMBOL)) || LA213_0 == ANALYZE_SYMBOL || ((LA213_0 >= ANY_SYMBOL) && (LA213_0 <= ASCII_SYMBOL)) || ((LA213_0 >= AT_SYMBOL) && (LA213_0 <= BACKUP_SYMBOL)) || LA213_0 == BEGIN_SYMBOL || LA213_0 == BINLOG_SYMBOL || LA213_0 == BIT_SYMBOL || ((LA213_0 >= BLOCK_SYMBOL) && (LA213_0 <= BOOL_SYMBOL)) || ((LA213_0 >= BTREE_SYMBOL) && (LA213_0 <= BYTE_SYMBOL)) || LA213_0 == CACHE_SYMBOL || LA213_0 == CASCADED_SYMBOL || ((LA213_0 >= CATALOG_NAME_SYMBOL) && (LA213_0 <= CHANGED_SYMBOL)) || LA213_0 == CHARSET_SYMBOL || LA213_0 == CHECKSUM_SYMBOL || ((LA213_0 >= CIPHER_SYMBOL) && (LA213_0 <= CLIENT_SYMBOL)) || ((LA213_0 >= CLOSE_SYMBOL) && (LA213_0 <= CODE_SYMBOL)) || LA213_0 == COLLATION_SYMBOL || ((LA213_0 >= COLUMNS_SYMBOL) && (LA213_0 <= COLUMN_NAME_SYMBOL)) || ((LA213_0 >= COMMENT_SYMBOL) && (LA213_0 <= COMPRESSED_SYMBOL)) || LA213_0 == CONCURRENT_SYMBOL || ((LA213_0 >= CONNECTION_SYMBOL) && (LA213_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA213_0 >= CONTAINS_SYMBOL) && (LA213_0 <= CONTEXT_SYMBOL)) || LA213_0 == CONTRIBUTORS_SYMBOL || LA213_0 == CPU_SYMBOL || LA213_0 == CUBE_SYMBOL || LA213_0 == CURRENT_SYMBOL || LA213_0 == CURSOR_NAME_SYMBOL || ((LA213_0 >= DATAFILE_SYMBOL) && (LA213_0 <= DATETIME_SYMBOL)) || LA213_0 == DATE_SYMBOL || ((LA213_0 >= DAY_SYMBOL) && (LA213_0 <= DEALLOCATE_SYMBOL)) || LA213_0 == DEFAULT_AUTH_SYMBOL || LA213_0 == DEFINER_SYMBOL || LA213_0 == DELAY_KEY_WRITE_SYMBOL || LA213_0 == DES_KEY_FILE_SYMBOL || LA213_0 == DIAGNOSTICS_SYMBOL || ((LA213_0 >= DIRECTORY_SYMBOL) && (LA213_0 <= DISK_SYMBOL)) || LA213_0 == DO_SYMBOL || ((LA213_0 >= DUMPFILE_SYMBOL) && (LA213_0 <= DYNAMIC_SYMBOL)) || LA213_0 == ENABLE_SYMBOL || LA213_0 == ENDS_SYMBOL || ((LA213_0 >= END_SYMBOL) && (LA213_0 <= ENUM_SYMBOL)) || ((LA213_0 >= ERRORS_SYMBOL) && (LA213_0 <= ERROR_SYMBOL)) || ((LA213_0 >= ESCAPE_SYMBOL) && (LA213_0 <= EVERY_SYMBOL)) || LA213_0 == EXECUTE_SYMBOL || LA213_0 == EXPANSION_SYMBOL || LA213_0 == EXPORT_SYMBOL || ((LA213_0 >= EXTENDED_SYMBOL) && (LA213_0 <= EXTENT_SIZE_SYMBOL)) || ((LA213_0 >= FAST_SYMBOL) && (LA213_0 <= FAULTS_SYMBOL)) || ((LA213_0 >= FILE_SYMBOL) && (LA213_0 <= FIXED_SYMBOL)) || LA213_0 == FLUSH_SYMBOL || LA213_0 == FORMAT_SYMBOL || LA213_0 == FOUND_SYMBOL || LA213_0 == FULL_SYMBOL || ((LA213_0 >= FUNCTION_SYMBOL) && (LA213_0 <= GET_FORMAT_SYMBOL)) || ((LA213_0 >= GLOBAL_SYMBOL) && (LA213_0 <= GRANTS_SYMBOL)) || ((LA213_0 >= HANDLER_SYMBOL) && (LA213_0 <= HASH_SYMBOL)) || LA213_0 == HELP_SYMBOL || ((LA213_0 >= HOSTS_SYMBOL) && (LA213_0 <= HOST_SYMBOL)) || ((LA213_0 >= HOUR_SYMBOL) && (LA213_0 <= IDENTIFIED_SYMBOL)) || LA213_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA213_0 >= IMPORT_SYMBOL) && (LA213_0 <= INDEXES_SYMBOL)) || LA213_0 == INITIAL_SIZE_SYMBOL || LA213_0 == INNODB_SYMBOL || LA213_0 == INSERT_METHOD_SYMBOL || LA213_0 == INSTALL_SYMBOL || LA213_0 == INVOKER_SYMBOL || LA213_0 == IO_SYMBOL || ((LA213_0 >= IPC_SYMBOL) && (LA213_0 <= ISSUER_SYMBOL)) || LA213_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA213_0 >= LANGUAGE_SYMBOL) && (LA213_0 <= LAST_SYMBOL)) || LA213_0 == LEAVES_SYMBOL || LA213_0 == LESS_SYMBOL || LA213_0 == LEVEL_SYMBOL || LA213_0 == LINESTRING_SYMBOL || LA213_0 == LIST_SYMBOL || LA213_0 == LOCAL_SYMBOL || LA213_0 == LOCKS_SYMBOL || LA213_0 == LOGFILE_SYMBOL || LA213_0 == LOGS_SYMBOL || LA213_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA213_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA213_0 <= MASTER_SSL_SYMBOL)) || ((LA213_0 >= MASTER_SYMBOL) && (LA213_0 <= MASTER_USER_SYMBOL)) || ((LA213_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA213_0 <= MAX_SIZE_SYMBOL)) || ((LA213_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA213_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA213_0 >= MEDIUM_SYMBOL) && (LA213_0 <= MICROSECOND_SYMBOL)) || LA213_0 == MIGRATE_SYMBOL || ((LA213_0 >= MINUTE_SYMBOL) && (LA213_0 <= MIN_ROWS_SYMBOL)) || LA213_0 == MODE_SYMBOL || LA213_0 == MODIFY_SYMBOL || ((LA213_0 >= MONTH_SYMBOL) && (LA213_0 <= MULTILINESTRING_SYMBOL)) || ((LA213_0 >= MULTIPOINT_SYMBOL) && (LA213_0 <= MULTIPOLYGON_SYMBOL)) || ((LA213_0 >= MUTEX_SYMBOL) && (LA213_0 <= NATIONAL_SYMBOL)) || LA213_0 == NCHAR_SYMBOL || LA213_0 == NDBCLUSTER_SYMBOL || ((LA213_0 >= NEW_SYMBOL) && (LA213_0 <= NONE_SYMBOL)) || ((LA213_0 >= NO_SYMBOL) && (LA213_0 <= NO_WAIT_SYMBOL)) || LA213_0 == NUMBER_SYMBOL || LA213_0 == NVARCHAR_SYMBOL || ((LA213_0 >= OFFSET_SYMBOL) && (LA213_0 <= ONE_SYMBOL)) || LA213_0 == OPEN_SYMBOL || LA213_0 == OPTIONS_SYMBOL || ((LA213_0 >= OWNER_SYMBOL) && (LA213_0 <= PAGE_SYMBOL)) || ((LA213_0 >= PARSER_SYMBOL) && (LA213_0 <= PARTITION_SYMBOL)) || ((LA213_0 >= PASSWORD_SYMBOL) && (LA213_0 <= PLUGIN_SYMBOL)) || ((LA213_0 >= POINT_SYMBOL) && (LA213_0 <= PORT_SYMBOL)) || ((LA213_0 >= PREPARE_SYMBOL) && (LA213_0 <= PREV_SYMBOL)) || LA213_0 == PRIVILEGES_SYMBOL || ((LA213_0 >= PROCESSLIST_SYMBOL) && (LA213_0 <= PROXY_SYMBOL)) || ((LA213_0 >= QUARTER_SYMBOL) && (LA213_0 <= QUICK_SYMBOL)) || LA213_0 == READ_ONLY_SYMBOL || ((LA213_0 >= REBUILD_SYMBOL) && (LA213_0 <= REDUNDANT_SYMBOL)) || ((LA213_0 >= RELAYLOG_SYMBOL) && (LA213_0 <= RELAY_THREAD_SYMBOL)) || ((LA213_0 >= RELOAD_SYMBOL) && (LA213_0 <= REMOVE_SYMBOL)) || ((LA213_0 >= REORGANIZE_SYMBOL) && (LA213_0 <= REPEATABLE_SYMBOL)) || LA213_0 == REPLICATION_SYMBOL || LA213_0 == RESET_SYMBOL || LA213_0 == RESTORE_SYMBOL || ((LA213_0 >= RESUME_SYMBOL) && (LA213_0 <= RETURNS_SYMBOL)) || LA213_0 == REVERSE_SYMBOL || ((LA213_0 >= ROLLBACK_SYMBOL) && (LA213_0 <= SCHEDULE_SYMBOL)) || LA213_0 == SCHEMA_NAME_SYMBOL || ((LA213_0 >= SECOND_SYMBOL) && (LA213_0 <= SECURITY_SYMBOL)) || ((LA213_0 >= SERIALIZABLE_SYMBOL) && (LA213_0 <= SERIAL_SYMBOL)) || ((LA213_0 >= SERVER_SYMBOL) && (LA213_0 <= SESSION_SYMBOL)) || LA213_0 == SHARE_SYMBOL || LA213_0 == SHUTDOWN_SYMBOL || ((LA213_0 >= SIGNED_SYMBOL) && (LA213_0 <= SIMPLE_SYMBOL)) || ((LA213_0 >= SLAVE_SYMBOL) && (LA213_0 <= SLOW_SYMBOL)) || ((LA213_0 >= SNAPSHOT_SYMBOL) && (LA213_0 <= SOURCE_SYMBOL)) || ((LA213_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA213_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA213_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA213_0 <= SQL_CACHE_SYMBOL)) || LA213_0 == SQL_NO_CACHE_SYMBOL || LA213_0 == SQL_THREAD_SYMBOL || ((LA213_0 >= STARTS_SYMBOL) && (LA213_0 <= STATUS_SYMBOL)) || ((LA213_0 >= STOP_SYMBOL) && (LA213_0 <= STORAGE_SYMBOL)) || ((LA213_0 >= STRING_SYMBOL) && (LA213_0 <= SUBPARTITION_SYMBOL)) || ((LA213_0 >= SUPER_SYMBOL) && (LA213_0 <= SWITCHES_SYMBOL)) || ((LA213_0 >= TABLESPACE_SYMBOL) && (LA213_0 <= TABLE_NAME_SYMBOL)) || ((LA213_0 >= TEMPORARY_SYMBOL) && (LA213_0 <= TEMPTABLE_SYMBOL)) || ((LA213_0 >= TEXT_SYMBOL) && (LA213_0 <= THAN_SYMBOL)) || ((LA213_0 >= TIMESTAMP_ADD_SYMBOL) && (LA213_0 <= TIME_SYMBOL)) || ((LA213_0 >= TRANSACTION_SYMBOL) && (LA213_0 <= TRIGGERS_SYMBOL)) || ((LA213_0 >= TRUNCATE_SYMBOL) && (LA213_0 <= UDF_RETURNS_SYMBOL)) || ((LA213_0 >= UNCOMMITTED_SYMBOL) && (LA213_0 <= UNDEFINED_SYMBOL)) || ((LA213_0 >= UNDOFILE_SYMBOL) && (LA213_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA213_0 >= UNICODE_SYMBOL) && (LA213_0 <= UNINSTALL_SYMBOL)) || LA213_0 == UNKNOWN_SYMBOL || LA213_0 == UNTIL_SYMBOL || LA213_0 == UPGRADE_SYMBOL || ((LA213_0 >= USER_RESOURCES_SYMBOL) && (LA213_0 <= USE_FRM_SYMBOL)) || LA213_0 == VALUE_SYMBOL || LA213_0 == VARIABLES_SYMBOL || ((LA213_0 >= VIEW_SYMBOL) && (LA213_0 <= WEIGHT_STRING_SYMBOL)) || ((LA213_0 >= WORK_SYMBOL) && (LA213_0 <= WRAPPER_SYMBOL)) || LA213_0 == X509_SYMBOL || ((LA213_0 >= XA_SYMBOL) && (LA213_0 <= XML_SYMBOL)) || LA213_0 == YEAR_SYMBOL))
                    {
                        alt213=2;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 213;
                        EXCEPTION->state        = 0;


                        goto ruledelete_statementEx;

                    }
                }
                switch (alt213)
                {
            	case 1:
            	    // MySQL.g:623:4: FROM_SYMBOL table_identifier ( ( partition_delete )? ( where_clause )? ( order_by_clause )? ( LIMIT_SYMBOL INTEGER )? | table_name_list_with_wildcards USING_SYMBOL table_references ( where_clause )? )
            	    {
            	        FROM_SYMBOL649 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_delete_statement3067);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledelete_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FROM_SYMBOL649_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL649));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL649_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_table_identifier_in_delete_statement3069);
            	        table_identifier650=table_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledelete_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_identifier650.tree);

            	        // MySQL.g:624:5: ( ( partition_delete )? ( where_clause )? ( order_by_clause )? ( LIMIT_SYMBOL INTEGER )? | table_name_list_with_wildcards USING_SYMBOL table_references ( where_clause )? )
            	        {
            	            int alt211=2;
            	            {
            	                int LA211_0 = LA(1);
            	                if ( (LA211_0 == PARTITION_SYMBOL))
            	                {
            	                    {
            	                        int LA211_1 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50602)) && (LA211_1 == OPEN_PAR_SYMBOL))
            	                        {
            	                            alt211=1;
            	                        }
            	                        else if ( (LA211_1 == COMMA_SYMBOL || LA211_1 == DOT_SYMBOL || LA211_1 == USING_SYMBOL))
            	                        {
            	                            alt211=2;
            	                        }
            	                        else
            	                        {
            	                            if (BACKTRACKING>0)
            	                            {
            	                                FAILEDFLAG = ANTLR3_TRUE;
            	                                return retval;
            	                            }


            	                            CONSTRUCTEX();
            	                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                            EXCEPTION->message      = (void *)"";
            	                            EXCEPTION->decisionNum  = 211;
            	                            EXCEPTION->state        = 1;


            	                            goto ruledelete_statementEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA211_0 == EOF || LA211_0 == LIMIT_SYMBOL || LA211_0 == ORDER_SYMBOL || LA211_0 == SEMICOLON_SYMBOL || LA211_0 == WHERE_SYMBOL))
            	                {
            	                    alt211=1;
            	                }
            	                else if ( (LA211_0 == BACK_TICK_QUOTED_ID || LA211_0 == IDENTIFIER))
            	                {
            	                    alt211=2;
            	                }
            	                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA211_0 == DOUBLE_QUOTED_TEXT))
            	                {
            	                    alt211=2;
            	                }
            	                else if ( (((LA211_0 >= ACTION_SYMBOL) && (LA211_0 <= ADDDATE_SYMBOL)) || ((LA211_0 >= AFTER_SYMBOL) && (LA211_0 <= ALGORITHM_SYMBOL)) || LA211_0 == ANALYZE_SYMBOL || ((LA211_0 >= ANY_SYMBOL) && (LA211_0 <= ASCII_SYMBOL)) || ((LA211_0 >= AT_SYMBOL) && (LA211_0 <= BACKUP_SYMBOL)) || LA211_0 == BEGIN_SYMBOL || LA211_0 == BINLOG_SYMBOL || LA211_0 == BIT_SYMBOL || ((LA211_0 >= BLOCK_SYMBOL) && (LA211_0 <= BOOL_SYMBOL)) || ((LA211_0 >= BTREE_SYMBOL) && (LA211_0 <= BYTE_SYMBOL)) || LA211_0 == CACHE_SYMBOL || LA211_0 == CASCADED_SYMBOL || ((LA211_0 >= CATALOG_NAME_SYMBOL) && (LA211_0 <= CHANGED_SYMBOL)) || LA211_0 == CHARSET_SYMBOL || LA211_0 == CHECKSUM_SYMBOL || ((LA211_0 >= CIPHER_SYMBOL) && (LA211_0 <= CLIENT_SYMBOL)) || ((LA211_0 >= CLOSE_SYMBOL) && (LA211_0 <= CODE_SYMBOL)) || LA211_0 == COLLATION_SYMBOL || ((LA211_0 >= COLUMNS_SYMBOL) && (LA211_0 <= COLUMN_NAME_SYMBOL)) || ((LA211_0 >= COMMENT_SYMBOL) && (LA211_0 <= COMPRESSED_SYMBOL)) || LA211_0 == CONCURRENT_SYMBOL || ((LA211_0 >= CONNECTION_SYMBOL) && (LA211_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA211_0 >= CONTAINS_SYMBOL) && (LA211_0 <= CONTEXT_SYMBOL)) || LA211_0 == CONTRIBUTORS_SYMBOL || LA211_0 == CPU_SYMBOL || LA211_0 == CUBE_SYMBOL || LA211_0 == CURRENT_SYMBOL || LA211_0 == CURSOR_NAME_SYMBOL || ((LA211_0 >= DATAFILE_SYMBOL) && (LA211_0 <= DATETIME_SYMBOL)) || LA211_0 == DATE_SYMBOL || ((LA211_0 >= DAY_SYMBOL) && (LA211_0 <= DEALLOCATE_SYMBOL)) || LA211_0 == DEFAULT_AUTH_SYMBOL || LA211_0 == DEFINER_SYMBOL || LA211_0 == DELAY_KEY_WRITE_SYMBOL || LA211_0 == DES_KEY_FILE_SYMBOL || LA211_0 == DIAGNOSTICS_SYMBOL || ((LA211_0 >= DIRECTORY_SYMBOL) && (LA211_0 <= DISK_SYMBOL)) || LA211_0 == DO_SYMBOL || ((LA211_0 >= DUMPFILE_SYMBOL) && (LA211_0 <= DYNAMIC_SYMBOL)) || LA211_0 == ENABLE_SYMBOL || LA211_0 == ENDS_SYMBOL || ((LA211_0 >= END_SYMBOL) && (LA211_0 <= ENUM_SYMBOL)) || ((LA211_0 >= ERRORS_SYMBOL) && (LA211_0 <= ERROR_SYMBOL)) || ((LA211_0 >= ESCAPE_SYMBOL) && (LA211_0 <= EVERY_SYMBOL)) || LA211_0 == EXECUTE_SYMBOL || LA211_0 == EXPANSION_SYMBOL || LA211_0 == EXPORT_SYMBOL || ((LA211_0 >= EXTENDED_SYMBOL) && (LA211_0 <= EXTENT_SIZE_SYMBOL)) || ((LA211_0 >= FAST_SYMBOL) && (LA211_0 <= FAULTS_SYMBOL)) || ((LA211_0 >= FILE_SYMBOL) && (LA211_0 <= FIXED_SYMBOL)) || LA211_0 == FLUSH_SYMBOL || LA211_0 == FORMAT_SYMBOL || LA211_0 == FOUND_SYMBOL || LA211_0 == FULL_SYMBOL || ((LA211_0 >= FUNCTION_SYMBOL) && (LA211_0 <= GET_FORMAT_SYMBOL)) || ((LA211_0 >= GLOBAL_SYMBOL) && (LA211_0 <= GRANTS_SYMBOL)) || ((LA211_0 >= HANDLER_SYMBOL) && (LA211_0 <= HASH_SYMBOL)) || LA211_0 == HELP_SYMBOL || ((LA211_0 >= HOSTS_SYMBOL) && (LA211_0 <= HOST_SYMBOL)) || ((LA211_0 >= HOUR_SYMBOL) && (LA211_0 <= IDENTIFIED_SYMBOL)) || LA211_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA211_0 >= IMPORT_SYMBOL) && (LA211_0 <= INDEXES_SYMBOL)) || LA211_0 == INITIAL_SIZE_SYMBOL || LA211_0 == INNODB_SYMBOL || LA211_0 == INSERT_METHOD_SYMBOL || LA211_0 == INSTALL_SYMBOL || LA211_0 == INVOKER_SYMBOL || LA211_0 == IO_SYMBOL || ((LA211_0 >= IPC_SYMBOL) && (LA211_0 <= ISSUER_SYMBOL)) || LA211_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA211_0 >= LANGUAGE_SYMBOL) && (LA211_0 <= LAST_SYMBOL)) || LA211_0 == LEAVES_SYMBOL || LA211_0 == LESS_SYMBOL || LA211_0 == LEVEL_SYMBOL || LA211_0 == LINESTRING_SYMBOL || LA211_0 == LIST_SYMBOL || LA211_0 == LOCAL_SYMBOL || LA211_0 == LOCKS_SYMBOL || LA211_0 == LOGFILE_SYMBOL || LA211_0 == LOGS_SYMBOL || LA211_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA211_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA211_0 <= MASTER_SSL_SYMBOL)) || ((LA211_0 >= MASTER_SYMBOL) && (LA211_0 <= MASTER_USER_SYMBOL)) || ((LA211_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA211_0 <= MAX_SIZE_SYMBOL)) || ((LA211_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA211_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA211_0 >= MEDIUM_SYMBOL) && (LA211_0 <= MICROSECOND_SYMBOL)) || LA211_0 == MIGRATE_SYMBOL || ((LA211_0 >= MINUTE_SYMBOL) && (LA211_0 <= MIN_ROWS_SYMBOL)) || LA211_0 == MODE_SYMBOL || LA211_0 == MODIFY_SYMBOL || ((LA211_0 >= MONTH_SYMBOL) && (LA211_0 <= MULTILINESTRING_SYMBOL)) || ((LA211_0 >= MULTIPOINT_SYMBOL) && (LA211_0 <= MULTIPOLYGON_SYMBOL)) || ((LA211_0 >= MUTEX_SYMBOL) && (LA211_0 <= NATIONAL_SYMBOL)) || LA211_0 == NCHAR_SYMBOL || LA211_0 == NDBCLUSTER_SYMBOL || ((LA211_0 >= NEW_SYMBOL) && (LA211_0 <= NONE_SYMBOL)) || ((LA211_0 >= NO_SYMBOL) && (LA211_0 <= NO_WAIT_SYMBOL)) || LA211_0 == NUMBER_SYMBOL || LA211_0 == NVARCHAR_SYMBOL || ((LA211_0 >= OFFSET_SYMBOL) && (LA211_0 <= ONE_SYMBOL)) || LA211_0 == OPEN_SYMBOL || LA211_0 == OPTIONS_SYMBOL || ((LA211_0 >= OWNER_SYMBOL) && (LA211_0 <= PAGE_SYMBOL)) || ((LA211_0 >= PARSER_SYMBOL) && (LA211_0 <= PARTITIONS_SYMBOL)) || ((LA211_0 >= PASSWORD_SYMBOL) && (LA211_0 <= PLUGIN_SYMBOL)) || ((LA211_0 >= POINT_SYMBOL) && (LA211_0 <= PORT_SYMBOL)) || ((LA211_0 >= PREPARE_SYMBOL) && (LA211_0 <= PREV_SYMBOL)) || LA211_0 == PRIVILEGES_SYMBOL || ((LA211_0 >= PROCESSLIST_SYMBOL) && (LA211_0 <= PROXY_SYMBOL)) || ((LA211_0 >= QUARTER_SYMBOL) && (LA211_0 <= QUICK_SYMBOL)) || LA211_0 == READ_ONLY_SYMBOL || ((LA211_0 >= REBUILD_SYMBOL) && (LA211_0 <= REDUNDANT_SYMBOL)) || ((LA211_0 >= RELAYLOG_SYMBOL) && (LA211_0 <= RELAY_THREAD_SYMBOL)) || ((LA211_0 >= RELOAD_SYMBOL) && (LA211_0 <= REMOVE_SYMBOL)) || ((LA211_0 >= REORGANIZE_SYMBOL) && (LA211_0 <= REPEATABLE_SYMBOL)) || LA211_0 == REPLICATION_SYMBOL || LA211_0 == RESET_SYMBOL || LA211_0 == RESTORE_SYMBOL || ((LA211_0 >= RESUME_SYMBOL) && (LA211_0 <= RETURNS_SYMBOL)) || LA211_0 == REVERSE_SYMBOL || ((LA211_0 >= ROLLBACK_SYMBOL) && (LA211_0 <= SCHEDULE_SYMBOL)) || LA211_0 == SCHEMA_NAME_SYMBOL || ((LA211_0 >= SECOND_SYMBOL) && (LA211_0 <= SECURITY_SYMBOL)) || ((LA211_0 >= SERIALIZABLE_SYMBOL) && (LA211_0 <= SERIAL_SYMBOL)) || ((LA211_0 >= SERVER_SYMBOL) && (LA211_0 <= SESSION_SYMBOL)) || LA211_0 == SHARE_SYMBOL || LA211_0 == SHUTDOWN_SYMBOL || ((LA211_0 >= SIGNED_SYMBOL) && (LA211_0 <= SIMPLE_SYMBOL)) || ((LA211_0 >= SLAVE_SYMBOL) && (LA211_0 <= SLOW_SYMBOL)) || ((LA211_0 >= SNAPSHOT_SYMBOL) && (LA211_0 <= SOURCE_SYMBOL)) || ((LA211_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA211_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA211_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA211_0 <= SQL_CACHE_SYMBOL)) || LA211_0 == SQL_NO_CACHE_SYMBOL || LA211_0 == SQL_THREAD_SYMBOL || ((LA211_0 >= STARTS_SYMBOL) && (LA211_0 <= STATUS_SYMBOL)) || ((LA211_0 >= STOP_SYMBOL) && (LA211_0 <= STORAGE_SYMBOL)) || ((LA211_0 >= STRING_SYMBOL) && (LA211_0 <= SUBPARTITION_SYMBOL)) || ((LA211_0 >= SUPER_SYMBOL) && (LA211_0 <= SWITCHES_SYMBOL)) || ((LA211_0 >= TABLESPACE_SYMBOL) && (LA211_0 <= TABLE_NAME_SYMBOL)) || ((LA211_0 >= TEMPORARY_SYMBOL) && (LA211_0 <= TEMPTABLE_SYMBOL)) || ((LA211_0 >= TEXT_SYMBOL) && (LA211_0 <= THAN_SYMBOL)) || ((LA211_0 >= TIMESTAMP_ADD_SYMBOL) && (LA211_0 <= TIME_SYMBOL)) || ((LA211_0 >= TRANSACTION_SYMBOL) && (LA211_0 <= TRIGGERS_SYMBOL)) || ((LA211_0 >= TRUNCATE_SYMBOL) && (LA211_0 <= UDF_RETURNS_SYMBOL)) || ((LA211_0 >= UNCOMMITTED_SYMBOL) && (LA211_0 <= UNDEFINED_SYMBOL)) || ((LA211_0 >= UNDOFILE_SYMBOL) && (LA211_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA211_0 >= UNICODE_SYMBOL) && (LA211_0 <= UNINSTALL_SYMBOL)) || LA211_0 == UNKNOWN_SYMBOL || LA211_0 == UNTIL_SYMBOL || LA211_0 == UPGRADE_SYMBOL || ((LA211_0 >= USER_RESOURCES_SYMBOL) && (LA211_0 <= USE_FRM_SYMBOL)) || LA211_0 == VALUE_SYMBOL || LA211_0 == VARIABLES_SYMBOL || ((LA211_0 >= VIEW_SYMBOL) && (LA211_0 <= WEIGHT_STRING_SYMBOL)) || ((LA211_0 >= WORK_SYMBOL) && (LA211_0 <= WRAPPER_SYMBOL)) || LA211_0 == X509_SYMBOL || ((LA211_0 >= XA_SYMBOL) && (LA211_0 <= XML_SYMBOL)) || LA211_0 == YEAR_SYMBOL))
            	                {
            	                    alt211=2;
            	                }
            	                else
            	                {
            	                    if (BACKTRACKING>0)
            	                    {
            	                        FAILEDFLAG = ANTLR3_TRUE;
            	                        return retval;
            	                    }


            	                    CONSTRUCTEX();
            	                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    EXCEPTION->message      = (void *)"";
            	                    EXCEPTION->decisionNum  = 211;
            	                    EXCEPTION->state        = 0;


            	                    goto ruledelete_statementEx;

            	                }
            	            }
            	            switch (alt211)
            	            {
            	        	case 1:
            	        	    // MySQL.g:625:6: ( partition_delete )? ( where_clause )? ( order_by_clause )? ( LIMIT_SYMBOL INTEGER )?
            	        	    {
            	        	        // MySQL.g:625:6: ( partition_delete )?
            	        	        {
            	        	            int alt206=2;
            	        	            {
            	        	                int LA206_0 = LA(1);
            	        	                if ( ((SERVER_VERSION >= 50602)) && (LA206_0 == PARTITION_SYMBOL))
            	        	                {
            	        	                    alt206=1;
            	        	                }
            	        	            }
            	        	            switch (alt206)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:625:6: partition_delete
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_partition_delete_in_delete_statement3082);
            	        	        	        partition_delete651=partition_delete(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruledelete_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partition_delete651.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	        // MySQL.g:625:24: ( where_clause )?
            	        	        {
            	        	            int alt207=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case WHERE_SYMBOL:
            	        	                	{
            	        	                		alt207=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt207)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:625:24: where_clause
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_where_clause_in_delete_statement3085);
            	        	        	        where_clause652=where_clause(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruledelete_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, where_clause652.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	        // MySQL.g:625:38: ( order_by_clause )?
            	        	        {
            	        	            int alt208=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case ORDER_SYMBOL:
            	        	                	{
            	        	                		alt208=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt208)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:625:38: order_by_clause
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_order_by_clause_in_delete_statement3088);
            	        	        	        order_by_clause653=order_by_clause(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruledelete_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, order_by_clause653.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	        // MySQL.g:625:55: ( LIMIT_SYMBOL INTEGER )?
            	        	        {
            	        	            int alt209=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case LIMIT_SYMBOL:
            	        	                	{
            	        	                		alt209=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt209)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:625:56: LIMIT_SYMBOL INTEGER
            	        	        	    {
            	        	        	        LIMIT_SYMBOL654 = (pANTLR3_COMMON_TOKEN) MATCHT(LIMIT_SYMBOL, &FOLLOW_LIMIT_SYMBOL_in_delete_statement3092);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruledelete_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        LIMIT_SYMBOL654_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LIMIT_SYMBOL654));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, LIMIT_SYMBOL654_tree);
            	        	        	        }

            	        	        	        INTEGER655 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_delete_statement3094);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruledelete_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        INTEGER655_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER655));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER655_tree);
            	        	        	        }

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:626:8: table_name_list_with_wildcards USING_SYMBOL table_references ( where_clause )?
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_table_name_list_with_wildcards_in_delete_statement3106);
            	        	        table_name_list_with_wildcards656=table_name_list_with_wildcards(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledelete_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_name_list_with_wildcards656.tree);

            	        	        USING_SYMBOL657 = (pANTLR3_COMMON_TOKEN) MATCHT(USING_SYMBOL, &FOLLOW_USING_SYMBOL_in_delete_statement3108);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledelete_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        USING_SYMBOL657_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USING_SYMBOL657));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, USING_SYMBOL657_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_table_references_in_delete_statement3110);
            	        	        table_references658=table_references(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledelete_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_references658.tree);

            	        	        // MySQL.g:626:69: ( where_clause )?
            	        	        {
            	        	            int alt210=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case WHERE_SYMBOL:
            	        	                	{
            	        	                		alt210=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt210)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:626:69: where_clause
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_where_clause_in_delete_statement3112);
            	        	        	        where_clause659=where_clause(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruledelete_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, where_clause659.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:628:7: table_name_list_with_wildcards FROM_SYMBOL table_references ( where_clause )?
            	    {
            	        FOLLOWPUSH(FOLLOW_table_name_list_with_wildcards_in_delete_statement3128);
            	        table_name_list_with_wildcards660=table_name_list_with_wildcards(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledelete_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_name_list_with_wildcards660.tree);

            	        FROM_SYMBOL661 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_delete_statement3130);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledelete_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FROM_SYMBOL661_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL661));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL661_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_table_references_in_delete_statement3132);
            	        table_references662=table_references(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledelete_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_references662.tree);

            	        // MySQL.g:628:67: ( where_clause )?
            	        {
            	            int alt212=2;
            	            switch ( LA(1) )
            	            {
            	                case WHERE_SYMBOL:
            	                	{
            	                		alt212=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt212)
            	            {
            	        	case 1:
            	        	    // MySQL.g:628:67: where_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_where_clause_in_delete_statement3134);
            	        	        where_clause663=where_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledelete_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, where_clause663.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruledelete_statementEx; /* Prevent compiler warnings */
    ruledelete_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end delete_statement */

/**
 * $ANTLR start partition_delete
 * MySQL.g:632:1: partition_delete :{...}? => ( PARTITION_SYMBOL OPEN_PAR_SYMBOL identifier ( COMMA_SYMBOL identifier )* CLOSE_PAR_SYMBOL ) ;
 */
static MySQLParser_partition_delete_return
partition_delete(pMySQLParser ctx)
{
    MySQLParser_partition_delete_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL664;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL665;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL667;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL669;
    MySQLParser_identifier_return identifier666;
    #undef	RETURN_TYPE_identifier666
    #define	RETURN_TYPE_identifier666 MySQLParser_identifier_return

    MySQLParser_identifier_return identifier668;
    #undef	RETURN_TYPE_identifier668
    #define	RETURN_TYPE_identifier668 MySQLParser_identifier_return

    pANTLR3_BASE_TREE PARTITION_SYMBOL664_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL665_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL667_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL669_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PARTITION_SYMBOL664       = NULL;
    OPEN_PAR_SYMBOL665       = NULL;
    COMMA_SYMBOL667       = NULL;
    CLOSE_PAR_SYMBOL669       = NULL;
    identifier666.tree = NULL;

    identifier668.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PARTITION_SYMBOL664_tree   = NULL;
    OPEN_PAR_SYMBOL665_tree   = NULL;
    COMMA_SYMBOL667_tree   = NULL;
    CLOSE_PAR_SYMBOL669_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:632:17: ({...}? => ( PARTITION_SYMBOL OPEN_PAR_SYMBOL identifier ( COMMA_SYMBOL identifier )* CLOSE_PAR_SYMBOL ) )
        // MySQL.g:633:2: {...}? => ( PARTITION_SYMBOL OPEN_PAR_SYMBOL identifier ( COMMA_SYMBOL identifier )* CLOSE_PAR_SYMBOL )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            if ( !((SERVER_VERSION >= 50602)) )
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
                    EXCEPTION->message      = (void *)"SERVER_VERSION >= 50602";
                    EXCEPTION->ruleName	 = (void *)"partition_delete";


            }

            // MySQL.g:633:32: ( PARTITION_SYMBOL OPEN_PAR_SYMBOL identifier ( COMMA_SYMBOL identifier )* CLOSE_PAR_SYMBOL )
            // MySQL.g:633:33: PARTITION_SYMBOL OPEN_PAR_SYMBOL identifier ( COMMA_SYMBOL identifier )* CLOSE_PAR_SYMBOL
            {
                PARTITION_SYMBOL664 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_partition_delete3154);
                if  (HASEXCEPTION())
                {
                    goto rulepartition_deleteEx;
                }
                if (HASFAILED())
                {
                    return retval;
                }

                if ( BACKTRACKING==0 ) {
                PARTITION_SYMBOL664_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITION_SYMBOL664));
                ADAPTOR->addChild(ADAPTOR, root_0, PARTITION_SYMBOL664_tree);
                }

                OPEN_PAR_SYMBOL665 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_partition_delete3156);
                if  (HASEXCEPTION())
                {
                    goto rulepartition_deleteEx;
                }
                if (HASFAILED())
                {
                    return retval;
                }

                if ( BACKTRACKING==0 ) {
                OPEN_PAR_SYMBOL665_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL665));
                ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL665_tree);
                }

                FOLLOWPUSH(FOLLOW_identifier_in_partition_delete3158);
                identifier666=identifier(ctx);

                FOLLOWPOP();
                if  (HASEXCEPTION())
                {
                    goto rulepartition_deleteEx;
                }
                if (HASFAILED())
                {
                    return retval;
                }

                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier666.tree);

                // MySQL.g:633:77: ( COMMA_SYMBOL identifier )*

                for (;;)
                {
                    int alt214=2;
                    switch ( LA(1) )
                    {
                    case COMMA_SYMBOL:
                    	{
                    		alt214=1;
                    	}
                        break;

                    }

                    switch (alt214)
                    {
                	case 1:
                	    // MySQL.g:633:78: COMMA_SYMBOL identifier
                	    {
                	        COMMA_SYMBOL667 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_partition_delete3161);
                	        if  (HASEXCEPTION())
                	        {
                	            goto rulepartition_deleteEx;
                	        }
                	        if (HASFAILED())
                	        {
                	            return retval;
                	        }

                	        if ( BACKTRACKING==0 ) {
                	        COMMA_SYMBOL667_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL667));
                	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL667_tree);
                	        }

                	        FOLLOWPUSH(FOLLOW_identifier_in_partition_delete3163);
                	        identifier668=identifier(ctx);

                	        FOLLOWPOP();
                	        if  (HASEXCEPTION())
                	        {
                	            goto rulepartition_deleteEx;
                	        }
                	        if (HASFAILED())
                	        {
                	            return retval;
                	        }

                	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier668.tree);

                	    }
                	    break;

                	default:
                	    goto loop214;	/* break out of the loop */
                	    break;
                    }
                }
                loop214: ; /* Jump out to here if this rule does not match */


                CLOSE_PAR_SYMBOL669 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_partition_delete3167);
                if  (HASEXCEPTION())
                {
                    goto rulepartition_deleteEx;
                }
                if (HASFAILED())
                {
                    return retval;
                }

                if ( BACKTRACKING==0 ) {
                CLOSE_PAR_SYMBOL669_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL669));
                ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL669_tree);
                }

            }


        }

    }

    // This is where rules clean up and exit
    //
    goto rulepartition_deleteEx; /* Prevent compiler warnings */
    rulepartition_deleteEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end partition_delete */

/**
 * $ANTLR start delete_option
 * MySQL.g:636:1: delete_option : ( LOW_PRIORITY_SYMBOL | QUICK_SYMBOL | IGNORE_SYMBOL );
 */
static MySQLParser_delete_option_return
delete_option(pMySQLParser ctx)
{
    MySQLParser_delete_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set670;

    pANTLR3_BASE_TREE set670_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set670       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set670_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:636:14: ( LOW_PRIORITY_SYMBOL | QUICK_SYMBOL | IGNORE_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set670=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == IGNORE_SYMBOL || LA(1) == LOW_PRIORITY_SYMBOL || LA(1) == QUICK_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set670))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto ruledelete_optionEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto ruledelete_optionEx; /* Prevent compiler warnings */
    ruledelete_optionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end delete_option */

/**
 * $ANTLR start table_name_list_with_wildcards
 * MySQL.g:640:1: table_name_list_with_wildcards : qualified_identifier ( DOT_SYMBOL MULT_OPERATOR )? ( COMMA_SYMBOL qualified_identifier ( DOT_SYMBOL MULT_OPERATOR )? )* ;
 */
static MySQLParser_table_name_list_with_wildcards_return
table_name_list_with_wildcards(pMySQLParser ctx)
{
    MySQLParser_table_name_list_with_wildcards_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    DOT_SYMBOL672;
    pANTLR3_COMMON_TOKEN    MULT_OPERATOR673;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL674;
    pANTLR3_COMMON_TOKEN    DOT_SYMBOL676;
    pANTLR3_COMMON_TOKEN    MULT_OPERATOR677;
    MySQLParser_qualified_identifier_return qualified_identifier671;
    #undef	RETURN_TYPE_qualified_identifier671
    #define	RETURN_TYPE_qualified_identifier671 MySQLParser_qualified_identifier_return

    MySQLParser_qualified_identifier_return qualified_identifier675;
    #undef	RETURN_TYPE_qualified_identifier675
    #define	RETURN_TYPE_qualified_identifier675 MySQLParser_qualified_identifier_return

    pANTLR3_BASE_TREE DOT_SYMBOL672_tree;
    pANTLR3_BASE_TREE MULT_OPERATOR673_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL674_tree;
    pANTLR3_BASE_TREE DOT_SYMBOL676_tree;
    pANTLR3_BASE_TREE MULT_OPERATOR677_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DOT_SYMBOL672       = NULL;
    MULT_OPERATOR673       = NULL;
    COMMA_SYMBOL674       = NULL;
    DOT_SYMBOL676       = NULL;
    MULT_OPERATOR677       = NULL;
    qualified_identifier671.tree = NULL;

    qualified_identifier675.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DOT_SYMBOL672_tree   = NULL;
    MULT_OPERATOR673_tree   = NULL;
    COMMA_SYMBOL674_tree   = NULL;
    DOT_SYMBOL676_tree   = NULL;
    MULT_OPERATOR677_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:640:31: ( qualified_identifier ( DOT_SYMBOL MULT_OPERATOR )? ( COMMA_SYMBOL qualified_identifier ( DOT_SYMBOL MULT_OPERATOR )? )* )
        // MySQL.g:641:2: qualified_identifier ( DOT_SYMBOL MULT_OPERATOR )? ( COMMA_SYMBOL qualified_identifier ( DOT_SYMBOL MULT_OPERATOR )? )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_qualified_identifier_in_table_name_list_with_wildcards3194);
            qualified_identifier671=qualified_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruletable_name_list_with_wildcardsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, qualified_identifier671.tree);

            // MySQL.g:641:23: ( DOT_SYMBOL MULT_OPERATOR )?
            {
                int alt215=2;
                switch ( LA(1) )
                {
                    case DOT_SYMBOL:
                    	{
                    		alt215=1;
                    	}
                        break;
                }

                switch (alt215)
                {
            	case 1:
            	    // MySQL.g:641:24: DOT_SYMBOL MULT_OPERATOR
            	    {
            	        DOT_SYMBOL672 = (pANTLR3_COMMON_TOKEN) MATCHT(DOT_SYMBOL, &FOLLOW_DOT_SYMBOL_in_table_name_list_with_wildcards3197);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_name_list_with_wildcardsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DOT_SYMBOL672_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOT_SYMBOL672));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DOT_SYMBOL672_tree);
            	        }

            	        MULT_OPERATOR673 = (pANTLR3_COMMON_TOKEN) MATCHT(MULT_OPERATOR, &FOLLOW_MULT_OPERATOR_in_table_name_list_with_wildcards3199);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_name_list_with_wildcardsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        MULT_OPERATOR673_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MULT_OPERATOR673));
            	        ADAPTOR->addChild(ADAPTOR, root_0, MULT_OPERATOR673_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:641:51: ( COMMA_SYMBOL qualified_identifier ( DOT_SYMBOL MULT_OPERATOR )? )*

            for (;;)
            {
                int alt217=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt217=1;
                	}
                    break;

                }

                switch (alt217)
                {
            	case 1:
            	    // MySQL.g:641:52: COMMA_SYMBOL qualified_identifier ( DOT_SYMBOL MULT_OPERATOR )?
            	    {
            	        COMMA_SYMBOL674 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_table_name_list_with_wildcards3204);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_name_list_with_wildcardsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL674_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL674));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL674_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_qualified_identifier_in_table_name_list_with_wildcards3206);
            	        qualified_identifier675=qualified_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_name_list_with_wildcardsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, qualified_identifier675.tree);

            	        // MySQL.g:641:86: ( DOT_SYMBOL MULT_OPERATOR )?
            	        {
            	            int alt216=2;
            	            switch ( LA(1) )
            	            {
            	                case DOT_SYMBOL:
            	                	{
            	                		alt216=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt216)
            	            {
            	        	case 1:
            	        	    // MySQL.g:641:87: DOT_SYMBOL MULT_OPERATOR
            	        	    {
            	        	        DOT_SYMBOL676 = (pANTLR3_COMMON_TOKEN) MATCHT(DOT_SYMBOL, &FOLLOW_DOT_SYMBOL_in_table_name_list_with_wildcards3209);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruletable_name_list_with_wildcardsEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        DOT_SYMBOL676_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOT_SYMBOL676));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, DOT_SYMBOL676_tree);
            	        	        }

            	        	        MULT_OPERATOR677 = (pANTLR3_COMMON_TOKEN) MATCHT(MULT_OPERATOR, &FOLLOW_MULT_OPERATOR_in_table_name_list_with_wildcards3211);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruletable_name_list_with_wildcardsEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        MULT_OPERATOR677_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MULT_OPERATOR677));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, MULT_OPERATOR677_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

            	default:
            	    goto loop217;	/* break out of the loop */
            	    break;
                }
            }
            loop217: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto ruletable_name_list_with_wildcardsEx; /* Prevent compiler warnings */
    ruletable_name_list_with_wildcardsEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end table_name_list_with_wildcards */

/**
 * $ANTLR start do_statement
 * MySQL.g:644:1: do_statement : DO_SYMBOL expression_list ;
 */
static MySQLParser_do_statement_return
do_statement(pMySQLParser ctx)
{
    MySQLParser_do_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    DO_SYMBOL678;
    MySQLParser_expression_list_return expression_list679;
    #undef	RETURN_TYPE_expression_list679
    #define	RETURN_TYPE_expression_list679 MySQLParser_expression_list_return

    pANTLR3_BASE_TREE DO_SYMBOL678_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DO_SYMBOL678       = NULL;
    expression_list679.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DO_SYMBOL678_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:644:13: ( DO_SYMBOL expression_list )
        // MySQL.g:645:2: DO_SYMBOL expression_list
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            DO_SYMBOL678 = (pANTLR3_COMMON_TOKEN) MATCHT(DO_SYMBOL, &FOLLOW_DO_SYMBOL_in_do_statement3224);
            if  (HASEXCEPTION())
            {
                goto ruledo_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DO_SYMBOL678_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DO_SYMBOL678));
            ADAPTOR->addChild(ADAPTOR, root_0, DO_SYMBOL678_tree);
            }

            FOLLOWPUSH(FOLLOW_expression_list_in_do_statement3226);
            expression_list679=expression_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruledo_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression_list679.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto ruledo_statementEx; /* Prevent compiler warnings */
    ruledo_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end do_statement */

/**
 * $ANTLR start handler_statement
 * MySQL.g:648:1: handler_statement : HANDLER_SYMBOL qualified_identifier ( OPEN_SYMBOL ( ( AS_SYMBOL )? pure_identifier )? | CLOSE_SYMBOL | READ_SYMBOL ( pure_identifier ( ( EQUAL_OPERATOR | LESS_THAN_OPERATOR | GREATER_THAN_OPERATOR | LESS_OR_EQUAL_OPERATOR | GREATER_OR_EQUAL_OPERATOR ) expression_list_with_parentheses | ( FIRST_SYMBOL | NEXT_SYMBOL | PREV_SYMBOL | LAST_SYMBOL ) ) | ( FIRST_SYMBOL | NEXT_SYMBOL ) ) ( where_clause )? ( limit_clause )? ) ;
 */
static MySQLParser_handler_statement_return
handler_statement(pMySQLParser ctx)
{
    MySQLParser_handler_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    HANDLER_SYMBOL680;
    pANTLR3_COMMON_TOKEN    OPEN_SYMBOL682;
    pANTLR3_COMMON_TOKEN    AS_SYMBOL683;
    pANTLR3_COMMON_TOKEN    CLOSE_SYMBOL685;
    pANTLR3_COMMON_TOKEN    READ_SYMBOL686;
    pANTLR3_COMMON_TOKEN    set688;
    pANTLR3_COMMON_TOKEN    set690;
    pANTLR3_COMMON_TOKEN    set691;
    MySQLParser_qualified_identifier_return qualified_identifier681;
    #undef	RETURN_TYPE_qualified_identifier681
    #define	RETURN_TYPE_qualified_identifier681 MySQLParser_qualified_identifier_return

    MySQLParser_pure_identifier_return pure_identifier684;
    #undef	RETURN_TYPE_pure_identifier684
    #define	RETURN_TYPE_pure_identifier684 MySQLParser_pure_identifier_return

    MySQLParser_pure_identifier_return pure_identifier687;
    #undef	RETURN_TYPE_pure_identifier687
    #define	RETURN_TYPE_pure_identifier687 MySQLParser_pure_identifier_return

    MySQLParser_expression_list_with_parentheses_return expression_list_with_parentheses689;
    #undef	RETURN_TYPE_expression_list_with_parentheses689
    #define	RETURN_TYPE_expression_list_with_parentheses689 MySQLParser_expression_list_with_parentheses_return

    MySQLParser_where_clause_return where_clause692;
    #undef	RETURN_TYPE_where_clause692
    #define	RETURN_TYPE_where_clause692 MySQLParser_where_clause_return

    MySQLParser_limit_clause_return limit_clause693;
    #undef	RETURN_TYPE_limit_clause693
    #define	RETURN_TYPE_limit_clause693 MySQLParser_limit_clause_return

    pANTLR3_BASE_TREE HANDLER_SYMBOL680_tree;
    pANTLR3_BASE_TREE OPEN_SYMBOL682_tree;
    pANTLR3_BASE_TREE AS_SYMBOL683_tree;
    pANTLR3_BASE_TREE CLOSE_SYMBOL685_tree;
    pANTLR3_BASE_TREE READ_SYMBOL686_tree;
    pANTLR3_BASE_TREE set688_tree;
    pANTLR3_BASE_TREE set690_tree;
    pANTLR3_BASE_TREE set691_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    HANDLER_SYMBOL680       = NULL;
    OPEN_SYMBOL682       = NULL;
    AS_SYMBOL683       = NULL;
    CLOSE_SYMBOL685       = NULL;
    READ_SYMBOL686       = NULL;
    set688       = NULL;
    set690       = NULL;
    set691       = NULL;
    qualified_identifier681.tree = NULL;

    pure_identifier684.tree = NULL;

    pure_identifier687.tree = NULL;

    expression_list_with_parentheses689.tree = NULL;

    where_clause692.tree = NULL;

    limit_clause693.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    HANDLER_SYMBOL680_tree   = NULL;
    OPEN_SYMBOL682_tree   = NULL;
    AS_SYMBOL683_tree   = NULL;
    CLOSE_SYMBOL685_tree   = NULL;
    READ_SYMBOL686_tree   = NULL;
    set688_tree   = NULL;
    set690_tree   = NULL;
    set691_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:648:18: ( HANDLER_SYMBOL qualified_identifier ( OPEN_SYMBOL ( ( AS_SYMBOL )? pure_identifier )? | CLOSE_SYMBOL | READ_SYMBOL ( pure_identifier ( ( EQUAL_OPERATOR | LESS_THAN_OPERATOR | GREATER_THAN_OPERATOR | LESS_OR_EQUAL_OPERATOR | GREATER_OR_EQUAL_OPERATOR ) expression_list_with_parentheses | ( FIRST_SYMBOL | NEXT_SYMBOL | PREV_SYMBOL | LAST_SYMBOL ) ) | ( FIRST_SYMBOL | NEXT_SYMBOL ) ) ( where_clause )? ( limit_clause )? ) )
        // MySQL.g:649:2: HANDLER_SYMBOL qualified_identifier ( OPEN_SYMBOL ( ( AS_SYMBOL )? pure_identifier )? | CLOSE_SYMBOL | READ_SYMBOL ( pure_identifier ( ( EQUAL_OPERATOR | LESS_THAN_OPERATOR | GREATER_THAN_OPERATOR | LESS_OR_EQUAL_OPERATOR | GREATER_OR_EQUAL_OPERATOR ) expression_list_with_parentheses | ( FIRST_SYMBOL | NEXT_SYMBOL | PREV_SYMBOL | LAST_SYMBOL ) ) | ( FIRST_SYMBOL | NEXT_SYMBOL ) ) ( where_clause )? ( limit_clause )? )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            HANDLER_SYMBOL680 = (pANTLR3_COMMON_TOKEN) MATCHT(HANDLER_SYMBOL, &FOLLOW_HANDLER_SYMBOL_in_handler_statement3235);
            if  (HASEXCEPTION())
            {
                goto rulehandler_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            HANDLER_SYMBOL680_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HANDLER_SYMBOL680));
            ADAPTOR->addChild(ADAPTOR, root_0, HANDLER_SYMBOL680_tree);
            }

            FOLLOWPUSH(FOLLOW_qualified_identifier_in_handler_statement3237);
            qualified_identifier681=qualified_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulehandler_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, qualified_identifier681.tree);

            // MySQL.g:650:2: ( OPEN_SYMBOL ( ( AS_SYMBOL )? pure_identifier )? | CLOSE_SYMBOL | READ_SYMBOL ( pure_identifier ( ( EQUAL_OPERATOR | LESS_THAN_OPERATOR | GREATER_THAN_OPERATOR | LESS_OR_EQUAL_OPERATOR | GREATER_OR_EQUAL_OPERATOR ) expression_list_with_parentheses | ( FIRST_SYMBOL | NEXT_SYMBOL | PREV_SYMBOL | LAST_SYMBOL ) ) | ( FIRST_SYMBOL | NEXT_SYMBOL ) ) ( where_clause )? ( limit_clause )? )
            {
                int alt224=3;
                switch ( LA(1) )
                {
                case OPEN_SYMBOL:
                	{
                		alt224=1;
                	}
                    break;
                case CLOSE_SYMBOL:
                	{
                		alt224=2;
                	}
                    break;
                case READ_SYMBOL:
                	{
                		alt224=3;
                	}
                    break;

                default:
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 224;
                    EXCEPTION->state        = 0;


                    goto rulehandler_statementEx;

                }

                switch (alt224)
                {
            	case 1:
            	    // MySQL.g:651:3: OPEN_SYMBOL ( ( AS_SYMBOL )? pure_identifier )?
            	    {
            	        OPEN_SYMBOL682 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_SYMBOL, &FOLLOW_OPEN_SYMBOL_in_handler_statement3244);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulehandler_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPEN_SYMBOL682_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_SYMBOL682));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_SYMBOL682_tree);
            	        }

            	        // MySQL.g:651:15: ( ( AS_SYMBOL )? pure_identifier )?
            	        {
            	            int alt219=2;
            	            {
            	                int LA219_0 = LA(1);
            	                if ( (LA219_0 == AS_SYMBOL || LA219_0 == BACK_TICK_QUOTED_ID || LA219_0 == IDENTIFIER))
            	                {
            	                    alt219=1;
            	                }
            	                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA219_0 == DOUBLE_QUOTED_TEXT))
            	                {
            	                    alt219=1;
            	                }
            	            }
            	            switch (alt219)
            	            {
            	        	case 1:
            	        	    // MySQL.g:651:16: ( AS_SYMBOL )? pure_identifier
            	        	    {
            	        	        // MySQL.g:651:16: ( AS_SYMBOL )?
            	        	        {
            	        	            int alt218=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case AS_SYMBOL:
            	        	                	{
            	        	                		alt218=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt218)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:651:16: AS_SYMBOL
            	        	        	    {
            	        	        	        AS_SYMBOL683 = (pANTLR3_COMMON_TOKEN) MATCHT(AS_SYMBOL, &FOLLOW_AS_SYMBOL_in_handler_statement3247);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulehandler_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        AS_SYMBOL683_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AS_SYMBOL683));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, AS_SYMBOL683_tree);
            	        	        	        }

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_pure_identifier_in_handler_statement3250);
            	        	        pure_identifier684=pure_identifier(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulehandler_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier684.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:652:5: CLOSE_SYMBOL
            	    {
            	        CLOSE_SYMBOL685 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_SYMBOL, &FOLLOW_CLOSE_SYMBOL_in_handler_statement3258);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulehandler_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CLOSE_SYMBOL685_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_SYMBOL685));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_SYMBOL685_tree);
            	        }

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:653:5: READ_SYMBOL ( pure_identifier ( ( EQUAL_OPERATOR | LESS_THAN_OPERATOR | GREATER_THAN_OPERATOR | LESS_OR_EQUAL_OPERATOR | GREATER_OR_EQUAL_OPERATOR ) expression_list_with_parentheses | ( FIRST_SYMBOL | NEXT_SYMBOL | PREV_SYMBOL | LAST_SYMBOL ) ) | ( FIRST_SYMBOL | NEXT_SYMBOL ) ) ( where_clause )? ( limit_clause )?
            	    {
            	        READ_SYMBOL686 = (pANTLR3_COMMON_TOKEN) MATCHT(READ_SYMBOL, &FOLLOW_READ_SYMBOL_in_handler_statement3264);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulehandler_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        READ_SYMBOL686_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, READ_SYMBOL686));
            	        ADAPTOR->addChild(ADAPTOR, root_0, READ_SYMBOL686_tree);
            	        }

            	        // MySQL.g:654:4: ( pure_identifier ( ( EQUAL_OPERATOR | LESS_THAN_OPERATOR | GREATER_THAN_OPERATOR | LESS_OR_EQUAL_OPERATOR | GREATER_OR_EQUAL_OPERATOR ) expression_list_with_parentheses | ( FIRST_SYMBOL | NEXT_SYMBOL | PREV_SYMBOL | LAST_SYMBOL ) ) | ( FIRST_SYMBOL | NEXT_SYMBOL ) )
            	        {
            	            int alt221=2;
            	            {
            	                int LA221_0 = LA(1);
            	                if ( (LA221_0 == BACK_TICK_QUOTED_ID || LA221_0 == IDENTIFIER))
            	                {
            	                    alt221=1;
            	                }
            	                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA221_0 == DOUBLE_QUOTED_TEXT))
            	                {
            	                    alt221=1;
            	                }
            	                else if ( (LA221_0 == FIRST_SYMBOL || LA221_0 == NEXT_SYMBOL))
            	                {
            	                    alt221=2;
            	                }
            	                else
            	                {
            	                    if (BACKTRACKING>0)
            	                    {
            	                        FAILEDFLAG = ANTLR3_TRUE;
            	                        return retval;
            	                    }


            	                    CONSTRUCTEX();
            	                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    EXCEPTION->message      = (void *)"";
            	                    EXCEPTION->decisionNum  = 221;
            	                    EXCEPTION->state        = 0;


            	                    goto rulehandler_statementEx;

            	                }
            	            }
            	            switch (alt221)
            	            {
            	        	case 1:
            	        	    // MySQL.g:655:5: pure_identifier ( ( EQUAL_OPERATOR | LESS_THAN_OPERATOR | GREATER_THAN_OPERATOR | LESS_OR_EQUAL_OPERATOR | GREATER_OR_EQUAL_OPERATOR ) expression_list_with_parentheses | ( FIRST_SYMBOL | NEXT_SYMBOL | PREV_SYMBOL | LAST_SYMBOL ) )
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_pure_identifier_in_handler_statement3275);
            	        	        pure_identifier687=pure_identifier(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulehandler_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier687.tree);

            	        	        // MySQL.g:656:5: ( ( EQUAL_OPERATOR | LESS_THAN_OPERATOR | GREATER_THAN_OPERATOR | LESS_OR_EQUAL_OPERATOR | GREATER_OR_EQUAL_OPERATOR ) expression_list_with_parentheses | ( FIRST_SYMBOL | NEXT_SYMBOL | PREV_SYMBOL | LAST_SYMBOL ) )
            	        	        {
            	        	            int alt220=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	            case EQUAL_OPERATOR:
            	        	            case GREATER_OR_EQUAL_OPERATOR:
            	        	            case GREATER_THAN_OPERATOR:
            	        	            case LESS_OR_EQUAL_OPERATOR:
            	        	            case LESS_THAN_OPERATOR:
            	        	            	{
            	        	            		alt220=1;
            	        	            	}
            	        	                break;
            	        	            case FIRST_SYMBOL:
            	        	            case LAST_SYMBOL:
            	        	            case NEXT_SYMBOL:
            	        	            case PREV_SYMBOL:
            	        	            	{
            	        	            		alt220=2;
            	        	            	}
            	        	                break;

            	        	            default:
            	        	                if (BACKTRACKING>0)
            	        	                {
            	        	                    FAILEDFLAG = ANTLR3_TRUE;
            	        	                    return retval;
            	        	                }

            	        	                CONSTRUCTEX();
            	        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	        	                EXCEPTION->message      = (void *)"";
            	        	                EXCEPTION->decisionNum  = 220;
            	        	                EXCEPTION->state        = 0;


            	        	                goto rulehandler_statementEx;

            	        	            }

            	        	            switch (alt220)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:657:6: ( EQUAL_OPERATOR | LESS_THAN_OPERATOR | GREATER_THAN_OPERATOR | LESS_OR_EQUAL_OPERATOR | GREATER_OR_EQUAL_OPERATOR ) expression_list_with_parentheses
            	        	        	    {
            	        	        	        set688=(pANTLR3_COMMON_TOKEN)LT(1);

            	        	        	        if ( LA(1) == EQUAL_OPERATOR || ((LA(1) >= GREATER_OR_EQUAL_OPERATOR) && (LA(1) <= GREATER_THAN_OPERATOR)) || LA(1) == LESS_OR_EQUAL_OPERATOR || LA(1) == LESS_THAN_OPERATOR )
            	        	        	        {
            	        	        	            CONSUME();
            	        	        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	        	        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set688))
            	        	        	            );
            	        	        	            PERRORRECOVERY=ANTLR3_FALSE;
            	        	        	            FAILEDFLAG=ANTLR3_FALSE;

            	        	        	        }
            	        	        	        else
            	        	        	        {
            	        	        	            if (BACKTRACKING>0)
            	        	        	            {
            	        	        	                FAILEDFLAG = ANTLR3_TRUE;
            	        	        	                return retval;
            	        	        	            }

            	        	        	            CONSTRUCTEX();
            	        	        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	        	        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	        	        	            EXCEPTION->expectingSet = NULL;

            	        	        	            goto rulehandler_statementEx;
            	        	        	        }


            	        	        	        FOLLOWPUSH(FOLLOW_expression_list_with_parentheses_in_handler_statement3314);
            	        	        	        expression_list_with_parentheses689=expression_list_with_parentheses(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulehandler_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression_list_with_parentheses689.tree);

            	        	        	    }
            	        	        	    break;
            	        	        	case 2:
            	        	        	    // MySQL.g:659:8: ( FIRST_SYMBOL | NEXT_SYMBOL | PREV_SYMBOL | LAST_SYMBOL )
            	        	        	    {
            	        	        	        set690=(pANTLR3_COMMON_TOKEN)LT(1);

            	        	        	        if ( LA(1) == FIRST_SYMBOL || LA(1) == LAST_SYMBOL || LA(1) == NEXT_SYMBOL || LA(1) == PREV_SYMBOL )
            	        	        	        {
            	        	        	            CONSUME();
            	        	        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	        	        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set690))
            	        	        	            );
            	        	        	            PERRORRECOVERY=ANTLR3_FALSE;
            	        	        	            FAILEDFLAG=ANTLR3_FALSE;

            	        	        	        }
            	        	        	        else
            	        	        	        {
            	        	        	            if (BACKTRACKING>0)
            	        	        	            {
            	        	        	                FAILEDFLAG = ANTLR3_TRUE;
            	        	        	                return retval;
            	        	        	            }

            	        	        	            CONSTRUCTEX();
            	        	        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	        	        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	        	        	            EXCEPTION->expectingSet = NULL;

            	        	        	            goto rulehandler_statementEx;
            	        	        	        }


            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:661:7: ( FIRST_SYMBOL | NEXT_SYMBOL )
            	        	    {
            	        	        set691=(pANTLR3_COMMON_TOKEN)LT(1);

            	        	        if ( LA(1) == FIRST_SYMBOL || LA(1) == NEXT_SYMBOL )
            	        	        {
            	        	            CONSUME();
            	        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set691))
            	        	            );
            	        	            PERRORRECOVERY=ANTLR3_FALSE;
            	        	            FAILEDFLAG=ANTLR3_FALSE;

            	        	        }
            	        	        else
            	        	        {
            	        	            if (BACKTRACKING>0)
            	        	            {
            	        	                FAILEDFLAG = ANTLR3_TRUE;
            	        	                return retval;
            	        	            }

            	        	            CONSTRUCTEX();
            	        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	        	            EXCEPTION->expectingSet = NULL;

            	        	            goto rulehandler_statementEx;
            	        	        }


            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:663:4: ( where_clause )?
            	        {
            	            int alt222=2;
            	            switch ( LA(1) )
            	            {
            	                case WHERE_SYMBOL:
            	                	{
            	                		alt222=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt222)
            	            {
            	        	case 1:
            	        	    // MySQL.g:663:4: where_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_where_clause_in_handler_statement3367);
            	        	        where_clause692=where_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulehandler_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, where_clause692.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:663:18: ( limit_clause )?
            	        {
            	            int alt223=2;
            	            switch ( LA(1) )
            	            {
            	                case LIMIT_SYMBOL:
            	                	{
            	                		alt223=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt223)
            	            {
            	        	case 1:
            	        	    // MySQL.g:663:18: limit_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_limit_clause_in_handler_statement3370);
            	        	        limit_clause693=limit_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulehandler_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_clause693.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulehandler_statementEx; /* Prevent compiler warnings */
    rulehandler_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end handler_statement */

/**
 * $ANTLR start insert_statement
 * MySQL.g:669:1: insert_statement : INSERT_SYMBOL ( insert_option )? ( IGNORE_SYMBOL )? ( INTO_SYMBOL )? target_table insert_field_spec ( duplicate_key_update )? ;
 */
static MySQLParser_insert_statement_return
insert_statement(pMySQLParser ctx)
{
    MySQLParser_insert_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    INSERT_SYMBOL694;
    pANTLR3_COMMON_TOKEN    IGNORE_SYMBOL696;
    pANTLR3_COMMON_TOKEN    INTO_SYMBOL697;
    MySQLParser_insert_option_return insert_option695;
    #undef	RETURN_TYPE_insert_option695
    #define	RETURN_TYPE_insert_option695 MySQLParser_insert_option_return

    MySQLParser_target_table_return target_table698;
    #undef	RETURN_TYPE_target_table698
    #define	RETURN_TYPE_target_table698 MySQLParser_target_table_return

    MySQLParser_insert_field_spec_return insert_field_spec699;
    #undef	RETURN_TYPE_insert_field_spec699
    #define	RETURN_TYPE_insert_field_spec699 MySQLParser_insert_field_spec_return

    MySQLParser_duplicate_key_update_return duplicate_key_update700;
    #undef	RETURN_TYPE_duplicate_key_update700
    #define	RETURN_TYPE_duplicate_key_update700 MySQLParser_duplicate_key_update_return

    pANTLR3_BASE_TREE INSERT_SYMBOL694_tree;
    pANTLR3_BASE_TREE IGNORE_SYMBOL696_tree;
    pANTLR3_BASE_TREE INTO_SYMBOL697_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    INSERT_SYMBOL694       = NULL;
    IGNORE_SYMBOL696       = NULL;
    INTO_SYMBOL697       = NULL;
    insert_option695.tree = NULL;

    target_table698.tree = NULL;

    insert_field_spec699.tree = NULL;

    duplicate_key_update700.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    INSERT_SYMBOL694_tree   = NULL;
    IGNORE_SYMBOL696_tree   = NULL;
    INTO_SYMBOL697_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:669:17: ( INSERT_SYMBOL ( insert_option )? ( IGNORE_SYMBOL )? ( INTO_SYMBOL )? target_table insert_field_spec ( duplicate_key_update )? )
        // MySQL.g:670:2: INSERT_SYMBOL ( insert_option )? ( IGNORE_SYMBOL )? ( INTO_SYMBOL )? target_table insert_field_spec ( duplicate_key_update )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            INSERT_SYMBOL694 = (pANTLR3_COMMON_TOKEN) MATCHT(INSERT_SYMBOL, &FOLLOW_INSERT_SYMBOL_in_insert_statement3385);
            if  (HASEXCEPTION())
            {
                goto ruleinsert_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            INSERT_SYMBOL694_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INSERT_SYMBOL694));
            ADAPTOR->addChild(ADAPTOR, root_0, INSERT_SYMBOL694_tree);
            }

            // MySQL.g:670:16: ( insert_option )?
            {
                int alt225=2;
                switch ( LA(1) )
                {
                    case DELAYED_SYMBOL:
                    case HIGH_PRIORITY_SYMBOL:
                    case LOW_PRIORITY_SYMBOL:
                    	{
                    		alt225=1;
                    	}
                        break;
                }

                switch (alt225)
                {
            	case 1:
            	    // MySQL.g:670:16: insert_option
            	    {
            	        FOLLOWPUSH(FOLLOW_insert_option_in_insert_statement3387);
            	        insert_option695=insert_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinsert_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, insert_option695.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:670:31: ( IGNORE_SYMBOL )?
            {
                int alt226=2;
                switch ( LA(1) )
                {
                    case IGNORE_SYMBOL:
                    	{
                    		alt226=1;
                    	}
                        break;
                }

                switch (alt226)
                {
            	case 1:
            	    // MySQL.g:670:31: IGNORE_SYMBOL
            	    {
            	        IGNORE_SYMBOL696 = (pANTLR3_COMMON_TOKEN) MATCHT(IGNORE_SYMBOL, &FOLLOW_IGNORE_SYMBOL_in_insert_statement3390);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinsert_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        IGNORE_SYMBOL696_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IGNORE_SYMBOL696));
            	        ADAPTOR->addChild(ADAPTOR, root_0, IGNORE_SYMBOL696_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:670:46: ( INTO_SYMBOL )?
            {
                int alt227=2;
                switch ( LA(1) )
                {
                    case INTO_SYMBOL:
                    	{
                    		alt227=1;
                    	}
                        break;
                }

                switch (alt227)
                {
            	case 1:
            	    // MySQL.g:670:46: INTO_SYMBOL
            	    {
            	        INTO_SYMBOL697 = (pANTLR3_COMMON_TOKEN) MATCHT(INTO_SYMBOL, &FOLLOW_INTO_SYMBOL_in_insert_statement3393);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinsert_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INTO_SYMBOL697_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTO_SYMBOL697));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INTO_SYMBOL697_tree);
            	        }

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_target_table_in_insert_statement3396);
            target_table698=target_table(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleinsert_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, target_table698.tree);

            FOLLOWPUSH(FOLLOW_insert_field_spec_in_insert_statement3398);
            insert_field_spec699=insert_field_spec(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleinsert_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, insert_field_spec699.tree);

            // MySQL.g:670:90: ( duplicate_key_update )?
            {
                int alt228=2;
                switch ( LA(1) )
                {
                    case ON_SYMBOL:
                    	{
                    		alt228=1;
                    	}
                        break;
                }

                switch (alt228)
                {
            	case 1:
            	    // MySQL.g:670:90: duplicate_key_update
            	    {
            	        FOLLOWPUSH(FOLLOW_duplicate_key_update_in_insert_statement3400);
            	        duplicate_key_update700=duplicate_key_update(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinsert_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, duplicate_key_update700.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleinsert_statementEx; /* Prevent compiler warnings */
    ruleinsert_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end insert_statement */

/**
 * $ANTLR start insert_option
 * MySQL.g:673:1: insert_option : ( LOW_PRIORITY_SYMBOL | DELAYED_SYMBOL | HIGH_PRIORITY_SYMBOL );
 */
static MySQLParser_insert_option_return
insert_option(pMySQLParser ctx)
{
    MySQLParser_insert_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set701;

    pANTLR3_BASE_TREE set701_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set701       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set701_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:673:14: ( LOW_PRIORITY_SYMBOL | DELAYED_SYMBOL | HIGH_PRIORITY_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set701=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == DELAYED_SYMBOL || LA(1) == HIGH_PRIORITY_SYMBOL || LA(1) == LOW_PRIORITY_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set701))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto ruleinsert_optionEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto ruleinsert_optionEx; /* Prevent compiler warnings */
    ruleinsert_optionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end insert_option */

/**
 * $ANTLR start insert_field_spec
 * MySQL.g:679:1: insert_field_spec : ( ( OPEN_PAR_SYMBOL ( fields )? CLOSE_PAR_SYMBOL )? insert_values | SET_SYMBOL column_assignment_list_with_default );
 */
static MySQLParser_insert_field_spec_return
insert_field_spec(pMySQLParser ctx)
{
    MySQLParser_insert_field_spec_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL702;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL704;
    pANTLR3_COMMON_TOKEN    SET_SYMBOL706;
    MySQLParser_fields_return fields703;
    #undef	RETURN_TYPE_fields703
    #define	RETURN_TYPE_fields703 MySQLParser_fields_return

    MySQLParser_insert_values_return insert_values705;
    #undef	RETURN_TYPE_insert_values705
    #define	RETURN_TYPE_insert_values705 MySQLParser_insert_values_return

    MySQLParser_column_assignment_list_with_default_return column_assignment_list_with_default707;
    #undef	RETURN_TYPE_column_assignment_list_with_default707
    #define	RETURN_TYPE_column_assignment_list_with_default707 MySQLParser_column_assignment_list_with_default_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL702_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL704_tree;
    pANTLR3_BASE_TREE SET_SYMBOL706_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL702       = NULL;
    CLOSE_PAR_SYMBOL704       = NULL;
    SET_SYMBOL706       = NULL;
    fields703.tree = NULL;

    insert_values705.tree = NULL;

    column_assignment_list_with_default707.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL702_tree   = NULL;
    CLOSE_PAR_SYMBOL704_tree   = NULL;
    SET_SYMBOL706_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:679:18: ( ( OPEN_PAR_SYMBOL ( fields )? CLOSE_PAR_SYMBOL )? insert_values | SET_SYMBOL column_assignment_list_with_default )

            ANTLR3_UINT32 alt231;

            alt231=2;

            switch ( LA(1) )
            {
            case OPEN_PAR_SYMBOL:
            case SELECT_SYMBOL:
            case VALUES_SYMBOL:
            case VALUE_SYMBOL:
            	{
            		alt231=1;
            	}
                break;
            case SET_SYMBOL:
            	{
            		alt231=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 231;
                EXCEPTION->state        = 0;


                goto ruleinsert_field_specEx;

            }

            switch (alt231)
            {
        	case 1:
        	    // MySQL.g:680:2: ( OPEN_PAR_SYMBOL ( fields )? CLOSE_PAR_SYMBOL )? insert_values
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:680:2: ( OPEN_PAR_SYMBOL ( fields )? CLOSE_PAR_SYMBOL )?
        	        {
        	            int alt230=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case ACTION_SYMBOL:
        	                		    case ADDDATE_SYMBOL:
        	                		    case AFTER_SYMBOL:
        	                		    case AGAINST_SYMBOL:
        	                		    case AGGREGATE_SYMBOL:
        	                		    case ALGORITHM_SYMBOL:
        	                		    case ANALYZE_SYMBOL:
        	                		    case ANY_SYMBOL:
        	                		    case ASCII_SYMBOL:
        	                		    case AT_SYMBOL:
        	                		    case AUTHORS_SYMBOL:
        	                		    case AUTOEXTEND_SIZE_SYMBOL:
        	                		    case AUTO_INCREMENT_SYMBOL:
        	                		    case AVG_ROW_LENGTH_SYMBOL:
        	                		    case AVG_SYMBOL:
        	                		    case BACKUP_SYMBOL:
        	                		    case BACK_TICK_QUOTED_ID:
        	                		    case BEGIN_SYMBOL:
        	                		    case BINLOG_SYMBOL:
        	                		    case BIT_SYMBOL:
        	                		    case BLOCK_SYMBOL:
        	                		    case BOOLEAN_SYMBOL:
        	                		    case BOOL_SYMBOL:
        	                		    case BTREE_SYMBOL:
        	                		    case BYTE_SYMBOL:
        	                		    case CACHE_SYMBOL:
        	                		    case CASCADED_SYMBOL:
        	                		    case CATALOG_NAME_SYMBOL:
        	                		    case CHAIN_SYMBOL:
        	                		    case CHANGED_SYMBOL:
        	                		    case CHARSET_SYMBOL:
        	                		    case CHECKSUM_SYMBOL:
        	                		    case CIPHER_SYMBOL:
        	                		    case CLASS_ORIGIN_SYMBOL:
        	                		    case CLIENT_SYMBOL:
        	                		    case CLOSE_PAR_SYMBOL:
        	                		    case CLOSE_SYMBOL:
        	                		    case COALESCE_SYMBOL:
        	                		    case CODE_SYMBOL:
        	                		    case COLLATION_SYMBOL:
        	                		    case COLUMNS_SYMBOL:
        	                		    case COLUMN_FORMAT_SYMBOL:
        	                		    case COLUMN_NAME_SYMBOL:
        	                		    case COMMENT_SYMBOL:
        	                		    case COMMITTED_SYMBOL:
        	                		    case COMMIT_SYMBOL:
        	                		    case COMPACT_SYMBOL:
        	                		    case COMPLETION_SYMBOL:
        	                		    case COMPRESSED_SYMBOL:
        	                		    case CONCURRENT_SYMBOL:
        	                		    case CONNECTION_SYMBOL:
        	                		    case CONSISTENT_SYMBOL:
        	                		    case CONSTRAINT_CATALOG_SYMBOL:
        	                		    case CONSTRAINT_NAME_SYMBOL:
        	                		    case CONSTRAINT_SCHEMA_SYMBOL:
        	                		    case CONTAINS_SYMBOL:
        	                		    case CONTEXT_SYMBOL:
        	                		    case CONTRIBUTORS_SYMBOL:
        	                		    case CPU_SYMBOL:
        	                		    case CUBE_SYMBOL:
        	                		    case CURRENT_SYMBOL:
        	                		    case CURSOR_NAME_SYMBOL:
        	                		    case DATAFILE_SYMBOL:
        	                		    case DATA_SYMBOL:
        	                		    case DATETIME_SYMBOL:
        	                		    case DATE_SYMBOL:
        	                		    case DAY_SYMBOL:
        	                		    case DEALLOCATE_SYMBOL:
        	                		    case DEFAULT_AUTH_SYMBOL:
        	                		    case DEFINER_SYMBOL:
        	                		    case DELAY_KEY_WRITE_SYMBOL:
        	                		    case DES_KEY_FILE_SYMBOL:
        	                		    case DIAGNOSTICS_SYMBOL:
        	                		    case DIRECTORY_SYMBOL:
        	                		    case DISABLE_SYMBOL:
        	                		    case DISCARD_SYMBOL:
        	                		    case DISK_SYMBOL:
        	                		    case DOUBLE_QUOTED_TEXT:
        	                		    case DO_SYMBOL:
        	                		    case DUMPFILE_SYMBOL:
        	                		    case DUPLICATE_SYMBOL:
        	                		    case DYNAMIC_SYMBOL:
        	                		    case ENABLE_SYMBOL:
        	                		    case ENDS_SYMBOL:
        	                		    case END_SYMBOL:
        	                		    case ENGINES_SYMBOL:
        	                		    case ENGINE_SYMBOL:
        	                		    case ENUM_SYMBOL:
        	                		    case ERRORS_SYMBOL:
        	                		    case ERROR_SYMBOL:
        	                		    case ESCAPE_SYMBOL:
        	                		    case EVENTS_SYMBOL:
        	                		    case EVENT_SYMBOL:
        	                		    case EVERY_SYMBOL:
        	                		    case EXECUTE_SYMBOL:
        	                		    case EXPANSION_SYMBOL:
        	                		    case EXPORT_SYMBOL:
        	                		    case EXTENDED_SYMBOL:
        	                		    case EXTENT_SIZE_SYMBOL:
        	                		    case FAST_SYMBOL:
        	                		    case FAULTS_SYMBOL:
        	                		    case FILE_SYMBOL:
        	                		    case FIRST_SYMBOL:
        	                		    case FIXED_SYMBOL:
        	                		    case FLUSH_SYMBOL:
        	                		    case FORMAT_SYMBOL:
        	                		    case FOUND_SYMBOL:
        	                		    case FULL_SYMBOL:
        	                		    case FUNCTION_SYMBOL:
        	                		    case GENERAL_SYMBOL:
        	                		    case GEOMETRYCOLLECTION_SYMBOL:
        	                		    case GEOMETRY_SYMBOL:
        	                		    case GET_FORMAT_SYMBOL:
        	                		    case GLOBAL_SYMBOL:
        	                		    case GRANTS_SYMBOL:
        	                		    case HANDLER_SYMBOL:
        	                		    case HASH_SYMBOL:
        	                		    case HELP_SYMBOL:
        	                		    case HOSTS_SYMBOL:
        	                		    case HOST_SYMBOL:
        	                		    case HOUR_SYMBOL:
        	                		    case IDENTIFIED_SYMBOL:
        	                		    case IDENTIFIER:
        	                		    case IGNORE_SERVER_IDS_SYMBOL:
        	                		    case IMPORT_SYMBOL:
        	                		    case INDEXES_SYMBOL:
        	                		    case INITIAL_SIZE_SYMBOL:
        	                		    case INNODB_SYMBOL:
        	                		    case INSERT_METHOD_SYMBOL:
        	                		    case INSTALL_SYMBOL:
        	                		    case INVOKER_SYMBOL:
        	                		    case IO_SYMBOL:
        	                		    case IPC_SYMBOL:
        	                		    case ISOLATION_SYMBOL:
        	                		    case ISSUER_SYMBOL:
        	                		    case KEY_BLOCK_SIZE_SYMBOL:
        	                		    case LANGUAGE_SYMBOL:
        	                		    case LAST_SYMBOL:
        	                		    case LEAVES_SYMBOL:
        	                		    case LESS_SYMBOL:
        	                		    case LEVEL_SYMBOL:
        	                		    case LINESTRING_SYMBOL:
        	                		    case LIST_SYMBOL:
        	                		    case LOCAL_SYMBOL:
        	                		    case LOCKS_SYMBOL:
        	                		    case LOGFILE_SYMBOL:
        	                		    case LOGS_SYMBOL:
        	                		    case MASTER_AUTO_POSITION_SYMBOL:
        	                		    case MASTER_CONNECT_RETRY_SYMBOL:
        	                		    case MASTER_DELAY_SYMBOL:
        	                		    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
        	                		    case MASTER_HOST_SYMBOL:
        	                		    case MASTER_LOG_FILE_SYMBOL:
        	                		    case MASTER_LOG_POS_SYMBOL:
        	                		    case MASTER_PASSWORD_SYMBOL:
        	                		    case MASTER_PORT_SYMBOL:
        	                		    case MASTER_RETRY_COUNT_SYMBOL:
        	                		    case MASTER_SERVER_ID_SYMBOL:
        	                		    case MASTER_SSL_CAPATH_SYMBOL:
        	                		    case MASTER_SSL_CA_SYMBOL:
        	                		    case MASTER_SSL_CERT_SYMBOL:
        	                		    case MASTER_SSL_CIPHER_SYMBOL:
        	                		    case MASTER_SSL_CRLPATH_SYMBOL:
        	                		    case MASTER_SSL_CRL_SYMBOL:
        	                		    case MASTER_SSL_KEY_SYMBOL:
        	                		    case MASTER_SSL_SYMBOL:
        	                		    case MASTER_SYMBOL:
        	                		    case MASTER_USER_SYMBOL:
        	                		    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
        	                		    case MAX_QUERIES_PER_HOUR_SYMBOL:
        	                		    case MAX_ROWS_SYMBOL:
        	                		    case MAX_SIZE_SYMBOL:
        	                		    case MAX_UPDATES_PER_HOUR_SYMBOL:
        	                		    case MAX_USER_CONNECTIONS_SYMBOL:
        	                		    case MEDIUM_SYMBOL:
        	                		    case MEMORY_SYMBOL:
        	                		    case MERGE_SYMBOL:
        	                		    case MESSAGE_TEXT_SYMBOL:
        	                		    case MICROSECOND_SYMBOL:
        	                		    case MIGRATE_SYMBOL:
        	                		    case MINUTE_SYMBOL:
        	                		    case MIN_ROWS_SYMBOL:
        	                		    case MODE_SYMBOL:
        	                		    case MODIFY_SYMBOL:
        	                		    case MONTH_SYMBOL:
        	                		    case MULTILINESTRING_SYMBOL:
        	                		    case MULTIPOINT_SYMBOL:
        	                		    case MULTIPOLYGON_SYMBOL:
        	                		    case MULT_OPERATOR:
        	                		    case MUTEX_SYMBOL:
        	                		    case MYSQL_ERRNO_SYMBOL:
        	                		    case NAMES_SYMBOL:
        	                		    case NAME_SYMBOL:
        	                		    case NATIONAL_SYMBOL:
        	                		    case NCHAR_SYMBOL:
        	                		    case NDBCLUSTER_SYMBOL:
        	                		    case NEW_SYMBOL:
        	                		    case NEXT_SYMBOL:
        	                		    case NODEGROUP_SYMBOL:
        	                		    case NONE_SYMBOL:
        	                		    case NO_SYMBOL:
        	                		    case NO_WAIT_SYMBOL:
        	                		    case NUMBER_SYMBOL:
        	                		    case NVARCHAR_SYMBOL:
        	                		    case OFFSET_SYMBOL:
        	                		    case OLD_PASSWORD_SYMBOL:
        	                		    case ONE_SHOT_SYMBOL:
        	                		    case ONE_SYMBOL:
        	                		    case OPEN_SYMBOL:
        	                		    case OPTIONS_SYMBOL:
        	                		    case OWNER_SYMBOL:
        	                		    case PACK_KEYS_SYMBOL:
        	                		    case PAGE_SYMBOL:
        	                		    case PARSER_SYMBOL:
        	                		    case PARTIAL_SYMBOL:
        	                		    case PARTITIONING_SYMBOL:
        	                		    case PARTITIONS_SYMBOL:
        	                		    case PARTITION_SYMBOL:
        	                		    case PASSWORD_SYMBOL:
        	                		    case PHASE_SYMBOL:
        	                		    case PLUGINS_SYMBOL:
        	                		    case PLUGIN_DIR_SYMBOL:
        	                		    case PLUGIN_SYMBOL:
        	                		    case POINT_SYMBOL:
        	                		    case POLYGON_SYMBOL:
        	                		    case PORT_SYMBOL:
        	                		    case PREPARE_SYMBOL:
        	                		    case PRESERVE_SYMBOL:
        	                		    case PREV_SYMBOL:
        	                		    case PRIVILEGES_SYMBOL:
        	                		    case PROCESSLIST_SYMBOL:
        	                		    case PROCESS_SYMBOL:
        	                		    case PROFILES_SYMBOL:
        	                		    case PROFILE_SYMBOL:
        	                		    case PROXY_SYMBOL:
        	                		    case QUARTER_SYMBOL:
        	                		    case QUERY_SYMBOL:
        	                		    case QUICK_SYMBOL:
        	                		    case READ_ONLY_SYMBOL:
        	                		    case REBUILD_SYMBOL:
        	                		    case RECOVER_SYMBOL:
        	                		    case REDOFILE_SYMBOL:
        	                		    case REDO_BUFFER_SIZE_SYMBOL:
        	                		    case REDUNDANT_SYMBOL:
        	                		    case RELAYLOG_SYMBOL:
        	                		    case RELAY_LOG_FILE_SYMBOL:
        	                		    case RELAY_LOG_POS_SYMBOL:
        	                		    case RELAY_SYMBOL:
        	                		    case RELAY_THREAD_SYMBOL:
        	                		    case RELOAD_SYMBOL:
        	                		    case REMOVE_SYMBOL:
        	                		    case REORGANIZE_SYMBOL:
        	                		    case REPAIR_SYMBOL:
        	                		    case REPEATABLE_SYMBOL:
        	                		    case REPLICATION_SYMBOL:
        	                		    case RESET_SYMBOL:
        	                		    case RESTORE_SYMBOL:
        	                		    case RESUME_SYMBOL:
        	                		    case RETURNED_SQLSTATE_SYMBOL:
        	                		    case RETURNS_SYMBOL:
        	                		    case REVERSE_SYMBOL:
        	                		    case ROLLBACK_SYMBOL:
        	                		    case ROLLUP_SYMBOL:
        	                		    case ROUTINE_SYMBOL:
        	                		    case ROWS_SYMBOL:
        	                		    case ROW_COUNT_SYMBOL:
        	                		    case ROW_FORMAT_SYMBOL:
        	                		    case ROW_SYMBOL:
        	                		    case RTREE_SYMBOL:
        	                		    case SAVEPOINT_SYMBOL:
        	                		    case SCHEDULE_SYMBOL:
        	                		    case SCHEMA_NAME_SYMBOL:
        	                		    case SECOND_SYMBOL:
        	                		    case SECURITY_SYMBOL:
        	                		    case SERIALIZABLE_SYMBOL:
        	                		    case SERIAL_SYMBOL:
        	                		    case SERVER_SYMBOL:
        	                		    case SESSION_SYMBOL:
        	                		    case SHARE_SYMBOL:
        	                		    case SHUTDOWN_SYMBOL:
        	                		    case SIGNED_SYMBOL:
        	                		    case SIMPLE_SYMBOL:
        	                		    case SLAVE_SYMBOL:
        	                		    case SLOW_SYMBOL:
        	                		    case SNAPSHOT_SYMBOL:
        	                		    case SOCKET_SYMBOL:
        	                		    case SONAME_SYMBOL:
        	                		    case SOUNDS_SYMBOL:
        	                		    case SOURCE_SYMBOL:
        	                		    case SQL_AFTER_GTIDS_SYMBOL:
        	                		    case SQL_AFTER_MTS_GAPS_SYMBOL:
        	                		    case SQL_BEFORE_GTIDS_SYMBOL:
        	                		    case SQL_BUFFER_RESULT_SYMBOL:
        	                		    case SQL_CACHE_SYMBOL:
        	                		    case SQL_NO_CACHE_SYMBOL:
        	                		    case SQL_THREAD_SYMBOL:
        	                		    case STARTS_SYMBOL:
        	                		    case START_SYMBOL:
        	                		    case STATS_AUTO_RECALC_SYMBOL:
        	                		    case STATS_PERSISTENT_SYMBOL:
        	                		    case STATS_SAMPLE_PAGES_SYMBOL:
        	                		    case STATUS_SYMBOL:
        	                		    case STOP_SYMBOL:
        	                		    case STORAGE_SYMBOL:
        	                		    case STRING_SYMBOL:
        	                		    case SUBCLASS_ORIGIN_SYMBOL:
        	                		    case SUBDATE_SYMBOL:
        	                		    case SUBJECT_SYMBOL:
        	                		    case SUBPARTITIONS_SYMBOL:
        	                		    case SUBPARTITION_SYMBOL:
        	                		    case SUPER_SYMBOL:
        	                		    case SUSPEND_SYMBOL:
        	                		    case SWAPS_SYMBOL:
        	                		    case SWITCHES_SYMBOL:
        	                		    case TABLESPACE_SYMBOL:
        	                		    case TABLES_SYMBOL:
        	                		    case TABLE_CHECKSUM_SYMBOL:
        	                		    case TABLE_NAME_SYMBOL:
        	                		    case TEMPORARY_SYMBOL:
        	                		    case TEMPTABLE_SYMBOL:
        	                		    case TEXT_SYMBOL:
        	                		    case THAN_SYMBOL:
        	                		    case TIMESTAMP_ADD_SYMBOL:
        	                		    case TIMESTAMP_DIFF_SYMBOL:
        	                		    case TIMESTAMP_SYMBOL:
        	                		    case TIME_SYMBOL:
        	                		    case TRANSACTION_SYMBOL:
        	                		    case TRIGGERS_SYMBOL:
        	                		    case TRUNCATE_SYMBOL:
        	                		    case TYPES_SYMBOL:
        	                		    case TYPE_SYMBOL:
        	                		    case UDF_RETURNS_SYMBOL:
        	                		    case UNCOMMITTED_SYMBOL:
        	                		    case UNDEFINED_SYMBOL:
        	                		    case UNDOFILE_SYMBOL:
        	                		    case UNDO_BUFFER_SIZE_SYMBOL:
        	                		    case UNICODE_SYMBOL:
        	                		    case UNINSTALL_SYMBOL:
        	                		    case UNKNOWN_SYMBOL:
        	                		    case UNTIL_SYMBOL:
        	                		    case UPGRADE_SYMBOL:
        	                		    case USER_RESOURCES_SYMBOL:
        	                		    case USER_SYMBOL:
        	                		    case USE_FRM_SYMBOL:
        	                		    case VALUE_SYMBOL:
        	                		    case VARIABLES_SYMBOL:
        	                		    case VIEW_SYMBOL:
        	                		    case WAIT_SYMBOL:
        	                		    case WARNINGS_SYMBOL:
        	                		    case WEEK_SYMBOL:
        	                		    case WEIGHT_STRING_SYMBOL:
        	                		    case WORK_SYMBOL:
        	                		    case WRAPPER_SYMBOL:
        	                		    case X509_SYMBOL:
        	                		    case XA_SYMBOL:
        	                		    case XML_SYMBOL:
        	                		    case YEAR_SYMBOL:
        	                		    	{
        	                		    		alt230=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt230)
        	            {
        	        	case 1:
        	        	    // MySQL.g:680:3: OPEN_PAR_SYMBOL ( fields )? CLOSE_PAR_SYMBOL
        	        	    {
        	        	        OPEN_PAR_SYMBOL702 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_insert_field_spec3432);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleinsert_field_specEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        OPEN_PAR_SYMBOL702_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL702));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL702_tree);
        	        	        }

        	        	        // MySQL.g:680:19: ( fields )?
        	        	        {
        	        	            int alt229=2;
        	        	            {
        	        	                int LA229_0 = LA(1);
        	        	                if ( (LA229_0 == BACK_TICK_QUOTED_ID || LA229_0 == IDENTIFIER))
        	        	                {
        	        	                    alt229=1;
        	        	                }
        	        	                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA229_0 == DOUBLE_QUOTED_TEXT))
        	        	                {
        	        	                    alt229=1;
        	        	                }
        	        	                else if ( (((LA229_0 >= ACTION_SYMBOL) && (LA229_0 <= ADDDATE_SYMBOL)) || ((LA229_0 >= AFTER_SYMBOL) && (LA229_0 <= ALGORITHM_SYMBOL)) || LA229_0 == ANALYZE_SYMBOL || ((LA229_0 >= ANY_SYMBOL) && (LA229_0 <= ASCII_SYMBOL)) || ((LA229_0 >= AT_SYMBOL) && (LA229_0 <= BACKUP_SYMBOL)) || LA229_0 == BEGIN_SYMBOL || LA229_0 == BINLOG_SYMBOL || LA229_0 == BIT_SYMBOL || ((LA229_0 >= BLOCK_SYMBOL) && (LA229_0 <= BOOL_SYMBOL)) || ((LA229_0 >= BTREE_SYMBOL) && (LA229_0 <= BYTE_SYMBOL)) || LA229_0 == CACHE_SYMBOL || LA229_0 == CASCADED_SYMBOL || ((LA229_0 >= CATALOG_NAME_SYMBOL) && (LA229_0 <= CHANGED_SYMBOL)) || LA229_0 == CHARSET_SYMBOL || LA229_0 == CHECKSUM_SYMBOL || ((LA229_0 >= CIPHER_SYMBOL) && (LA229_0 <= CLIENT_SYMBOL)) || ((LA229_0 >= CLOSE_SYMBOL) && (LA229_0 <= CODE_SYMBOL)) || LA229_0 == COLLATION_SYMBOL || ((LA229_0 >= COLUMNS_SYMBOL) && (LA229_0 <= COLUMN_NAME_SYMBOL)) || ((LA229_0 >= COMMENT_SYMBOL) && (LA229_0 <= COMPRESSED_SYMBOL)) || LA229_0 == CONCURRENT_SYMBOL || ((LA229_0 >= CONNECTION_SYMBOL) && (LA229_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA229_0 >= CONTAINS_SYMBOL) && (LA229_0 <= CONTEXT_SYMBOL)) || LA229_0 == CONTRIBUTORS_SYMBOL || LA229_0 == CPU_SYMBOL || LA229_0 == CUBE_SYMBOL || LA229_0 == CURRENT_SYMBOL || LA229_0 == CURSOR_NAME_SYMBOL || ((LA229_0 >= DATAFILE_SYMBOL) && (LA229_0 <= DATETIME_SYMBOL)) || LA229_0 == DATE_SYMBOL || ((LA229_0 >= DAY_SYMBOL) && (LA229_0 <= DEALLOCATE_SYMBOL)) || LA229_0 == DEFAULT_AUTH_SYMBOL || LA229_0 == DEFINER_SYMBOL || LA229_0 == DELAY_KEY_WRITE_SYMBOL || LA229_0 == DES_KEY_FILE_SYMBOL || LA229_0 == DIAGNOSTICS_SYMBOL || ((LA229_0 >= DIRECTORY_SYMBOL) && (LA229_0 <= DISK_SYMBOL)) || LA229_0 == DO_SYMBOL || ((LA229_0 >= DUMPFILE_SYMBOL) && (LA229_0 <= DYNAMIC_SYMBOL)) || LA229_0 == ENABLE_SYMBOL || LA229_0 == ENDS_SYMBOL || ((LA229_0 >= END_SYMBOL) && (LA229_0 <= ENUM_SYMBOL)) || ((LA229_0 >= ERRORS_SYMBOL) && (LA229_0 <= ERROR_SYMBOL)) || ((LA229_0 >= ESCAPE_SYMBOL) && (LA229_0 <= EVERY_SYMBOL)) || LA229_0 == EXECUTE_SYMBOL || LA229_0 == EXPANSION_SYMBOL || LA229_0 == EXPORT_SYMBOL || ((LA229_0 >= EXTENDED_SYMBOL) && (LA229_0 <= EXTENT_SIZE_SYMBOL)) || ((LA229_0 >= FAST_SYMBOL) && (LA229_0 <= FAULTS_SYMBOL)) || ((LA229_0 >= FILE_SYMBOL) && (LA229_0 <= FIXED_SYMBOL)) || LA229_0 == FLUSH_SYMBOL || LA229_0 == FORMAT_SYMBOL || LA229_0 == FOUND_SYMBOL || LA229_0 == FULL_SYMBOL || ((LA229_0 >= FUNCTION_SYMBOL) && (LA229_0 <= GET_FORMAT_SYMBOL)) || ((LA229_0 >= GLOBAL_SYMBOL) && (LA229_0 <= GRANTS_SYMBOL)) || ((LA229_0 >= HANDLER_SYMBOL) && (LA229_0 <= HASH_SYMBOL)) || LA229_0 == HELP_SYMBOL || ((LA229_0 >= HOSTS_SYMBOL) && (LA229_0 <= HOST_SYMBOL)) || ((LA229_0 >= HOUR_SYMBOL) && (LA229_0 <= IDENTIFIED_SYMBOL)) || LA229_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA229_0 >= IMPORT_SYMBOL) && (LA229_0 <= INDEXES_SYMBOL)) || LA229_0 == INITIAL_SIZE_SYMBOL || LA229_0 == INNODB_SYMBOL || LA229_0 == INSERT_METHOD_SYMBOL || LA229_0 == INSTALL_SYMBOL || LA229_0 == INVOKER_SYMBOL || LA229_0 == IO_SYMBOL || ((LA229_0 >= IPC_SYMBOL) && (LA229_0 <= ISSUER_SYMBOL)) || LA229_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA229_0 >= LANGUAGE_SYMBOL) && (LA229_0 <= LAST_SYMBOL)) || LA229_0 == LEAVES_SYMBOL || LA229_0 == LESS_SYMBOL || LA229_0 == LEVEL_SYMBOL || LA229_0 == LINESTRING_SYMBOL || LA229_0 == LIST_SYMBOL || LA229_0 == LOCAL_SYMBOL || LA229_0 == LOCKS_SYMBOL || LA229_0 == LOGFILE_SYMBOL || LA229_0 == LOGS_SYMBOL || LA229_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA229_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA229_0 <= MASTER_SSL_SYMBOL)) || ((LA229_0 >= MASTER_SYMBOL) && (LA229_0 <= MASTER_USER_SYMBOL)) || ((LA229_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA229_0 <= MAX_SIZE_SYMBOL)) || ((LA229_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA229_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA229_0 >= MEDIUM_SYMBOL) && (LA229_0 <= MICROSECOND_SYMBOL)) || LA229_0 == MIGRATE_SYMBOL || ((LA229_0 >= MINUTE_SYMBOL) && (LA229_0 <= MIN_ROWS_SYMBOL)) || LA229_0 == MODE_SYMBOL || LA229_0 == MODIFY_SYMBOL || ((LA229_0 >= MONTH_SYMBOL) && (LA229_0 <= MULTILINESTRING_SYMBOL)) || ((LA229_0 >= MULTIPOINT_SYMBOL) && (LA229_0 <= NATIONAL_SYMBOL)) || LA229_0 == NCHAR_SYMBOL || LA229_0 == NDBCLUSTER_SYMBOL || ((LA229_0 >= NEW_SYMBOL) && (LA229_0 <= NONE_SYMBOL)) || ((LA229_0 >= NO_SYMBOL) && (LA229_0 <= NO_WAIT_SYMBOL)) || LA229_0 == NUMBER_SYMBOL || LA229_0 == NVARCHAR_SYMBOL || ((LA229_0 >= OFFSET_SYMBOL) && (LA229_0 <= ONE_SYMBOL)) || LA229_0 == OPEN_SYMBOL || LA229_0 == OPTIONS_SYMBOL || ((LA229_0 >= OWNER_SYMBOL) && (LA229_0 <= PAGE_SYMBOL)) || ((LA229_0 >= PARSER_SYMBOL) && (LA229_0 <= PARTITION_SYMBOL)) || ((LA229_0 >= PASSWORD_SYMBOL) && (LA229_0 <= PLUGIN_SYMBOL)) || ((LA229_0 >= POINT_SYMBOL) && (LA229_0 <= PORT_SYMBOL)) || ((LA229_0 >= PREPARE_SYMBOL) && (LA229_0 <= PREV_SYMBOL)) || LA229_0 == PRIVILEGES_SYMBOL || ((LA229_0 >= PROCESSLIST_SYMBOL) && (LA229_0 <= PROXY_SYMBOL)) || ((LA229_0 >= QUARTER_SYMBOL) && (LA229_0 <= QUICK_SYMBOL)) || LA229_0 == READ_ONLY_SYMBOL || ((LA229_0 >= REBUILD_SYMBOL) && (LA229_0 <= REDUNDANT_SYMBOL)) || ((LA229_0 >= RELAYLOG_SYMBOL) && (LA229_0 <= RELAY_THREAD_SYMBOL)) || ((LA229_0 >= RELOAD_SYMBOL) && (LA229_0 <= REMOVE_SYMBOL)) || ((LA229_0 >= REORGANIZE_SYMBOL) && (LA229_0 <= REPEATABLE_SYMBOL)) || LA229_0 == REPLICATION_SYMBOL || LA229_0 == RESET_SYMBOL || LA229_0 == RESTORE_SYMBOL || ((LA229_0 >= RESUME_SYMBOL) && (LA229_0 <= RETURNS_SYMBOL)) || LA229_0 == REVERSE_SYMBOL || ((LA229_0 >= ROLLBACK_SYMBOL) && (LA229_0 <= SCHEDULE_SYMBOL)) || LA229_0 == SCHEMA_NAME_SYMBOL || ((LA229_0 >= SECOND_SYMBOL) && (LA229_0 <= SECURITY_SYMBOL)) || ((LA229_0 >= SERIALIZABLE_SYMBOL) && (LA229_0 <= SERIAL_SYMBOL)) || ((LA229_0 >= SERVER_SYMBOL) && (LA229_0 <= SESSION_SYMBOL)) || LA229_0 == SHARE_SYMBOL || LA229_0 == SHUTDOWN_SYMBOL || ((LA229_0 >= SIGNED_SYMBOL) && (LA229_0 <= SIMPLE_SYMBOL)) || ((LA229_0 >= SLAVE_SYMBOL) && (LA229_0 <= SLOW_SYMBOL)) || ((LA229_0 >= SNAPSHOT_SYMBOL) && (LA229_0 <= SOURCE_SYMBOL)) || ((LA229_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA229_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA229_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA229_0 <= SQL_CACHE_SYMBOL)) || LA229_0 == SQL_NO_CACHE_SYMBOL || LA229_0 == SQL_THREAD_SYMBOL || ((LA229_0 >= STARTS_SYMBOL) && (LA229_0 <= STATUS_SYMBOL)) || ((LA229_0 >= STOP_SYMBOL) && (LA229_0 <= STORAGE_SYMBOL)) || ((LA229_0 >= STRING_SYMBOL) && (LA229_0 <= SUBPARTITION_SYMBOL)) || ((LA229_0 >= SUPER_SYMBOL) && (LA229_0 <= SWITCHES_SYMBOL)) || ((LA229_0 >= TABLESPACE_SYMBOL) && (LA229_0 <= TABLE_NAME_SYMBOL)) || ((LA229_0 >= TEMPORARY_SYMBOL) && (LA229_0 <= TEMPTABLE_SYMBOL)) || ((LA229_0 >= TEXT_SYMBOL) && (LA229_0 <= THAN_SYMBOL)) || ((LA229_0 >= TIMESTAMP_ADD_SYMBOL) && (LA229_0 <= TIME_SYMBOL)) || ((LA229_0 >= TRANSACTION_SYMBOL) && (LA229_0 <= TRIGGERS_SYMBOL)) || ((LA229_0 >= TRUNCATE_SYMBOL) && (LA229_0 <= UDF_RETURNS_SYMBOL)) || ((LA229_0 >= UNCOMMITTED_SYMBOL) && (LA229_0 <= UNDEFINED_SYMBOL)) || ((LA229_0 >= UNDOFILE_SYMBOL) && (LA229_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA229_0 >= UNICODE_SYMBOL) && (LA229_0 <= UNINSTALL_SYMBOL)) || LA229_0 == UNKNOWN_SYMBOL || LA229_0 == UNTIL_SYMBOL || LA229_0 == UPGRADE_SYMBOL || ((LA229_0 >= USER_RESOURCES_SYMBOL) && (LA229_0 <= USE_FRM_SYMBOL)) || LA229_0 == VALUE_SYMBOL || LA229_0 == VARIABLES_SYMBOL || ((LA229_0 >= VIEW_SYMBOL) && (LA229_0 <= WEIGHT_STRING_SYMBOL)) || ((LA229_0 >= WORK_SYMBOL) && (LA229_0 <= WRAPPER_SYMBOL)) || LA229_0 == X509_SYMBOL || ((LA229_0 >= XA_SYMBOL) && (LA229_0 <= XML_SYMBOL)) || LA229_0 == YEAR_SYMBOL))
        	        	                {
        	        	                    alt229=1;
        	        	                }
        	        	            }
        	        	            switch (alt229)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:680:19: fields
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_fields_in_insert_field_spec3434);
        	        	        	        fields703=fields(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleinsert_field_specEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, fields703.tree);

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        CLOSE_PAR_SYMBOL704 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_insert_field_spec3437);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleinsert_field_specEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        CLOSE_PAR_SYMBOL704_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL704));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL704_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_insert_values_in_insert_field_spec3441);
        	        insert_values705=insert_values(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinsert_field_specEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, insert_values705.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:681:4: SET_SYMBOL column_assignment_list_with_default
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SET_SYMBOL706 = (pANTLR3_COMMON_TOKEN) MATCHT(SET_SYMBOL, &FOLLOW_SET_SYMBOL_in_insert_field_spec3446);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinsert_field_specEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SET_SYMBOL706_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SET_SYMBOL706));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SET_SYMBOL706_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_column_assignment_list_with_default_in_insert_field_spec3448);
        	        column_assignment_list_with_default707=column_assignment_list_with_default(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinsert_field_specEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, column_assignment_list_with_default707.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleinsert_field_specEx; /* Prevent compiler warnings */
    ruleinsert_field_specEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end insert_field_spec */

/**
 * $ANTLR start fields
 * MySQL.g:684:1: fields : insert_identifier ( COMMA_SYMBOL insert_identifier )* ;
 */
static MySQLParser_fields_return
fields(pMySQLParser ctx)
{
    MySQLParser_fields_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL709;
    MySQLParser_insert_identifier_return insert_identifier708;
    #undef	RETURN_TYPE_insert_identifier708
    #define	RETURN_TYPE_insert_identifier708 MySQLParser_insert_identifier_return

    MySQLParser_insert_identifier_return insert_identifier710;
    #undef	RETURN_TYPE_insert_identifier710
    #define	RETURN_TYPE_insert_identifier710 MySQLParser_insert_identifier_return

    pANTLR3_BASE_TREE COMMA_SYMBOL709_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL709       = NULL;
    insert_identifier708.tree = NULL;

    insert_identifier710.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL709_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:684:7: ( insert_identifier ( COMMA_SYMBOL insert_identifier )* )
        // MySQL.g:685:2: insert_identifier ( COMMA_SYMBOL insert_identifier )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_insert_identifier_in_fields3457);
            insert_identifier708=insert_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulefieldsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, insert_identifier708.tree);

            // MySQL.g:685:20: ( COMMA_SYMBOL insert_identifier )*

            for (;;)
            {
                int alt232=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt232=1;
                	}
                    break;

                }

                switch (alt232)
                {
            	case 1:
            	    // MySQL.g:685:21: COMMA_SYMBOL insert_identifier
            	    {
            	        COMMA_SYMBOL709 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_fields3460);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefieldsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL709_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL709));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL709_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_insert_identifier_in_fields3462);
            	        insert_identifier710=insert_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefieldsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, insert_identifier710.tree);

            	    }
            	    break;

            	default:
            	    goto loop232;	/* break out of the loop */
            	    break;
                }
            }
            loop232: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto rulefieldsEx; /* Prevent compiler warnings */
    rulefieldsEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end fields */

/**
 * $ANTLR start insert_identifier
 * MySQL.g:688:1: insert_identifier : insert_identifier_ref -> ^( FIELD_REF_ID insert_identifier_ref ) ;
 */
static MySQLParser_insert_identifier_return
insert_identifier(pMySQLParser ctx)
{
    MySQLParser_insert_identifier_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_insert_identifier_ref_return insert_identifier_ref711;
    #undef	RETURN_TYPE_insert_identifier_ref711
    #define	RETURN_TYPE_insert_identifier_ref711 MySQLParser_insert_identifier_ref_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_insert_identifier_ref;
    /* Initialize rule variables
     */

    root_0 = NULL;

    insert_identifier_ref711.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;



    stream_insert_identifier_ref   = NULL;
    #define CREATE_stream_insert_identifier_ref  if (stream_insert_identifier_ref == NULL) {stream_insert_identifier_ref = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule insert_identifier_ref"); }

    retval.tree  = NULL;

    {
        // MySQL.g:688:18: ( insert_identifier_ref -> ^( FIELD_REF_ID insert_identifier_ref ) )
        // MySQL.g:689:2: insert_identifier_ref
        {
            FOLLOWPUSH(FOLLOW_insert_identifier_ref_in_insert_identifier3473);
            insert_identifier_ref711=insert_identifier_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleinsert_identifierEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_insert_identifier_ref; stream_insert_identifier_ref->add(stream_insert_identifier_ref, insert_identifier_ref711.tree, NULL); }

            /* AST REWRITE
             * elements          : insert_identifier_ref
             * token labels      : 
             * rule labels       : retval
             * token list labels : 
             * rule list labels  : 
             */
            if ( BACKTRACKING==0 ) 

            {
            	pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_retval;

            	stream_retval=antlr3RewriteRuleSubtreeStreamNewAEE(ADAPTOR,  RECOGNIZER, (pANTLR3_UINT8)"token retval", retval.tree != NULL ? retval.tree : NULL);

            	root_0			    = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
            	retval.tree    = root_0;
            	// 689:24: -> ^( FIELD_REF_ID insert_identifier_ref )
            	{
            	    // MySQL.g:689:27: ^( FIELD_REF_ID insert_identifier_ref )
            	    {
            	        pANTLR3_BASE_TREE root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
            	        root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, 
            	        (pANTLR3_BASE_TREE)ADAPTOR->createTypeText(ADAPTOR, FIELD_REF_ID, (pANTLR3_UINT8)"FIELD_REF_ID")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_insert_identifier_ref == NULL ? NULL : stream_insert_identifier_ref->nextTree(stream_insert_identifier_ref));

            	        ADAPTOR->addChild(ADAPTOR, root_0, root_1);
            	    }

            	}


            	retval.tree = root_0; // set result root
            	if (stream_retval != NULL) stream_retval->free(stream_retval);


            }
        }

    }

    // This is where rules clean up and exit
    //
    goto ruleinsert_identifierEx; /* Prevent compiler warnings */
    ruleinsert_identifierEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
        if (stream_insert_identifier_ref != NULL) stream_insert_identifier_ref->free(stream_insert_identifier_ref);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end insert_identifier */

/**
 * $ANTLR start insert_identifier_ref
 * MySQL.g:693:1: insert_identifier_ref : ( identifier DOT_SYMBOL ( identifier DOT_SYMBOL )? )? ( identifier | MULT_OPERATOR ) ;
 */
static MySQLParser_insert_identifier_ref_return
insert_identifier_ref(pMySQLParser ctx)
{
    MySQLParser_insert_identifier_ref_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    DOT_SYMBOL713;
    pANTLR3_COMMON_TOKEN    DOT_SYMBOL715;
    pANTLR3_COMMON_TOKEN    MULT_OPERATOR717;
    MySQLParser_identifier_return identifier712;
    #undef	RETURN_TYPE_identifier712
    #define	RETURN_TYPE_identifier712 MySQLParser_identifier_return

    MySQLParser_identifier_return identifier714;
    #undef	RETURN_TYPE_identifier714
    #define	RETURN_TYPE_identifier714 MySQLParser_identifier_return

    MySQLParser_identifier_return identifier716;
    #undef	RETURN_TYPE_identifier716
    #define	RETURN_TYPE_identifier716 MySQLParser_identifier_return

    pANTLR3_BASE_TREE DOT_SYMBOL713_tree;
    pANTLR3_BASE_TREE DOT_SYMBOL715_tree;
    pANTLR3_BASE_TREE MULT_OPERATOR717_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DOT_SYMBOL713       = NULL;
    DOT_SYMBOL715       = NULL;
    MULT_OPERATOR717       = NULL;
    identifier712.tree = NULL;

    identifier714.tree = NULL;

    identifier716.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DOT_SYMBOL713_tree   = NULL;
    DOT_SYMBOL715_tree   = NULL;
    MULT_OPERATOR717_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:693:22: ( ( identifier DOT_SYMBOL ( identifier DOT_SYMBOL )? )? ( identifier | MULT_OPERATOR ) )
        // MySQL.g:694:2: ( identifier DOT_SYMBOL ( identifier DOT_SYMBOL )? )? ( identifier | MULT_OPERATOR )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:694:2: ( identifier DOT_SYMBOL ( identifier DOT_SYMBOL )? )?
            {
                int alt234=2;
                {
                    int LA234_0 = LA(1);
                    if ( (LA234_0 == IDENTIFIER))
                    {
                        switch ( LA(2) )
                        {
                            case DOT_SYMBOL:
                            	{
                            		alt234=1;
                            	}
                                break;
                        }

                    }
                    else if ( (LA234_0 == BACK_TICK_QUOTED_ID))
                    {
                        switch ( LA(2) )
                        {
                            case DOT_SYMBOL:
                            	{
                            		alt234=1;
                            	}
                                break;
                        }

                    }
                    else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA234_0 == DOUBLE_QUOTED_TEXT))
                    {
                        {
                            int LA234_3 = LA(2);
                            if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA234_3 == DOT_SYMBOL))
                            {
                                alt234=1;
                            }
                        }
                    }
                    else if ( (((LA234_0 >= ACTION_SYMBOL) && (LA234_0 <= ADDDATE_SYMBOL)) || ((LA234_0 >= AFTER_SYMBOL) && (LA234_0 <= ALGORITHM_SYMBOL)) || LA234_0 == ANALYZE_SYMBOL || LA234_0 == ANY_SYMBOL || ((LA234_0 >= AT_SYMBOL) && (LA234_0 <= AVG_SYMBOL)) || LA234_0 == BINLOG_SYMBOL || LA234_0 == BIT_SYMBOL || ((LA234_0 >= BLOCK_SYMBOL) && (LA234_0 <= BOOL_SYMBOL)) || LA234_0 == BTREE_SYMBOL || LA234_0 == CASCADED_SYMBOL || ((LA234_0 >= CATALOG_NAME_SYMBOL) && (LA234_0 <= CHANGED_SYMBOL)) || ((LA234_0 >= CIPHER_SYMBOL) && (LA234_0 <= CLIENT_SYMBOL)) || ((LA234_0 >= COALESCE_SYMBOL) && (LA234_0 <= CODE_SYMBOL)) || LA234_0 == COLLATION_SYMBOL || ((LA234_0 >= COLUMNS_SYMBOL) && (LA234_0 <= COLUMN_NAME_SYMBOL)) || LA234_0 == COMMITTED_SYMBOL || ((LA234_0 >= COMPACT_SYMBOL) && (LA234_0 <= COMPRESSED_SYMBOL)) || LA234_0 == CONCURRENT_SYMBOL || ((LA234_0 >= CONNECTION_SYMBOL) && (LA234_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || LA234_0 == CONTEXT_SYMBOL || LA234_0 == CONTRIBUTORS_SYMBOL || LA234_0 == CPU_SYMBOL || LA234_0 == CUBE_SYMBOL || LA234_0 == CURRENT_SYMBOL || LA234_0 == CURSOR_NAME_SYMBOL || ((LA234_0 >= DATAFILE_SYMBOL) && (LA234_0 <= DATETIME_SYMBOL)) || LA234_0 == DATE_SYMBOL || LA234_0 == DAY_SYMBOL || LA234_0 == DEFAULT_AUTH_SYMBOL || LA234_0 == DEFINER_SYMBOL || LA234_0 == DELAY_KEY_WRITE_SYMBOL || LA234_0 == DES_KEY_FILE_SYMBOL || LA234_0 == DIAGNOSTICS_SYMBOL || ((LA234_0 >= DIRECTORY_SYMBOL) && (LA234_0 <= DISK_SYMBOL)) || ((LA234_0 >= DUMPFILE_SYMBOL) && (LA234_0 <= DYNAMIC_SYMBOL)) || LA234_0 == ENABLE_SYMBOL || LA234_0 == ENDS_SYMBOL || ((LA234_0 >= ENGINES_SYMBOL) && (LA234_0 <= ENUM_SYMBOL)) || ((LA234_0 >= ERRORS_SYMBOL) && (LA234_0 <= ERROR_SYMBOL)) || ((LA234_0 >= ESCAPE_SYMBOL) && (LA234_0 <= EVERY_SYMBOL)) || LA234_0 == EXPANSION_SYMBOL || LA234_0 == EXPORT_SYMBOL || ((LA234_0 >= EXTENDED_SYMBOL) && (LA234_0 <= EXTENT_SIZE_SYMBOL)) || ((LA234_0 >= FAST_SYMBOL) && (LA234_0 <= FAULTS_SYMBOL)) || ((LA234_0 >= FILE_SYMBOL) && (LA234_0 <= FIXED_SYMBOL)) || LA234_0 == FOUND_SYMBOL || LA234_0 == FULL_SYMBOL || ((LA234_0 >= FUNCTION_SYMBOL) && (LA234_0 <= GET_FORMAT_SYMBOL)) || ((LA234_0 >= GLOBAL_SYMBOL) && (LA234_0 <= GRANTS_SYMBOL)) || LA234_0 == HASH_SYMBOL || LA234_0 == HOSTS_SYMBOL || ((LA234_0 >= HOUR_SYMBOL) && (LA234_0 <= IDENTIFIED_SYMBOL)) || LA234_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA234_0 >= IMPORT_SYMBOL) && (LA234_0 <= INDEXES_SYMBOL)) || LA234_0 == INITIAL_SIZE_SYMBOL || LA234_0 == INNODB_SYMBOL || LA234_0 == INSERT_METHOD_SYMBOL || LA234_0 == INVOKER_SYMBOL || LA234_0 == IO_SYMBOL || ((LA234_0 >= IPC_SYMBOL) && (LA234_0 <= ISSUER_SYMBOL)) || LA234_0 == KEY_BLOCK_SIZE_SYMBOL || LA234_0 == LAST_SYMBOL || LA234_0 == LEAVES_SYMBOL || LA234_0 == LESS_SYMBOL || LA234_0 == LEVEL_SYMBOL || LA234_0 == LINESTRING_SYMBOL || LA234_0 == LIST_SYMBOL || LA234_0 == LOCAL_SYMBOL || LA234_0 == LOCKS_SYMBOL || LA234_0 == LOGFILE_SYMBOL || LA234_0 == LOGS_SYMBOL || LA234_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA234_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA234_0 <= MASTER_SSL_SYMBOL)) || ((LA234_0 >= MASTER_SYMBOL) && (LA234_0 <= MASTER_USER_SYMBOL)) || ((LA234_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA234_0 <= MAX_SIZE_SYMBOL)) || ((LA234_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA234_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA234_0 >= MEDIUM_SYMBOL) && (LA234_0 <= MICROSECOND_SYMBOL)) || LA234_0 == MIGRATE_SYMBOL || ((LA234_0 >= MINUTE_SYMBOL) && (LA234_0 <= MIN_ROWS_SYMBOL)) || LA234_0 == MODE_SYMBOL || LA234_0 == MODIFY_SYMBOL || ((LA234_0 >= MONTH_SYMBOL) && (LA234_0 <= MULTILINESTRING_SYMBOL)) || ((LA234_0 >= MULTIPOINT_SYMBOL) && (LA234_0 <= MULTIPOLYGON_SYMBOL)) || ((LA234_0 >= MUTEX_SYMBOL) && (LA234_0 <= NATIONAL_SYMBOL)) || LA234_0 == NCHAR_SYMBOL || LA234_0 == NDBCLUSTER_SYMBOL || ((LA234_0 >= NEW_SYMBOL) && (LA234_0 <= NONE_SYMBOL)) || LA234_0 == NO_WAIT_SYMBOL || LA234_0 == NUMBER_SYMBOL || LA234_0 == NVARCHAR_SYMBOL || ((LA234_0 >= OFFSET_SYMBOL) && (LA234_0 <= ONE_SYMBOL)) || ((LA234_0 >= PACK_KEYS_SYMBOL) && (LA234_0 <= PAGE_SYMBOL)) || ((LA234_0 >= PARTIAL_SYMBOL) && (LA234_0 <= PARTITIONS_SYMBOL)) || ((LA234_0 >= PASSWORD_SYMBOL) && (LA234_0 <= PLUGIN_SYMBOL)) || ((LA234_0 >= POINT_SYMBOL) && (LA234_0 <= POLYGON_SYMBOL)) || ((LA234_0 >= PRESERVE_SYMBOL) && (LA234_0 <= PREV_SYMBOL)) || LA234_0 == PRIVILEGES_SYMBOL || ((LA234_0 >= PROCESSLIST_SYMBOL) && (LA234_0 <= PROXY_SYMBOL)) || ((LA234_0 >= QUARTER_SYMBOL) && (LA234_0 <= QUICK_SYMBOL)) || LA234_0 == READ_ONLY_SYMBOL || ((LA234_0 >= REBUILD_SYMBOL) && (LA234_0 <= REDUNDANT_SYMBOL)) || ((LA234_0 >= RELAYLOG_SYMBOL) && (LA234_0 <= RELAY_THREAD_SYMBOL)) || LA234_0 == RELOAD_SYMBOL || LA234_0 == REORGANIZE_SYMBOL || LA234_0 == REPEATABLE_SYMBOL || LA234_0 == REPLICATION_SYMBOL || ((LA234_0 >= RESUME_SYMBOL) && (LA234_0 <= RETURNS_SYMBOL)) || LA234_0 == REVERSE_SYMBOL || ((LA234_0 >= ROLLUP_SYMBOL) && (LA234_0 <= RTREE_SYMBOL)) || LA234_0 == SCHEDULE_SYMBOL || LA234_0 == SCHEMA_NAME_SYMBOL || LA234_0 == SECOND_SYMBOL || ((LA234_0 >= SERIALIZABLE_SYMBOL) && (LA234_0 <= SERIAL_SYMBOL)) || LA234_0 == SESSION_SYMBOL || LA234_0 == SHARE_SYMBOL || LA234_0 == SHUTDOWN_SYMBOL || LA234_0 == SIMPLE_SYMBOL || LA234_0 == SLOW_SYMBOL || LA234_0 == SNAPSHOT_SYMBOL || ((LA234_0 >= SOUNDS_SYMBOL) && (LA234_0 <= SOURCE_SYMBOL)) || ((LA234_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA234_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA234_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA234_0 <= SQL_CACHE_SYMBOL)) || LA234_0 == SQL_NO_CACHE_SYMBOL || LA234_0 == SQL_THREAD_SYMBOL || LA234_0 == STARTS_SYMBOL || ((LA234_0 >= STATS_AUTO_RECALC_SYMBOL) && (LA234_0 <= STATUS_SYMBOL)) || LA234_0 == STORAGE_SYMBOL || ((LA234_0 >= STRING_SYMBOL) && (LA234_0 <= SUBPARTITION_SYMBOL)) || ((LA234_0 >= SUPER_SYMBOL) && (LA234_0 <= SWITCHES_SYMBOL)) || ((LA234_0 >= TABLESPACE_SYMBOL) && (LA234_0 <= TABLE_NAME_SYMBOL)) || ((LA234_0 >= TEMPORARY_SYMBOL) && (LA234_0 <= TEMPTABLE_SYMBOL)) || ((LA234_0 >= TEXT_SYMBOL) && (LA234_0 <= THAN_SYMBOL)) || ((LA234_0 >= TIMESTAMP_ADD_SYMBOL) && (LA234_0 <= TIME_SYMBOL)) || ((LA234_0 >= TRANSACTION_SYMBOL) && (LA234_0 <= TRIGGERS_SYMBOL)) || ((LA234_0 >= TYPES_SYMBOL) && (LA234_0 <= UDF_RETURNS_SYMBOL)) || ((LA234_0 >= UNCOMMITTED_SYMBOL) && (LA234_0 <= UNDEFINED_SYMBOL)) || ((LA234_0 >= UNDOFILE_SYMBOL) && (LA234_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || LA234_0 == UNKNOWN_SYMBOL || LA234_0 == UNTIL_SYMBOL || ((LA234_0 >= USER_RESOURCES_SYMBOL) && (LA234_0 <= USE_FRM_SYMBOL)) || LA234_0 == VALUE_SYMBOL || LA234_0 == VARIABLES_SYMBOL || ((LA234_0 >= VIEW_SYMBOL) && (LA234_0 <= WEIGHT_STRING_SYMBOL)) || LA234_0 == WORK_SYMBOL || LA234_0 == X509_SYMBOL || LA234_0 == XML_SYMBOL || LA234_0 == YEAR_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                            case DOT_SYMBOL:
                            	{
                            		alt234=1;
                            	}
                                break;
                        }

                    }
                    else if ( (LA234_0 == ASCII_SYMBOL || LA234_0 == BACKUP_SYMBOL || LA234_0 == BEGIN_SYMBOL || LA234_0 == BYTE_SYMBOL || LA234_0 == CACHE_SYMBOL || LA234_0 == CHARSET_SYMBOL || LA234_0 == CHECKSUM_SYMBOL || LA234_0 == CLOSE_SYMBOL || LA234_0 == COMMENT_SYMBOL || LA234_0 == COMMIT_SYMBOL || LA234_0 == CONTAINS_SYMBOL || LA234_0 == DEALLOCATE_SYMBOL || LA234_0 == DO_SYMBOL || LA234_0 == END_SYMBOL || LA234_0 == EXECUTE_SYMBOL || LA234_0 == FLUSH_SYMBOL || LA234_0 == FORMAT_SYMBOL || LA234_0 == HANDLER_SYMBOL || LA234_0 == HELP_SYMBOL || LA234_0 == HOST_SYMBOL || LA234_0 == INSTALL_SYMBOL || LA234_0 == LANGUAGE_SYMBOL || LA234_0 == NO_SYMBOL || LA234_0 == OPEN_SYMBOL || LA234_0 == OPTIONS_SYMBOL || LA234_0 == OWNER_SYMBOL || LA234_0 == PARSER_SYMBOL || LA234_0 == PARTITION_SYMBOL || LA234_0 == PORT_SYMBOL || LA234_0 == PREPARE_SYMBOL || LA234_0 == REMOVE_SYMBOL || LA234_0 == REPAIR_SYMBOL || LA234_0 == RESET_SYMBOL || LA234_0 == RESTORE_SYMBOL || LA234_0 == ROLLBACK_SYMBOL || LA234_0 == SAVEPOINT_SYMBOL || LA234_0 == SECURITY_SYMBOL || LA234_0 == SERVER_SYMBOL || LA234_0 == SIGNED_SYMBOL || LA234_0 == SLAVE_SYMBOL || ((LA234_0 >= SOCKET_SYMBOL) && (LA234_0 <= SONAME_SYMBOL)) || LA234_0 == START_SYMBOL || LA234_0 == STOP_SYMBOL || LA234_0 == TRUNCATE_SYMBOL || ((LA234_0 >= UNICODE_SYMBOL) && (LA234_0 <= UNINSTALL_SYMBOL)) || LA234_0 == UPGRADE_SYMBOL || LA234_0 == WRAPPER_SYMBOL || LA234_0 == XA_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                            case DOT_SYMBOL:
                            	{
                            		alt234=1;
                            	}
                                break;
                        }

                    }
                }
                switch (alt234)
                {
            	case 1:
            	    // MySQL.g:694:3: identifier DOT_SYMBOL ( identifier DOT_SYMBOL )?
            	    {
            	        FOLLOWPUSH(FOLLOW_identifier_in_insert_identifier_ref3492);
            	        identifier712=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinsert_identifier_refEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier712.tree);

            	        DOT_SYMBOL713 = (pANTLR3_COMMON_TOKEN) MATCHT(DOT_SYMBOL, &FOLLOW_DOT_SYMBOL_in_insert_identifier_ref3494);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinsert_identifier_refEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DOT_SYMBOL713_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOT_SYMBOL713));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DOT_SYMBOL713_tree);
            	        }

            	        // MySQL.g:694:25: ( identifier DOT_SYMBOL )?
            	        {
            	            int alt233=2;
            	            {
            	                int LA233_0 = LA(1);
            	                if ( (LA233_0 == IDENTIFIER))
            	                {
            	                    switch ( LA(2) )
            	                    {
            	                        case DOT_SYMBOL:
            	                        	{
            	                        		alt233=1;
            	                        	}
            	                            break;
            	                    }

            	                }
            	                else if ( (LA233_0 == BACK_TICK_QUOTED_ID))
            	                {
            	                    switch ( LA(2) )
            	                    {
            	                        case DOT_SYMBOL:
            	                        	{
            	                        		alt233=1;
            	                        	}
            	                            break;
            	                    }

            	                }
            	                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA233_0 == DOUBLE_QUOTED_TEXT))
            	                {
            	                    {
            	                        int LA233_3 = LA(2);
            	                        if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA233_3 == DOT_SYMBOL))
            	                        {
            	                            alt233=1;
            	                        }
            	                    }
            	                }
            	                else if ( (((LA233_0 >= ACTION_SYMBOL) && (LA233_0 <= ADDDATE_SYMBOL)) || ((LA233_0 >= AFTER_SYMBOL) && (LA233_0 <= ALGORITHM_SYMBOL)) || LA233_0 == ANALYZE_SYMBOL || LA233_0 == ANY_SYMBOL || ((LA233_0 >= AT_SYMBOL) && (LA233_0 <= AVG_SYMBOL)) || LA233_0 == BINLOG_SYMBOL || LA233_0 == BIT_SYMBOL || ((LA233_0 >= BLOCK_SYMBOL) && (LA233_0 <= BOOL_SYMBOL)) || LA233_0 == BTREE_SYMBOL || LA233_0 == CASCADED_SYMBOL || ((LA233_0 >= CATALOG_NAME_SYMBOL) && (LA233_0 <= CHANGED_SYMBOL)) || ((LA233_0 >= CIPHER_SYMBOL) && (LA233_0 <= CLIENT_SYMBOL)) || ((LA233_0 >= COALESCE_SYMBOL) && (LA233_0 <= CODE_SYMBOL)) || LA233_0 == COLLATION_SYMBOL || ((LA233_0 >= COLUMNS_SYMBOL) && (LA233_0 <= COLUMN_NAME_SYMBOL)) || LA233_0 == COMMITTED_SYMBOL || ((LA233_0 >= COMPACT_SYMBOL) && (LA233_0 <= COMPRESSED_SYMBOL)) || LA233_0 == CONCURRENT_SYMBOL || ((LA233_0 >= CONNECTION_SYMBOL) && (LA233_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || LA233_0 == CONTEXT_SYMBOL || LA233_0 == CONTRIBUTORS_SYMBOL || LA233_0 == CPU_SYMBOL || LA233_0 == CUBE_SYMBOL || LA233_0 == CURRENT_SYMBOL || LA233_0 == CURSOR_NAME_SYMBOL || ((LA233_0 >= DATAFILE_SYMBOL) && (LA233_0 <= DATETIME_SYMBOL)) || LA233_0 == DATE_SYMBOL || LA233_0 == DAY_SYMBOL || LA233_0 == DEFAULT_AUTH_SYMBOL || LA233_0 == DEFINER_SYMBOL || LA233_0 == DELAY_KEY_WRITE_SYMBOL || LA233_0 == DES_KEY_FILE_SYMBOL || LA233_0 == DIAGNOSTICS_SYMBOL || ((LA233_0 >= DIRECTORY_SYMBOL) && (LA233_0 <= DISK_SYMBOL)) || ((LA233_0 >= DUMPFILE_SYMBOL) && (LA233_0 <= DYNAMIC_SYMBOL)) || LA233_0 == ENABLE_SYMBOL || LA233_0 == ENDS_SYMBOL || ((LA233_0 >= ENGINES_SYMBOL) && (LA233_0 <= ENUM_SYMBOL)) || ((LA233_0 >= ERRORS_SYMBOL) && (LA233_0 <= ERROR_SYMBOL)) || ((LA233_0 >= ESCAPE_SYMBOL) && (LA233_0 <= EVERY_SYMBOL)) || LA233_0 == EXPANSION_SYMBOL || LA233_0 == EXPORT_SYMBOL || ((LA233_0 >= EXTENDED_SYMBOL) && (LA233_0 <= EXTENT_SIZE_SYMBOL)) || ((LA233_0 >= FAST_SYMBOL) && (LA233_0 <= FAULTS_SYMBOL)) || ((LA233_0 >= FILE_SYMBOL) && (LA233_0 <= FIXED_SYMBOL)) || LA233_0 == FOUND_SYMBOL || LA233_0 == FULL_SYMBOL || ((LA233_0 >= FUNCTION_SYMBOL) && (LA233_0 <= GET_FORMAT_SYMBOL)) || ((LA233_0 >= GLOBAL_SYMBOL) && (LA233_0 <= GRANTS_SYMBOL)) || LA233_0 == HASH_SYMBOL || LA233_0 == HOSTS_SYMBOL || ((LA233_0 >= HOUR_SYMBOL) && (LA233_0 <= IDENTIFIED_SYMBOL)) || LA233_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA233_0 >= IMPORT_SYMBOL) && (LA233_0 <= INDEXES_SYMBOL)) || LA233_0 == INITIAL_SIZE_SYMBOL || LA233_0 == INNODB_SYMBOL || LA233_0 == INSERT_METHOD_SYMBOL || LA233_0 == INVOKER_SYMBOL || LA233_0 == IO_SYMBOL || ((LA233_0 >= IPC_SYMBOL) && (LA233_0 <= ISSUER_SYMBOL)) || LA233_0 == KEY_BLOCK_SIZE_SYMBOL || LA233_0 == LAST_SYMBOL || LA233_0 == LEAVES_SYMBOL || LA233_0 == LESS_SYMBOL || LA233_0 == LEVEL_SYMBOL || LA233_0 == LINESTRING_SYMBOL || LA233_0 == LIST_SYMBOL || LA233_0 == LOCAL_SYMBOL || LA233_0 == LOCKS_SYMBOL || LA233_0 == LOGFILE_SYMBOL || LA233_0 == LOGS_SYMBOL || LA233_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA233_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA233_0 <= MASTER_SSL_SYMBOL)) || ((LA233_0 >= MASTER_SYMBOL) && (LA233_0 <= MASTER_USER_SYMBOL)) || ((LA233_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA233_0 <= MAX_SIZE_SYMBOL)) || ((LA233_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA233_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA233_0 >= MEDIUM_SYMBOL) && (LA233_0 <= MICROSECOND_SYMBOL)) || LA233_0 == MIGRATE_SYMBOL || ((LA233_0 >= MINUTE_SYMBOL) && (LA233_0 <= MIN_ROWS_SYMBOL)) || LA233_0 == MODE_SYMBOL || LA233_0 == MODIFY_SYMBOL || ((LA233_0 >= MONTH_SYMBOL) && (LA233_0 <= MULTILINESTRING_SYMBOL)) || ((LA233_0 >= MULTIPOINT_SYMBOL) && (LA233_0 <= MULTIPOLYGON_SYMBOL)) || ((LA233_0 >= MUTEX_SYMBOL) && (LA233_0 <= NATIONAL_SYMBOL)) || LA233_0 == NCHAR_SYMBOL || LA233_0 == NDBCLUSTER_SYMBOL || ((LA233_0 >= NEW_SYMBOL) && (LA233_0 <= NONE_SYMBOL)) || LA233_0 == NO_WAIT_SYMBOL || LA233_0 == NUMBER_SYMBOL || LA233_0 == NVARCHAR_SYMBOL || ((LA233_0 >= OFFSET_SYMBOL) && (LA233_0 <= ONE_SYMBOL)) || ((LA233_0 >= PACK_KEYS_SYMBOL) && (LA233_0 <= PAGE_SYMBOL)) || ((LA233_0 >= PARTIAL_SYMBOL) && (LA233_0 <= PARTITIONS_SYMBOL)) || ((LA233_0 >= PASSWORD_SYMBOL) && (LA233_0 <= PLUGIN_SYMBOL)) || ((LA233_0 >= POINT_SYMBOL) && (LA233_0 <= POLYGON_SYMBOL)) || ((LA233_0 >= PRESERVE_SYMBOL) && (LA233_0 <= PREV_SYMBOL)) || LA233_0 == PRIVILEGES_SYMBOL || ((LA233_0 >= PROCESSLIST_SYMBOL) && (LA233_0 <= PROXY_SYMBOL)) || ((LA233_0 >= QUARTER_SYMBOL) && (LA233_0 <= QUICK_SYMBOL)) || LA233_0 == READ_ONLY_SYMBOL || ((LA233_0 >= REBUILD_SYMBOL) && (LA233_0 <= REDUNDANT_SYMBOL)) || ((LA233_0 >= RELAYLOG_SYMBOL) && (LA233_0 <= RELAY_THREAD_SYMBOL)) || LA233_0 == RELOAD_SYMBOL || LA233_0 == REORGANIZE_SYMBOL || LA233_0 == REPEATABLE_SYMBOL || LA233_0 == REPLICATION_SYMBOL || ((LA233_0 >= RESUME_SYMBOL) && (LA233_0 <= RETURNS_SYMBOL)) || LA233_0 == REVERSE_SYMBOL || ((LA233_0 >= ROLLUP_SYMBOL) && (LA233_0 <= RTREE_SYMBOL)) || LA233_0 == SCHEDULE_SYMBOL || LA233_0 == SCHEMA_NAME_SYMBOL || LA233_0 == SECOND_SYMBOL || ((LA233_0 >= SERIALIZABLE_SYMBOL) && (LA233_0 <= SERIAL_SYMBOL)) || LA233_0 == SESSION_SYMBOL || LA233_0 == SHARE_SYMBOL || LA233_0 == SHUTDOWN_SYMBOL || LA233_0 == SIMPLE_SYMBOL || LA233_0 == SLOW_SYMBOL || LA233_0 == SNAPSHOT_SYMBOL || ((LA233_0 >= SOUNDS_SYMBOL) && (LA233_0 <= SOURCE_SYMBOL)) || ((LA233_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA233_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA233_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA233_0 <= SQL_CACHE_SYMBOL)) || LA233_0 == SQL_NO_CACHE_SYMBOL || LA233_0 == SQL_THREAD_SYMBOL || LA233_0 == STARTS_SYMBOL || ((LA233_0 >= STATS_AUTO_RECALC_SYMBOL) && (LA233_0 <= STATUS_SYMBOL)) || LA233_0 == STORAGE_SYMBOL || ((LA233_0 >= STRING_SYMBOL) && (LA233_0 <= SUBPARTITION_SYMBOL)) || ((LA233_0 >= SUPER_SYMBOL) && (LA233_0 <= SWITCHES_SYMBOL)) || ((LA233_0 >= TABLESPACE_SYMBOL) && (LA233_0 <= TABLE_NAME_SYMBOL)) || ((LA233_0 >= TEMPORARY_SYMBOL) && (LA233_0 <= TEMPTABLE_SYMBOL)) || ((LA233_0 >= TEXT_SYMBOL) && (LA233_0 <= THAN_SYMBOL)) || ((LA233_0 >= TIMESTAMP_ADD_SYMBOL) && (LA233_0 <= TIME_SYMBOL)) || ((LA233_0 >= TRANSACTION_SYMBOL) && (LA233_0 <= TRIGGERS_SYMBOL)) || ((LA233_0 >= TYPES_SYMBOL) && (LA233_0 <= UDF_RETURNS_SYMBOL)) || ((LA233_0 >= UNCOMMITTED_SYMBOL) && (LA233_0 <= UNDEFINED_SYMBOL)) || ((LA233_0 >= UNDOFILE_SYMBOL) && (LA233_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || LA233_0 == UNKNOWN_SYMBOL || LA233_0 == UNTIL_SYMBOL || ((LA233_0 >= USER_RESOURCES_SYMBOL) && (LA233_0 <= USE_FRM_SYMBOL)) || LA233_0 == VALUE_SYMBOL || LA233_0 == VARIABLES_SYMBOL || ((LA233_0 >= VIEW_SYMBOL) && (LA233_0 <= WEIGHT_STRING_SYMBOL)) || LA233_0 == WORK_SYMBOL || LA233_0 == X509_SYMBOL || LA233_0 == XML_SYMBOL || LA233_0 == YEAR_SYMBOL))
            	                {
            	                    switch ( LA(2) )
            	                    {
            	                        case DOT_SYMBOL:
            	                        	{
            	                        		alt233=1;
            	                        	}
            	                            break;
            	                    }

            	                }
            	                else if ( (LA233_0 == ASCII_SYMBOL || LA233_0 == BACKUP_SYMBOL || LA233_0 == BEGIN_SYMBOL || LA233_0 == BYTE_SYMBOL || LA233_0 == CACHE_SYMBOL || LA233_0 == CHARSET_SYMBOL || LA233_0 == CHECKSUM_SYMBOL || LA233_0 == CLOSE_SYMBOL || LA233_0 == COMMENT_SYMBOL || LA233_0 == COMMIT_SYMBOL || LA233_0 == CONTAINS_SYMBOL || LA233_0 == DEALLOCATE_SYMBOL || LA233_0 == DO_SYMBOL || LA233_0 == END_SYMBOL || LA233_0 == EXECUTE_SYMBOL || LA233_0 == FLUSH_SYMBOL || LA233_0 == FORMAT_SYMBOL || LA233_0 == HANDLER_SYMBOL || LA233_0 == HELP_SYMBOL || LA233_0 == HOST_SYMBOL || LA233_0 == INSTALL_SYMBOL || LA233_0 == LANGUAGE_SYMBOL || LA233_0 == NO_SYMBOL || LA233_0 == OPEN_SYMBOL || LA233_0 == OPTIONS_SYMBOL || LA233_0 == OWNER_SYMBOL || LA233_0 == PARSER_SYMBOL || LA233_0 == PARTITION_SYMBOL || LA233_0 == PORT_SYMBOL || LA233_0 == PREPARE_SYMBOL || LA233_0 == REMOVE_SYMBOL || LA233_0 == REPAIR_SYMBOL || LA233_0 == RESET_SYMBOL || LA233_0 == RESTORE_SYMBOL || LA233_0 == ROLLBACK_SYMBOL || LA233_0 == SAVEPOINT_SYMBOL || LA233_0 == SECURITY_SYMBOL || LA233_0 == SERVER_SYMBOL || LA233_0 == SIGNED_SYMBOL || LA233_0 == SLAVE_SYMBOL || ((LA233_0 >= SOCKET_SYMBOL) && (LA233_0 <= SONAME_SYMBOL)) || LA233_0 == START_SYMBOL || LA233_0 == STOP_SYMBOL || LA233_0 == TRUNCATE_SYMBOL || ((LA233_0 >= UNICODE_SYMBOL) && (LA233_0 <= UNINSTALL_SYMBOL)) || LA233_0 == UPGRADE_SYMBOL || LA233_0 == WRAPPER_SYMBOL || LA233_0 == XA_SYMBOL))
            	                {
            	                    switch ( LA(2) )
            	                    {
            	                        case DOT_SYMBOL:
            	                        	{
            	                        		alt233=1;
            	                        	}
            	                            break;
            	                    }

            	                }
            	            }
            	            switch (alt233)
            	            {
            	        	case 1:
            	        	    // MySQL.g:694:26: identifier DOT_SYMBOL
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_identifier_in_insert_identifier_ref3497);
            	        	        identifier714=identifier(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleinsert_identifier_refEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier714.tree);

            	        	        DOT_SYMBOL715 = (pANTLR3_COMMON_TOKEN) MATCHT(DOT_SYMBOL, &FOLLOW_DOT_SYMBOL_in_insert_identifier_ref3499);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleinsert_identifier_refEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        DOT_SYMBOL715_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOT_SYMBOL715));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, DOT_SYMBOL715_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:694:52: ( identifier | MULT_OPERATOR )
            {
                int alt235=2;
                {
                    int LA235_0 = LA(1);
                    if ( (LA235_0 == BACK_TICK_QUOTED_ID || LA235_0 == IDENTIFIER))
                    {
                        alt235=1;
                    }
                    else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA235_0 == DOUBLE_QUOTED_TEXT))
                    {
                        alt235=1;
                    }
                    else if ( (((LA235_0 >= ACTION_SYMBOL) && (LA235_0 <= ADDDATE_SYMBOL)) || ((LA235_0 >= AFTER_SYMBOL) && (LA235_0 <= ALGORITHM_SYMBOL)) || LA235_0 == ANALYZE_SYMBOL || ((LA235_0 >= ANY_SYMBOL) && (LA235_0 <= ASCII_SYMBOL)) || ((LA235_0 >= AT_SYMBOL) && (LA235_0 <= BACKUP_SYMBOL)) || LA235_0 == BEGIN_SYMBOL || LA235_0 == BINLOG_SYMBOL || LA235_0 == BIT_SYMBOL || ((LA235_0 >= BLOCK_SYMBOL) && (LA235_0 <= BOOL_SYMBOL)) || ((LA235_0 >= BTREE_SYMBOL) && (LA235_0 <= BYTE_SYMBOL)) || LA235_0 == CACHE_SYMBOL || LA235_0 == CASCADED_SYMBOL || ((LA235_0 >= CATALOG_NAME_SYMBOL) && (LA235_0 <= CHANGED_SYMBOL)) || LA235_0 == CHARSET_SYMBOL || LA235_0 == CHECKSUM_SYMBOL || ((LA235_0 >= CIPHER_SYMBOL) && (LA235_0 <= CLIENT_SYMBOL)) || ((LA235_0 >= CLOSE_SYMBOL) && (LA235_0 <= CODE_SYMBOL)) || LA235_0 == COLLATION_SYMBOL || ((LA235_0 >= COLUMNS_SYMBOL) && (LA235_0 <= COLUMN_NAME_SYMBOL)) || ((LA235_0 >= COMMENT_SYMBOL) && (LA235_0 <= COMPRESSED_SYMBOL)) || LA235_0 == CONCURRENT_SYMBOL || ((LA235_0 >= CONNECTION_SYMBOL) && (LA235_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA235_0 >= CONTAINS_SYMBOL) && (LA235_0 <= CONTEXT_SYMBOL)) || LA235_0 == CONTRIBUTORS_SYMBOL || LA235_0 == CPU_SYMBOL || LA235_0 == CUBE_SYMBOL || LA235_0 == CURRENT_SYMBOL || LA235_0 == CURSOR_NAME_SYMBOL || ((LA235_0 >= DATAFILE_SYMBOL) && (LA235_0 <= DATETIME_SYMBOL)) || LA235_0 == DATE_SYMBOL || ((LA235_0 >= DAY_SYMBOL) && (LA235_0 <= DEALLOCATE_SYMBOL)) || LA235_0 == DEFAULT_AUTH_SYMBOL || LA235_0 == DEFINER_SYMBOL || LA235_0 == DELAY_KEY_WRITE_SYMBOL || LA235_0 == DES_KEY_FILE_SYMBOL || LA235_0 == DIAGNOSTICS_SYMBOL || ((LA235_0 >= DIRECTORY_SYMBOL) && (LA235_0 <= DISK_SYMBOL)) || LA235_0 == DO_SYMBOL || ((LA235_0 >= DUMPFILE_SYMBOL) && (LA235_0 <= DYNAMIC_SYMBOL)) || LA235_0 == ENABLE_SYMBOL || LA235_0 == ENDS_SYMBOL || ((LA235_0 >= END_SYMBOL) && (LA235_0 <= ENUM_SYMBOL)) || ((LA235_0 >= ERRORS_SYMBOL) && (LA235_0 <= ERROR_SYMBOL)) || ((LA235_0 >= ESCAPE_SYMBOL) && (LA235_0 <= EVERY_SYMBOL)) || LA235_0 == EXECUTE_SYMBOL || LA235_0 == EXPANSION_SYMBOL || LA235_0 == EXPORT_SYMBOL || ((LA235_0 >= EXTENDED_SYMBOL) && (LA235_0 <= EXTENT_SIZE_SYMBOL)) || ((LA235_0 >= FAST_SYMBOL) && (LA235_0 <= FAULTS_SYMBOL)) || ((LA235_0 >= FILE_SYMBOL) && (LA235_0 <= FIXED_SYMBOL)) || LA235_0 == FLUSH_SYMBOL || LA235_0 == FORMAT_SYMBOL || LA235_0 == FOUND_SYMBOL || LA235_0 == FULL_SYMBOL || ((LA235_0 >= FUNCTION_SYMBOL) && (LA235_0 <= GET_FORMAT_SYMBOL)) || ((LA235_0 >= GLOBAL_SYMBOL) && (LA235_0 <= GRANTS_SYMBOL)) || ((LA235_0 >= HANDLER_SYMBOL) && (LA235_0 <= HASH_SYMBOL)) || LA235_0 == HELP_SYMBOL || ((LA235_0 >= HOSTS_SYMBOL) && (LA235_0 <= HOST_SYMBOL)) || ((LA235_0 >= HOUR_SYMBOL) && (LA235_0 <= IDENTIFIED_SYMBOL)) || LA235_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA235_0 >= IMPORT_SYMBOL) && (LA235_0 <= INDEXES_SYMBOL)) || LA235_0 == INITIAL_SIZE_SYMBOL || LA235_0 == INNODB_SYMBOL || LA235_0 == INSERT_METHOD_SYMBOL || LA235_0 == INSTALL_SYMBOL || LA235_0 == INVOKER_SYMBOL || LA235_0 == IO_SYMBOL || ((LA235_0 >= IPC_SYMBOL) && (LA235_0 <= ISSUER_SYMBOL)) || LA235_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA235_0 >= LANGUAGE_SYMBOL) && (LA235_0 <= LAST_SYMBOL)) || LA235_0 == LEAVES_SYMBOL || LA235_0 == LESS_SYMBOL || LA235_0 == LEVEL_SYMBOL || LA235_0 == LINESTRING_SYMBOL || LA235_0 == LIST_SYMBOL || LA235_0 == LOCAL_SYMBOL || LA235_0 == LOCKS_SYMBOL || LA235_0 == LOGFILE_SYMBOL || LA235_0 == LOGS_SYMBOL || LA235_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA235_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA235_0 <= MASTER_SSL_SYMBOL)) || ((LA235_0 >= MASTER_SYMBOL) && (LA235_0 <= MASTER_USER_SYMBOL)) || ((LA235_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA235_0 <= MAX_SIZE_SYMBOL)) || ((LA235_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA235_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA235_0 >= MEDIUM_SYMBOL) && (LA235_0 <= MICROSECOND_SYMBOL)) || LA235_0 == MIGRATE_SYMBOL || ((LA235_0 >= MINUTE_SYMBOL) && (LA235_0 <= MIN_ROWS_SYMBOL)) || LA235_0 == MODE_SYMBOL || LA235_0 == MODIFY_SYMBOL || ((LA235_0 >= MONTH_SYMBOL) && (LA235_0 <= MULTILINESTRING_SYMBOL)) || ((LA235_0 >= MULTIPOINT_SYMBOL) && (LA235_0 <= MULTIPOLYGON_SYMBOL)) || ((LA235_0 >= MUTEX_SYMBOL) && (LA235_0 <= NATIONAL_SYMBOL)) || LA235_0 == NCHAR_SYMBOL || LA235_0 == NDBCLUSTER_SYMBOL || ((LA235_0 >= NEW_SYMBOL) && (LA235_0 <= NONE_SYMBOL)) || ((LA235_0 >= NO_SYMBOL) && (LA235_0 <= NO_WAIT_SYMBOL)) || LA235_0 == NUMBER_SYMBOL || LA235_0 == NVARCHAR_SYMBOL || ((LA235_0 >= OFFSET_SYMBOL) && (LA235_0 <= ONE_SYMBOL)) || LA235_0 == OPEN_SYMBOL || LA235_0 == OPTIONS_SYMBOL || ((LA235_0 >= OWNER_SYMBOL) && (LA235_0 <= PAGE_SYMBOL)) || ((LA235_0 >= PARSER_SYMBOL) && (LA235_0 <= PARTITION_SYMBOL)) || ((LA235_0 >= PASSWORD_SYMBOL) && (LA235_0 <= PLUGIN_SYMBOL)) || ((LA235_0 >= POINT_SYMBOL) && (LA235_0 <= PORT_SYMBOL)) || ((LA235_0 >= PREPARE_SYMBOL) && (LA235_0 <= PREV_SYMBOL)) || LA235_0 == PRIVILEGES_SYMBOL || ((LA235_0 >= PROCESSLIST_SYMBOL) && (LA235_0 <= PROXY_SYMBOL)) || ((LA235_0 >= QUARTER_SYMBOL) && (LA235_0 <= QUICK_SYMBOL)) || LA235_0 == READ_ONLY_SYMBOL || ((LA235_0 >= REBUILD_SYMBOL) && (LA235_0 <= REDUNDANT_SYMBOL)) || ((LA235_0 >= RELAYLOG_SYMBOL) && (LA235_0 <= RELAY_THREAD_SYMBOL)) || ((LA235_0 >= RELOAD_SYMBOL) && (LA235_0 <= REMOVE_SYMBOL)) || ((LA235_0 >= REORGANIZE_SYMBOL) && (LA235_0 <= REPEATABLE_SYMBOL)) || LA235_0 == REPLICATION_SYMBOL || LA235_0 == RESET_SYMBOL || LA235_0 == RESTORE_SYMBOL || ((LA235_0 >= RESUME_SYMBOL) && (LA235_0 <= RETURNS_SYMBOL)) || LA235_0 == REVERSE_SYMBOL || ((LA235_0 >= ROLLBACK_SYMBOL) && (LA235_0 <= SCHEDULE_SYMBOL)) || LA235_0 == SCHEMA_NAME_SYMBOL || ((LA235_0 >= SECOND_SYMBOL) && (LA235_0 <= SECURITY_SYMBOL)) || ((LA235_0 >= SERIALIZABLE_SYMBOL) && (LA235_0 <= SERIAL_SYMBOL)) || ((LA235_0 >= SERVER_SYMBOL) && (LA235_0 <= SESSION_SYMBOL)) || LA235_0 == SHARE_SYMBOL || LA235_0 == SHUTDOWN_SYMBOL || ((LA235_0 >= SIGNED_SYMBOL) && (LA235_0 <= SIMPLE_SYMBOL)) || ((LA235_0 >= SLAVE_SYMBOL) && (LA235_0 <= SLOW_SYMBOL)) || ((LA235_0 >= SNAPSHOT_SYMBOL) && (LA235_0 <= SOURCE_SYMBOL)) || ((LA235_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA235_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA235_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA235_0 <= SQL_CACHE_SYMBOL)) || LA235_0 == SQL_NO_CACHE_SYMBOL || LA235_0 == SQL_THREAD_SYMBOL || ((LA235_0 >= STARTS_SYMBOL) && (LA235_0 <= STATUS_SYMBOL)) || ((LA235_0 >= STOP_SYMBOL) && (LA235_0 <= STORAGE_SYMBOL)) || ((LA235_0 >= STRING_SYMBOL) && (LA235_0 <= SUBPARTITION_SYMBOL)) || ((LA235_0 >= SUPER_SYMBOL) && (LA235_0 <= SWITCHES_SYMBOL)) || ((LA235_0 >= TABLESPACE_SYMBOL) && (LA235_0 <= TABLE_NAME_SYMBOL)) || ((LA235_0 >= TEMPORARY_SYMBOL) && (LA235_0 <= TEMPTABLE_SYMBOL)) || ((LA235_0 >= TEXT_SYMBOL) && (LA235_0 <= THAN_SYMBOL)) || ((LA235_0 >= TIMESTAMP_ADD_SYMBOL) && (LA235_0 <= TIME_SYMBOL)) || ((LA235_0 >= TRANSACTION_SYMBOL) && (LA235_0 <= TRIGGERS_SYMBOL)) || ((LA235_0 >= TRUNCATE_SYMBOL) && (LA235_0 <= UDF_RETURNS_SYMBOL)) || ((LA235_0 >= UNCOMMITTED_SYMBOL) && (LA235_0 <= UNDEFINED_SYMBOL)) || ((LA235_0 >= UNDOFILE_SYMBOL) && (LA235_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA235_0 >= UNICODE_SYMBOL) && (LA235_0 <= UNINSTALL_SYMBOL)) || LA235_0 == UNKNOWN_SYMBOL || LA235_0 == UNTIL_SYMBOL || LA235_0 == UPGRADE_SYMBOL || ((LA235_0 >= USER_RESOURCES_SYMBOL) && (LA235_0 <= USE_FRM_SYMBOL)) || LA235_0 == VALUE_SYMBOL || LA235_0 == VARIABLES_SYMBOL || ((LA235_0 >= VIEW_SYMBOL) && (LA235_0 <= WEIGHT_STRING_SYMBOL)) || ((LA235_0 >= WORK_SYMBOL) && (LA235_0 <= WRAPPER_SYMBOL)) || LA235_0 == X509_SYMBOL || ((LA235_0 >= XA_SYMBOL) && (LA235_0 <= XML_SYMBOL)) || LA235_0 == YEAR_SYMBOL))
                    {
                        alt235=1;
                    }
                    else if ( (LA235_0 == MULT_OPERATOR))
                    {
                        alt235=2;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 235;
                        EXCEPTION->state        = 0;


                        goto ruleinsert_identifier_refEx;

                    }
                }
                switch (alt235)
                {
            	case 1:
            	    // MySQL.g:694:53: identifier
            	    {
            	        FOLLOWPUSH(FOLLOW_identifier_in_insert_identifier_ref3506);
            	        identifier716=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinsert_identifier_refEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier716.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:694:66: MULT_OPERATOR
            	    {
            	        MULT_OPERATOR717 = (pANTLR3_COMMON_TOKEN) MATCHT(MULT_OPERATOR, &FOLLOW_MULT_OPERATOR_in_insert_identifier_ref3510);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinsert_identifier_refEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        MULT_OPERATOR717_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MULT_OPERATOR717));
            	        ADAPTOR->addChild(ADAPTOR, root_0, MULT_OPERATOR717_tree);
            	        }

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleinsert_identifier_refEx; /* Prevent compiler warnings */
    ruleinsert_identifier_refEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end insert_identifier_ref */

/**
 * $ANTLR start insert_values
 * MySQL.g:697:1: insert_values : ( ( VALUES_SYMBOL | VALUE_SYMBOL ) insert_value_list | select_statement );
 */
static MySQLParser_insert_values_return
insert_values(pMySQLParser ctx)
{
    MySQLParser_insert_values_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set718;
    MySQLParser_insert_value_list_return insert_value_list719;
    #undef	RETURN_TYPE_insert_value_list719
    #define	RETURN_TYPE_insert_value_list719 MySQLParser_insert_value_list_return

    MySQLParser_select_statement_return select_statement720;
    #undef	RETURN_TYPE_select_statement720
    #define	RETURN_TYPE_select_statement720 MySQLParser_select_statement_return

    pANTLR3_BASE_TREE set718_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set718       = NULL;
    insert_value_list719.tree = NULL;

    select_statement720.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set718_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:697:14: ( ( VALUES_SYMBOL | VALUE_SYMBOL ) insert_value_list | select_statement )

            ANTLR3_UINT32 alt236;

            alt236=2;

            switch ( LA(1) )
            {
            case VALUES_SYMBOL:
            case VALUE_SYMBOL:
            	{
            		alt236=1;
            	}
                break;
            case OPEN_PAR_SYMBOL:
            case SELECT_SYMBOL:
            	{
            		alt236=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 236;
                EXCEPTION->state        = 0;


                goto ruleinsert_valuesEx;

            }

            switch (alt236)
            {
        	case 1:
        	    // MySQL.g:698:2: ( VALUES_SYMBOL | VALUE_SYMBOL ) insert_value_list
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set718=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( ((LA(1) >= VALUES_SYMBOL) && (LA(1) <= VALUE_SYMBOL)) )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set718))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	            CONSTRUCTEX();
        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
        	            EXCEPTION->expectingSet = NULL;

        	            goto ruleinsert_valuesEx;
        	        }


        	        FOLLOWPUSH(FOLLOW_insert_value_list_in_insert_values3528);
        	        insert_value_list719=insert_value_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinsert_valuesEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, insert_value_list719.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:699:4: select_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_select_statement_in_insert_values3533);
        	        select_statement720=select_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinsert_valuesEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_statement720.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleinsert_valuesEx; /* Prevent compiler warnings */
    ruleinsert_valuesEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end insert_values */

/**
 * $ANTLR start insert_value_list
 * MySQL.g:702:1: insert_value_list : insert_value_list_row ( COMMA_SYMBOL insert_value_list_row )* ;
 */
static MySQLParser_insert_value_list_return
insert_value_list(pMySQLParser ctx)
{
    MySQLParser_insert_value_list_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL722;
    MySQLParser_insert_value_list_row_return insert_value_list_row721;
    #undef	RETURN_TYPE_insert_value_list_row721
    #define	RETURN_TYPE_insert_value_list_row721 MySQLParser_insert_value_list_row_return

    MySQLParser_insert_value_list_row_return insert_value_list_row723;
    #undef	RETURN_TYPE_insert_value_list_row723
    #define	RETURN_TYPE_insert_value_list_row723 MySQLParser_insert_value_list_row_return

    pANTLR3_BASE_TREE COMMA_SYMBOL722_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL722       = NULL;
    insert_value_list_row721.tree = NULL;

    insert_value_list_row723.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL722_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:702:18: ( insert_value_list_row ( COMMA_SYMBOL insert_value_list_row )* )
        // MySQL.g:703:2: insert_value_list_row ( COMMA_SYMBOL insert_value_list_row )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_insert_value_list_row_in_insert_value_list3542);
            insert_value_list_row721=insert_value_list_row(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleinsert_value_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, insert_value_list_row721.tree);

            // MySQL.g:703:24: ( COMMA_SYMBOL insert_value_list_row )*

            for (;;)
            {
                int alt237=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt237=1;
                	}
                    break;

                }

                switch (alt237)
                {
            	case 1:
            	    // MySQL.g:703:25: COMMA_SYMBOL insert_value_list_row
            	    {
            	        COMMA_SYMBOL722 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_insert_value_list3545);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinsert_value_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL722_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL722));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL722_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_insert_value_list_row_in_insert_value_list3547);
            	        insert_value_list_row723=insert_value_list_row(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinsert_value_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, insert_value_list_row723.tree);

            	    }
            	    break;

            	default:
            	    goto loop237;	/* break out of the loop */
            	    break;
                }
            }
            loop237: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto ruleinsert_value_listEx; /* Prevent compiler warnings */
    ruleinsert_value_listEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end insert_value_list */

/**
 * $ANTLR start insert_value_list_row
 * MySQL.g:707:1: insert_value_list_row : OPEN_PAR_SYMBOL ( expression | DEFAULT_SYMBOL ) ( COMMA_SYMBOL ( expression | DEFAULT_SYMBOL ) )* CLOSE_PAR_SYMBOL ;
 */
static MySQLParser_insert_value_list_row_return
insert_value_list_row(pMySQLParser ctx)
{
    MySQLParser_insert_value_list_row_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL724;
    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL726;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL727;
    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL729;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL730;
    MySQLParser_expression_return expression725;
    #undef	RETURN_TYPE_expression725
    #define	RETURN_TYPE_expression725 MySQLParser_expression_return

    MySQLParser_expression_return expression728;
    #undef	RETURN_TYPE_expression728
    #define	RETURN_TYPE_expression728 MySQLParser_expression_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL724_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL726_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL727_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL729_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL730_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL724       = NULL;
    DEFAULT_SYMBOL726       = NULL;
    COMMA_SYMBOL727       = NULL;
    DEFAULT_SYMBOL729       = NULL;
    CLOSE_PAR_SYMBOL730       = NULL;
    expression725.tree = NULL;

    expression728.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL724_tree   = NULL;
    DEFAULT_SYMBOL726_tree   = NULL;
    COMMA_SYMBOL727_tree   = NULL;
    DEFAULT_SYMBOL729_tree   = NULL;
    CLOSE_PAR_SYMBOL730_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:707:22: ( OPEN_PAR_SYMBOL ( expression | DEFAULT_SYMBOL ) ( COMMA_SYMBOL ( expression | DEFAULT_SYMBOL ) )* CLOSE_PAR_SYMBOL )
        // MySQL.g:708:2: OPEN_PAR_SYMBOL ( expression | DEFAULT_SYMBOL ) ( COMMA_SYMBOL ( expression | DEFAULT_SYMBOL ) )* CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPEN_PAR_SYMBOL724 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_insert_value_list_row3559);
            if  (HASEXCEPTION())
            {
                goto ruleinsert_value_list_rowEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL724_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL724));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL724_tree);
            }

            // MySQL.g:708:18: ( expression | DEFAULT_SYMBOL )
            {
                int alt238=2;
                {
                    int LA238_0 = LA(1);
                    if ( (LA238_0 == BITWISE_NOT_OPERATOR || LA238_0 == DATE_SYMBOL || LA238_0 == INTERVAL_SYMBOL || LA238_0 == LOGICAL_NOT_OPERATOR || LA238_0 == MINUS_OPERATOR || LA238_0 == NCHAR_TEXT || LA238_0 == NOT2_SYMBOL || LA238_0 == NOT_SYMBOL || LA238_0 == PLUS_OPERATOR || LA238_0 == SINGLE_QUOTED_TEXT || ((LA238_0 >= TIMESTAMP_SYMBOL) && (LA238_0 <= TIME_SYMBOL)) || LA238_0 == UNDERSCORE_CHARSET))
                    {
                        alt238=1;
                    }
                    else if ( ((((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)))||((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))) && (LA238_0 == DOUBLE_QUOTED_TEXT))
                    {
                        alt238=1;
                    }
                    else if ( (LA238_0 == FALSE_SYMBOL || LA238_0 == FLOAT || ((LA238_0 >= HEXNUMBER) && (LA238_0 <= HEXSTRING)) || LA238_0 == INTEGER || LA238_0 == TRUE_SYMBOL))
                    {
                        alt238=1;
                    }
                    else if ( ((SERVER_VERSION >= 50003)) && (((LA238_0 >= BITNUMBER) && (LA238_0 <= BITSTRING))))
                    {
                        alt238=1;
                    }
                    else if ( (((LA238_0 >= ACTION_SYMBOL) && (LA238_0 <= ADDDATE_SYMBOL)) || ((LA238_0 >= AFTER_SYMBOL) && (LA238_0 <= ALGORITHM_SYMBOL)) || LA238_0 == ANALYZE_SYMBOL || ((LA238_0 >= ANY_SYMBOL) && (LA238_0 <= ASCII_SYMBOL)) || ((LA238_0 >= AT_AT_SIGN_SYMBOL) && (LA238_0 <= BACKUP_SYMBOL)) || LA238_0 == BACK_TICK_QUOTED_ID || LA238_0 == BEGIN_SYMBOL || ((LA238_0 >= BINARY_SYMBOL) && (LA238_0 <= BINLOG_SYMBOL)) || ((LA238_0 >= BIT_AND_SYMBOL) && (LA238_0 <= BIT_XOR_SYMBOL)) || ((LA238_0 >= BLOCK_SYMBOL) && (LA238_0 <= BOOL_SYMBOL)) || ((LA238_0 >= BTREE_SYMBOL) && (LA238_0 <= BYTE_SYMBOL)) || LA238_0 == CACHE_SYMBOL || LA238_0 == CASCADED_SYMBOL || ((LA238_0 >= CASE_SYMBOL) && (LA238_0 <= CHANGED_SYMBOL)) || ((LA238_0 >= CHARSET_SYMBOL) && (LA238_0 <= CHECKSUM_SYMBOL)) || ((LA238_0 >= CIPHER_SYMBOL) && (LA238_0 <= CLIENT_SYMBOL)) || ((LA238_0 >= CLOSE_SYMBOL) && (LA238_0 <= CODE_SYMBOL)) || LA238_0 == COLLATION_SYMBOL || ((LA238_0 >= COLUMNS_SYMBOL) && (LA238_0 <= COLUMN_NAME_SYMBOL)) || ((LA238_0 >= COMMENT_SYMBOL) && (LA238_0 <= COMPRESSED_SYMBOL)) || LA238_0 == CONCURRENT_SYMBOL || ((LA238_0 >= CONNECTION_SYMBOL) && (LA238_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA238_0 >= CONTAINS_SYMBOL) && (LA238_0 <= CONTEXT_SYMBOL)) || ((LA238_0 >= CONTRIBUTORS_SYMBOL) && (LA238_0 <= CPU_SYMBOL)) || ((LA238_0 >= CUBE_SYMBOL) && (LA238_0 <= CURRENT_SYMBOL)) || ((LA238_0 >= CURRENT_USER_SYMBOL) && (LA238_0 <= CURSOR_NAME_SYMBOL)) || LA238_0 == CURTIME_SYMBOL || ((LA238_0 >= DATABASE_SYMBOL) && (LA238_0 <= DATETIME_SYMBOL)) || LA238_0 == DATE_ADD_SYMBOL || LA238_0 == DATE_SUB_SYMBOL || ((LA238_0 >= DAY_SYMBOL) && (LA238_0 <= DEALLOCATE_SYMBOL)) || LA238_0 == DEFAULT_AUTH_SYMBOL || LA238_0 == DEFINER_SYMBOL || LA238_0 == DELAY_KEY_WRITE_SYMBOL || LA238_0 == DES_KEY_FILE_SYMBOL || LA238_0 == DIAGNOSTICS_SYMBOL || ((LA238_0 >= DIRECTORY_SYMBOL) && (LA238_0 <= DISK_SYMBOL)) || LA238_0 == DOT_SYMBOL || LA238_0 == DO_SYMBOL || ((LA238_0 >= DUMPFILE_SYMBOL) && (LA238_0 <= DYNAMIC_SYMBOL)) || LA238_0 == ENABLE_SYMBOL || LA238_0 == ENDS_SYMBOL || ((LA238_0 >= END_SYMBOL) && (LA238_0 <= ENUM_SYMBOL)) || ((LA238_0 >= ERRORS_SYMBOL) && (LA238_0 <= ERROR_SYMBOL)) || ((LA238_0 >= ESCAPE_SYMBOL) && (LA238_0 <= EVERY_SYMBOL)) || ((LA238_0 >= EXECUTE_SYMBOL) && (LA238_0 <= EXISTS_SYMBOL)) || LA238_0 == EXPANSION_SYMBOL || LA238_0 == EXPORT_SYMBOL || ((LA238_0 >= EXTENDED_SYMBOL) && (LA238_0 <= EXTRACT_SYMBOL)) || ((LA238_0 >= FAST_SYMBOL) && (LA238_0 <= FAULTS_SYMBOL)) || ((LA238_0 >= FILE_SYMBOL) && (LA238_0 <= FIXED_SYMBOL)) || LA238_0 == FLUSH_SYMBOL || LA238_0 == FORMAT_SYMBOL || LA238_0 == FOUND_SYMBOL || LA238_0 == FULL_SYMBOL || ((LA238_0 >= FUNCTION_SYMBOL) && (LA238_0 <= GET_FORMAT_SYMBOL)) || ((LA238_0 >= GLOBAL_SYMBOL) && (LA238_0 <= GRANTS_SYMBOL)) || LA238_0 == GROUP_CONCAT_SYMBOL || ((LA238_0 >= HANDLER_SYMBOL) && (LA238_0 <= HASH_SYMBOL)) || LA238_0 == HELP_SYMBOL || ((LA238_0 >= HOSTS_SYMBOL) && (LA238_0 <= HOST_SYMBOL)) || ((LA238_0 >= HOUR_SYMBOL) && (LA238_0 <= IGNORE_SERVER_IDS_SYMBOL)) || ((LA238_0 >= IMPORT_SYMBOL) && (LA238_0 <= INDEXES_SYMBOL)) || LA238_0 == INITIAL_SIZE_SYMBOL || LA238_0 == INNODB_SYMBOL || ((LA238_0 >= INSERT_METHOD_SYMBOL) && (LA238_0 <= INSTALL_SYMBOL)) || LA238_0 == INVOKER_SYMBOL || LA238_0 == IO_SYMBOL || ((LA238_0 >= IPC_SYMBOL) && (LA238_0 <= ISSUER_SYMBOL)) || LA238_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA238_0 >= LANGUAGE_SYMBOL) && (LA238_0 <= LAST_SYMBOL)) || LA238_0 == LEAVES_SYMBOL || LA238_0 == LEFT_SYMBOL || LA238_0 == LESS_SYMBOL || LA238_0 == LEVEL_SYMBOL || LA238_0 == LINESTRING_SYMBOL || LA238_0 == LIST_SYMBOL || LA238_0 == LOCAL_SYMBOL || LA238_0 == LOCKS_SYMBOL || LA238_0 == LOGFILE_SYMBOL || LA238_0 == LOGS_SYMBOL || LA238_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA238_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA238_0 <= MASTER_SSL_SYMBOL)) || ((LA238_0 >= MASTER_SYMBOL) && (LA238_0 <= MATCH_SYMBOL)) || ((LA238_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA238_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA238_0 >= MEDIUM_SYMBOL) && (LA238_0 <= MICROSECOND_SYMBOL)) || LA238_0 == MIGRATE_SYMBOL || ((LA238_0 >= MINUTE_SYMBOL) && (LA238_0 <= MIN_SYMBOL)) || LA238_0 == MODE_SYMBOL || LA238_0 == MODIFY_SYMBOL || ((LA238_0 >= MOD_SYMBOL) && (LA238_0 <= MULTILINESTRING_SYMBOL)) || ((LA238_0 >= MULTIPOINT_SYMBOL) && (LA238_0 <= MULTIPOLYGON_SYMBOL)) || ((LA238_0 >= MUTEX_SYMBOL) && (LA238_0 <= NATIONAL_SYMBOL)) || LA238_0 == NCHAR_SYMBOL || LA238_0 == NDBCLUSTER_SYMBOL || ((LA238_0 >= NEW_SYMBOL) && (LA238_0 <= NONE_SYMBOL)) || ((LA238_0 >= NOW_SYMBOL) && (LA238_0 <= NO_WAIT_SYMBOL)) || LA238_0 == NULL2_SYMBOL || ((LA238_0 >= NULL_SYMBOL) && (LA238_0 <= NUMBER_SYMBOL)) || LA238_0 == NVARCHAR_SYMBOL || ((LA238_0 >= OFFSET_SYMBOL) && (LA238_0 <= ONE_SYMBOL)) || ((LA238_0 >= OPEN_PAR_SYMBOL) && (LA238_0 <= OPEN_SYMBOL)) || LA238_0 == OPTIONS_SYMBOL || ((LA238_0 >= OWNER_SYMBOL) && (LA238_0 <= PARAM_MARKER)) || ((LA238_0 >= PARSER_SYMBOL) && (LA238_0 <= PARTITION_SYMBOL)) || ((LA238_0 >= PASSWORD_SYMBOL) && (LA238_0 <= PLUGIN_SYMBOL)) || ((LA238_0 >= POINT_SYMBOL) && (LA238_0 <= POSITION_SYMBOL)) || ((LA238_0 >= PREPARE_SYMBOL) && (LA238_0 <= PREV_SYMBOL)) || LA238_0 == PRIVILEGES_SYMBOL || ((LA238_0 >= PROCESSLIST_SYMBOL) && (LA238_0 <= PROXY_SYMBOL)) || ((LA238_0 >= QUARTER_SYMBOL) && (LA238_0 <= QUICK_SYMBOL)) || LA238_0 == READ_ONLY_SYMBOL || ((LA238_0 >= REBUILD_SYMBOL) && (LA238_0 <= REDUNDANT_SYMBOL)) || ((LA238_0 >= RELAYLOG_SYMBOL) && (LA238_0 <= RELAY_THREAD_SYMBOL)) || ((LA238_0 >= RELOAD_SYMBOL) && (LA238_0 <= REMOVE_SYMBOL)) || ((LA238_0 >= REORGANIZE_SYMBOL) && (LA238_0 <= REPLICATION_SYMBOL)) || LA238_0 == RESET_SYMBOL || LA238_0 == RESTORE_SYMBOL || ((LA238_0 >= RESUME_SYMBOL) && (LA238_0 <= RETURNS_SYMBOL)) || LA238_0 == REVERSE_SYMBOL || LA238_0 == RIGHT_SYMBOL || ((LA238_0 >= ROLLBACK_SYMBOL) && (LA238_0 <= SCHEDULE_SYMBOL)) || LA238_0 == SCHEMA_NAME_SYMBOL || ((LA238_0 >= SECOND_SYMBOL) && (LA238_0 <= SECURITY_SYMBOL)) || ((LA238_0 >= SERIALIZABLE_SYMBOL) && (LA238_0 <= SERIAL_SYMBOL)) || ((LA238_0 >= SERVER_SYMBOL) && (LA238_0 <= SESSION_SYMBOL)) || LA238_0 == SHARE_SYMBOL || LA238_0 == SHUTDOWN_SYMBOL || ((LA238_0 >= SIGNED_SYMBOL) && (LA238_0 <= SIMPLE_SYMBOL)) || ((LA238_0 >= SLAVE_SYMBOL) && (LA238_0 <= SLOW_SYMBOL)) || ((LA238_0 >= SNAPSHOT_SYMBOL) && (LA238_0 <= SOURCE_SYMBOL)) || ((LA238_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA238_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA238_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA238_0 <= SQL_CACHE_SYMBOL)) || LA238_0 == SQL_NO_CACHE_SYMBOL || LA238_0 == SQL_THREAD_SYMBOL || ((LA238_0 >= STARTS_SYMBOL) && (LA238_0 <= STATUS_SYMBOL)) || LA238_0 == STDDEV_SAMP_SYMBOL || ((LA238_0 >= STD_SYMBOL) && (LA238_0 <= STORAGE_SYMBOL)) || ((LA238_0 >= STRING_SYMBOL) && (LA238_0 <= SUBPARTITION_SYMBOL)) || LA238_0 == SUBSTRING_SYMBOL || ((LA238_0 >= SUM_SYMBOL) && (LA238_0 <= SYSDATE_SYMBOL)) || ((LA238_0 >= TABLESPACE_SYMBOL) && (LA238_0 <= TABLE_NAME_SYMBOL)) || ((LA238_0 >= TEMPORARY_SYMBOL) && (LA238_0 <= TEMPTABLE_SYMBOL)) || ((LA238_0 >= TEXT_SYMBOL) && (LA238_0 <= THAN_SYMBOL)) || ((LA238_0 >= TIMESTAMP_ADD_SYMBOL) && (LA238_0 <= TIMESTAMP_DIFF_SYMBOL)) || ((LA238_0 >= TRANSACTION_SYMBOL) && (LA238_0 <= TRIGGERS_SYMBOL)) || LA238_0 == TRIM_SYMBOL || ((LA238_0 >= TRUNCATE_SYMBOL) && (LA238_0 <= UDF_RETURNS_SYMBOL)) || ((LA238_0 >= UNCOMMITTED_SYMBOL) && (LA238_0 <= UNDEFINED_SYMBOL)) || ((LA238_0 >= UNDOFILE_SYMBOL) && (LA238_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA238_0 >= UNICODE_SYMBOL) && (LA238_0 <= UNINSTALL_SYMBOL)) || LA238_0 == UNKNOWN_SYMBOL || LA238_0 == UNTIL_SYMBOL || LA238_0 == UPGRADE_SYMBOL || ((LA238_0 >= USER_RESOURCES_SYMBOL) && (LA238_0 <= USE_FRM_SYMBOL)) || ((LA238_0 >= UTC_DATE_SYMBOL) && (LA238_0 <= VALUE_SYMBOL)) || ((LA238_0 >= VARIABLES_SYMBOL) && (LA238_0 <= VARIANCE_SYMBOL)) || LA238_0 == VAR_SAMP_SYMBOL || ((LA238_0 >= VIEW_SYMBOL) && (LA238_0 <= WEIGHT_STRING_SYMBOL)) || ((LA238_0 >= WORK_SYMBOL) && (LA238_0 <= WRAPPER_SYMBOL)) || LA238_0 == X509_SYMBOL || ((LA238_0 >= XA_SYMBOL) && (LA238_0 <= XML_SYMBOL)) || LA238_0 == YEAR_SYMBOL || LA238_0 == 732))
                    {
                        alt238=1;
                    }
                    else if ( (LA238_0 == DEFAULT_SYMBOL))
                    {
                        alt238=2;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 238;
                        EXCEPTION->state        = 0;


                        goto ruleinsert_value_list_rowEx;

                    }
                }
                switch (alt238)
                {
            	case 1:
            	    // MySQL.g:708:19: expression
            	    {
            	        FOLLOWPUSH(FOLLOW_expression_in_insert_value_list_row3562);
            	        expression725=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinsert_value_list_rowEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression725.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:708:32: DEFAULT_SYMBOL
            	    {
            	        DEFAULT_SYMBOL726 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_insert_value_list_row3566);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinsert_value_list_rowEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DEFAULT_SYMBOL726_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL726));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL726_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:708:48: ( COMMA_SYMBOL ( expression | DEFAULT_SYMBOL ) )*

            for (;;)
            {
                int alt240=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt240=1;
                	}
                    break;

                }

                switch (alt240)
                {
            	case 1:
            	    // MySQL.g:708:49: COMMA_SYMBOL ( expression | DEFAULT_SYMBOL )
            	    {
            	        COMMA_SYMBOL727 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_insert_value_list_row3570);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinsert_value_list_rowEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL727_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL727));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL727_tree);
            	        }

            	        // MySQL.g:708:62: ( expression | DEFAULT_SYMBOL )
            	        {
            	            int alt239=2;
            	            {
            	                int LA239_0 = LA(1);
            	                if ( (LA239_0 == BITWISE_NOT_OPERATOR || LA239_0 == DATE_SYMBOL || LA239_0 == INTERVAL_SYMBOL || LA239_0 == LOGICAL_NOT_OPERATOR || LA239_0 == MINUS_OPERATOR || LA239_0 == NCHAR_TEXT || LA239_0 == NOT2_SYMBOL || LA239_0 == NOT_SYMBOL || LA239_0 == PLUS_OPERATOR || LA239_0 == SINGLE_QUOTED_TEXT || ((LA239_0 >= TIMESTAMP_SYMBOL) && (LA239_0 <= TIME_SYMBOL)) || LA239_0 == UNDERSCORE_CHARSET))
            	                {
            	                    alt239=1;
            	                }
            	                else if ( ((((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)))||((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))) && (LA239_0 == DOUBLE_QUOTED_TEXT))
            	                {
            	                    alt239=1;
            	                }
            	                else if ( (LA239_0 == FALSE_SYMBOL || LA239_0 == FLOAT || ((LA239_0 >= HEXNUMBER) && (LA239_0 <= HEXSTRING)) || LA239_0 == INTEGER || LA239_0 == TRUE_SYMBOL))
            	                {
            	                    alt239=1;
            	                }
            	                else if ( ((SERVER_VERSION >= 50003)) && (((LA239_0 >= BITNUMBER) && (LA239_0 <= BITSTRING))))
            	                {
            	                    alt239=1;
            	                }
            	                else if ( (((LA239_0 >= ACTION_SYMBOL) && (LA239_0 <= ADDDATE_SYMBOL)) || ((LA239_0 >= AFTER_SYMBOL) && (LA239_0 <= ALGORITHM_SYMBOL)) || LA239_0 == ANALYZE_SYMBOL || ((LA239_0 >= ANY_SYMBOL) && (LA239_0 <= ASCII_SYMBOL)) || ((LA239_0 >= AT_AT_SIGN_SYMBOL) && (LA239_0 <= BACKUP_SYMBOL)) || LA239_0 == BACK_TICK_QUOTED_ID || LA239_0 == BEGIN_SYMBOL || ((LA239_0 >= BINARY_SYMBOL) && (LA239_0 <= BINLOG_SYMBOL)) || ((LA239_0 >= BIT_AND_SYMBOL) && (LA239_0 <= BIT_XOR_SYMBOL)) || ((LA239_0 >= BLOCK_SYMBOL) && (LA239_0 <= BOOL_SYMBOL)) || ((LA239_0 >= BTREE_SYMBOL) && (LA239_0 <= BYTE_SYMBOL)) || LA239_0 == CACHE_SYMBOL || LA239_0 == CASCADED_SYMBOL || ((LA239_0 >= CASE_SYMBOL) && (LA239_0 <= CHANGED_SYMBOL)) || ((LA239_0 >= CHARSET_SYMBOL) && (LA239_0 <= CHECKSUM_SYMBOL)) || ((LA239_0 >= CIPHER_SYMBOL) && (LA239_0 <= CLIENT_SYMBOL)) || ((LA239_0 >= CLOSE_SYMBOL) && (LA239_0 <= CODE_SYMBOL)) || LA239_0 == COLLATION_SYMBOL || ((LA239_0 >= COLUMNS_SYMBOL) && (LA239_0 <= COLUMN_NAME_SYMBOL)) || ((LA239_0 >= COMMENT_SYMBOL) && (LA239_0 <= COMPRESSED_SYMBOL)) || LA239_0 == CONCURRENT_SYMBOL || ((LA239_0 >= CONNECTION_SYMBOL) && (LA239_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA239_0 >= CONTAINS_SYMBOL) && (LA239_0 <= CONTEXT_SYMBOL)) || ((LA239_0 >= CONTRIBUTORS_SYMBOL) && (LA239_0 <= CPU_SYMBOL)) || ((LA239_0 >= CUBE_SYMBOL) && (LA239_0 <= CURRENT_SYMBOL)) || ((LA239_0 >= CURRENT_USER_SYMBOL) && (LA239_0 <= CURSOR_NAME_SYMBOL)) || LA239_0 == CURTIME_SYMBOL || ((LA239_0 >= DATABASE_SYMBOL) && (LA239_0 <= DATETIME_SYMBOL)) || LA239_0 == DATE_ADD_SYMBOL || LA239_0 == DATE_SUB_SYMBOL || ((LA239_0 >= DAY_SYMBOL) && (LA239_0 <= DEALLOCATE_SYMBOL)) || LA239_0 == DEFAULT_AUTH_SYMBOL || LA239_0 == DEFINER_SYMBOL || LA239_0 == DELAY_KEY_WRITE_SYMBOL || LA239_0 == DES_KEY_FILE_SYMBOL || LA239_0 == DIAGNOSTICS_SYMBOL || ((LA239_0 >= DIRECTORY_SYMBOL) && (LA239_0 <= DISK_SYMBOL)) || LA239_0 == DOT_SYMBOL || LA239_0 == DO_SYMBOL || ((LA239_0 >= DUMPFILE_SYMBOL) && (LA239_0 <= DYNAMIC_SYMBOL)) || LA239_0 == ENABLE_SYMBOL || LA239_0 == ENDS_SYMBOL || ((LA239_0 >= END_SYMBOL) && (LA239_0 <= ENUM_SYMBOL)) || ((LA239_0 >= ERRORS_SYMBOL) && (LA239_0 <= ERROR_SYMBOL)) || ((LA239_0 >= ESCAPE_SYMBOL) && (LA239_0 <= EVERY_SYMBOL)) || ((LA239_0 >= EXECUTE_SYMBOL) && (LA239_0 <= EXISTS_SYMBOL)) || LA239_0 == EXPANSION_SYMBOL || LA239_0 == EXPORT_SYMBOL || ((LA239_0 >= EXTENDED_SYMBOL) && (LA239_0 <= EXTRACT_SYMBOL)) || ((LA239_0 >= FAST_SYMBOL) && (LA239_0 <= FAULTS_SYMBOL)) || ((LA239_0 >= FILE_SYMBOL) && (LA239_0 <= FIXED_SYMBOL)) || LA239_0 == FLUSH_SYMBOL || LA239_0 == FORMAT_SYMBOL || LA239_0 == FOUND_SYMBOL || LA239_0 == FULL_SYMBOL || ((LA239_0 >= FUNCTION_SYMBOL) && (LA239_0 <= GET_FORMAT_SYMBOL)) || ((LA239_0 >= GLOBAL_SYMBOL) && (LA239_0 <= GRANTS_SYMBOL)) || LA239_0 == GROUP_CONCAT_SYMBOL || ((LA239_0 >= HANDLER_SYMBOL) && (LA239_0 <= HASH_SYMBOL)) || LA239_0 == HELP_SYMBOL || ((LA239_0 >= HOSTS_SYMBOL) && (LA239_0 <= HOST_SYMBOL)) || ((LA239_0 >= HOUR_SYMBOL) && (LA239_0 <= IGNORE_SERVER_IDS_SYMBOL)) || ((LA239_0 >= IMPORT_SYMBOL) && (LA239_0 <= INDEXES_SYMBOL)) || LA239_0 == INITIAL_SIZE_SYMBOL || LA239_0 == INNODB_SYMBOL || ((LA239_0 >= INSERT_METHOD_SYMBOL) && (LA239_0 <= INSTALL_SYMBOL)) || LA239_0 == INVOKER_SYMBOL || LA239_0 == IO_SYMBOL || ((LA239_0 >= IPC_SYMBOL) && (LA239_0 <= ISSUER_SYMBOL)) || LA239_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA239_0 >= LANGUAGE_SYMBOL) && (LA239_0 <= LAST_SYMBOL)) || LA239_0 == LEAVES_SYMBOL || LA239_0 == LEFT_SYMBOL || LA239_0 == LESS_SYMBOL || LA239_0 == LEVEL_SYMBOL || LA239_0 == LINESTRING_SYMBOL || LA239_0 == LIST_SYMBOL || LA239_0 == LOCAL_SYMBOL || LA239_0 == LOCKS_SYMBOL || LA239_0 == LOGFILE_SYMBOL || LA239_0 == LOGS_SYMBOL || LA239_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA239_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA239_0 <= MASTER_SSL_SYMBOL)) || ((LA239_0 >= MASTER_SYMBOL) && (LA239_0 <= MATCH_SYMBOL)) || ((LA239_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA239_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA239_0 >= MEDIUM_SYMBOL) && (LA239_0 <= MICROSECOND_SYMBOL)) || LA239_0 == MIGRATE_SYMBOL || ((LA239_0 >= MINUTE_SYMBOL) && (LA239_0 <= MIN_SYMBOL)) || LA239_0 == MODE_SYMBOL || LA239_0 == MODIFY_SYMBOL || ((LA239_0 >= MOD_SYMBOL) && (LA239_0 <= MULTILINESTRING_SYMBOL)) || ((LA239_0 >= MULTIPOINT_SYMBOL) && (LA239_0 <= MULTIPOLYGON_SYMBOL)) || ((LA239_0 >= MUTEX_SYMBOL) && (LA239_0 <= NATIONAL_SYMBOL)) || LA239_0 == NCHAR_SYMBOL || LA239_0 == NDBCLUSTER_SYMBOL || ((LA239_0 >= NEW_SYMBOL) && (LA239_0 <= NONE_SYMBOL)) || ((LA239_0 >= NOW_SYMBOL) && (LA239_0 <= NO_WAIT_SYMBOL)) || LA239_0 == NULL2_SYMBOL || ((LA239_0 >= NULL_SYMBOL) && (LA239_0 <= NUMBER_SYMBOL)) || LA239_0 == NVARCHAR_SYMBOL || ((LA239_0 >= OFFSET_SYMBOL) && (LA239_0 <= ONE_SYMBOL)) || ((LA239_0 >= OPEN_PAR_SYMBOL) && (LA239_0 <= OPEN_SYMBOL)) || LA239_0 == OPTIONS_SYMBOL || ((LA239_0 >= OWNER_SYMBOL) && (LA239_0 <= PARAM_MARKER)) || ((LA239_0 >= PARSER_SYMBOL) && (LA239_0 <= PARTITION_SYMBOL)) || ((LA239_0 >= PASSWORD_SYMBOL) && (LA239_0 <= PLUGIN_SYMBOL)) || ((LA239_0 >= POINT_SYMBOL) && (LA239_0 <= POSITION_SYMBOL)) || ((LA239_0 >= PREPARE_SYMBOL) && (LA239_0 <= PREV_SYMBOL)) || LA239_0 == PRIVILEGES_SYMBOL || ((LA239_0 >= PROCESSLIST_SYMBOL) && (LA239_0 <= PROXY_SYMBOL)) || ((LA239_0 >= QUARTER_SYMBOL) && (LA239_0 <= QUICK_SYMBOL)) || LA239_0 == READ_ONLY_SYMBOL || ((LA239_0 >= REBUILD_SYMBOL) && (LA239_0 <= REDUNDANT_SYMBOL)) || ((LA239_0 >= RELAYLOG_SYMBOL) && (LA239_0 <= RELAY_THREAD_SYMBOL)) || ((LA239_0 >= RELOAD_SYMBOL) && (LA239_0 <= REMOVE_SYMBOL)) || ((LA239_0 >= REORGANIZE_SYMBOL) && (LA239_0 <= REPLICATION_SYMBOL)) || LA239_0 == RESET_SYMBOL || LA239_0 == RESTORE_SYMBOL || ((LA239_0 >= RESUME_SYMBOL) && (LA239_0 <= RETURNS_SYMBOL)) || LA239_0 == REVERSE_SYMBOL || LA239_0 == RIGHT_SYMBOL || ((LA239_0 >= ROLLBACK_SYMBOL) && (LA239_0 <= SCHEDULE_SYMBOL)) || LA239_0 == SCHEMA_NAME_SYMBOL || ((LA239_0 >= SECOND_SYMBOL) && (LA239_0 <= SECURITY_SYMBOL)) || ((LA239_0 >= SERIALIZABLE_SYMBOL) && (LA239_0 <= SERIAL_SYMBOL)) || ((LA239_0 >= SERVER_SYMBOL) && (LA239_0 <= SESSION_SYMBOL)) || LA239_0 == SHARE_SYMBOL || LA239_0 == SHUTDOWN_SYMBOL || ((LA239_0 >= SIGNED_SYMBOL) && (LA239_0 <= SIMPLE_SYMBOL)) || ((LA239_0 >= SLAVE_SYMBOL) && (LA239_0 <= SLOW_SYMBOL)) || ((LA239_0 >= SNAPSHOT_SYMBOL) && (LA239_0 <= SOURCE_SYMBOL)) || ((LA239_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA239_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA239_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA239_0 <= SQL_CACHE_SYMBOL)) || LA239_0 == SQL_NO_CACHE_SYMBOL || LA239_0 == SQL_THREAD_SYMBOL || ((LA239_0 >= STARTS_SYMBOL) && (LA239_0 <= STATUS_SYMBOL)) || LA239_0 == STDDEV_SAMP_SYMBOL || ((LA239_0 >= STD_SYMBOL) && (LA239_0 <= STORAGE_SYMBOL)) || ((LA239_0 >= STRING_SYMBOL) && (LA239_0 <= SUBPARTITION_SYMBOL)) || LA239_0 == SUBSTRING_SYMBOL || ((LA239_0 >= SUM_SYMBOL) && (LA239_0 <= SYSDATE_SYMBOL)) || ((LA239_0 >= TABLESPACE_SYMBOL) && (LA239_0 <= TABLE_NAME_SYMBOL)) || ((LA239_0 >= TEMPORARY_SYMBOL) && (LA239_0 <= TEMPTABLE_SYMBOL)) || ((LA239_0 >= TEXT_SYMBOL) && (LA239_0 <= THAN_SYMBOL)) || ((LA239_0 >= TIMESTAMP_ADD_SYMBOL) && (LA239_0 <= TIMESTAMP_DIFF_SYMBOL)) || ((LA239_0 >= TRANSACTION_SYMBOL) && (LA239_0 <= TRIGGERS_SYMBOL)) || LA239_0 == TRIM_SYMBOL || ((LA239_0 >= TRUNCATE_SYMBOL) && (LA239_0 <= UDF_RETURNS_SYMBOL)) || ((LA239_0 >= UNCOMMITTED_SYMBOL) && (LA239_0 <= UNDEFINED_SYMBOL)) || ((LA239_0 >= UNDOFILE_SYMBOL) && (LA239_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA239_0 >= UNICODE_SYMBOL) && (LA239_0 <= UNINSTALL_SYMBOL)) || LA239_0 == UNKNOWN_SYMBOL || LA239_0 == UNTIL_SYMBOL || LA239_0 == UPGRADE_SYMBOL || ((LA239_0 >= USER_RESOURCES_SYMBOL) && (LA239_0 <= USE_FRM_SYMBOL)) || ((LA239_0 >= UTC_DATE_SYMBOL) && (LA239_0 <= VALUE_SYMBOL)) || ((LA239_0 >= VARIABLES_SYMBOL) && (LA239_0 <= VARIANCE_SYMBOL)) || LA239_0 == VAR_SAMP_SYMBOL || ((LA239_0 >= VIEW_SYMBOL) && (LA239_0 <= WEIGHT_STRING_SYMBOL)) || ((LA239_0 >= WORK_SYMBOL) && (LA239_0 <= WRAPPER_SYMBOL)) || LA239_0 == X509_SYMBOL || ((LA239_0 >= XA_SYMBOL) && (LA239_0 <= XML_SYMBOL)) || LA239_0 == YEAR_SYMBOL || LA239_0 == 732))
            	                {
            	                    alt239=1;
            	                }
            	                else if ( (LA239_0 == DEFAULT_SYMBOL))
            	                {
            	                    alt239=2;
            	                }
            	                else
            	                {
            	                    if (BACKTRACKING>0)
            	                    {
            	                        FAILEDFLAG = ANTLR3_TRUE;
            	                        return retval;
            	                    }


            	                    CONSTRUCTEX();
            	                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    EXCEPTION->message      = (void *)"";
            	                    EXCEPTION->decisionNum  = 239;
            	                    EXCEPTION->state        = 0;


            	                    goto ruleinsert_value_list_rowEx;

            	                }
            	            }
            	            switch (alt239)
            	            {
            	        	case 1:
            	        	    // MySQL.g:708:63: expression
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_expression_in_insert_value_list_row3573);
            	        	        expression728=expression(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleinsert_value_list_rowEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression728.tree);

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:708:76: DEFAULT_SYMBOL
            	        	    {
            	        	        DEFAULT_SYMBOL729 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_insert_value_list_row3577);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleinsert_value_list_rowEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        DEFAULT_SYMBOL729_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL729));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL729_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

            	default:
            	    goto loop240;	/* break out of the loop */
            	    break;
                }
            }
            loop240: ; /* Jump out to here if this rule does not match */


            CLOSE_PAR_SYMBOL730 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_insert_value_list_row3582);
            if  (HASEXCEPTION())
            {
                goto ruleinsert_value_list_rowEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL730_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL730));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL730_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleinsert_value_list_rowEx; /* Prevent compiler warnings */
    ruleinsert_value_list_rowEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end insert_value_list_row */

/**
 * $ANTLR start duplicate_key_update
 * MySQL.g:711:1: duplicate_key_update : ON_SYMBOL DUPLICATE_SYMBOL KEY_SYMBOL UPDATE_SYMBOL column_assignment ( COMMA_SYMBOL column_assignment )* ;
 */
static MySQLParser_duplicate_key_update_return
duplicate_key_update(pMySQLParser ctx)
{
    MySQLParser_duplicate_key_update_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    ON_SYMBOL731;
    pANTLR3_COMMON_TOKEN    DUPLICATE_SYMBOL732;
    pANTLR3_COMMON_TOKEN    KEY_SYMBOL733;
    pANTLR3_COMMON_TOKEN    UPDATE_SYMBOL734;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL736;
    MySQLParser_column_assignment_return column_assignment735;
    #undef	RETURN_TYPE_column_assignment735
    #define	RETURN_TYPE_column_assignment735 MySQLParser_column_assignment_return

    MySQLParser_column_assignment_return column_assignment737;
    #undef	RETURN_TYPE_column_assignment737
    #define	RETURN_TYPE_column_assignment737 MySQLParser_column_assignment_return

    pANTLR3_BASE_TREE ON_SYMBOL731_tree;
    pANTLR3_BASE_TREE DUPLICATE_SYMBOL732_tree;
    pANTLR3_BASE_TREE KEY_SYMBOL733_tree;
    pANTLR3_BASE_TREE UPDATE_SYMBOL734_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL736_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ON_SYMBOL731       = NULL;
    DUPLICATE_SYMBOL732       = NULL;
    KEY_SYMBOL733       = NULL;
    UPDATE_SYMBOL734       = NULL;
    COMMA_SYMBOL736       = NULL;
    column_assignment735.tree = NULL;

    column_assignment737.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ON_SYMBOL731_tree   = NULL;
    DUPLICATE_SYMBOL732_tree   = NULL;
    KEY_SYMBOL733_tree   = NULL;
    UPDATE_SYMBOL734_tree   = NULL;
    COMMA_SYMBOL736_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:711:21: ( ON_SYMBOL DUPLICATE_SYMBOL KEY_SYMBOL UPDATE_SYMBOL column_assignment ( COMMA_SYMBOL column_assignment )* )
        // MySQL.g:712:2: ON_SYMBOL DUPLICATE_SYMBOL KEY_SYMBOL UPDATE_SYMBOL column_assignment ( COMMA_SYMBOL column_assignment )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            ON_SYMBOL731 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_duplicate_key_update3591);
            if  (HASEXCEPTION())
            {
                goto ruleduplicate_key_updateEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ON_SYMBOL731_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL731));
            ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL731_tree);
            }

            DUPLICATE_SYMBOL732 = (pANTLR3_COMMON_TOKEN) MATCHT(DUPLICATE_SYMBOL, &FOLLOW_DUPLICATE_SYMBOL_in_duplicate_key_update3593);
            if  (HASEXCEPTION())
            {
                goto ruleduplicate_key_updateEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DUPLICATE_SYMBOL732_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DUPLICATE_SYMBOL732));
            ADAPTOR->addChild(ADAPTOR, root_0, DUPLICATE_SYMBOL732_tree);
            }

            KEY_SYMBOL733 = (pANTLR3_COMMON_TOKEN) MATCHT(KEY_SYMBOL, &FOLLOW_KEY_SYMBOL_in_duplicate_key_update3595);
            if  (HASEXCEPTION())
            {
                goto ruleduplicate_key_updateEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            KEY_SYMBOL733_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, KEY_SYMBOL733));
            ADAPTOR->addChild(ADAPTOR, root_0, KEY_SYMBOL733_tree);
            }

            UPDATE_SYMBOL734 = (pANTLR3_COMMON_TOKEN) MATCHT(UPDATE_SYMBOL, &FOLLOW_UPDATE_SYMBOL_in_duplicate_key_update3597);
            if  (HASEXCEPTION())
            {
                goto ruleduplicate_key_updateEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            UPDATE_SYMBOL734_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UPDATE_SYMBOL734));
            ADAPTOR->addChild(ADAPTOR, root_0, UPDATE_SYMBOL734_tree);
            }

            FOLLOWPUSH(FOLLOW_column_assignment_in_duplicate_key_update3599);
            column_assignment735=column_assignment(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleduplicate_key_updateEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, column_assignment735.tree);

            // MySQL.g:712:72: ( COMMA_SYMBOL column_assignment )*

            for (;;)
            {
                int alt241=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt241=1;
                	}
                    break;

                }

                switch (alt241)
                {
            	case 1:
            	    // MySQL.g:712:73: COMMA_SYMBOL column_assignment
            	    {
            	        COMMA_SYMBOL736 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_duplicate_key_update3602);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleduplicate_key_updateEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL736_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL736));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL736_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_column_assignment_in_duplicate_key_update3604);
            	        column_assignment737=column_assignment(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleduplicate_key_updateEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, column_assignment737.tree);

            	    }
            	    break;

            	default:
            	    goto loop241;	/* break out of the loop */
            	    break;
                }
            }
            loop241: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto ruleduplicate_key_updateEx; /* Prevent compiler warnings */
    ruleduplicate_key_updateEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end duplicate_key_update */

/**
 * $ANTLR start load_data_infile_statement
 * MySQL.g:717:1: load_data_infile_statement : LOAD_SYMBOL DATA_SYMBOL ( LOW_PRIORITY_SYMBOL | CONCURRENT_SYMBOL )? ( LOCAL_SYMBOL )? INFILE_SYMBOL string_literal ( REPLACE_SYMBOL | IGNORE_SYMBOL )? INTO_SYMBOL TABLE_SYMBOL table_identifier ( partition_on_load_option )? ( charset_clause )? ( fields_clause )? ( lines_clause )? load_data_file_tail ;
 */
static MySQLParser_load_data_infile_statement_return
load_data_infile_statement(pMySQLParser ctx)
{
    MySQLParser_load_data_infile_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    LOAD_SYMBOL738;
    pANTLR3_COMMON_TOKEN    DATA_SYMBOL739;
    pANTLR3_COMMON_TOKEN    set740;
    pANTLR3_COMMON_TOKEN    LOCAL_SYMBOL741;
    pANTLR3_COMMON_TOKEN    INFILE_SYMBOL742;
    pANTLR3_COMMON_TOKEN    set744;
    pANTLR3_COMMON_TOKEN    INTO_SYMBOL745;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL746;
    MySQLParser_string_literal_return string_literal743;
    #undef	RETURN_TYPE_string_literal743
    #define	RETURN_TYPE_string_literal743 MySQLParser_string_literal_return

    MySQLParser_table_identifier_return table_identifier747;
    #undef	RETURN_TYPE_table_identifier747
    #define	RETURN_TYPE_table_identifier747 MySQLParser_table_identifier_return

    MySQLParser_partition_on_load_option_return partition_on_load_option748;
    #undef	RETURN_TYPE_partition_on_load_option748
    #define	RETURN_TYPE_partition_on_load_option748 MySQLParser_partition_on_load_option_return

    MySQLParser_charset_clause_return charset_clause749;
    #undef	RETURN_TYPE_charset_clause749
    #define	RETURN_TYPE_charset_clause749 MySQLParser_charset_clause_return

    MySQLParser_fields_clause_return fields_clause750;
    #undef	RETURN_TYPE_fields_clause750
    #define	RETURN_TYPE_fields_clause750 MySQLParser_fields_clause_return

    MySQLParser_lines_clause_return lines_clause751;
    #undef	RETURN_TYPE_lines_clause751
    #define	RETURN_TYPE_lines_clause751 MySQLParser_lines_clause_return

    MySQLParser_load_data_file_tail_return load_data_file_tail752;
    #undef	RETURN_TYPE_load_data_file_tail752
    #define	RETURN_TYPE_load_data_file_tail752 MySQLParser_load_data_file_tail_return

    pANTLR3_BASE_TREE LOAD_SYMBOL738_tree;
    pANTLR3_BASE_TREE DATA_SYMBOL739_tree;
    pANTLR3_BASE_TREE set740_tree;
    pANTLR3_BASE_TREE LOCAL_SYMBOL741_tree;
    pANTLR3_BASE_TREE INFILE_SYMBOL742_tree;
    pANTLR3_BASE_TREE set744_tree;
    pANTLR3_BASE_TREE INTO_SYMBOL745_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL746_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    LOAD_SYMBOL738       = NULL;
    DATA_SYMBOL739       = NULL;
    set740       = NULL;
    LOCAL_SYMBOL741       = NULL;
    INFILE_SYMBOL742       = NULL;
    set744       = NULL;
    INTO_SYMBOL745       = NULL;
    TABLE_SYMBOL746       = NULL;
    string_literal743.tree = NULL;

    table_identifier747.tree = NULL;

    partition_on_load_option748.tree = NULL;

    charset_clause749.tree = NULL;

    fields_clause750.tree = NULL;

    lines_clause751.tree = NULL;

    load_data_file_tail752.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    LOAD_SYMBOL738_tree   = NULL;
    DATA_SYMBOL739_tree   = NULL;
    set740_tree   = NULL;
    LOCAL_SYMBOL741_tree   = NULL;
    INFILE_SYMBOL742_tree   = NULL;
    set744_tree   = NULL;
    INTO_SYMBOL745_tree   = NULL;
    TABLE_SYMBOL746_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:717:27: ( LOAD_SYMBOL DATA_SYMBOL ( LOW_PRIORITY_SYMBOL | CONCURRENT_SYMBOL )? ( LOCAL_SYMBOL )? INFILE_SYMBOL string_literal ( REPLACE_SYMBOL | IGNORE_SYMBOL )? INTO_SYMBOL TABLE_SYMBOL table_identifier ( partition_on_load_option )? ( charset_clause )? ( fields_clause )? ( lines_clause )? load_data_file_tail )
        // MySQL.g:718:2: LOAD_SYMBOL DATA_SYMBOL ( LOW_PRIORITY_SYMBOL | CONCURRENT_SYMBOL )? ( LOCAL_SYMBOL )? INFILE_SYMBOL string_literal ( REPLACE_SYMBOL | IGNORE_SYMBOL )? INTO_SYMBOL TABLE_SYMBOL table_identifier ( partition_on_load_option )? ( charset_clause )? ( fields_clause )? ( lines_clause )? load_data_file_tail
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            LOAD_SYMBOL738 = (pANTLR3_COMMON_TOKEN) MATCHT(LOAD_SYMBOL, &FOLLOW_LOAD_SYMBOL_in_load_data_infile_statement3617);
            if  (HASEXCEPTION())
            {
                goto ruleload_data_infile_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            LOAD_SYMBOL738_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOAD_SYMBOL738));
            ADAPTOR->addChild(ADAPTOR, root_0, LOAD_SYMBOL738_tree);
            }

            DATA_SYMBOL739 = (pANTLR3_COMMON_TOKEN) MATCHT(DATA_SYMBOL, &FOLLOW_DATA_SYMBOL_in_load_data_infile_statement3619);
            if  (HASEXCEPTION())
            {
                goto ruleload_data_infile_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DATA_SYMBOL739_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATA_SYMBOL739));
            ADAPTOR->addChild(ADAPTOR, root_0, DATA_SYMBOL739_tree);
            }

            // MySQL.g:718:26: ( LOW_PRIORITY_SYMBOL | CONCURRENT_SYMBOL )?
            {
                int alt242=2;
                switch ( LA(1) )
                {
                    case CONCURRENT_SYMBOL:
                    case LOW_PRIORITY_SYMBOL:
                    	{
                    		alt242=1;
                    	}
                        break;
                }

                switch (alt242)
                {
            	case 1:
            	    // MySQL.g:
            	    {
            	        set740=(pANTLR3_COMMON_TOKEN)LT(1);

            	        if ( LA(1) == CONCURRENT_SYMBOL || LA(1) == LOW_PRIORITY_SYMBOL )
            	        {
            	            CONSUME();
            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set740))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	            CONSTRUCTEX();
            	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	            EXCEPTION->expectingSet = NULL;

            	            goto ruleload_data_infile_statementEx;
            	        }


            	    }
            	    break;

                }
            }

            // MySQL.g:718:69: ( LOCAL_SYMBOL )?
            {
                int alt243=2;
                switch ( LA(1) )
                {
                    case LOCAL_SYMBOL:
                    	{
                    		alt243=1;
                    	}
                        break;
                }

                switch (alt243)
                {
            	case 1:
            	    // MySQL.g:718:69: LOCAL_SYMBOL
            	    {
            	        LOCAL_SYMBOL741 = (pANTLR3_COMMON_TOKEN) MATCHT(LOCAL_SYMBOL, &FOLLOW_LOCAL_SYMBOL_in_load_data_infile_statement3630);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleload_data_infile_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        LOCAL_SYMBOL741_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOCAL_SYMBOL741));
            	        ADAPTOR->addChild(ADAPTOR, root_0, LOCAL_SYMBOL741_tree);
            	        }

            	    }
            	    break;

                }
            }

            INFILE_SYMBOL742 = (pANTLR3_COMMON_TOKEN) MATCHT(INFILE_SYMBOL, &FOLLOW_INFILE_SYMBOL_in_load_data_infile_statement3633);
            if  (HASEXCEPTION())
            {
                goto ruleload_data_infile_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            INFILE_SYMBOL742_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INFILE_SYMBOL742));
            ADAPTOR->addChild(ADAPTOR, root_0, INFILE_SYMBOL742_tree);
            }

            FOLLOWPUSH(FOLLOW_string_literal_in_load_data_infile_statement3635);
            string_literal743=string_literal(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleload_data_infile_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal743.tree);

            // MySQL.g:719:3: ( REPLACE_SYMBOL | IGNORE_SYMBOL )?
            {
                int alt244=2;
                switch ( LA(1) )
                {
                    case IGNORE_SYMBOL:
                    case REPLACE_SYMBOL:
                    	{
                    		alt244=1;
                    	}
                        break;
                }

                switch (alt244)
                {
            	case 1:
            	    // MySQL.g:
            	    {
            	        set744=(pANTLR3_COMMON_TOKEN)LT(1);

            	        if ( LA(1) == IGNORE_SYMBOL || LA(1) == REPLACE_SYMBOL )
            	        {
            	            CONSUME();
            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set744))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	            CONSTRUCTEX();
            	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	            EXCEPTION->expectingSet = NULL;

            	            goto ruleload_data_infile_statementEx;
            	        }


            	    }
            	    break;

                }
            }

            INTO_SYMBOL745 = (pANTLR3_COMMON_TOKEN) MATCHT(INTO_SYMBOL, &FOLLOW_INTO_SYMBOL_in_load_data_infile_statement3648);
            if  (HASEXCEPTION())
            {
                goto ruleload_data_infile_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            INTO_SYMBOL745_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTO_SYMBOL745));
            ADAPTOR->addChild(ADAPTOR, root_0, INTO_SYMBOL745_tree);
            }

            TABLE_SYMBOL746 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_load_data_infile_statement3650);
            if  (HASEXCEPTION())
            {
                goto ruleload_data_infile_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            TABLE_SYMBOL746_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL746));
            ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL746_tree);
            }

            FOLLOWPUSH(FOLLOW_table_identifier_in_load_data_infile_statement3652);
            table_identifier747=table_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleload_data_infile_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_identifier747.tree);

            // MySQL.g:720:3: ( partition_on_load_option )?
            {
                int alt245=2;
                switch ( LA(1) )
                {
                    case PARTITION_SYMBOL:
                    	{
                    		{
                    		    int LA245_1 = LA(2);
                    		    if ( ((SERVER_VERSION >= 50602)) && (LA245_1 == OPEN_PAR_SYMBOL))
                    		    {
                    		        alt245=1;
                    		    }
                    		}
                    	}
                        break;
                }

                switch (alt245)
                {
            	case 1:
            	    // MySQL.g:720:3: partition_on_load_option
            	    {
            	        FOLLOWPUSH(FOLLOW_partition_on_load_option_in_load_data_infile_statement3656);
            	        partition_on_load_option748=partition_on_load_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleload_data_infile_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partition_on_load_option748.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:720:29: ( charset_clause )?
            {
                int alt246=2;
                switch ( LA(1) )
                {
                    case CHAR_SYMBOL:
                    	{
                    		alt246=1;
                    	}
                        break;
                    case CHARSET_SYMBOL:
                    	{
                    		switch ( LA(2) )
                    		{
                    		    case ACTION_SYMBOL:
                    		    case ADDDATE_SYMBOL:
                    		    case AFTER_SYMBOL:
                    		    case AGAINST_SYMBOL:
                    		    case AGGREGATE_SYMBOL:
                    		    case ALGORITHM_SYMBOL:
                    		    case ANALYZE_SYMBOL:
                    		    case ANY_SYMBOL:
                    		    case ASCII_SYMBOL:
                    		    case AT_SYMBOL:
                    		    case AUTHORS_SYMBOL:
                    		    case AUTOEXTEND_SIZE_SYMBOL:
                    		    case AUTO_INCREMENT_SYMBOL:
                    		    case AVG_ROW_LENGTH_SYMBOL:
                    		    case AVG_SYMBOL:
                    		    case BACKUP_SYMBOL:
                    		    case BACK_TICK_QUOTED_ID:
                    		    case BEGIN_SYMBOL:
                    		    case BINARY_SYMBOL:
                    		    case BINLOG_SYMBOL:
                    		    case BIT_SYMBOL:
                    		    case BLOCK_SYMBOL:
                    		    case BOOLEAN_SYMBOL:
                    		    case BOOL_SYMBOL:
                    		    case BTREE_SYMBOL:
                    		    case BYTE_SYMBOL:
                    		    case CACHE_SYMBOL:
                    		    case CASCADED_SYMBOL:
                    		    case CATALOG_NAME_SYMBOL:
                    		    case CHAIN_SYMBOL:
                    		    case CHANGED_SYMBOL:
                    		    case CHARSET_SYMBOL:
                    		    case CHECKSUM_SYMBOL:
                    		    case CIPHER_SYMBOL:
                    		    case CLASS_ORIGIN_SYMBOL:
                    		    case CLIENT_SYMBOL:
                    		    case CLOSE_SYMBOL:
                    		    case COALESCE_SYMBOL:
                    		    case CODE_SYMBOL:
                    		    case COLLATION_SYMBOL:
                    		    case COLUMNS_SYMBOL:
                    		    case COLUMN_FORMAT_SYMBOL:
                    		    case COLUMN_NAME_SYMBOL:
                    		    case COMMENT_SYMBOL:
                    		    case COMMITTED_SYMBOL:
                    		    case COMMIT_SYMBOL:
                    		    case COMPACT_SYMBOL:
                    		    case COMPLETION_SYMBOL:
                    		    case COMPRESSED_SYMBOL:
                    		    case CONCURRENT_SYMBOL:
                    		    case CONNECTION_SYMBOL:
                    		    case CONSISTENT_SYMBOL:
                    		    case CONSTRAINT_CATALOG_SYMBOL:
                    		    case CONSTRAINT_NAME_SYMBOL:
                    		    case CONSTRAINT_SCHEMA_SYMBOL:
                    		    case CONTAINS_SYMBOL:
                    		    case CONTEXT_SYMBOL:
                    		    case CONTRIBUTORS_SYMBOL:
                    		    case CPU_SYMBOL:
                    		    case CUBE_SYMBOL:
                    		    case CURRENT_SYMBOL:
                    		    case CURSOR_NAME_SYMBOL:
                    		    case DATAFILE_SYMBOL:
                    		    case DATA_SYMBOL:
                    		    case DATETIME_SYMBOL:
                    		    case DATE_SYMBOL:
                    		    case DAY_SYMBOL:
                    		    case DEALLOCATE_SYMBOL:
                    		    case DEFAULT_AUTH_SYMBOL:
                    		    case DEFAULT_SYMBOL:
                    		    case DEFINER_SYMBOL:
                    		    case DELAY_KEY_WRITE_SYMBOL:
                    		    case DES_KEY_FILE_SYMBOL:
                    		    case DIAGNOSTICS_SYMBOL:
                    		    case DIRECTORY_SYMBOL:
                    		    case DISABLE_SYMBOL:
                    		    case DISCARD_SYMBOL:
                    		    case DISK_SYMBOL:
                    		    case DOUBLE_QUOTED_TEXT:
                    		    case DO_SYMBOL:
                    		    case DUMPFILE_SYMBOL:
                    		    case DUPLICATE_SYMBOL:
                    		    case DYNAMIC_SYMBOL:
                    		    case ENABLE_SYMBOL:
                    		    case ENDS_SYMBOL:
                    		    case END_SYMBOL:
                    		    case ENGINES_SYMBOL:
                    		    case ENGINE_SYMBOL:
                    		    case ENUM_SYMBOL:
                    		    case ERRORS_SYMBOL:
                    		    case ERROR_SYMBOL:
                    		    case ESCAPE_SYMBOL:
                    		    case EVENTS_SYMBOL:
                    		    case EVENT_SYMBOL:
                    		    case EVERY_SYMBOL:
                    		    case EXECUTE_SYMBOL:
                    		    case EXPANSION_SYMBOL:
                    		    case EXPORT_SYMBOL:
                    		    case EXTENDED_SYMBOL:
                    		    case EXTENT_SIZE_SYMBOL:
                    		    case FAST_SYMBOL:
                    		    case FAULTS_SYMBOL:
                    		    case FILE_SYMBOL:
                    		    case FIRST_SYMBOL:
                    		    case FIXED_SYMBOL:
                    		    case FLUSH_SYMBOL:
                    		    case FORMAT_SYMBOL:
                    		    case FOUND_SYMBOL:
                    		    case FULL_SYMBOL:
                    		    case FUNCTION_SYMBOL:
                    		    case GENERAL_SYMBOL:
                    		    case GEOMETRYCOLLECTION_SYMBOL:
                    		    case GEOMETRY_SYMBOL:
                    		    case GET_FORMAT_SYMBOL:
                    		    case GLOBAL_SYMBOL:
                    		    case GRANTS_SYMBOL:
                    		    case HANDLER_SYMBOL:
                    		    case HASH_SYMBOL:
                    		    case HELP_SYMBOL:
                    		    case HOSTS_SYMBOL:
                    		    case HOST_SYMBOL:
                    		    case HOUR_SYMBOL:
                    		    case IDENTIFIED_SYMBOL:
                    		    case IDENTIFIER:
                    		    case IGNORE_SERVER_IDS_SYMBOL:
                    		    case IMPORT_SYMBOL:
                    		    case INDEXES_SYMBOL:
                    		    case INITIAL_SIZE_SYMBOL:
                    		    case INNODB_SYMBOL:
                    		    case INSERT_METHOD_SYMBOL:
                    		    case INSTALL_SYMBOL:
                    		    case INVOKER_SYMBOL:
                    		    case IO_SYMBOL:
                    		    case IPC_SYMBOL:
                    		    case ISOLATION_SYMBOL:
                    		    case ISSUER_SYMBOL:
                    		    case KEY_BLOCK_SIZE_SYMBOL:
                    		    case LANGUAGE_SYMBOL:
                    		    case LAST_SYMBOL:
                    		    case LEAVES_SYMBOL:
                    		    case LESS_SYMBOL:
                    		    case LEVEL_SYMBOL:
                    		    case LINESTRING_SYMBOL:
                    		    case LIST_SYMBOL:
                    		    case LOCAL_SYMBOL:
                    		    case LOCKS_SYMBOL:
                    		    case LOGFILE_SYMBOL:
                    		    case LOGS_SYMBOL:
                    		    case MASTER_AUTO_POSITION_SYMBOL:
                    		    case MASTER_CONNECT_RETRY_SYMBOL:
                    		    case MASTER_DELAY_SYMBOL:
                    		    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    		    case MASTER_HOST_SYMBOL:
                    		    case MASTER_LOG_FILE_SYMBOL:
                    		    case MASTER_LOG_POS_SYMBOL:
                    		    case MASTER_PASSWORD_SYMBOL:
                    		    case MASTER_PORT_SYMBOL:
                    		    case MASTER_RETRY_COUNT_SYMBOL:
                    		    case MASTER_SERVER_ID_SYMBOL:
                    		    case MASTER_SSL_CAPATH_SYMBOL:
                    		    case MASTER_SSL_CA_SYMBOL:
                    		    case MASTER_SSL_CERT_SYMBOL:
                    		    case MASTER_SSL_CIPHER_SYMBOL:
                    		    case MASTER_SSL_CRLPATH_SYMBOL:
                    		    case MASTER_SSL_CRL_SYMBOL:
                    		    case MASTER_SSL_KEY_SYMBOL:
                    		    case MASTER_SSL_SYMBOL:
                    		    case MASTER_SYMBOL:
                    		    case MASTER_USER_SYMBOL:
                    		    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    		    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    		    case MAX_ROWS_SYMBOL:
                    		    case MAX_SIZE_SYMBOL:
                    		    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    		    case MAX_USER_CONNECTIONS_SYMBOL:
                    		    case MEDIUM_SYMBOL:
                    		    case MEMORY_SYMBOL:
                    		    case MERGE_SYMBOL:
                    		    case MESSAGE_TEXT_SYMBOL:
                    		    case MICROSECOND_SYMBOL:
                    		    case MIGRATE_SYMBOL:
                    		    case MINUTE_SYMBOL:
                    		    case MIN_ROWS_SYMBOL:
                    		    case MODE_SYMBOL:
                    		    case MODIFY_SYMBOL:
                    		    case MONTH_SYMBOL:
                    		    case MULTILINESTRING_SYMBOL:
                    		    case MULTIPOINT_SYMBOL:
                    		    case MULTIPOLYGON_SYMBOL:
                    		    case MUTEX_SYMBOL:
                    		    case MYSQL_ERRNO_SYMBOL:
                    		    case NAMES_SYMBOL:
                    		    case NAME_SYMBOL:
                    		    case NATIONAL_SYMBOL:
                    		    case NCHAR_SYMBOL:
                    		    case NCHAR_TEXT:
                    		    case NDBCLUSTER_SYMBOL:
                    		    case NEW_SYMBOL:
                    		    case NEXT_SYMBOL:
                    		    case NODEGROUP_SYMBOL:
                    		    case NONE_SYMBOL:
                    		    case NO_SYMBOL:
                    		    case NO_WAIT_SYMBOL:
                    		    case NUMBER_SYMBOL:
                    		    case NVARCHAR_SYMBOL:
                    		    case OFFSET_SYMBOL:
                    		    case OLD_PASSWORD_SYMBOL:
                    		    case ONE_SHOT_SYMBOL:
                    		    case ONE_SYMBOL:
                    		    case OPEN_SYMBOL:
                    		    case OPTIONS_SYMBOL:
                    		    case OWNER_SYMBOL:
                    		    case PACK_KEYS_SYMBOL:
                    		    case PAGE_SYMBOL:
                    		    case PARSER_SYMBOL:
                    		    case PARTIAL_SYMBOL:
                    		    case PARTITIONING_SYMBOL:
                    		    case PARTITIONS_SYMBOL:
                    		    case PARTITION_SYMBOL:
                    		    case PASSWORD_SYMBOL:
                    		    case PHASE_SYMBOL:
                    		    case PLUGINS_SYMBOL:
                    		    case PLUGIN_DIR_SYMBOL:
                    		    case PLUGIN_SYMBOL:
                    		    case POINT_SYMBOL:
                    		    case POLYGON_SYMBOL:
                    		    case PORT_SYMBOL:
                    		    case PREPARE_SYMBOL:
                    		    case PRESERVE_SYMBOL:
                    		    case PREV_SYMBOL:
                    		    case PRIVILEGES_SYMBOL:
                    		    case PROCESSLIST_SYMBOL:
                    		    case PROCESS_SYMBOL:
                    		    case PROFILES_SYMBOL:
                    		    case PROFILE_SYMBOL:
                    		    case PROXY_SYMBOL:
                    		    case QUARTER_SYMBOL:
                    		    case QUERY_SYMBOL:
                    		    case QUICK_SYMBOL:
                    		    case READ_ONLY_SYMBOL:
                    		    case REBUILD_SYMBOL:
                    		    case RECOVER_SYMBOL:
                    		    case REDOFILE_SYMBOL:
                    		    case REDO_BUFFER_SIZE_SYMBOL:
                    		    case REDUNDANT_SYMBOL:
                    		    case RELAYLOG_SYMBOL:
                    		    case RELAY_LOG_FILE_SYMBOL:
                    		    case RELAY_LOG_POS_SYMBOL:
                    		    case RELAY_SYMBOL:
                    		    case RELAY_THREAD_SYMBOL:
                    		    case RELOAD_SYMBOL:
                    		    case REMOVE_SYMBOL:
                    		    case REORGANIZE_SYMBOL:
                    		    case REPAIR_SYMBOL:
                    		    case REPEATABLE_SYMBOL:
                    		    case REPLICATION_SYMBOL:
                    		    case RESET_SYMBOL:
                    		    case RESTORE_SYMBOL:
                    		    case RESUME_SYMBOL:
                    		    case RETURNED_SQLSTATE_SYMBOL:
                    		    case RETURNS_SYMBOL:
                    		    case REVERSE_SYMBOL:
                    		    case ROLLBACK_SYMBOL:
                    		    case ROLLUP_SYMBOL:
                    		    case ROUTINE_SYMBOL:
                    		    case ROWS_SYMBOL:
                    		    case ROW_COUNT_SYMBOL:
                    		    case ROW_FORMAT_SYMBOL:
                    		    case ROW_SYMBOL:
                    		    case RTREE_SYMBOL:
                    		    case SAVEPOINT_SYMBOL:
                    		    case SCHEDULE_SYMBOL:
                    		    case SCHEMA_NAME_SYMBOL:
                    		    case SECOND_SYMBOL:
                    		    case SECURITY_SYMBOL:
                    		    case SERIALIZABLE_SYMBOL:
                    		    case SERIAL_SYMBOL:
                    		    case SERVER_SYMBOL:
                    		    case SESSION_SYMBOL:
                    		    case SHARE_SYMBOL:
                    		    case SHUTDOWN_SYMBOL:
                    		    case SIGNED_SYMBOL:
                    		    case SIMPLE_SYMBOL:
                    		    case SINGLE_QUOTED_TEXT:
                    		    case SLAVE_SYMBOL:
                    		    case SLOW_SYMBOL:
                    		    case SNAPSHOT_SYMBOL:
                    		    case SOCKET_SYMBOL:
                    		    case SONAME_SYMBOL:
                    		    case SOUNDS_SYMBOL:
                    		    case SOURCE_SYMBOL:
                    		    case SQL_AFTER_GTIDS_SYMBOL:
                    		    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    		    case SQL_BEFORE_GTIDS_SYMBOL:
                    		    case SQL_BUFFER_RESULT_SYMBOL:
                    		    case SQL_CACHE_SYMBOL:
                    		    case SQL_NO_CACHE_SYMBOL:
                    		    case SQL_THREAD_SYMBOL:
                    		    case STARTS_SYMBOL:
                    		    case START_SYMBOL:
                    		    case STATS_AUTO_RECALC_SYMBOL:
                    		    case STATS_PERSISTENT_SYMBOL:
                    		    case STATS_SAMPLE_PAGES_SYMBOL:
                    		    case STATUS_SYMBOL:
                    		    case STOP_SYMBOL:
                    		    case STORAGE_SYMBOL:
                    		    case STRING_SYMBOL:
                    		    case SUBCLASS_ORIGIN_SYMBOL:
                    		    case SUBDATE_SYMBOL:
                    		    case SUBJECT_SYMBOL:
                    		    case SUBPARTITIONS_SYMBOL:
                    		    case SUBPARTITION_SYMBOL:
                    		    case SUPER_SYMBOL:
                    		    case SUSPEND_SYMBOL:
                    		    case SWAPS_SYMBOL:
                    		    case SWITCHES_SYMBOL:
                    		    case TABLESPACE_SYMBOL:
                    		    case TABLES_SYMBOL:
                    		    case TABLE_CHECKSUM_SYMBOL:
                    		    case TABLE_NAME_SYMBOL:
                    		    case TEMPORARY_SYMBOL:
                    		    case TEMPTABLE_SYMBOL:
                    		    case TEXT_SYMBOL:
                    		    case THAN_SYMBOL:
                    		    case TIMESTAMP_ADD_SYMBOL:
                    		    case TIMESTAMP_DIFF_SYMBOL:
                    		    case TIMESTAMP_SYMBOL:
                    		    case TIME_SYMBOL:
                    		    case TRANSACTION_SYMBOL:
                    		    case TRIGGERS_SYMBOL:
                    		    case TRUNCATE_SYMBOL:
                    		    case TYPES_SYMBOL:
                    		    case TYPE_SYMBOL:
                    		    case UDF_RETURNS_SYMBOL:
                    		    case UNCOMMITTED_SYMBOL:
                    		    case UNDEFINED_SYMBOL:
                    		    case UNDERSCORE_CHARSET:
                    		    case UNDOFILE_SYMBOL:
                    		    case UNDO_BUFFER_SIZE_SYMBOL:
                    		    case UNICODE_SYMBOL:
                    		    case UNINSTALL_SYMBOL:
                    		    case UNKNOWN_SYMBOL:
                    		    case UNTIL_SYMBOL:
                    		    case UPGRADE_SYMBOL:
                    		    case USER_RESOURCES_SYMBOL:
                    		    case USER_SYMBOL:
                    		    case USE_FRM_SYMBOL:
                    		    case VALUE_SYMBOL:
                    		    case VARIABLES_SYMBOL:
                    		    case VIEW_SYMBOL:
                    		    case WAIT_SYMBOL:
                    		    case WARNINGS_SYMBOL:
                    		    case WEEK_SYMBOL:
                    		    case WEIGHT_STRING_SYMBOL:
                    		    case WORK_SYMBOL:
                    		    case WRAPPER_SYMBOL:
                    		    case X509_SYMBOL:
                    		    case XA_SYMBOL:
                    		    case XML_SYMBOL:
                    		    case YEAR_SYMBOL:
                    		    	{
                    		    		alt246=1;
                    		    	}
                    		        break;
                    		}

                    	}
                        break;
                }

                switch (alt246)
                {
            	case 1:
            	    // MySQL.g:720:29: charset_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_charset_clause_in_load_data_infile_statement3659);
            	        charset_clause749=charset_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleload_data_infile_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset_clause749.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:721:3: ( fields_clause )?
            {
                int alt247=2;
                switch ( LA(1) )
                {
                    case COLUMNS_SYMBOL:
                    	{
                    		switch ( LA(2) )
                    		{
                    		    case ENCLOSED_SYMBOL:
                    		    case ESCAPED_SYMBOL:
                    		    case OPTIONALLY_SYMBOL:
                    		    case TERMINATED_SYMBOL:
                    		    	{
                    		    		alt247=1;
                    		    	}
                    		        break;
                    		}

                    	}
                        break;
                }

                switch (alt247)
                {
            	case 1:
            	    // MySQL.g:721:3: fields_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_fields_clause_in_load_data_infile_statement3664);
            	        fields_clause750=fields_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleload_data_infile_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, fields_clause750.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:721:18: ( lines_clause )?
            {
                int alt248=2;
                switch ( LA(1) )
                {
                    case LINES_SYMBOL:
                    	{
                    		alt248=1;
                    	}
                        break;
                }

                switch (alt248)
                {
            	case 1:
            	    // MySQL.g:721:18: lines_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_lines_clause_in_load_data_infile_statement3667);
            	        lines_clause751=lines_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleload_data_infile_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, lines_clause751.tree);

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_load_data_file_tail_in_load_data_infile_statement3670);
            load_data_file_tail752=load_data_file_tail(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleload_data_infile_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, load_data_file_tail752.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleload_data_infile_statementEx; /* Prevent compiler warnings */
    ruleload_data_infile_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end load_data_infile_statement */

/**
 * $ANTLR start load_xml_statement
 * MySQL.g:724:1: load_xml_statement : LOAD_SYMBOL XML_SYMBOL ( LOW_PRIORITY_SYMBOL | CONCURRENT_SYMBOL )? ( LOCAL_SYMBOL )? INFILE_SYMBOL string_literal ( REPLACE_SYMBOL | IGNORE_SYMBOL )? INTO_SYMBOL TABLE_SYMBOL table_identifier ( partition_on_load_option )? ( charset_clause )? ( xml_rows_identified_by )? load_data_file_tail ;
 */
static MySQLParser_load_xml_statement_return
load_xml_statement(pMySQLParser ctx)
{
    MySQLParser_load_xml_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    LOAD_SYMBOL753;
    pANTLR3_COMMON_TOKEN    XML_SYMBOL754;
    pANTLR3_COMMON_TOKEN    set755;
    pANTLR3_COMMON_TOKEN    LOCAL_SYMBOL756;
    pANTLR3_COMMON_TOKEN    INFILE_SYMBOL757;
    pANTLR3_COMMON_TOKEN    set759;
    pANTLR3_COMMON_TOKEN    INTO_SYMBOL760;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL761;
    MySQLParser_string_literal_return string_literal758;
    #undef	RETURN_TYPE_string_literal758
    #define	RETURN_TYPE_string_literal758 MySQLParser_string_literal_return

    MySQLParser_table_identifier_return table_identifier762;
    #undef	RETURN_TYPE_table_identifier762
    #define	RETURN_TYPE_table_identifier762 MySQLParser_table_identifier_return

    MySQLParser_partition_on_load_option_return partition_on_load_option763;
    #undef	RETURN_TYPE_partition_on_load_option763
    #define	RETURN_TYPE_partition_on_load_option763 MySQLParser_partition_on_load_option_return

    MySQLParser_charset_clause_return charset_clause764;
    #undef	RETURN_TYPE_charset_clause764
    #define	RETURN_TYPE_charset_clause764 MySQLParser_charset_clause_return

    MySQLParser_xml_rows_identified_by_return xml_rows_identified_by765;
    #undef	RETURN_TYPE_xml_rows_identified_by765
    #define	RETURN_TYPE_xml_rows_identified_by765 MySQLParser_xml_rows_identified_by_return

    MySQLParser_load_data_file_tail_return load_data_file_tail766;
    #undef	RETURN_TYPE_load_data_file_tail766
    #define	RETURN_TYPE_load_data_file_tail766 MySQLParser_load_data_file_tail_return

    pANTLR3_BASE_TREE LOAD_SYMBOL753_tree;
    pANTLR3_BASE_TREE XML_SYMBOL754_tree;
    pANTLR3_BASE_TREE set755_tree;
    pANTLR3_BASE_TREE LOCAL_SYMBOL756_tree;
    pANTLR3_BASE_TREE INFILE_SYMBOL757_tree;
    pANTLR3_BASE_TREE set759_tree;
    pANTLR3_BASE_TREE INTO_SYMBOL760_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL761_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    LOAD_SYMBOL753       = NULL;
    XML_SYMBOL754       = NULL;
    set755       = NULL;
    LOCAL_SYMBOL756       = NULL;
    INFILE_SYMBOL757       = NULL;
    set759       = NULL;
    INTO_SYMBOL760       = NULL;
    TABLE_SYMBOL761       = NULL;
    string_literal758.tree = NULL;

    table_identifier762.tree = NULL;

    partition_on_load_option763.tree = NULL;

    charset_clause764.tree = NULL;

    xml_rows_identified_by765.tree = NULL;

    load_data_file_tail766.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    LOAD_SYMBOL753_tree   = NULL;
    XML_SYMBOL754_tree   = NULL;
    set755_tree   = NULL;
    LOCAL_SYMBOL756_tree   = NULL;
    INFILE_SYMBOL757_tree   = NULL;
    set759_tree   = NULL;
    INTO_SYMBOL760_tree   = NULL;
    TABLE_SYMBOL761_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:724:19: ( LOAD_SYMBOL XML_SYMBOL ( LOW_PRIORITY_SYMBOL | CONCURRENT_SYMBOL )? ( LOCAL_SYMBOL )? INFILE_SYMBOL string_literal ( REPLACE_SYMBOL | IGNORE_SYMBOL )? INTO_SYMBOL TABLE_SYMBOL table_identifier ( partition_on_load_option )? ( charset_clause )? ( xml_rows_identified_by )? load_data_file_tail )
        // MySQL.g:725:2: LOAD_SYMBOL XML_SYMBOL ( LOW_PRIORITY_SYMBOL | CONCURRENT_SYMBOL )? ( LOCAL_SYMBOL )? INFILE_SYMBOL string_literal ( REPLACE_SYMBOL | IGNORE_SYMBOL )? INTO_SYMBOL TABLE_SYMBOL table_identifier ( partition_on_load_option )? ( charset_clause )? ( xml_rows_identified_by )? load_data_file_tail
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            LOAD_SYMBOL753 = (pANTLR3_COMMON_TOKEN) MATCHT(LOAD_SYMBOL, &FOLLOW_LOAD_SYMBOL_in_load_xml_statement3679);
            if  (HASEXCEPTION())
            {
                goto ruleload_xml_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            LOAD_SYMBOL753_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOAD_SYMBOL753));
            ADAPTOR->addChild(ADAPTOR, root_0, LOAD_SYMBOL753_tree);
            }

            XML_SYMBOL754 = (pANTLR3_COMMON_TOKEN) MATCHT(XML_SYMBOL, &FOLLOW_XML_SYMBOL_in_load_xml_statement3681);
            if  (HASEXCEPTION())
            {
                goto ruleload_xml_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            XML_SYMBOL754_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, XML_SYMBOL754));
            ADAPTOR->addChild(ADAPTOR, root_0, XML_SYMBOL754_tree);
            }

            // MySQL.g:725:25: ( LOW_PRIORITY_SYMBOL | CONCURRENT_SYMBOL )?
            {
                int alt249=2;
                switch ( LA(1) )
                {
                    case CONCURRENT_SYMBOL:
                    case LOW_PRIORITY_SYMBOL:
                    	{
                    		alt249=1;
                    	}
                        break;
                }

                switch (alt249)
                {
            	case 1:
            	    // MySQL.g:
            	    {
            	        set755=(pANTLR3_COMMON_TOKEN)LT(1);

            	        if ( LA(1) == CONCURRENT_SYMBOL || LA(1) == LOW_PRIORITY_SYMBOL )
            	        {
            	            CONSUME();
            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set755))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	            CONSTRUCTEX();
            	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	            EXCEPTION->expectingSet = NULL;

            	            goto ruleload_xml_statementEx;
            	        }


            	    }
            	    break;

                }
            }

            // MySQL.g:725:68: ( LOCAL_SYMBOL )?
            {
                int alt250=2;
                switch ( LA(1) )
                {
                    case LOCAL_SYMBOL:
                    	{
                    		alt250=1;
                    	}
                        break;
                }

                switch (alt250)
                {
            	case 1:
            	    // MySQL.g:725:68: LOCAL_SYMBOL
            	    {
            	        LOCAL_SYMBOL756 = (pANTLR3_COMMON_TOKEN) MATCHT(LOCAL_SYMBOL, &FOLLOW_LOCAL_SYMBOL_in_load_xml_statement3692);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleload_xml_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        LOCAL_SYMBOL756_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOCAL_SYMBOL756));
            	        ADAPTOR->addChild(ADAPTOR, root_0, LOCAL_SYMBOL756_tree);
            	        }

            	    }
            	    break;

                }
            }

            INFILE_SYMBOL757 = (pANTLR3_COMMON_TOKEN) MATCHT(INFILE_SYMBOL, &FOLLOW_INFILE_SYMBOL_in_load_xml_statement3695);
            if  (HASEXCEPTION())
            {
                goto ruleload_xml_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            INFILE_SYMBOL757_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INFILE_SYMBOL757));
            ADAPTOR->addChild(ADAPTOR, root_0, INFILE_SYMBOL757_tree);
            }

            FOLLOWPUSH(FOLLOW_string_literal_in_load_xml_statement3697);
            string_literal758=string_literal(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleload_xml_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal758.tree);

            // MySQL.g:726:3: ( REPLACE_SYMBOL | IGNORE_SYMBOL )?
            {
                int alt251=2;
                switch ( LA(1) )
                {
                    case IGNORE_SYMBOL:
                    case REPLACE_SYMBOL:
                    	{
                    		alt251=1;
                    	}
                        break;
                }

                switch (alt251)
                {
            	case 1:
            	    // MySQL.g:
            	    {
            	        set759=(pANTLR3_COMMON_TOKEN)LT(1);

            	        if ( LA(1) == IGNORE_SYMBOL || LA(1) == REPLACE_SYMBOL )
            	        {
            	            CONSUME();
            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set759))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	            CONSTRUCTEX();
            	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	            EXCEPTION->expectingSet = NULL;

            	            goto ruleload_xml_statementEx;
            	        }


            	    }
            	    break;

                }
            }

            INTO_SYMBOL760 = (pANTLR3_COMMON_TOKEN) MATCHT(INTO_SYMBOL, &FOLLOW_INTO_SYMBOL_in_load_xml_statement3710);
            if  (HASEXCEPTION())
            {
                goto ruleload_xml_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            INTO_SYMBOL760_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTO_SYMBOL760));
            ADAPTOR->addChild(ADAPTOR, root_0, INTO_SYMBOL760_tree);
            }

            TABLE_SYMBOL761 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_load_xml_statement3712);
            if  (HASEXCEPTION())
            {
                goto ruleload_xml_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            TABLE_SYMBOL761_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL761));
            ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL761_tree);
            }

            FOLLOWPUSH(FOLLOW_table_identifier_in_load_xml_statement3714);
            table_identifier762=table_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleload_xml_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_identifier762.tree);

            // MySQL.g:727:3: ( partition_on_load_option )?
            {
                int alt252=2;
                switch ( LA(1) )
                {
                    case PARTITION_SYMBOL:
                    	{
                    		{
                    		    int LA252_1 = LA(2);
                    		    if ( ((SERVER_VERSION >= 50602)) && (LA252_1 == OPEN_PAR_SYMBOL))
                    		    {
                    		        alt252=1;
                    		    }
                    		}
                    	}
                        break;
                }

                switch (alt252)
                {
            	case 1:
            	    // MySQL.g:727:3: partition_on_load_option
            	    {
            	        FOLLOWPUSH(FOLLOW_partition_on_load_option_in_load_xml_statement3718);
            	        partition_on_load_option763=partition_on_load_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleload_xml_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partition_on_load_option763.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:727:29: ( charset_clause )?
            {
                int alt253=2;
                switch ( LA(1) )
                {
                    case CHAR_SYMBOL:
                    	{
                    		alt253=1;
                    	}
                        break;
                    case CHARSET_SYMBOL:
                    	{
                    		switch ( LA(2) )
                    		{
                    		    case ACTION_SYMBOL:
                    		    case ADDDATE_SYMBOL:
                    		    case AFTER_SYMBOL:
                    		    case AGAINST_SYMBOL:
                    		    case AGGREGATE_SYMBOL:
                    		    case ALGORITHM_SYMBOL:
                    		    case ANALYZE_SYMBOL:
                    		    case ANY_SYMBOL:
                    		    case ASCII_SYMBOL:
                    		    case AT_SYMBOL:
                    		    case AUTHORS_SYMBOL:
                    		    case AUTOEXTEND_SIZE_SYMBOL:
                    		    case AUTO_INCREMENT_SYMBOL:
                    		    case AVG_ROW_LENGTH_SYMBOL:
                    		    case AVG_SYMBOL:
                    		    case BACKUP_SYMBOL:
                    		    case BACK_TICK_QUOTED_ID:
                    		    case BEGIN_SYMBOL:
                    		    case BINARY_SYMBOL:
                    		    case BINLOG_SYMBOL:
                    		    case BIT_SYMBOL:
                    		    case BLOCK_SYMBOL:
                    		    case BOOLEAN_SYMBOL:
                    		    case BOOL_SYMBOL:
                    		    case BTREE_SYMBOL:
                    		    case BYTE_SYMBOL:
                    		    case CACHE_SYMBOL:
                    		    case CASCADED_SYMBOL:
                    		    case CATALOG_NAME_SYMBOL:
                    		    case CHAIN_SYMBOL:
                    		    case CHANGED_SYMBOL:
                    		    case CHARSET_SYMBOL:
                    		    case CHECKSUM_SYMBOL:
                    		    case CIPHER_SYMBOL:
                    		    case CLASS_ORIGIN_SYMBOL:
                    		    case CLIENT_SYMBOL:
                    		    case CLOSE_SYMBOL:
                    		    case COALESCE_SYMBOL:
                    		    case CODE_SYMBOL:
                    		    case COLLATION_SYMBOL:
                    		    case COLUMNS_SYMBOL:
                    		    case COLUMN_FORMAT_SYMBOL:
                    		    case COLUMN_NAME_SYMBOL:
                    		    case COMMENT_SYMBOL:
                    		    case COMMITTED_SYMBOL:
                    		    case COMMIT_SYMBOL:
                    		    case COMPACT_SYMBOL:
                    		    case COMPLETION_SYMBOL:
                    		    case COMPRESSED_SYMBOL:
                    		    case CONCURRENT_SYMBOL:
                    		    case CONNECTION_SYMBOL:
                    		    case CONSISTENT_SYMBOL:
                    		    case CONSTRAINT_CATALOG_SYMBOL:
                    		    case CONSTRAINT_NAME_SYMBOL:
                    		    case CONSTRAINT_SCHEMA_SYMBOL:
                    		    case CONTAINS_SYMBOL:
                    		    case CONTEXT_SYMBOL:
                    		    case CONTRIBUTORS_SYMBOL:
                    		    case CPU_SYMBOL:
                    		    case CUBE_SYMBOL:
                    		    case CURRENT_SYMBOL:
                    		    case CURSOR_NAME_SYMBOL:
                    		    case DATAFILE_SYMBOL:
                    		    case DATA_SYMBOL:
                    		    case DATETIME_SYMBOL:
                    		    case DATE_SYMBOL:
                    		    case DAY_SYMBOL:
                    		    case DEALLOCATE_SYMBOL:
                    		    case DEFAULT_AUTH_SYMBOL:
                    		    case DEFAULT_SYMBOL:
                    		    case DEFINER_SYMBOL:
                    		    case DELAY_KEY_WRITE_SYMBOL:
                    		    case DES_KEY_FILE_SYMBOL:
                    		    case DIAGNOSTICS_SYMBOL:
                    		    case DIRECTORY_SYMBOL:
                    		    case DISABLE_SYMBOL:
                    		    case DISCARD_SYMBOL:
                    		    case DISK_SYMBOL:
                    		    case DOUBLE_QUOTED_TEXT:
                    		    case DO_SYMBOL:
                    		    case DUMPFILE_SYMBOL:
                    		    case DUPLICATE_SYMBOL:
                    		    case DYNAMIC_SYMBOL:
                    		    case ENABLE_SYMBOL:
                    		    case ENDS_SYMBOL:
                    		    case END_SYMBOL:
                    		    case ENGINES_SYMBOL:
                    		    case ENGINE_SYMBOL:
                    		    case ENUM_SYMBOL:
                    		    case ERRORS_SYMBOL:
                    		    case ERROR_SYMBOL:
                    		    case ESCAPE_SYMBOL:
                    		    case EVENTS_SYMBOL:
                    		    case EVENT_SYMBOL:
                    		    case EVERY_SYMBOL:
                    		    case EXECUTE_SYMBOL:
                    		    case EXPANSION_SYMBOL:
                    		    case EXPORT_SYMBOL:
                    		    case EXTENDED_SYMBOL:
                    		    case EXTENT_SIZE_SYMBOL:
                    		    case FAST_SYMBOL:
                    		    case FAULTS_SYMBOL:
                    		    case FILE_SYMBOL:
                    		    case FIRST_SYMBOL:
                    		    case FIXED_SYMBOL:
                    		    case FLUSH_SYMBOL:
                    		    case FORMAT_SYMBOL:
                    		    case FOUND_SYMBOL:
                    		    case FULL_SYMBOL:
                    		    case FUNCTION_SYMBOL:
                    		    case GENERAL_SYMBOL:
                    		    case GEOMETRYCOLLECTION_SYMBOL:
                    		    case GEOMETRY_SYMBOL:
                    		    case GET_FORMAT_SYMBOL:
                    		    case GLOBAL_SYMBOL:
                    		    case GRANTS_SYMBOL:
                    		    case HANDLER_SYMBOL:
                    		    case HASH_SYMBOL:
                    		    case HELP_SYMBOL:
                    		    case HOSTS_SYMBOL:
                    		    case HOST_SYMBOL:
                    		    case HOUR_SYMBOL:
                    		    case IDENTIFIED_SYMBOL:
                    		    case IDENTIFIER:
                    		    case IGNORE_SERVER_IDS_SYMBOL:
                    		    case IMPORT_SYMBOL:
                    		    case INDEXES_SYMBOL:
                    		    case INITIAL_SIZE_SYMBOL:
                    		    case INNODB_SYMBOL:
                    		    case INSERT_METHOD_SYMBOL:
                    		    case INSTALL_SYMBOL:
                    		    case INVOKER_SYMBOL:
                    		    case IO_SYMBOL:
                    		    case IPC_SYMBOL:
                    		    case ISOLATION_SYMBOL:
                    		    case ISSUER_SYMBOL:
                    		    case KEY_BLOCK_SIZE_SYMBOL:
                    		    case LANGUAGE_SYMBOL:
                    		    case LAST_SYMBOL:
                    		    case LEAVES_SYMBOL:
                    		    case LESS_SYMBOL:
                    		    case LEVEL_SYMBOL:
                    		    case LINESTRING_SYMBOL:
                    		    case LIST_SYMBOL:
                    		    case LOCAL_SYMBOL:
                    		    case LOCKS_SYMBOL:
                    		    case LOGFILE_SYMBOL:
                    		    case LOGS_SYMBOL:
                    		    case MASTER_AUTO_POSITION_SYMBOL:
                    		    case MASTER_CONNECT_RETRY_SYMBOL:
                    		    case MASTER_DELAY_SYMBOL:
                    		    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    		    case MASTER_HOST_SYMBOL:
                    		    case MASTER_LOG_FILE_SYMBOL:
                    		    case MASTER_LOG_POS_SYMBOL:
                    		    case MASTER_PASSWORD_SYMBOL:
                    		    case MASTER_PORT_SYMBOL:
                    		    case MASTER_RETRY_COUNT_SYMBOL:
                    		    case MASTER_SERVER_ID_SYMBOL:
                    		    case MASTER_SSL_CAPATH_SYMBOL:
                    		    case MASTER_SSL_CA_SYMBOL:
                    		    case MASTER_SSL_CERT_SYMBOL:
                    		    case MASTER_SSL_CIPHER_SYMBOL:
                    		    case MASTER_SSL_CRLPATH_SYMBOL:
                    		    case MASTER_SSL_CRL_SYMBOL:
                    		    case MASTER_SSL_KEY_SYMBOL:
                    		    case MASTER_SSL_SYMBOL:
                    		    case MASTER_SYMBOL:
                    		    case MASTER_USER_SYMBOL:
                    		    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    		    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    		    case MAX_ROWS_SYMBOL:
                    		    case MAX_SIZE_SYMBOL:
                    		    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    		    case MAX_USER_CONNECTIONS_SYMBOL:
                    		    case MEDIUM_SYMBOL:
                    		    case MEMORY_SYMBOL:
                    		    case MERGE_SYMBOL:
                    		    case MESSAGE_TEXT_SYMBOL:
                    		    case MICROSECOND_SYMBOL:
                    		    case MIGRATE_SYMBOL:
                    		    case MINUTE_SYMBOL:
                    		    case MIN_ROWS_SYMBOL:
                    		    case MODE_SYMBOL:
                    		    case MODIFY_SYMBOL:
                    		    case MONTH_SYMBOL:
                    		    case MULTILINESTRING_SYMBOL:
                    		    case MULTIPOINT_SYMBOL:
                    		    case MULTIPOLYGON_SYMBOL:
                    		    case MUTEX_SYMBOL:
                    		    case MYSQL_ERRNO_SYMBOL:
                    		    case NAMES_SYMBOL:
                    		    case NAME_SYMBOL:
                    		    case NATIONAL_SYMBOL:
                    		    case NCHAR_SYMBOL:
                    		    case NCHAR_TEXT:
                    		    case NDBCLUSTER_SYMBOL:
                    		    case NEW_SYMBOL:
                    		    case NEXT_SYMBOL:
                    		    case NODEGROUP_SYMBOL:
                    		    case NONE_SYMBOL:
                    		    case NO_SYMBOL:
                    		    case NO_WAIT_SYMBOL:
                    		    case NUMBER_SYMBOL:
                    		    case NVARCHAR_SYMBOL:
                    		    case OFFSET_SYMBOL:
                    		    case OLD_PASSWORD_SYMBOL:
                    		    case ONE_SHOT_SYMBOL:
                    		    case ONE_SYMBOL:
                    		    case OPEN_SYMBOL:
                    		    case OPTIONS_SYMBOL:
                    		    case OWNER_SYMBOL:
                    		    case PACK_KEYS_SYMBOL:
                    		    case PAGE_SYMBOL:
                    		    case PARSER_SYMBOL:
                    		    case PARTIAL_SYMBOL:
                    		    case PARTITIONING_SYMBOL:
                    		    case PARTITIONS_SYMBOL:
                    		    case PARTITION_SYMBOL:
                    		    case PASSWORD_SYMBOL:
                    		    case PHASE_SYMBOL:
                    		    case PLUGINS_SYMBOL:
                    		    case PLUGIN_DIR_SYMBOL:
                    		    case PLUGIN_SYMBOL:
                    		    case POINT_SYMBOL:
                    		    case POLYGON_SYMBOL:
                    		    case PORT_SYMBOL:
                    		    case PREPARE_SYMBOL:
                    		    case PRESERVE_SYMBOL:
                    		    case PREV_SYMBOL:
                    		    case PRIVILEGES_SYMBOL:
                    		    case PROCESSLIST_SYMBOL:
                    		    case PROCESS_SYMBOL:
                    		    case PROFILES_SYMBOL:
                    		    case PROFILE_SYMBOL:
                    		    case PROXY_SYMBOL:
                    		    case QUARTER_SYMBOL:
                    		    case QUERY_SYMBOL:
                    		    case QUICK_SYMBOL:
                    		    case READ_ONLY_SYMBOL:
                    		    case REBUILD_SYMBOL:
                    		    case RECOVER_SYMBOL:
                    		    case REDOFILE_SYMBOL:
                    		    case REDO_BUFFER_SIZE_SYMBOL:
                    		    case REDUNDANT_SYMBOL:
                    		    case RELAYLOG_SYMBOL:
                    		    case RELAY_LOG_FILE_SYMBOL:
                    		    case RELAY_LOG_POS_SYMBOL:
                    		    case RELAY_SYMBOL:
                    		    case RELAY_THREAD_SYMBOL:
                    		    case RELOAD_SYMBOL:
                    		    case REMOVE_SYMBOL:
                    		    case REORGANIZE_SYMBOL:
                    		    case REPAIR_SYMBOL:
                    		    case REPEATABLE_SYMBOL:
                    		    case REPLICATION_SYMBOL:
                    		    case RESET_SYMBOL:
                    		    case RESTORE_SYMBOL:
                    		    case RESUME_SYMBOL:
                    		    case RETURNED_SQLSTATE_SYMBOL:
                    		    case RETURNS_SYMBOL:
                    		    case REVERSE_SYMBOL:
                    		    case ROLLBACK_SYMBOL:
                    		    case ROLLUP_SYMBOL:
                    		    case ROUTINE_SYMBOL:
                    		    case ROWS_SYMBOL:
                    		    case ROW_COUNT_SYMBOL:
                    		    case ROW_FORMAT_SYMBOL:
                    		    case ROW_SYMBOL:
                    		    case RTREE_SYMBOL:
                    		    case SAVEPOINT_SYMBOL:
                    		    case SCHEDULE_SYMBOL:
                    		    case SCHEMA_NAME_SYMBOL:
                    		    case SECOND_SYMBOL:
                    		    case SECURITY_SYMBOL:
                    		    case SERIALIZABLE_SYMBOL:
                    		    case SERIAL_SYMBOL:
                    		    case SERVER_SYMBOL:
                    		    case SESSION_SYMBOL:
                    		    case SHARE_SYMBOL:
                    		    case SHUTDOWN_SYMBOL:
                    		    case SIGNED_SYMBOL:
                    		    case SIMPLE_SYMBOL:
                    		    case SINGLE_QUOTED_TEXT:
                    		    case SLAVE_SYMBOL:
                    		    case SLOW_SYMBOL:
                    		    case SNAPSHOT_SYMBOL:
                    		    case SOCKET_SYMBOL:
                    		    case SONAME_SYMBOL:
                    		    case SOUNDS_SYMBOL:
                    		    case SOURCE_SYMBOL:
                    		    case SQL_AFTER_GTIDS_SYMBOL:
                    		    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    		    case SQL_BEFORE_GTIDS_SYMBOL:
                    		    case SQL_BUFFER_RESULT_SYMBOL:
                    		    case SQL_CACHE_SYMBOL:
                    		    case SQL_NO_CACHE_SYMBOL:
                    		    case SQL_THREAD_SYMBOL:
                    		    case STARTS_SYMBOL:
                    		    case START_SYMBOL:
                    		    case STATS_AUTO_RECALC_SYMBOL:
                    		    case STATS_PERSISTENT_SYMBOL:
                    		    case STATS_SAMPLE_PAGES_SYMBOL:
                    		    case STATUS_SYMBOL:
                    		    case STOP_SYMBOL:
                    		    case STORAGE_SYMBOL:
                    		    case STRING_SYMBOL:
                    		    case SUBCLASS_ORIGIN_SYMBOL:
                    		    case SUBDATE_SYMBOL:
                    		    case SUBJECT_SYMBOL:
                    		    case SUBPARTITIONS_SYMBOL:
                    		    case SUBPARTITION_SYMBOL:
                    		    case SUPER_SYMBOL:
                    		    case SUSPEND_SYMBOL:
                    		    case SWAPS_SYMBOL:
                    		    case SWITCHES_SYMBOL:
                    		    case TABLESPACE_SYMBOL:
                    		    case TABLES_SYMBOL:
                    		    case TABLE_CHECKSUM_SYMBOL:
                    		    case TABLE_NAME_SYMBOL:
                    		    case TEMPORARY_SYMBOL:
                    		    case TEMPTABLE_SYMBOL:
                    		    case TEXT_SYMBOL:
                    		    case THAN_SYMBOL:
                    		    case TIMESTAMP_ADD_SYMBOL:
                    		    case TIMESTAMP_DIFF_SYMBOL:
                    		    case TIMESTAMP_SYMBOL:
                    		    case TIME_SYMBOL:
                    		    case TRANSACTION_SYMBOL:
                    		    case TRIGGERS_SYMBOL:
                    		    case TRUNCATE_SYMBOL:
                    		    case TYPES_SYMBOL:
                    		    case TYPE_SYMBOL:
                    		    case UDF_RETURNS_SYMBOL:
                    		    case UNCOMMITTED_SYMBOL:
                    		    case UNDEFINED_SYMBOL:
                    		    case UNDERSCORE_CHARSET:
                    		    case UNDOFILE_SYMBOL:
                    		    case UNDO_BUFFER_SIZE_SYMBOL:
                    		    case UNICODE_SYMBOL:
                    		    case UNINSTALL_SYMBOL:
                    		    case UNKNOWN_SYMBOL:
                    		    case UNTIL_SYMBOL:
                    		    case UPGRADE_SYMBOL:
                    		    case USER_RESOURCES_SYMBOL:
                    		    case USER_SYMBOL:
                    		    case USE_FRM_SYMBOL:
                    		    case VALUE_SYMBOL:
                    		    case VARIABLES_SYMBOL:
                    		    case VIEW_SYMBOL:
                    		    case WAIT_SYMBOL:
                    		    case WARNINGS_SYMBOL:
                    		    case WEEK_SYMBOL:
                    		    case WEIGHT_STRING_SYMBOL:
                    		    case WORK_SYMBOL:
                    		    case WRAPPER_SYMBOL:
                    		    case X509_SYMBOL:
                    		    case XA_SYMBOL:
                    		    case XML_SYMBOL:
                    		    case YEAR_SYMBOL:
                    		    	{
                    		    		alt253=1;
                    		    	}
                    		        break;
                    		}

                    	}
                        break;
                }

                switch (alt253)
                {
            	case 1:
            	    // MySQL.g:727:29: charset_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_charset_clause_in_load_xml_statement3721);
            	        charset_clause764=charset_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleload_xml_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset_clause764.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:727:45: ( xml_rows_identified_by )?
            {
                int alt254=2;
                switch ( LA(1) )
                {
                    case ROWS_SYMBOL:
                    	{
                    		switch ( LA(2) )
                    		{
                    		    case IDENTIFIED_SYMBOL:
                    		    	{
                    		    		alt254=1;
                    		    	}
                    		        break;
                    		}

                    	}
                        break;
                }

                switch (alt254)
                {
            	case 1:
            	    // MySQL.g:727:45: xml_rows_identified_by
            	    {
            	        FOLLOWPUSH(FOLLOW_xml_rows_identified_by_in_load_xml_statement3724);
            	        xml_rows_identified_by765=xml_rows_identified_by(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleload_xml_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, xml_rows_identified_by765.tree);

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_load_data_file_tail_in_load_xml_statement3729);
            load_data_file_tail766=load_data_file_tail(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleload_xml_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, load_data_file_tail766.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleload_xml_statementEx; /* Prevent compiler warnings */
    ruleload_xml_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end load_xml_statement */

/**
 * $ANTLR start partition_on_load_option
 * MySQL.g:731:1: partition_on_load_option :{...}? => ( PARTITION_SYMBOL identifier_list_with_parentheses ) ;
 */
static MySQLParser_partition_on_load_option_return
partition_on_load_option(pMySQLParser ctx)
{
    MySQLParser_partition_on_load_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL767;
    MySQLParser_identifier_list_with_parentheses_return identifier_list_with_parentheses768;
    #undef	RETURN_TYPE_identifier_list_with_parentheses768
    #define	RETURN_TYPE_identifier_list_with_parentheses768 MySQLParser_identifier_list_with_parentheses_return

    pANTLR3_BASE_TREE PARTITION_SYMBOL767_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PARTITION_SYMBOL767       = NULL;
    identifier_list_with_parentheses768.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PARTITION_SYMBOL767_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:731:25: ({...}? => ( PARTITION_SYMBOL identifier_list_with_parentheses ) )
        // MySQL.g:732:2: {...}? => ( PARTITION_SYMBOL identifier_list_with_parentheses )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            if ( !((SERVER_VERSION >= 50602)) )
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
                    EXCEPTION->message      = (void *)"SERVER_VERSION >= 50602";
                    EXCEPTION->ruleName	 = (void *)"partition_on_load_option";


            }

            // MySQL.g:732:32: ( PARTITION_SYMBOL identifier_list_with_parentheses )
            // MySQL.g:732:33: PARTITION_SYMBOL identifier_list_with_parentheses
            {
                PARTITION_SYMBOL767 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_partition_on_load_option3743);
                if  (HASEXCEPTION())
                {
                    goto rulepartition_on_load_optionEx;
                }
                if (HASFAILED())
                {
                    return retval;
                }

                if ( BACKTRACKING==0 ) {
                PARTITION_SYMBOL767_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITION_SYMBOL767));
                ADAPTOR->addChild(ADAPTOR, root_0, PARTITION_SYMBOL767_tree);
                }

                FOLLOWPUSH(FOLLOW_identifier_list_with_parentheses_in_partition_on_load_option3745);
                identifier_list_with_parentheses768=identifier_list_with_parentheses(ctx);

                FOLLOWPOP();
                if  (HASEXCEPTION())
                {
                    goto rulepartition_on_load_optionEx;
                }
                if (HASFAILED())
                {
                    return retval;
                }

                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list_with_parentheses768.tree);

            }


        }

    }

    // This is where rules clean up and exit
    //
    goto rulepartition_on_load_optionEx; /* Prevent compiler warnings */
    rulepartition_on_load_optionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end partition_on_load_option */

/**
 * $ANTLR start xml_rows_identified_by
 * MySQL.g:735:1: xml_rows_identified_by : ROWS_SYMBOL IDENTIFIED_SYMBOL BY_SYMBOL string_literal ;
 */
static MySQLParser_xml_rows_identified_by_return
xml_rows_identified_by(pMySQLParser ctx)
{
    MySQLParser_xml_rows_identified_by_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    ROWS_SYMBOL769;
    pANTLR3_COMMON_TOKEN    IDENTIFIED_SYMBOL770;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL771;
    MySQLParser_string_literal_return string_literal772;
    #undef	RETURN_TYPE_string_literal772
    #define	RETURN_TYPE_string_literal772 MySQLParser_string_literal_return

    pANTLR3_BASE_TREE ROWS_SYMBOL769_tree;
    pANTLR3_BASE_TREE IDENTIFIED_SYMBOL770_tree;
    pANTLR3_BASE_TREE BY_SYMBOL771_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ROWS_SYMBOL769       = NULL;
    IDENTIFIED_SYMBOL770       = NULL;
    BY_SYMBOL771       = NULL;
    string_literal772.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ROWS_SYMBOL769_tree   = NULL;
    IDENTIFIED_SYMBOL770_tree   = NULL;
    BY_SYMBOL771_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:735:23: ( ROWS_SYMBOL IDENTIFIED_SYMBOL BY_SYMBOL string_literal )
        // MySQL.g:736:2: ROWS_SYMBOL IDENTIFIED_SYMBOL BY_SYMBOL string_literal
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            ROWS_SYMBOL769 = (pANTLR3_COMMON_TOKEN) MATCHT(ROWS_SYMBOL, &FOLLOW_ROWS_SYMBOL_in_xml_rows_identified_by3755);
            if  (HASEXCEPTION())
            {
                goto rulexml_rows_identified_byEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ROWS_SYMBOL769_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ROWS_SYMBOL769));
            ADAPTOR->addChild(ADAPTOR, root_0, ROWS_SYMBOL769_tree);
            }

            IDENTIFIED_SYMBOL770 = (pANTLR3_COMMON_TOKEN) MATCHT(IDENTIFIED_SYMBOL, &FOLLOW_IDENTIFIED_SYMBOL_in_xml_rows_identified_by3757);
            if  (HASEXCEPTION())
            {
                goto rulexml_rows_identified_byEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            IDENTIFIED_SYMBOL770_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IDENTIFIED_SYMBOL770));
            ADAPTOR->addChild(ADAPTOR, root_0, IDENTIFIED_SYMBOL770_tree);
            }

            BY_SYMBOL771 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_xml_rows_identified_by3759);
            if  (HASEXCEPTION())
            {
                goto rulexml_rows_identified_byEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            BY_SYMBOL771_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BY_SYMBOL771));
            ADAPTOR->addChild(ADAPTOR, root_0, BY_SYMBOL771_tree);
            }

            FOLLOWPUSH(FOLLOW_string_literal_in_xml_rows_identified_by3761);
            string_literal772=string_literal(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulexml_rows_identified_byEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal772.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto rulexml_rows_identified_byEx; /* Prevent compiler warnings */
    rulexml_rows_identified_byEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end xml_rows_identified_by */

/**
 * $ANTLR start load_data_file_tail
 * MySQL.g:739:1: load_data_file_tail : ( IGNORE_SYMBOL INTEGER LINES_SYMBOL )? ( load_data_file_target_list )? ( column_assignment_list_with_default )? ;
 */
static MySQLParser_load_data_file_tail_return
load_data_file_tail(pMySQLParser ctx)
{
    MySQLParser_load_data_file_tail_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    IGNORE_SYMBOL773;
    pANTLR3_COMMON_TOKEN    INTEGER774;
    pANTLR3_COMMON_TOKEN    LINES_SYMBOL775;
    MySQLParser_load_data_file_target_list_return load_data_file_target_list776;
    #undef	RETURN_TYPE_load_data_file_target_list776
    #define	RETURN_TYPE_load_data_file_target_list776 MySQLParser_load_data_file_target_list_return

    MySQLParser_column_assignment_list_with_default_return column_assignment_list_with_default777;
    #undef	RETURN_TYPE_column_assignment_list_with_default777
    #define	RETURN_TYPE_column_assignment_list_with_default777 MySQLParser_column_assignment_list_with_default_return

    pANTLR3_BASE_TREE IGNORE_SYMBOL773_tree;
    pANTLR3_BASE_TREE INTEGER774_tree;
    pANTLR3_BASE_TREE LINES_SYMBOL775_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    IGNORE_SYMBOL773       = NULL;
    INTEGER774       = NULL;
    LINES_SYMBOL775       = NULL;
    load_data_file_target_list776.tree = NULL;

    column_assignment_list_with_default777.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    IGNORE_SYMBOL773_tree   = NULL;
    INTEGER774_tree   = NULL;
    LINES_SYMBOL775_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:739:20: ( ( IGNORE_SYMBOL INTEGER LINES_SYMBOL )? ( load_data_file_target_list )? ( column_assignment_list_with_default )? )
        // MySQL.g:740:2: ( IGNORE_SYMBOL INTEGER LINES_SYMBOL )? ( load_data_file_target_list )? ( column_assignment_list_with_default )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:740:2: ( IGNORE_SYMBOL INTEGER LINES_SYMBOL )?
            {
                int alt255=2;
                switch ( LA(1) )
                {
                    case IGNORE_SYMBOL:
                    	{
                    		alt255=1;
                    	}
                        break;
                }

                switch (alt255)
                {
            	case 1:
            	    // MySQL.g:740:3: IGNORE_SYMBOL INTEGER LINES_SYMBOL
            	    {
            	        IGNORE_SYMBOL773 = (pANTLR3_COMMON_TOKEN) MATCHT(IGNORE_SYMBOL, &FOLLOW_IGNORE_SYMBOL_in_load_data_file_tail3771);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleload_data_file_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        IGNORE_SYMBOL773_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IGNORE_SYMBOL773));
            	        ADAPTOR->addChild(ADAPTOR, root_0, IGNORE_SYMBOL773_tree);
            	        }

            	        INTEGER774 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_load_data_file_tail3773);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleload_data_file_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INTEGER774_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER774));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER774_tree);
            	        }

            	        LINES_SYMBOL775 = (pANTLR3_COMMON_TOKEN) MATCHT(LINES_SYMBOL, &FOLLOW_LINES_SYMBOL_in_load_data_file_tail3775);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleload_data_file_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        LINES_SYMBOL775_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LINES_SYMBOL775));
            	        ADAPTOR->addChild(ADAPTOR, root_0, LINES_SYMBOL775_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:740:40: ( load_data_file_target_list )?
            {
                int alt256=2;
                switch ( LA(1) )
                {
                    case OPEN_PAR_SYMBOL:
                    	{
                    		alt256=1;
                    	}
                        break;
                }

                switch (alt256)
                {
            	case 1:
            	    // MySQL.g:740:40: load_data_file_target_list
            	    {
            	        FOLLOWPUSH(FOLLOW_load_data_file_target_list_in_load_data_file_tail3779);
            	        load_data_file_target_list776=load_data_file_target_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleload_data_file_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, load_data_file_target_list776.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:740:68: ( column_assignment_list_with_default )?
            {
                int alt257=2;
                {
                    int LA257_0 = LA(1);
                    if ( (LA257_0 == BACK_TICK_QUOTED_ID || LA257_0 == IDENTIFIER))
                    {
                        alt257=1;
                    }
                    else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA257_0 == DOUBLE_QUOTED_TEXT))
                    {
                        alt257=1;
                    }
                    else if ( (((LA257_0 >= ACTION_SYMBOL) && (LA257_0 <= ADDDATE_SYMBOL)) || ((LA257_0 >= AFTER_SYMBOL) && (LA257_0 <= ALGORITHM_SYMBOL)) || LA257_0 == ANALYZE_SYMBOL || ((LA257_0 >= ANY_SYMBOL) && (LA257_0 <= ASCII_SYMBOL)) || ((LA257_0 >= AT_SYMBOL) && (LA257_0 <= BACKUP_SYMBOL)) || LA257_0 == BEGIN_SYMBOL || LA257_0 == BINLOG_SYMBOL || LA257_0 == BIT_SYMBOL || ((LA257_0 >= BLOCK_SYMBOL) && (LA257_0 <= BOOL_SYMBOL)) || ((LA257_0 >= BTREE_SYMBOL) && (LA257_0 <= BYTE_SYMBOL)) || LA257_0 == CACHE_SYMBOL || LA257_0 == CASCADED_SYMBOL || ((LA257_0 >= CATALOG_NAME_SYMBOL) && (LA257_0 <= CHANGED_SYMBOL)) || LA257_0 == CHARSET_SYMBOL || LA257_0 == CHECKSUM_SYMBOL || ((LA257_0 >= CIPHER_SYMBOL) && (LA257_0 <= CLIENT_SYMBOL)) || ((LA257_0 >= CLOSE_SYMBOL) && (LA257_0 <= CODE_SYMBOL)) || LA257_0 == COLLATION_SYMBOL || ((LA257_0 >= COLUMNS_SYMBOL) && (LA257_0 <= COLUMN_NAME_SYMBOL)) || ((LA257_0 >= COMMENT_SYMBOL) && (LA257_0 <= COMPRESSED_SYMBOL)) || LA257_0 == CONCURRENT_SYMBOL || ((LA257_0 >= CONNECTION_SYMBOL) && (LA257_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA257_0 >= CONTAINS_SYMBOL) && (LA257_0 <= CONTEXT_SYMBOL)) || LA257_0 == CONTRIBUTORS_SYMBOL || LA257_0 == CPU_SYMBOL || LA257_0 == CUBE_SYMBOL || LA257_0 == CURRENT_SYMBOL || LA257_0 == CURSOR_NAME_SYMBOL || ((LA257_0 >= DATAFILE_SYMBOL) && (LA257_0 <= DATETIME_SYMBOL)) || LA257_0 == DATE_SYMBOL || ((LA257_0 >= DAY_SYMBOL) && (LA257_0 <= DEALLOCATE_SYMBOL)) || LA257_0 == DEFAULT_AUTH_SYMBOL || LA257_0 == DEFINER_SYMBOL || LA257_0 == DELAY_KEY_WRITE_SYMBOL || LA257_0 == DES_KEY_FILE_SYMBOL || LA257_0 == DIAGNOSTICS_SYMBOL || ((LA257_0 >= DIRECTORY_SYMBOL) && (LA257_0 <= DISK_SYMBOL)) || LA257_0 == DOT_SYMBOL || LA257_0 == DO_SYMBOL || ((LA257_0 >= DUMPFILE_SYMBOL) && (LA257_0 <= DYNAMIC_SYMBOL)) || LA257_0 == ENABLE_SYMBOL || LA257_0 == ENDS_SYMBOL || ((LA257_0 >= END_SYMBOL) && (LA257_0 <= ENUM_SYMBOL)) || ((LA257_0 >= ERRORS_SYMBOL) && (LA257_0 <= ERROR_SYMBOL)) || ((LA257_0 >= ESCAPE_SYMBOL) && (LA257_0 <= EVERY_SYMBOL)) || LA257_0 == EXECUTE_SYMBOL || LA257_0 == EXPANSION_SYMBOL || LA257_0 == EXPORT_SYMBOL || ((LA257_0 >= EXTENDED_SYMBOL) && (LA257_0 <= EXTENT_SIZE_SYMBOL)) || ((LA257_0 >= FAST_SYMBOL) && (LA257_0 <= FAULTS_SYMBOL)) || ((LA257_0 >= FILE_SYMBOL) && (LA257_0 <= FIXED_SYMBOL)) || LA257_0 == FLUSH_SYMBOL || LA257_0 == FORMAT_SYMBOL || LA257_0 == FOUND_SYMBOL || LA257_0 == FULL_SYMBOL || ((LA257_0 >= FUNCTION_SYMBOL) && (LA257_0 <= GET_FORMAT_SYMBOL)) || ((LA257_0 >= GLOBAL_SYMBOL) && (LA257_0 <= GRANTS_SYMBOL)) || ((LA257_0 >= HANDLER_SYMBOL) && (LA257_0 <= HASH_SYMBOL)) || LA257_0 == HELP_SYMBOL || ((LA257_0 >= HOSTS_SYMBOL) && (LA257_0 <= HOST_SYMBOL)) || ((LA257_0 >= HOUR_SYMBOL) && (LA257_0 <= IDENTIFIED_SYMBOL)) || LA257_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA257_0 >= IMPORT_SYMBOL) && (LA257_0 <= INDEXES_SYMBOL)) || LA257_0 == INITIAL_SIZE_SYMBOL || LA257_0 == INNODB_SYMBOL || LA257_0 == INSERT_METHOD_SYMBOL || LA257_0 == INSTALL_SYMBOL || LA257_0 == INVOKER_SYMBOL || LA257_0 == IO_SYMBOL || ((LA257_0 >= IPC_SYMBOL) && (LA257_0 <= ISSUER_SYMBOL)) || LA257_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA257_0 >= LANGUAGE_SYMBOL) && (LA257_0 <= LAST_SYMBOL)) || LA257_0 == LEAVES_SYMBOL || LA257_0 == LESS_SYMBOL || LA257_0 == LEVEL_SYMBOL || LA257_0 == LINESTRING_SYMBOL || LA257_0 == LIST_SYMBOL || LA257_0 == LOCAL_SYMBOL || LA257_0 == LOCKS_SYMBOL || LA257_0 == LOGFILE_SYMBOL || LA257_0 == LOGS_SYMBOL || LA257_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA257_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA257_0 <= MASTER_SSL_SYMBOL)) || ((LA257_0 >= MASTER_SYMBOL) && (LA257_0 <= MASTER_USER_SYMBOL)) || ((LA257_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA257_0 <= MAX_SIZE_SYMBOL)) || ((LA257_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA257_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA257_0 >= MEDIUM_SYMBOL) && (LA257_0 <= MICROSECOND_SYMBOL)) || LA257_0 == MIGRATE_SYMBOL || ((LA257_0 >= MINUTE_SYMBOL) && (LA257_0 <= MIN_ROWS_SYMBOL)) || LA257_0 == MODE_SYMBOL || LA257_0 == MODIFY_SYMBOL || ((LA257_0 >= MONTH_SYMBOL) && (LA257_0 <= MULTILINESTRING_SYMBOL)) || ((LA257_0 >= MULTIPOINT_SYMBOL) && (LA257_0 <= MULTIPOLYGON_SYMBOL)) || ((LA257_0 >= MUTEX_SYMBOL) && (LA257_0 <= NATIONAL_SYMBOL)) || LA257_0 == NCHAR_SYMBOL || LA257_0 == NDBCLUSTER_SYMBOL || ((LA257_0 >= NEW_SYMBOL) && (LA257_0 <= NONE_SYMBOL)) || ((LA257_0 >= NO_SYMBOL) && (LA257_0 <= NO_WAIT_SYMBOL)) || LA257_0 == NUMBER_SYMBOL || LA257_0 == NVARCHAR_SYMBOL || ((LA257_0 >= OFFSET_SYMBOL) && (LA257_0 <= ONE_SYMBOL)) || LA257_0 == OPEN_SYMBOL || LA257_0 == OPTIONS_SYMBOL || ((LA257_0 >= OWNER_SYMBOL) && (LA257_0 <= PAGE_SYMBOL)) || ((LA257_0 >= PARSER_SYMBOL) && (LA257_0 <= PARTITION_SYMBOL)) || ((LA257_0 >= PASSWORD_SYMBOL) && (LA257_0 <= PLUGIN_SYMBOL)) || ((LA257_0 >= POINT_SYMBOL) && (LA257_0 <= PORT_SYMBOL)) || ((LA257_0 >= PREPARE_SYMBOL) && (LA257_0 <= PREV_SYMBOL)) || LA257_0 == PRIVILEGES_SYMBOL || ((LA257_0 >= PROCESSLIST_SYMBOL) && (LA257_0 <= PROXY_SYMBOL)) || ((LA257_0 >= QUARTER_SYMBOL) && (LA257_0 <= QUICK_SYMBOL)) || LA257_0 == READ_ONLY_SYMBOL || ((LA257_0 >= REBUILD_SYMBOL) && (LA257_0 <= REDUNDANT_SYMBOL)) || ((LA257_0 >= RELAYLOG_SYMBOL) && (LA257_0 <= RELAY_THREAD_SYMBOL)) || ((LA257_0 >= RELOAD_SYMBOL) && (LA257_0 <= REMOVE_SYMBOL)) || ((LA257_0 >= REORGANIZE_SYMBOL) && (LA257_0 <= REPEATABLE_SYMBOL)) || LA257_0 == REPLICATION_SYMBOL || LA257_0 == RESET_SYMBOL || LA257_0 == RESTORE_SYMBOL || ((LA257_0 >= RESUME_SYMBOL) && (LA257_0 <= RETURNS_SYMBOL)) || LA257_0 == REVERSE_SYMBOL || ((LA257_0 >= ROLLBACK_SYMBOL) && (LA257_0 <= SCHEDULE_SYMBOL)) || LA257_0 == SCHEMA_NAME_SYMBOL || ((LA257_0 >= SECOND_SYMBOL) && (LA257_0 <= SECURITY_SYMBOL)) || ((LA257_0 >= SERIALIZABLE_SYMBOL) && (LA257_0 <= SERIAL_SYMBOL)) || ((LA257_0 >= SERVER_SYMBOL) && (LA257_0 <= SESSION_SYMBOL)) || LA257_0 == SHARE_SYMBOL || LA257_0 == SHUTDOWN_SYMBOL || ((LA257_0 >= SIGNED_SYMBOL) && (LA257_0 <= SIMPLE_SYMBOL)) || ((LA257_0 >= SLAVE_SYMBOL) && (LA257_0 <= SLOW_SYMBOL)) || ((LA257_0 >= SNAPSHOT_SYMBOL) && (LA257_0 <= SOURCE_SYMBOL)) || ((LA257_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA257_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA257_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA257_0 <= SQL_CACHE_SYMBOL)) || LA257_0 == SQL_NO_CACHE_SYMBOL || LA257_0 == SQL_THREAD_SYMBOL || ((LA257_0 >= STARTS_SYMBOL) && (LA257_0 <= STATUS_SYMBOL)) || ((LA257_0 >= STOP_SYMBOL) && (LA257_0 <= STORAGE_SYMBOL)) || ((LA257_0 >= STRING_SYMBOL) && (LA257_0 <= SUBPARTITION_SYMBOL)) || ((LA257_0 >= SUPER_SYMBOL) && (LA257_0 <= SWITCHES_SYMBOL)) || ((LA257_0 >= TABLESPACE_SYMBOL) && (LA257_0 <= TABLE_NAME_SYMBOL)) || ((LA257_0 >= TEMPORARY_SYMBOL) && (LA257_0 <= TEMPTABLE_SYMBOL)) || ((LA257_0 >= TEXT_SYMBOL) && (LA257_0 <= THAN_SYMBOL)) || ((LA257_0 >= TIMESTAMP_ADD_SYMBOL) && (LA257_0 <= TIME_SYMBOL)) || ((LA257_0 >= TRANSACTION_SYMBOL) && (LA257_0 <= TRIGGERS_SYMBOL)) || ((LA257_0 >= TRUNCATE_SYMBOL) && (LA257_0 <= UDF_RETURNS_SYMBOL)) || ((LA257_0 >= UNCOMMITTED_SYMBOL) && (LA257_0 <= UNDEFINED_SYMBOL)) || ((LA257_0 >= UNDOFILE_SYMBOL) && (LA257_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA257_0 >= UNICODE_SYMBOL) && (LA257_0 <= UNINSTALL_SYMBOL)) || LA257_0 == UNKNOWN_SYMBOL || LA257_0 == UNTIL_SYMBOL || LA257_0 == UPGRADE_SYMBOL || ((LA257_0 >= USER_RESOURCES_SYMBOL) && (LA257_0 <= USE_FRM_SYMBOL)) || LA257_0 == VALUE_SYMBOL || LA257_0 == VARIABLES_SYMBOL || ((LA257_0 >= VIEW_SYMBOL) && (LA257_0 <= WEIGHT_STRING_SYMBOL)) || ((LA257_0 >= WORK_SYMBOL) && (LA257_0 <= WRAPPER_SYMBOL)) || LA257_0 == X509_SYMBOL || ((LA257_0 >= XA_SYMBOL) && (LA257_0 <= XML_SYMBOL)) || LA257_0 == YEAR_SYMBOL))
                    {
                        alt257=1;
                    }
                }
                switch (alt257)
                {
            	case 1:
            	    // MySQL.g:740:68: column_assignment_list_with_default
            	    {
            	        FOLLOWPUSH(FOLLOW_column_assignment_list_with_default_in_load_data_file_tail3782);
            	        column_assignment_list_with_default777=column_assignment_list_with_default(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleload_data_file_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, column_assignment_list_with_default777.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleload_data_file_tailEx; /* Prevent compiler warnings */
    ruleload_data_file_tailEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end load_data_file_tail */

/**
 * $ANTLR start load_data_file_target_list
 * MySQL.g:743:1: load_data_file_target_list : OPEN_PAR_SYMBOL ( field_or_variable_list )? CLOSE_PAR_SYMBOL ;
 */
static MySQLParser_load_data_file_target_list_return
load_data_file_target_list(pMySQLParser ctx)
{
    MySQLParser_load_data_file_target_list_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL778;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL780;
    MySQLParser_field_or_variable_list_return field_or_variable_list779;
    #undef	RETURN_TYPE_field_or_variable_list779
    #define	RETURN_TYPE_field_or_variable_list779 MySQLParser_field_or_variable_list_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL778_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL780_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL778       = NULL;
    CLOSE_PAR_SYMBOL780       = NULL;
    field_or_variable_list779.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL778_tree   = NULL;
    CLOSE_PAR_SYMBOL780_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:743:27: ( OPEN_PAR_SYMBOL ( field_or_variable_list )? CLOSE_PAR_SYMBOL )
        // MySQL.g:744:2: OPEN_PAR_SYMBOL ( field_or_variable_list )? CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPEN_PAR_SYMBOL778 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_load_data_file_target_list3792);
            if  (HASEXCEPTION())
            {
                goto ruleload_data_file_target_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL778_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL778));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL778_tree);
            }

            // MySQL.g:744:18: ( field_or_variable_list )?
            {
                int alt258=2;
                {
                    int LA258_0 = LA(1);
                    if ( (LA258_0 == BACK_TICK_QUOTED_ID || LA258_0 == IDENTIFIER))
                    {
                        alt258=1;
                    }
                    else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA258_0 == DOUBLE_QUOTED_TEXT))
                    {
                        alt258=1;
                    }
                    else if ( (((LA258_0 >= ACTION_SYMBOL) && (LA258_0 <= ADDDATE_SYMBOL)) || ((LA258_0 >= AFTER_SYMBOL) && (LA258_0 <= ALGORITHM_SYMBOL)) || LA258_0 == ANALYZE_SYMBOL || ((LA258_0 >= ANY_SYMBOL) && (LA258_0 <= ASCII_SYMBOL)) || ((LA258_0 >= AT_SIGN_SYMBOL) && (LA258_0 <= BACKUP_SYMBOL)) || LA258_0 == BEGIN_SYMBOL || LA258_0 == BINLOG_SYMBOL || LA258_0 == BIT_SYMBOL || ((LA258_0 >= BLOCK_SYMBOL) && (LA258_0 <= BOOL_SYMBOL)) || ((LA258_0 >= BTREE_SYMBOL) && (LA258_0 <= BYTE_SYMBOL)) || LA258_0 == CACHE_SYMBOL || LA258_0 == CASCADED_SYMBOL || ((LA258_0 >= CATALOG_NAME_SYMBOL) && (LA258_0 <= CHANGED_SYMBOL)) || LA258_0 == CHARSET_SYMBOL || LA258_0 == CHECKSUM_SYMBOL || ((LA258_0 >= CIPHER_SYMBOL) && (LA258_0 <= CLIENT_SYMBOL)) || ((LA258_0 >= CLOSE_SYMBOL) && (LA258_0 <= CODE_SYMBOL)) || LA258_0 == COLLATION_SYMBOL || ((LA258_0 >= COLUMNS_SYMBOL) && (LA258_0 <= COLUMN_NAME_SYMBOL)) || ((LA258_0 >= COMMENT_SYMBOL) && (LA258_0 <= COMPRESSED_SYMBOL)) || LA258_0 == CONCURRENT_SYMBOL || ((LA258_0 >= CONNECTION_SYMBOL) && (LA258_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA258_0 >= CONTAINS_SYMBOL) && (LA258_0 <= CONTEXT_SYMBOL)) || LA258_0 == CONTRIBUTORS_SYMBOL || LA258_0 == CPU_SYMBOL || LA258_0 == CUBE_SYMBOL || LA258_0 == CURRENT_SYMBOL || LA258_0 == CURSOR_NAME_SYMBOL || ((LA258_0 >= DATAFILE_SYMBOL) && (LA258_0 <= DATETIME_SYMBOL)) || LA258_0 == DATE_SYMBOL || ((LA258_0 >= DAY_SYMBOL) && (LA258_0 <= DEALLOCATE_SYMBOL)) || LA258_0 == DEFAULT_AUTH_SYMBOL || LA258_0 == DEFINER_SYMBOL || LA258_0 == DELAY_KEY_WRITE_SYMBOL || LA258_0 == DES_KEY_FILE_SYMBOL || LA258_0 == DIAGNOSTICS_SYMBOL || ((LA258_0 >= DIRECTORY_SYMBOL) && (LA258_0 <= DISK_SYMBOL)) || LA258_0 == DOT_SYMBOL || LA258_0 == DO_SYMBOL || ((LA258_0 >= DUMPFILE_SYMBOL) && (LA258_0 <= DYNAMIC_SYMBOL)) || LA258_0 == ENABLE_SYMBOL || LA258_0 == ENDS_SYMBOL || ((LA258_0 >= END_SYMBOL) && (LA258_0 <= ENUM_SYMBOL)) || ((LA258_0 >= ERRORS_SYMBOL) && (LA258_0 <= ERROR_SYMBOL)) || ((LA258_0 >= ESCAPE_SYMBOL) && (LA258_0 <= EVERY_SYMBOL)) || LA258_0 == EXECUTE_SYMBOL || LA258_0 == EXPANSION_SYMBOL || LA258_0 == EXPORT_SYMBOL || ((LA258_0 >= EXTENDED_SYMBOL) && (LA258_0 <= EXTENT_SIZE_SYMBOL)) || ((LA258_0 >= FAST_SYMBOL) && (LA258_0 <= FAULTS_SYMBOL)) || ((LA258_0 >= FILE_SYMBOL) && (LA258_0 <= FIXED_SYMBOL)) || LA258_0 == FLUSH_SYMBOL || LA258_0 == FORMAT_SYMBOL || LA258_0 == FOUND_SYMBOL || LA258_0 == FULL_SYMBOL || ((LA258_0 >= FUNCTION_SYMBOL) && (LA258_0 <= GET_FORMAT_SYMBOL)) || ((LA258_0 >= GLOBAL_SYMBOL) && (LA258_0 <= GRANTS_SYMBOL)) || ((LA258_0 >= HANDLER_SYMBOL) && (LA258_0 <= HASH_SYMBOL)) || LA258_0 == HELP_SYMBOL || ((LA258_0 >= HOSTS_SYMBOL) && (LA258_0 <= HOST_SYMBOL)) || ((LA258_0 >= HOUR_SYMBOL) && (LA258_0 <= IDENTIFIED_SYMBOL)) || LA258_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA258_0 >= IMPORT_SYMBOL) && (LA258_0 <= INDEXES_SYMBOL)) || LA258_0 == INITIAL_SIZE_SYMBOL || LA258_0 == INNODB_SYMBOL || LA258_0 == INSERT_METHOD_SYMBOL || LA258_0 == INSTALL_SYMBOL || LA258_0 == INVOKER_SYMBOL || LA258_0 == IO_SYMBOL || ((LA258_0 >= IPC_SYMBOL) && (LA258_0 <= ISSUER_SYMBOL)) || LA258_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA258_0 >= LANGUAGE_SYMBOL) && (LA258_0 <= LAST_SYMBOL)) || LA258_0 == LEAVES_SYMBOL || LA258_0 == LESS_SYMBOL || LA258_0 == LEVEL_SYMBOL || LA258_0 == LINESTRING_SYMBOL || LA258_0 == LIST_SYMBOL || LA258_0 == LOCAL_SYMBOL || LA258_0 == LOCKS_SYMBOL || LA258_0 == LOGFILE_SYMBOL || LA258_0 == LOGS_SYMBOL || LA258_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA258_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA258_0 <= MASTER_SSL_SYMBOL)) || ((LA258_0 >= MASTER_SYMBOL) && (LA258_0 <= MASTER_USER_SYMBOL)) || ((LA258_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA258_0 <= MAX_SIZE_SYMBOL)) || ((LA258_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA258_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA258_0 >= MEDIUM_SYMBOL) && (LA258_0 <= MICROSECOND_SYMBOL)) || LA258_0 == MIGRATE_SYMBOL || ((LA258_0 >= MINUTE_SYMBOL) && (LA258_0 <= MIN_ROWS_SYMBOL)) || LA258_0 == MODE_SYMBOL || LA258_0 == MODIFY_SYMBOL || ((LA258_0 >= MONTH_SYMBOL) && (LA258_0 <= MULTILINESTRING_SYMBOL)) || ((LA258_0 >= MULTIPOINT_SYMBOL) && (LA258_0 <= MULTIPOLYGON_SYMBOL)) || ((LA258_0 >= MUTEX_SYMBOL) && (LA258_0 <= NATIONAL_SYMBOL)) || LA258_0 == NCHAR_SYMBOL || LA258_0 == NDBCLUSTER_SYMBOL || ((LA258_0 >= NEW_SYMBOL) && (LA258_0 <= NONE_SYMBOL)) || ((LA258_0 >= NO_SYMBOL) && (LA258_0 <= NO_WAIT_SYMBOL)) || LA258_0 == NUMBER_SYMBOL || LA258_0 == NVARCHAR_SYMBOL || ((LA258_0 >= OFFSET_SYMBOL) && (LA258_0 <= ONE_SYMBOL)) || LA258_0 == OPEN_SYMBOL || LA258_0 == OPTIONS_SYMBOL || ((LA258_0 >= OWNER_SYMBOL) && (LA258_0 <= PAGE_SYMBOL)) || ((LA258_0 >= PARSER_SYMBOL) && (LA258_0 <= PARTITION_SYMBOL)) || ((LA258_0 >= PASSWORD_SYMBOL) && (LA258_0 <= PLUGIN_SYMBOL)) || ((LA258_0 >= POINT_SYMBOL) && (LA258_0 <= PORT_SYMBOL)) || ((LA258_0 >= PREPARE_SYMBOL) && (LA258_0 <= PREV_SYMBOL)) || LA258_0 == PRIVILEGES_SYMBOL || ((LA258_0 >= PROCESSLIST_SYMBOL) && (LA258_0 <= PROXY_SYMBOL)) || ((LA258_0 >= QUARTER_SYMBOL) && (LA258_0 <= QUICK_SYMBOL)) || LA258_0 == READ_ONLY_SYMBOL || ((LA258_0 >= REBUILD_SYMBOL) && (LA258_0 <= REDUNDANT_SYMBOL)) || ((LA258_0 >= RELAYLOG_SYMBOL) && (LA258_0 <= RELAY_THREAD_SYMBOL)) || ((LA258_0 >= RELOAD_SYMBOL) && (LA258_0 <= REMOVE_SYMBOL)) || ((LA258_0 >= REORGANIZE_SYMBOL) && (LA258_0 <= REPEATABLE_SYMBOL)) || LA258_0 == REPLICATION_SYMBOL || LA258_0 == RESET_SYMBOL || LA258_0 == RESTORE_SYMBOL || ((LA258_0 >= RESUME_SYMBOL) && (LA258_0 <= RETURNS_SYMBOL)) || LA258_0 == REVERSE_SYMBOL || ((LA258_0 >= ROLLBACK_SYMBOL) && (LA258_0 <= SCHEDULE_SYMBOL)) || LA258_0 == SCHEMA_NAME_SYMBOL || ((LA258_0 >= SECOND_SYMBOL) && (LA258_0 <= SECURITY_SYMBOL)) || ((LA258_0 >= SERIALIZABLE_SYMBOL) && (LA258_0 <= SERIAL_SYMBOL)) || ((LA258_0 >= SERVER_SYMBOL) && (LA258_0 <= SESSION_SYMBOL)) || LA258_0 == SHARE_SYMBOL || LA258_0 == SHUTDOWN_SYMBOL || ((LA258_0 >= SIGNED_SYMBOL) && (LA258_0 <= SIMPLE_SYMBOL)) || ((LA258_0 >= SLAVE_SYMBOL) && (LA258_0 <= SLOW_SYMBOL)) || ((LA258_0 >= SNAPSHOT_SYMBOL) && (LA258_0 <= SOURCE_SYMBOL)) || ((LA258_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA258_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA258_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA258_0 <= SQL_CACHE_SYMBOL)) || LA258_0 == SQL_NO_CACHE_SYMBOL || LA258_0 == SQL_THREAD_SYMBOL || ((LA258_0 >= STARTS_SYMBOL) && (LA258_0 <= STATUS_SYMBOL)) || ((LA258_0 >= STOP_SYMBOL) && (LA258_0 <= STORAGE_SYMBOL)) || ((LA258_0 >= STRING_SYMBOL) && (LA258_0 <= SUBPARTITION_SYMBOL)) || ((LA258_0 >= SUPER_SYMBOL) && (LA258_0 <= SWITCHES_SYMBOL)) || ((LA258_0 >= TABLESPACE_SYMBOL) && (LA258_0 <= TABLE_NAME_SYMBOL)) || ((LA258_0 >= TEMPORARY_SYMBOL) && (LA258_0 <= TEMPTABLE_SYMBOL)) || ((LA258_0 >= TEXT_SYMBOL) && (LA258_0 <= THAN_SYMBOL)) || ((LA258_0 >= TIMESTAMP_ADD_SYMBOL) && (LA258_0 <= TIME_SYMBOL)) || ((LA258_0 >= TRANSACTION_SYMBOL) && (LA258_0 <= TRIGGERS_SYMBOL)) || ((LA258_0 >= TRUNCATE_SYMBOL) && (LA258_0 <= UDF_RETURNS_SYMBOL)) || ((LA258_0 >= UNCOMMITTED_SYMBOL) && (LA258_0 <= UNDEFINED_SYMBOL)) || ((LA258_0 >= UNDOFILE_SYMBOL) && (LA258_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA258_0 >= UNICODE_SYMBOL) && (LA258_0 <= UNINSTALL_SYMBOL)) || LA258_0 == UNKNOWN_SYMBOL || LA258_0 == UNTIL_SYMBOL || LA258_0 == UPGRADE_SYMBOL || ((LA258_0 >= USER_RESOURCES_SYMBOL) && (LA258_0 <= USE_FRM_SYMBOL)) || LA258_0 == VALUE_SYMBOL || LA258_0 == VARIABLES_SYMBOL || ((LA258_0 >= VIEW_SYMBOL) && (LA258_0 <= WEIGHT_STRING_SYMBOL)) || ((LA258_0 >= WORK_SYMBOL) && (LA258_0 <= WRAPPER_SYMBOL)) || LA258_0 == X509_SYMBOL || ((LA258_0 >= XA_SYMBOL) && (LA258_0 <= XML_SYMBOL)) || LA258_0 == YEAR_SYMBOL))
                    {
                        alt258=1;
                    }
                }
                switch (alt258)
                {
            	case 1:
            	    // MySQL.g:744:18: field_or_variable_list
            	    {
            	        FOLLOWPUSH(FOLLOW_field_or_variable_list_in_load_data_file_target_list3794);
            	        field_or_variable_list779=field_or_variable_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleload_data_file_target_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_or_variable_list779.tree);

            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL780 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_load_data_file_target_list3797);
            if  (HASEXCEPTION())
            {
                goto ruleload_data_file_target_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL780_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL780));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL780_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleload_data_file_target_listEx; /* Prevent compiler warnings */
    ruleload_data_file_target_listEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end load_data_file_target_list */

/**
 * $ANTLR start field_or_variable_list
 * MySQL.g:747:1: field_or_variable_list : ( field_name | user_variable ) ( COMMA_SYMBOL ( field_name | user_variable ) )* ;
 */
static MySQLParser_field_or_variable_list_return
field_or_variable_list(pMySQLParser ctx)
{
    MySQLParser_field_or_variable_list_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL783;
    MySQLParser_field_name_return field_name781;
    #undef	RETURN_TYPE_field_name781
    #define	RETURN_TYPE_field_name781 MySQLParser_field_name_return

    MySQLParser_user_variable_return user_variable782;
    #undef	RETURN_TYPE_user_variable782
    #define	RETURN_TYPE_user_variable782 MySQLParser_user_variable_return

    MySQLParser_field_name_return field_name784;
    #undef	RETURN_TYPE_field_name784
    #define	RETURN_TYPE_field_name784 MySQLParser_field_name_return

    MySQLParser_user_variable_return user_variable785;
    #undef	RETURN_TYPE_user_variable785
    #define	RETURN_TYPE_user_variable785 MySQLParser_user_variable_return

    pANTLR3_BASE_TREE COMMA_SYMBOL783_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL783       = NULL;
    field_name781.tree = NULL;

    user_variable782.tree = NULL;

    field_name784.tree = NULL;

    user_variable785.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL783_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:747:23: ( ( field_name | user_variable ) ( COMMA_SYMBOL ( field_name | user_variable ) )* )
        // MySQL.g:748:2: ( field_name | user_variable ) ( COMMA_SYMBOL ( field_name | user_variable ) )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:748:2: ( field_name | user_variable )
            {
                int alt259=2;
                {
                    int LA259_0 = LA(1);
                    if ( (LA259_0 == BACK_TICK_QUOTED_ID || LA259_0 == IDENTIFIER))
                    {
                        alt259=1;
                    }
                    else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA259_0 == DOUBLE_QUOTED_TEXT))
                    {
                        alt259=1;
                    }
                    else if ( (((LA259_0 >= ACTION_SYMBOL) && (LA259_0 <= ADDDATE_SYMBOL)) || ((LA259_0 >= AFTER_SYMBOL) && (LA259_0 <= ALGORITHM_SYMBOL)) || LA259_0 == ANALYZE_SYMBOL || ((LA259_0 >= ANY_SYMBOL) && (LA259_0 <= ASCII_SYMBOL)) || ((LA259_0 >= AT_SYMBOL) && (LA259_0 <= BACKUP_SYMBOL)) || LA259_0 == BEGIN_SYMBOL || LA259_0 == BINLOG_SYMBOL || LA259_0 == BIT_SYMBOL || ((LA259_0 >= BLOCK_SYMBOL) && (LA259_0 <= BOOL_SYMBOL)) || ((LA259_0 >= BTREE_SYMBOL) && (LA259_0 <= BYTE_SYMBOL)) || LA259_0 == CACHE_SYMBOL || LA259_0 == CASCADED_SYMBOL || ((LA259_0 >= CATALOG_NAME_SYMBOL) && (LA259_0 <= CHANGED_SYMBOL)) || LA259_0 == CHARSET_SYMBOL || LA259_0 == CHECKSUM_SYMBOL || ((LA259_0 >= CIPHER_SYMBOL) && (LA259_0 <= CLIENT_SYMBOL)) || ((LA259_0 >= CLOSE_SYMBOL) && (LA259_0 <= CODE_SYMBOL)) || LA259_0 == COLLATION_SYMBOL || ((LA259_0 >= COLUMNS_SYMBOL) && (LA259_0 <= COLUMN_NAME_SYMBOL)) || ((LA259_0 >= COMMENT_SYMBOL) && (LA259_0 <= COMPRESSED_SYMBOL)) || LA259_0 == CONCURRENT_SYMBOL || ((LA259_0 >= CONNECTION_SYMBOL) && (LA259_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA259_0 >= CONTAINS_SYMBOL) && (LA259_0 <= CONTEXT_SYMBOL)) || LA259_0 == CONTRIBUTORS_SYMBOL || LA259_0 == CPU_SYMBOL || LA259_0 == CUBE_SYMBOL || LA259_0 == CURRENT_SYMBOL || LA259_0 == CURSOR_NAME_SYMBOL || ((LA259_0 >= DATAFILE_SYMBOL) && (LA259_0 <= DATETIME_SYMBOL)) || LA259_0 == DATE_SYMBOL || ((LA259_0 >= DAY_SYMBOL) && (LA259_0 <= DEALLOCATE_SYMBOL)) || LA259_0 == DEFAULT_AUTH_SYMBOL || LA259_0 == DEFINER_SYMBOL || LA259_0 == DELAY_KEY_WRITE_SYMBOL || LA259_0 == DES_KEY_FILE_SYMBOL || LA259_0 == DIAGNOSTICS_SYMBOL || ((LA259_0 >= DIRECTORY_SYMBOL) && (LA259_0 <= DISK_SYMBOL)) || LA259_0 == DOT_SYMBOL || LA259_0 == DO_SYMBOL || ((LA259_0 >= DUMPFILE_SYMBOL) && (LA259_0 <= DYNAMIC_SYMBOL)) || LA259_0 == ENABLE_SYMBOL || LA259_0 == ENDS_SYMBOL || ((LA259_0 >= END_SYMBOL) && (LA259_0 <= ENUM_SYMBOL)) || ((LA259_0 >= ERRORS_SYMBOL) && (LA259_0 <= ERROR_SYMBOL)) || ((LA259_0 >= ESCAPE_SYMBOL) && (LA259_0 <= EVERY_SYMBOL)) || LA259_0 == EXECUTE_SYMBOL || LA259_0 == EXPANSION_SYMBOL || LA259_0 == EXPORT_SYMBOL || ((LA259_0 >= EXTENDED_SYMBOL) && (LA259_0 <= EXTENT_SIZE_SYMBOL)) || ((LA259_0 >= FAST_SYMBOL) && (LA259_0 <= FAULTS_SYMBOL)) || ((LA259_0 >= FILE_SYMBOL) && (LA259_0 <= FIXED_SYMBOL)) || LA259_0 == FLUSH_SYMBOL || LA259_0 == FORMAT_SYMBOL || LA259_0 == FOUND_SYMBOL || LA259_0 == FULL_SYMBOL || ((LA259_0 >= FUNCTION_SYMBOL) && (LA259_0 <= GET_FORMAT_SYMBOL)) || ((LA259_0 >= GLOBAL_SYMBOL) && (LA259_0 <= GRANTS_SYMBOL)) || ((LA259_0 >= HANDLER_SYMBOL) && (LA259_0 <= HASH_SYMBOL)) || LA259_0 == HELP_SYMBOL || ((LA259_0 >= HOSTS_SYMBOL) && (LA259_0 <= HOST_SYMBOL)) || ((LA259_0 >= HOUR_SYMBOL) && (LA259_0 <= IDENTIFIED_SYMBOL)) || LA259_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA259_0 >= IMPORT_SYMBOL) && (LA259_0 <= INDEXES_SYMBOL)) || LA259_0 == INITIAL_SIZE_SYMBOL || LA259_0 == INNODB_SYMBOL || LA259_0 == INSERT_METHOD_SYMBOL || LA259_0 == INSTALL_SYMBOL || LA259_0 == INVOKER_SYMBOL || LA259_0 == IO_SYMBOL || ((LA259_0 >= IPC_SYMBOL) && (LA259_0 <= ISSUER_SYMBOL)) || LA259_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA259_0 >= LANGUAGE_SYMBOL) && (LA259_0 <= LAST_SYMBOL)) || LA259_0 == LEAVES_SYMBOL || LA259_0 == LESS_SYMBOL || LA259_0 == LEVEL_SYMBOL || LA259_0 == LINESTRING_SYMBOL || LA259_0 == LIST_SYMBOL || LA259_0 == LOCAL_SYMBOL || LA259_0 == LOCKS_SYMBOL || LA259_0 == LOGFILE_SYMBOL || LA259_0 == LOGS_SYMBOL || LA259_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA259_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA259_0 <= MASTER_SSL_SYMBOL)) || ((LA259_0 >= MASTER_SYMBOL) && (LA259_0 <= MASTER_USER_SYMBOL)) || ((LA259_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA259_0 <= MAX_SIZE_SYMBOL)) || ((LA259_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA259_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA259_0 >= MEDIUM_SYMBOL) && (LA259_0 <= MICROSECOND_SYMBOL)) || LA259_0 == MIGRATE_SYMBOL || ((LA259_0 >= MINUTE_SYMBOL) && (LA259_0 <= MIN_ROWS_SYMBOL)) || LA259_0 == MODE_SYMBOL || LA259_0 == MODIFY_SYMBOL || ((LA259_0 >= MONTH_SYMBOL) && (LA259_0 <= MULTILINESTRING_SYMBOL)) || ((LA259_0 >= MULTIPOINT_SYMBOL) && (LA259_0 <= MULTIPOLYGON_SYMBOL)) || ((LA259_0 >= MUTEX_SYMBOL) && (LA259_0 <= NATIONAL_SYMBOL)) || LA259_0 == NCHAR_SYMBOL || LA259_0 == NDBCLUSTER_SYMBOL || ((LA259_0 >= NEW_SYMBOL) && (LA259_0 <= NONE_SYMBOL)) || ((LA259_0 >= NO_SYMBOL) && (LA259_0 <= NO_WAIT_SYMBOL)) || LA259_0 == NUMBER_SYMBOL || LA259_0 == NVARCHAR_SYMBOL || ((LA259_0 >= OFFSET_SYMBOL) && (LA259_0 <= ONE_SYMBOL)) || LA259_0 == OPEN_SYMBOL || LA259_0 == OPTIONS_SYMBOL || ((LA259_0 >= OWNER_SYMBOL) && (LA259_0 <= PAGE_SYMBOL)) || ((LA259_0 >= PARSER_SYMBOL) && (LA259_0 <= PARTITION_SYMBOL)) || ((LA259_0 >= PASSWORD_SYMBOL) && (LA259_0 <= PLUGIN_SYMBOL)) || ((LA259_0 >= POINT_SYMBOL) && (LA259_0 <= PORT_SYMBOL)) || ((LA259_0 >= PREPARE_SYMBOL) && (LA259_0 <= PREV_SYMBOL)) || LA259_0 == PRIVILEGES_SYMBOL || ((LA259_0 >= PROCESSLIST_SYMBOL) && (LA259_0 <= PROXY_SYMBOL)) || ((LA259_0 >= QUARTER_SYMBOL) && (LA259_0 <= QUICK_SYMBOL)) || LA259_0 == READ_ONLY_SYMBOL || ((LA259_0 >= REBUILD_SYMBOL) && (LA259_0 <= REDUNDANT_SYMBOL)) || ((LA259_0 >= RELAYLOG_SYMBOL) && (LA259_0 <= RELAY_THREAD_SYMBOL)) || ((LA259_0 >= RELOAD_SYMBOL) && (LA259_0 <= REMOVE_SYMBOL)) || ((LA259_0 >= REORGANIZE_SYMBOL) && (LA259_0 <= REPEATABLE_SYMBOL)) || LA259_0 == REPLICATION_SYMBOL || LA259_0 == RESET_SYMBOL || LA259_0 == RESTORE_SYMBOL || ((LA259_0 >= RESUME_SYMBOL) && (LA259_0 <= RETURNS_SYMBOL)) || LA259_0 == REVERSE_SYMBOL || ((LA259_0 >= ROLLBACK_SYMBOL) && (LA259_0 <= SCHEDULE_SYMBOL)) || LA259_0 == SCHEMA_NAME_SYMBOL || ((LA259_0 >= SECOND_SYMBOL) && (LA259_0 <= SECURITY_SYMBOL)) || ((LA259_0 >= SERIALIZABLE_SYMBOL) && (LA259_0 <= SERIAL_SYMBOL)) || ((LA259_0 >= SERVER_SYMBOL) && (LA259_0 <= SESSION_SYMBOL)) || LA259_0 == SHARE_SYMBOL || LA259_0 == SHUTDOWN_SYMBOL || ((LA259_0 >= SIGNED_SYMBOL) && (LA259_0 <= SIMPLE_SYMBOL)) || ((LA259_0 >= SLAVE_SYMBOL) && (LA259_0 <= SLOW_SYMBOL)) || ((LA259_0 >= SNAPSHOT_SYMBOL) && (LA259_0 <= SOURCE_SYMBOL)) || ((LA259_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA259_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA259_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA259_0 <= SQL_CACHE_SYMBOL)) || LA259_0 == SQL_NO_CACHE_SYMBOL || LA259_0 == SQL_THREAD_SYMBOL || ((LA259_0 >= STARTS_SYMBOL) && (LA259_0 <= STATUS_SYMBOL)) || ((LA259_0 >= STOP_SYMBOL) && (LA259_0 <= STORAGE_SYMBOL)) || ((LA259_0 >= STRING_SYMBOL) && (LA259_0 <= SUBPARTITION_SYMBOL)) || ((LA259_0 >= SUPER_SYMBOL) && (LA259_0 <= SWITCHES_SYMBOL)) || ((LA259_0 >= TABLESPACE_SYMBOL) && (LA259_0 <= TABLE_NAME_SYMBOL)) || ((LA259_0 >= TEMPORARY_SYMBOL) && (LA259_0 <= TEMPTABLE_SYMBOL)) || ((LA259_0 >= TEXT_SYMBOL) && (LA259_0 <= THAN_SYMBOL)) || ((LA259_0 >= TIMESTAMP_ADD_SYMBOL) && (LA259_0 <= TIME_SYMBOL)) || ((LA259_0 >= TRANSACTION_SYMBOL) && (LA259_0 <= TRIGGERS_SYMBOL)) || ((LA259_0 >= TRUNCATE_SYMBOL) && (LA259_0 <= UDF_RETURNS_SYMBOL)) || ((LA259_0 >= UNCOMMITTED_SYMBOL) && (LA259_0 <= UNDEFINED_SYMBOL)) || ((LA259_0 >= UNDOFILE_SYMBOL) && (LA259_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA259_0 >= UNICODE_SYMBOL) && (LA259_0 <= UNINSTALL_SYMBOL)) || LA259_0 == UNKNOWN_SYMBOL || LA259_0 == UNTIL_SYMBOL || LA259_0 == UPGRADE_SYMBOL || ((LA259_0 >= USER_RESOURCES_SYMBOL) && (LA259_0 <= USE_FRM_SYMBOL)) || LA259_0 == VALUE_SYMBOL || LA259_0 == VARIABLES_SYMBOL || ((LA259_0 >= VIEW_SYMBOL) && (LA259_0 <= WEIGHT_STRING_SYMBOL)) || ((LA259_0 >= WORK_SYMBOL) && (LA259_0 <= WRAPPER_SYMBOL)) || LA259_0 == X509_SYMBOL || ((LA259_0 >= XA_SYMBOL) && (LA259_0 <= XML_SYMBOL)) || LA259_0 == YEAR_SYMBOL))
                    {
                        alt259=1;
                    }
                    else if ( (LA259_0 == AT_SIGN_SYMBOL))
                    {
                        alt259=2;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 259;
                        EXCEPTION->state        = 0;


                        goto rulefield_or_variable_listEx;

                    }
                }
                switch (alt259)
                {
            	case 1:
            	    // MySQL.g:748:3: field_name
            	    {
            	        FOLLOWPUSH(FOLLOW_field_name_in_field_or_variable_list3807);
            	        field_name781=field_name(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefield_or_variable_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_name781.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:748:16: user_variable
            	    {
            	        FOLLOWPUSH(FOLLOW_user_variable_in_field_or_variable_list3811);
            	        user_variable782=user_variable(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefield_or_variable_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user_variable782.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:748:31: ( COMMA_SYMBOL ( field_name | user_variable ) )*

            for (;;)
            {
                int alt261=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt261=1;
                	}
                    break;

                }

                switch (alt261)
                {
            	case 1:
            	    // MySQL.g:748:32: COMMA_SYMBOL ( field_name | user_variable )
            	    {
            	        COMMA_SYMBOL783 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_field_or_variable_list3815);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefield_or_variable_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL783_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL783));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL783_tree);
            	        }

            	        // MySQL.g:748:45: ( field_name | user_variable )
            	        {
            	            int alt260=2;
            	            {
            	                int LA260_0 = LA(1);
            	                if ( (LA260_0 == BACK_TICK_QUOTED_ID || LA260_0 == IDENTIFIER))
            	                {
            	                    alt260=1;
            	                }
            	                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA260_0 == DOUBLE_QUOTED_TEXT))
            	                {
            	                    alt260=1;
            	                }
            	                else if ( (((LA260_0 >= ACTION_SYMBOL) && (LA260_0 <= ADDDATE_SYMBOL)) || ((LA260_0 >= AFTER_SYMBOL) && (LA260_0 <= ALGORITHM_SYMBOL)) || LA260_0 == ANALYZE_SYMBOL || ((LA260_0 >= ANY_SYMBOL) && (LA260_0 <= ASCII_SYMBOL)) || ((LA260_0 >= AT_SYMBOL) && (LA260_0 <= BACKUP_SYMBOL)) || LA260_0 == BEGIN_SYMBOL || LA260_0 == BINLOG_SYMBOL || LA260_0 == BIT_SYMBOL || ((LA260_0 >= BLOCK_SYMBOL) && (LA260_0 <= BOOL_SYMBOL)) || ((LA260_0 >= BTREE_SYMBOL) && (LA260_0 <= BYTE_SYMBOL)) || LA260_0 == CACHE_SYMBOL || LA260_0 == CASCADED_SYMBOL || ((LA260_0 >= CATALOG_NAME_SYMBOL) && (LA260_0 <= CHANGED_SYMBOL)) || LA260_0 == CHARSET_SYMBOL || LA260_0 == CHECKSUM_SYMBOL || ((LA260_0 >= CIPHER_SYMBOL) && (LA260_0 <= CLIENT_SYMBOL)) || ((LA260_0 >= CLOSE_SYMBOL) && (LA260_0 <= CODE_SYMBOL)) || LA260_0 == COLLATION_SYMBOL || ((LA260_0 >= COLUMNS_SYMBOL) && (LA260_0 <= COLUMN_NAME_SYMBOL)) || ((LA260_0 >= COMMENT_SYMBOL) && (LA260_0 <= COMPRESSED_SYMBOL)) || LA260_0 == CONCURRENT_SYMBOL || ((LA260_0 >= CONNECTION_SYMBOL) && (LA260_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA260_0 >= CONTAINS_SYMBOL) && (LA260_0 <= CONTEXT_SYMBOL)) || LA260_0 == CONTRIBUTORS_SYMBOL || LA260_0 == CPU_SYMBOL || LA260_0 == CUBE_SYMBOL || LA260_0 == CURRENT_SYMBOL || LA260_0 == CURSOR_NAME_SYMBOL || ((LA260_0 >= DATAFILE_SYMBOL) && (LA260_0 <= DATETIME_SYMBOL)) || LA260_0 == DATE_SYMBOL || ((LA260_0 >= DAY_SYMBOL) && (LA260_0 <= DEALLOCATE_SYMBOL)) || LA260_0 == DEFAULT_AUTH_SYMBOL || LA260_0 == DEFINER_SYMBOL || LA260_0 == DELAY_KEY_WRITE_SYMBOL || LA260_0 == DES_KEY_FILE_SYMBOL || LA260_0 == DIAGNOSTICS_SYMBOL || ((LA260_0 >= DIRECTORY_SYMBOL) && (LA260_0 <= DISK_SYMBOL)) || LA260_0 == DOT_SYMBOL || LA260_0 == DO_SYMBOL || ((LA260_0 >= DUMPFILE_SYMBOL) && (LA260_0 <= DYNAMIC_SYMBOL)) || LA260_0 == ENABLE_SYMBOL || LA260_0 == ENDS_SYMBOL || ((LA260_0 >= END_SYMBOL) && (LA260_0 <= ENUM_SYMBOL)) || ((LA260_0 >= ERRORS_SYMBOL) && (LA260_0 <= ERROR_SYMBOL)) || ((LA260_0 >= ESCAPE_SYMBOL) && (LA260_0 <= EVERY_SYMBOL)) || LA260_0 == EXECUTE_SYMBOL || LA260_0 == EXPANSION_SYMBOL || LA260_0 == EXPORT_SYMBOL || ((LA260_0 >= EXTENDED_SYMBOL) && (LA260_0 <= EXTENT_SIZE_SYMBOL)) || ((LA260_0 >= FAST_SYMBOL) && (LA260_0 <= FAULTS_SYMBOL)) || ((LA260_0 >= FILE_SYMBOL) && (LA260_0 <= FIXED_SYMBOL)) || LA260_0 == FLUSH_SYMBOL || LA260_0 == FORMAT_SYMBOL || LA260_0 == FOUND_SYMBOL || LA260_0 == FULL_SYMBOL || ((LA260_0 >= FUNCTION_SYMBOL) && (LA260_0 <= GET_FORMAT_SYMBOL)) || ((LA260_0 >= GLOBAL_SYMBOL) && (LA260_0 <= GRANTS_SYMBOL)) || ((LA260_0 >= HANDLER_SYMBOL) && (LA260_0 <= HASH_SYMBOL)) || LA260_0 == HELP_SYMBOL || ((LA260_0 >= HOSTS_SYMBOL) && (LA260_0 <= HOST_SYMBOL)) || ((LA260_0 >= HOUR_SYMBOL) && (LA260_0 <= IDENTIFIED_SYMBOL)) || LA260_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA260_0 >= IMPORT_SYMBOL) && (LA260_0 <= INDEXES_SYMBOL)) || LA260_0 == INITIAL_SIZE_SYMBOL || LA260_0 == INNODB_SYMBOL || LA260_0 == INSERT_METHOD_SYMBOL || LA260_0 == INSTALL_SYMBOL || LA260_0 == INVOKER_SYMBOL || LA260_0 == IO_SYMBOL || ((LA260_0 >= IPC_SYMBOL) && (LA260_0 <= ISSUER_SYMBOL)) || LA260_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA260_0 >= LANGUAGE_SYMBOL) && (LA260_0 <= LAST_SYMBOL)) || LA260_0 == LEAVES_SYMBOL || LA260_0 == LESS_SYMBOL || LA260_0 == LEVEL_SYMBOL || LA260_0 == LINESTRING_SYMBOL || LA260_0 == LIST_SYMBOL || LA260_0 == LOCAL_SYMBOL || LA260_0 == LOCKS_SYMBOL || LA260_0 == LOGFILE_SYMBOL || LA260_0 == LOGS_SYMBOL || LA260_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA260_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA260_0 <= MASTER_SSL_SYMBOL)) || ((LA260_0 >= MASTER_SYMBOL) && (LA260_0 <= MASTER_USER_SYMBOL)) || ((LA260_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA260_0 <= MAX_SIZE_SYMBOL)) || ((LA260_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA260_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA260_0 >= MEDIUM_SYMBOL) && (LA260_0 <= MICROSECOND_SYMBOL)) || LA260_0 == MIGRATE_SYMBOL || ((LA260_0 >= MINUTE_SYMBOL) && (LA260_0 <= MIN_ROWS_SYMBOL)) || LA260_0 == MODE_SYMBOL || LA260_0 == MODIFY_SYMBOL || ((LA260_0 >= MONTH_SYMBOL) && (LA260_0 <= MULTILINESTRING_SYMBOL)) || ((LA260_0 >= MULTIPOINT_SYMBOL) && (LA260_0 <= MULTIPOLYGON_SYMBOL)) || ((LA260_0 >= MUTEX_SYMBOL) && (LA260_0 <= NATIONAL_SYMBOL)) || LA260_0 == NCHAR_SYMBOL || LA260_0 == NDBCLUSTER_SYMBOL || ((LA260_0 >= NEW_SYMBOL) && (LA260_0 <= NONE_SYMBOL)) || ((LA260_0 >= NO_SYMBOL) && (LA260_0 <= NO_WAIT_SYMBOL)) || LA260_0 == NUMBER_SYMBOL || LA260_0 == NVARCHAR_SYMBOL || ((LA260_0 >= OFFSET_SYMBOL) && (LA260_0 <= ONE_SYMBOL)) || LA260_0 == OPEN_SYMBOL || LA260_0 == OPTIONS_SYMBOL || ((LA260_0 >= OWNER_SYMBOL) && (LA260_0 <= PAGE_SYMBOL)) || ((LA260_0 >= PARSER_SYMBOL) && (LA260_0 <= PARTITION_SYMBOL)) || ((LA260_0 >= PASSWORD_SYMBOL) && (LA260_0 <= PLUGIN_SYMBOL)) || ((LA260_0 >= POINT_SYMBOL) && (LA260_0 <= PORT_SYMBOL)) || ((LA260_0 >= PREPARE_SYMBOL) && (LA260_0 <= PREV_SYMBOL)) || LA260_0 == PRIVILEGES_SYMBOL || ((LA260_0 >= PROCESSLIST_SYMBOL) && (LA260_0 <= PROXY_SYMBOL)) || ((LA260_0 >= QUARTER_SYMBOL) && (LA260_0 <= QUICK_SYMBOL)) || LA260_0 == READ_ONLY_SYMBOL || ((LA260_0 >= REBUILD_SYMBOL) && (LA260_0 <= REDUNDANT_SYMBOL)) || ((LA260_0 >= RELAYLOG_SYMBOL) && (LA260_0 <= RELAY_THREAD_SYMBOL)) || ((LA260_0 >= RELOAD_SYMBOL) && (LA260_0 <= REMOVE_SYMBOL)) || ((LA260_0 >= REORGANIZE_SYMBOL) && (LA260_0 <= REPEATABLE_SYMBOL)) || LA260_0 == REPLICATION_SYMBOL || LA260_0 == RESET_SYMBOL || LA260_0 == RESTORE_SYMBOL || ((LA260_0 >= RESUME_SYMBOL) && (LA260_0 <= RETURNS_SYMBOL)) || LA260_0 == REVERSE_SYMBOL || ((LA260_0 >= ROLLBACK_SYMBOL) && (LA260_0 <= SCHEDULE_SYMBOL)) || LA260_0 == SCHEMA_NAME_SYMBOL || ((LA260_0 >= SECOND_SYMBOL) && (LA260_0 <= SECURITY_SYMBOL)) || ((LA260_0 >= SERIALIZABLE_SYMBOL) && (LA260_0 <= SERIAL_SYMBOL)) || ((LA260_0 >= SERVER_SYMBOL) && (LA260_0 <= SESSION_SYMBOL)) || LA260_0 == SHARE_SYMBOL || LA260_0 == SHUTDOWN_SYMBOL || ((LA260_0 >= SIGNED_SYMBOL) && (LA260_0 <= SIMPLE_SYMBOL)) || ((LA260_0 >= SLAVE_SYMBOL) && (LA260_0 <= SLOW_SYMBOL)) || ((LA260_0 >= SNAPSHOT_SYMBOL) && (LA260_0 <= SOURCE_SYMBOL)) || ((LA260_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA260_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA260_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA260_0 <= SQL_CACHE_SYMBOL)) || LA260_0 == SQL_NO_CACHE_SYMBOL || LA260_0 == SQL_THREAD_SYMBOL || ((LA260_0 >= STARTS_SYMBOL) && (LA260_0 <= STATUS_SYMBOL)) || ((LA260_0 >= STOP_SYMBOL) && (LA260_0 <= STORAGE_SYMBOL)) || ((LA260_0 >= STRING_SYMBOL) && (LA260_0 <= SUBPARTITION_SYMBOL)) || ((LA260_0 >= SUPER_SYMBOL) && (LA260_0 <= SWITCHES_SYMBOL)) || ((LA260_0 >= TABLESPACE_SYMBOL) && (LA260_0 <= TABLE_NAME_SYMBOL)) || ((LA260_0 >= TEMPORARY_SYMBOL) && (LA260_0 <= TEMPTABLE_SYMBOL)) || ((LA260_0 >= TEXT_SYMBOL) && (LA260_0 <= THAN_SYMBOL)) || ((LA260_0 >= TIMESTAMP_ADD_SYMBOL) && (LA260_0 <= TIME_SYMBOL)) || ((LA260_0 >= TRANSACTION_SYMBOL) && (LA260_0 <= TRIGGERS_SYMBOL)) || ((LA260_0 >= TRUNCATE_SYMBOL) && (LA260_0 <= UDF_RETURNS_SYMBOL)) || ((LA260_0 >= UNCOMMITTED_SYMBOL) && (LA260_0 <= UNDEFINED_SYMBOL)) || ((LA260_0 >= UNDOFILE_SYMBOL) && (LA260_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA260_0 >= UNICODE_SYMBOL) && (LA260_0 <= UNINSTALL_SYMBOL)) || LA260_0 == UNKNOWN_SYMBOL || LA260_0 == UNTIL_SYMBOL || LA260_0 == UPGRADE_SYMBOL || ((LA260_0 >= USER_RESOURCES_SYMBOL) && (LA260_0 <= USE_FRM_SYMBOL)) || LA260_0 == VALUE_SYMBOL || LA260_0 == VARIABLES_SYMBOL || ((LA260_0 >= VIEW_SYMBOL) && (LA260_0 <= WEIGHT_STRING_SYMBOL)) || ((LA260_0 >= WORK_SYMBOL) && (LA260_0 <= WRAPPER_SYMBOL)) || LA260_0 == X509_SYMBOL || ((LA260_0 >= XA_SYMBOL) && (LA260_0 <= XML_SYMBOL)) || LA260_0 == YEAR_SYMBOL))
            	                {
            	                    alt260=1;
            	                }
            	                else if ( (LA260_0 == AT_SIGN_SYMBOL))
            	                {
            	                    alt260=2;
            	                }
            	                else
            	                {
            	                    if (BACKTRACKING>0)
            	                    {
            	                        FAILEDFLAG = ANTLR3_TRUE;
            	                        return retval;
            	                    }


            	                    CONSTRUCTEX();
            	                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    EXCEPTION->message      = (void *)"";
            	                    EXCEPTION->decisionNum  = 260;
            	                    EXCEPTION->state        = 0;


            	                    goto rulefield_or_variable_listEx;

            	                }
            	            }
            	            switch (alt260)
            	            {
            	        	case 1:
            	        	    // MySQL.g:748:46: field_name
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_field_name_in_field_or_variable_list3818);
            	        	        field_name784=field_name(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulefield_or_variable_listEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_name784.tree);

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:748:59: user_variable
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_user_variable_in_field_or_variable_list3822);
            	        	        user_variable785=user_variable(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulefield_or_variable_listEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user_variable785.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

            	default:
            	    goto loop261;	/* break out of the loop */
            	    break;
                }
            }
            loop261: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto rulefield_or_variable_listEx; /* Prevent compiler warnings */
    rulefield_or_variable_listEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end field_or_variable_list */

/**
 * $ANTLR start replace_statement
 * MySQL.g:753:1: replace_statement : REPLACE_SYMBOL ( LOW_PRIORITY_SYMBOL | DELAYED_SYMBOL )? ( INTO_SYMBOL )? qualified_identifier ( PARTITION_SYMBOL identifier_list_with_parentheses )? insert_field_spec ;
 */
static MySQLParser_replace_statement_return
replace_statement(pMySQLParser ctx)
{
    MySQLParser_replace_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    REPLACE_SYMBOL786;
    pANTLR3_COMMON_TOKEN    set787;
    pANTLR3_COMMON_TOKEN    INTO_SYMBOL788;
    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL790;
    MySQLParser_qualified_identifier_return qualified_identifier789;
    #undef	RETURN_TYPE_qualified_identifier789
    #define	RETURN_TYPE_qualified_identifier789 MySQLParser_qualified_identifier_return

    MySQLParser_identifier_list_with_parentheses_return identifier_list_with_parentheses791;
    #undef	RETURN_TYPE_identifier_list_with_parentheses791
    #define	RETURN_TYPE_identifier_list_with_parentheses791 MySQLParser_identifier_list_with_parentheses_return

    MySQLParser_insert_field_spec_return insert_field_spec792;
    #undef	RETURN_TYPE_insert_field_spec792
    #define	RETURN_TYPE_insert_field_spec792 MySQLParser_insert_field_spec_return

    pANTLR3_BASE_TREE REPLACE_SYMBOL786_tree;
    pANTLR3_BASE_TREE set787_tree;
    pANTLR3_BASE_TREE INTO_SYMBOL788_tree;
    pANTLR3_BASE_TREE PARTITION_SYMBOL790_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    REPLACE_SYMBOL786       = NULL;
    set787       = NULL;
    INTO_SYMBOL788       = NULL;
    PARTITION_SYMBOL790       = NULL;
    qualified_identifier789.tree = NULL;

    identifier_list_with_parentheses791.tree = NULL;

    insert_field_spec792.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    REPLACE_SYMBOL786_tree   = NULL;
    set787_tree   = NULL;
    INTO_SYMBOL788_tree   = NULL;
    PARTITION_SYMBOL790_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:753:18: ( REPLACE_SYMBOL ( LOW_PRIORITY_SYMBOL | DELAYED_SYMBOL )? ( INTO_SYMBOL )? qualified_identifier ( PARTITION_SYMBOL identifier_list_with_parentheses )? insert_field_spec )
        // MySQL.g:754:2: REPLACE_SYMBOL ( LOW_PRIORITY_SYMBOL | DELAYED_SYMBOL )? ( INTO_SYMBOL )? qualified_identifier ( PARTITION_SYMBOL identifier_list_with_parentheses )? insert_field_spec
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            REPLACE_SYMBOL786 = (pANTLR3_COMMON_TOKEN) MATCHT(REPLACE_SYMBOL, &FOLLOW_REPLACE_SYMBOL_in_replace_statement3836);
            if  (HASEXCEPTION())
            {
                goto rulereplace_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            REPLACE_SYMBOL786_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPLACE_SYMBOL786));
            ADAPTOR->addChild(ADAPTOR, root_0, REPLACE_SYMBOL786_tree);
            }

            // MySQL.g:754:17: ( LOW_PRIORITY_SYMBOL | DELAYED_SYMBOL )?
            {
                int alt262=2;
                switch ( LA(1) )
                {
                    case DELAYED_SYMBOL:
                    case LOW_PRIORITY_SYMBOL:
                    	{
                    		alt262=1;
                    	}
                        break;
                }

                switch (alt262)
                {
            	case 1:
            	    // MySQL.g:
            	    {
            	        set787=(pANTLR3_COMMON_TOKEN)LT(1);

            	        if ( LA(1) == DELAYED_SYMBOL || LA(1) == LOW_PRIORITY_SYMBOL )
            	        {
            	            CONSUME();
            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set787))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	            CONSTRUCTEX();
            	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	            EXCEPTION->expectingSet = NULL;

            	            goto rulereplace_statementEx;
            	        }


            	    }
            	    break;

                }
            }

            // MySQL.g:754:57: ( INTO_SYMBOL )?
            {
                int alt263=2;
                switch ( LA(1) )
                {
                    case INTO_SYMBOL:
                    	{
                    		alt263=1;
                    	}
                        break;
                }

                switch (alt263)
                {
            	case 1:
            	    // MySQL.g:754:57: INTO_SYMBOL
            	    {
            	        INTO_SYMBOL788 = (pANTLR3_COMMON_TOKEN) MATCHT(INTO_SYMBOL, &FOLLOW_INTO_SYMBOL_in_replace_statement3847);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereplace_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INTO_SYMBOL788_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTO_SYMBOL788));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INTO_SYMBOL788_tree);
            	        }

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_qualified_identifier_in_replace_statement3850);
            qualified_identifier789=qualified_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulereplace_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, qualified_identifier789.tree);

            // MySQL.g:755:3: ( PARTITION_SYMBOL identifier_list_with_parentheses )?
            {
                int alt264=2;
                switch ( LA(1) )
                {
                    case PARTITION_SYMBOL:
                    	{
                    		alt264=1;
                    	}
                        break;
                }

                switch (alt264)
                {
            	case 1:
            	    // MySQL.g:755:4: PARTITION_SYMBOL identifier_list_with_parentheses
            	    {
            	        PARTITION_SYMBOL790 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_replace_statement3855);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereplace_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PARTITION_SYMBOL790_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITION_SYMBOL790));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PARTITION_SYMBOL790_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_identifier_list_with_parentheses_in_replace_statement3857);
            	        identifier_list_with_parentheses791=identifier_list_with_parentheses(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereplace_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list_with_parentheses791.tree);

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_insert_field_spec_in_replace_statement3861);
            insert_field_spec792=insert_field_spec(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulereplace_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, insert_field_spec792.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto rulereplace_statementEx; /* Prevent compiler warnings */
    rulereplace_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end replace_statement */

/**
 * $ANTLR start select_statement
 * MySQL.g:760:1: select_statement : ( SELECT_SYMBOL select_part2 ( union_clause )? | OPEN_PAR_SYMBOL select_paren CLOSE_PAR_SYMBOL ( union_clause | order_by_clause ( limit_clause )? | limit_clause )? );
 */
static MySQLParser_select_statement_return
select_statement(pMySQLParser ctx)
{
    MySQLParser_select_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    SELECT_SYMBOL793;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL796;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL798;
    MySQLParser_select_part2_return select_part2794;
    #undef	RETURN_TYPE_select_part2794
    #define	RETURN_TYPE_select_part2794 MySQLParser_select_part2_return

    MySQLParser_union_clause_return union_clause795;
    #undef	RETURN_TYPE_union_clause795
    #define	RETURN_TYPE_union_clause795 MySQLParser_union_clause_return

    MySQLParser_select_paren_return select_paren797;
    #undef	RETURN_TYPE_select_paren797
    #define	RETURN_TYPE_select_paren797 MySQLParser_select_paren_return

    MySQLParser_union_clause_return union_clause799;
    #undef	RETURN_TYPE_union_clause799
    #define	RETURN_TYPE_union_clause799 MySQLParser_union_clause_return

    MySQLParser_order_by_clause_return order_by_clause800;
    #undef	RETURN_TYPE_order_by_clause800
    #define	RETURN_TYPE_order_by_clause800 MySQLParser_order_by_clause_return

    MySQLParser_limit_clause_return limit_clause801;
    #undef	RETURN_TYPE_limit_clause801
    #define	RETURN_TYPE_limit_clause801 MySQLParser_limit_clause_return

    MySQLParser_limit_clause_return limit_clause802;
    #undef	RETURN_TYPE_limit_clause802
    #define	RETURN_TYPE_limit_clause802 MySQLParser_limit_clause_return

    pANTLR3_BASE_TREE SELECT_SYMBOL793_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL796_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL798_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SELECT_SYMBOL793       = NULL;
    OPEN_PAR_SYMBOL796       = NULL;
    CLOSE_PAR_SYMBOL798       = NULL;
    select_part2794.tree = NULL;

    union_clause795.tree = NULL;

    select_paren797.tree = NULL;

    union_clause799.tree = NULL;

    order_by_clause800.tree = NULL;

    limit_clause801.tree = NULL;

    limit_clause802.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SELECT_SYMBOL793_tree   = NULL;
    OPEN_PAR_SYMBOL796_tree   = NULL;
    CLOSE_PAR_SYMBOL798_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:760:17: ( SELECT_SYMBOL select_part2 ( union_clause )? | OPEN_PAR_SYMBOL select_paren CLOSE_PAR_SYMBOL ( union_clause | order_by_clause ( limit_clause )? | limit_clause )? )

            ANTLR3_UINT32 alt268;

            alt268=2;

            switch ( LA(1) )
            {
            case SELECT_SYMBOL:
            	{
            		alt268=1;
            	}
                break;
            case OPEN_PAR_SYMBOL:
            	{
            		alt268=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 268;
                EXCEPTION->state        = 0;


                goto ruleselect_statementEx;

            }

            switch (alt268)
            {
        	case 1:
        	    // MySQL.g:761:2: SELECT_SYMBOL select_part2 ( union_clause )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SELECT_SYMBOL793 = (pANTLR3_COMMON_TOKEN) MATCHT(SELECT_SYMBOL, &FOLLOW_SELECT_SYMBOL_in_select_statement3872);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SELECT_SYMBOL793_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SELECT_SYMBOL793));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SELECT_SYMBOL793_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_select_part2_in_select_statement3874);
        	        select_part2794=select_part2(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_part2794.tree);

        	        // MySQL.g:761:29: ( union_clause )?
        	        {
        	            int alt265=2;
        	            switch ( LA(1) )
        	            {
        	                case UNION_SYMBOL:
        	                	{
        	                		alt265=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt265)
        	            {
        	        	case 1:
        	        	    // MySQL.g:761:29: union_clause
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_union_clause_in_select_statement3876);
        	        	        union_clause795=union_clause(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleselect_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, union_clause795.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:762:4: OPEN_PAR_SYMBOL select_paren CLOSE_PAR_SYMBOL ( union_clause | order_by_clause ( limit_clause )? | limit_clause )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        OPEN_PAR_SYMBOL796 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_select_statement3882);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL796_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL796));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL796_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_select_paren_in_select_statement3884);
        	        select_paren797=select_paren(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_paren797.tree);

        	        CLOSE_PAR_SYMBOL798 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_select_statement3886);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL798_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL798));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL798_tree);
        	        }

        	        // MySQL.g:762:50: ( union_clause | order_by_clause ( limit_clause )? | limit_clause )?
        	        {
        	            int alt267=4;
        	            switch ( LA(1) )
        	            {
        	                case UNION_SYMBOL:
        	                	{
        	                		alt267=1;
        	                	}
        	                    break;
        	                case ORDER_SYMBOL:
        	                	{
        	                		alt267=2;
        	                	}
        	                    break;
        	                case LIMIT_SYMBOL:
        	                	{
        	                		alt267=3;
        	                	}
        	                    break;
        	            }

        	            switch (alt267)
        	            {
        	        	case 1:
        	        	    // MySQL.g:762:51: union_clause
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_union_clause_in_select_statement3889);
        	        	        union_clause799=union_clause(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleselect_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, union_clause799.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:762:66: order_by_clause ( limit_clause )?
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_order_by_clause_in_select_statement3893);
        	        	        order_by_clause800=order_by_clause(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleselect_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, order_by_clause800.tree);

        	        	        // MySQL.g:762:82: ( limit_clause )?
        	        	        {
        	        	            int alt266=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case LIMIT_SYMBOL:
        	        	                	{
        	        	                		alt266=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt266)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:762:82: limit_clause
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_limit_clause_in_select_statement3895);
        	        	        	        limit_clause801=limit_clause(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleselect_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_clause801.tree);

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	    }
        	        	    break;
        	        	case 3:
        	        	    // MySQL.g:762:98: limit_clause
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_limit_clause_in_select_statement3900);
        	        	        limit_clause802=limit_clause(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleselect_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_clause802.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleselect_statementEx; /* Prevent compiler warnings */
    ruleselect_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end select_statement */

/**
 * $ANTLR start select_paren
 * MySQL.g:765:1: select_paren : ( SELECT_SYMBOL select_part2 | OPEN_PAR_SYMBOL select_paren CLOSE_PAR_SYMBOL );
 */
static MySQLParser_select_paren_return
select_paren(pMySQLParser ctx)
{
    MySQLParser_select_paren_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    SELECT_SYMBOL803;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL805;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL807;
    MySQLParser_select_part2_return select_part2804;
    #undef	RETURN_TYPE_select_part2804
    #define	RETURN_TYPE_select_part2804 MySQLParser_select_part2_return

    MySQLParser_select_paren_return select_paren806;
    #undef	RETURN_TYPE_select_paren806
    #define	RETURN_TYPE_select_paren806 MySQLParser_select_paren_return

    pANTLR3_BASE_TREE SELECT_SYMBOL803_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL805_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL807_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SELECT_SYMBOL803       = NULL;
    OPEN_PAR_SYMBOL805       = NULL;
    CLOSE_PAR_SYMBOL807       = NULL;
    select_part2804.tree = NULL;

    select_paren806.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SELECT_SYMBOL803_tree   = NULL;
    OPEN_PAR_SYMBOL805_tree   = NULL;
    CLOSE_PAR_SYMBOL807_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:765:13: ( SELECT_SYMBOL select_part2 | OPEN_PAR_SYMBOL select_paren CLOSE_PAR_SYMBOL )

            ANTLR3_UINT32 alt269;

            alt269=2;

            switch ( LA(1) )
            {
            case SELECT_SYMBOL:
            	{
            		alt269=1;
            	}
                break;
            case OPEN_PAR_SYMBOL:
            	{
            		alt269=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 269;
                EXCEPTION->state        = 0;


                goto ruleselect_parenEx;

            }

            switch (alt269)
            {
        	case 1:
        	    // MySQL.g:766:2: SELECT_SYMBOL select_part2
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SELECT_SYMBOL803 = (pANTLR3_COMMON_TOKEN) MATCHT(SELECT_SYMBOL, &FOLLOW_SELECT_SYMBOL_in_select_paren3911);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_parenEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SELECT_SYMBOL803_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SELECT_SYMBOL803));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SELECT_SYMBOL803_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_select_part2_in_select_paren3913);
        	        select_part2804=select_part2(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_parenEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_part2804.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:767:4: OPEN_PAR_SYMBOL select_paren CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        OPEN_PAR_SYMBOL805 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_select_paren3918);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_parenEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL805_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL805));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL805_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_select_paren_in_select_paren3920);
        	        select_paren806=select_paren(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_parenEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_paren806.tree);

        	        CLOSE_PAR_SYMBOL807 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_select_paren3922);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_parenEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL807_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL807));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL807_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleselect_parenEx; /* Prevent compiler warnings */
    ruleselect_parenEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end select_paren */

/**
 * $ANTLR start select_part2
 * MySQL.g:770:1: select_part2 : ( options {greedy=true; } : select_option )* select_item_list ( select_source_and_options )? ( select_from_tail )? ;
 */
static MySQLParser_select_part2_return
select_part2(pMySQLParser ctx)
{
    MySQLParser_select_part2_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_select_option_return select_option808;
    #undef	RETURN_TYPE_select_option808
    #define	RETURN_TYPE_select_option808 MySQLParser_select_option_return

    MySQLParser_select_item_list_return select_item_list809;
    #undef	RETURN_TYPE_select_item_list809
    #define	RETURN_TYPE_select_item_list809 MySQLParser_select_item_list_return

    MySQLParser_select_source_and_options_return select_source_and_options810;
    #undef	RETURN_TYPE_select_source_and_options810
    #define	RETURN_TYPE_select_source_and_options810 MySQLParser_select_source_and_options_return

    MySQLParser_select_from_tail_return select_from_tail811;
    #undef	RETURN_TYPE_select_from_tail811
    #define	RETURN_TYPE_select_from_tail811 MySQLParser_select_from_tail_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    select_option808.tree = NULL;

    select_item_list809.tree = NULL;

    select_source_and_options810.tree = NULL;

    select_from_tail811.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:770:13: ( ( options {greedy=true; } : select_option )* select_item_list ( select_source_and_options )? ( select_from_tail )? )
        // MySQL.g:771:2: ( options {greedy=true; } : select_option )* select_item_list ( select_source_and_options )? ( select_from_tail )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:771:2: ( options {greedy=true; } : select_option )*

            for (;;)
            {
                int alt270=2;
                switch ( LA(1) )
                {
                case SQL_BUFFER_RESULT_SYMBOL:
                	{
                		alt270=1;
                	}
                    break;
                case ALL_SYMBOL:
                case DISTINCT_SYMBOL:
                case HIGH_PRIORITY_SYMBOL:
                case SQL_BIG_RESULT_SYMBOL:
                case SQL_CALC_FOUND_ROWS_SYMBOL:
                case SQL_NO_CACHE_SYMBOL:
                case SQL_SMALL_RESULT_SYMBOL:
                case STRAIGHT_JOIN_SYMBOL:
                	{
                		alt270=1;
                	}
                    break;
                case SQL_CACHE_SYMBOL:
                	{
                		alt270=1;
                	}
                    break;

                }

                switch (alt270)
                {
            	case 1:
            	    // MySQL.g:771:32: select_option
            	    {
            	        FOLLOWPUSH(FOLLOW_select_option_in_select_part23945);
            	        select_option808=select_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_part2Ex;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_option808.tree);

            	    }
            	    break;

            	default:
            	    goto loop270;	/* break out of the loop */
            	    break;
                }
            }
            loop270: ; /* Jump out to here if this rule does not match */


            FOLLOWPUSH(FOLLOW_select_item_list_in_select_part23949);
            select_item_list809=select_item_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleselect_part2Ex;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_item_list809.tree);

            // MySQL.g:771:65: ( select_source_and_options )?
            {
                int alt271=2;
                switch ( LA(1) )
                {
                    case FROM_SYMBOL:
                    case INTO_SYMBOL:
                    case LIMIT_SYMBOL:
                    	{
                    		alt271=1;
                    	}
                        break;
                }

                switch (alt271)
                {
            	case 1:
            	    // MySQL.g:771:65: select_source_and_options
            	    {
            	        FOLLOWPUSH(FOLLOW_select_source_and_options_in_select_part23951);
            	        select_source_and_options810=select_source_and_options(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_part2Ex;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_source_and_options810.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:771:92: ( select_from_tail )?
            {
                int alt272=2;
                switch ( LA(1) )
                {
                    case FOR_SYMBOL:
                    case LOCK_SYMBOL:
                    	{
                    		alt272=1;
                    	}
                        break;
                }

                switch (alt272)
                {
            	case 1:
            	    // MySQL.g:771:92: select_from_tail
            	    {
            	        FOLLOWPUSH(FOLLOW_select_from_tail_in_select_part23954);
            	        select_from_tail811=select_from_tail(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_part2Ex;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_from_tail811.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleselect_part2Ex; /* Prevent compiler warnings */
    ruleselect_part2Ex: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end select_part2 */

/**
 * $ANTLR start subquery
 * MySQL.g:774:1: subquery : OPEN_PAR_SYMBOL SELECT_SYMBOL select_part2_derived ( union_clause )? CLOSE_PAR_SYMBOL -> ^( SUBQUERY OPEN_PAR_SYMBOL SELECT_SYMBOL select_part2_derived ( union_clause )? CLOSE_PAR_SYMBOL ) ;
 */
static MySQLParser_subquery_return
subquery(pMySQLParser ctx)
{
    MySQLParser_subquery_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL812;
    pANTLR3_COMMON_TOKEN    SELECT_SYMBOL813;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL816;
    MySQLParser_select_part2_derived_return select_part2_derived814;
    #undef	RETURN_TYPE_select_part2_derived814
    #define	RETURN_TYPE_select_part2_derived814 MySQLParser_select_part2_derived_return

    MySQLParser_union_clause_return union_clause815;
    #undef	RETURN_TYPE_union_clause815
    #define	RETURN_TYPE_union_clause815 MySQLParser_union_clause_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL812_tree;
    pANTLR3_BASE_TREE SELECT_SYMBOL813_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL816_tree;
    pANTLR3_REWRITE_RULE_TOKEN_STREAM stream_CLOSE_PAR_SYMBOL;
    pANTLR3_REWRITE_RULE_TOKEN_STREAM stream_OPEN_PAR_SYMBOL;
    pANTLR3_REWRITE_RULE_TOKEN_STREAM stream_SELECT_SYMBOL;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_select_part2_derived;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_union_clause;
    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL812       = NULL;
    SELECT_SYMBOL813       = NULL;
    CLOSE_PAR_SYMBOL816       = NULL;
    select_part2_derived814.tree = NULL;

    union_clause815.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL812_tree   = NULL;
    SELECT_SYMBOL813_tree   = NULL;
    CLOSE_PAR_SYMBOL816_tree   = NULL;

    stream_CLOSE_PAR_SYMBOL   = NULL;
    #define CREATE_stream_CLOSE_PAR_SYMBOL  if (stream_CLOSE_PAR_SYMBOL == NULL) {stream_CLOSE_PAR_SYMBOL = antlr3RewriteRuleTOKENStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"token CLOSE_PAR_SYMBOL"); } 
    stream_OPEN_PAR_SYMBOL   = NULL;
    #define CREATE_stream_OPEN_PAR_SYMBOL  if (stream_OPEN_PAR_SYMBOL == NULL) {stream_OPEN_PAR_SYMBOL = antlr3RewriteRuleTOKENStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"token OPEN_PAR_SYMBOL"); } 
    stream_SELECT_SYMBOL   = NULL;
    #define CREATE_stream_SELECT_SYMBOL  if (stream_SELECT_SYMBOL == NULL) {stream_SELECT_SYMBOL = antlr3RewriteRuleTOKENStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"token SELECT_SYMBOL"); } 
    stream_select_part2_derived   = NULL;
    #define CREATE_stream_select_part2_derived  if (stream_select_part2_derived == NULL) {stream_select_part2_derived = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule select_part2_derived"); }
    stream_union_clause   = NULL;
    #define CREATE_stream_union_clause  if (stream_union_clause == NULL) {stream_union_clause = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule union_clause"); }

    retval.tree  = NULL;

    {
        // MySQL.g:774:9: ( OPEN_PAR_SYMBOL SELECT_SYMBOL select_part2_derived ( union_clause )? CLOSE_PAR_SYMBOL -> ^( SUBQUERY OPEN_PAR_SYMBOL SELECT_SYMBOL select_part2_derived ( union_clause )? CLOSE_PAR_SYMBOL ) )
        // MySQL.g:775:2: OPEN_PAR_SYMBOL SELECT_SYMBOL select_part2_derived ( union_clause )? CLOSE_PAR_SYMBOL
        {
            OPEN_PAR_SYMBOL812 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_subquery3964);
            if  (HASEXCEPTION())
            {
                goto rulesubqueryEx;
            }
            if (HASFAILED())
            {
                return retval;
            }
             
            if ( BACKTRACKING==0 ) { CREATE_stream_OPEN_PAR_SYMBOL; stream_OPEN_PAR_SYMBOL->add(stream_OPEN_PAR_SYMBOL, OPEN_PAR_SYMBOL812, NULL); }


            SELECT_SYMBOL813 = (pANTLR3_COMMON_TOKEN) MATCHT(SELECT_SYMBOL, &FOLLOW_SELECT_SYMBOL_in_subquery3966);
            if  (HASEXCEPTION())
            {
                goto rulesubqueryEx;
            }
            if (HASFAILED())
            {
                return retval;
            }
             
            if ( BACKTRACKING==0 ) { CREATE_stream_SELECT_SYMBOL; stream_SELECT_SYMBOL->add(stream_SELECT_SYMBOL, SELECT_SYMBOL813, NULL); }


            FOLLOWPUSH(FOLLOW_select_part2_derived_in_subquery3968);
            select_part2_derived814=select_part2_derived(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulesubqueryEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_select_part2_derived; stream_select_part2_derived->add(stream_select_part2_derived, select_part2_derived814.tree, NULL); }

            // MySQL.g:775:53: ( union_clause )?
            {
                int alt273=2;
                switch ( LA(1) )
                {
                    case UNION_SYMBOL:
                    	{
                    		alt273=1;
                    	}
                        break;
                }

                switch (alt273)
                {
            	case 1:
            	    // MySQL.g:775:53: union_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_union_clause_in_subquery3970);
            	        union_clause815=union_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesubqueryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) { CREATE_stream_union_clause; stream_union_clause->add(stream_union_clause, union_clause815.tree, NULL); }

            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL816 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_subquery3973);
            if  (HASEXCEPTION())
            {
                goto rulesubqueryEx;
            }
            if (HASFAILED())
            {
                return retval;
            }
             
            if ( BACKTRACKING==0 ) { CREATE_stream_CLOSE_PAR_SYMBOL; stream_CLOSE_PAR_SYMBOL->add(stream_CLOSE_PAR_SYMBOL, CLOSE_PAR_SYMBOL816, NULL); }


            /* AST REWRITE
             * elements          : CLOSE_PAR_SYMBOL, SELECT_SYMBOL, union_clause, OPEN_PAR_SYMBOL, select_part2_derived
             * token labels      : 
             * rule labels       : retval
             * token list labels : 
             * rule list labels  : 
             */
            if ( BACKTRACKING==0 ) 

            {
            	pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_retval;

            	stream_retval=antlr3RewriteRuleSubtreeStreamNewAEE(ADAPTOR,  RECOGNIZER, (pANTLR3_UINT8)"token retval", retval.tree != NULL ? retval.tree : NULL);

            	root_0			    = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
            	retval.tree    = root_0;
            	// 776:3: -> ^( SUBQUERY OPEN_PAR_SYMBOL SELECT_SYMBOL select_part2_derived ( union_clause )? CLOSE_PAR_SYMBOL )
            	{
            	    // MySQL.g:776:6: ^( SUBQUERY OPEN_PAR_SYMBOL SELECT_SYMBOL select_part2_derived ( union_clause )? CLOSE_PAR_SYMBOL )
            	    {
            	        pANTLR3_BASE_TREE root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
            	        root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, 
            	        (pANTLR3_BASE_TREE)ADAPTOR->createTypeText(ADAPTOR, SUBQUERY, (pANTLR3_UINT8)"SUBQUERY")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, 
            	        stream_OPEN_PAR_SYMBOL == NULL ? NULL : stream_OPEN_PAR_SYMBOL->nextNode(stream_OPEN_PAR_SYMBOL)
            	        );

            	        ADAPTOR->addChild(ADAPTOR, root_1, 
            	        stream_SELECT_SYMBOL == NULL ? NULL : stream_SELECT_SYMBOL->nextNode(stream_SELECT_SYMBOL)
            	        );

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_select_part2_derived == NULL ? NULL : stream_select_part2_derived->nextTree(stream_select_part2_derived));

            	        // MySQL.g:776:68: ( union_clause )?
            	        {
            	        	if ( (stream_union_clause != NULL && stream_union_clause->hasNext(stream_union_clause))  )
            	        	{
            	        		ADAPTOR->addChild(ADAPTOR, root_1, stream_union_clause == NULL ? NULL : stream_union_clause->nextTree(stream_union_clause));

            	        	}
            	        	if ( stream_union_clause != NULL) stream_union_clause->reset(stream_union_clause);

            	        }

            	        ADAPTOR->addChild(ADAPTOR, root_1, 
            	        stream_CLOSE_PAR_SYMBOL == NULL ? NULL : stream_CLOSE_PAR_SYMBOL->nextNode(stream_CLOSE_PAR_SYMBOL)
            	        );

            	        ADAPTOR->addChild(ADAPTOR, root_0, root_1);
            	    }

            	}


            	retval.tree = root_0; // set result root
            	if (stream_retval != NULL) stream_retval->free(stream_retval);


            }
        }

    }

    // This is where rules clean up and exit
    //
    goto rulesubqueryEx; /* Prevent compiler warnings */
    rulesubqueryEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
        if (stream_CLOSE_PAR_SYMBOL != NULL) stream_CLOSE_PAR_SYMBOL->free(stream_CLOSE_PAR_SYMBOL);
        if (stream_OPEN_PAR_SYMBOL != NULL) stream_OPEN_PAR_SYMBOL->free(stream_OPEN_PAR_SYMBOL);
        if (stream_SELECT_SYMBOL != NULL) stream_SELECT_SYMBOL->free(stream_SELECT_SYMBOL);
        if (stream_select_part2_derived != NULL) stream_select_part2_derived->free(stream_select_part2_derived);
        if (stream_union_clause != NULL) stream_union_clause->free(stream_union_clause);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end subquery */

/**
 * $ANTLR start select_part2_derived
 * MySQL.g:779:1: select_part2_derived : ( options {greedy=true; } : query_expression_option )* select_item_list ( select_source_and_options )? ( select_from_tail )? ;
 */
static MySQLParser_select_part2_derived_return
select_part2_derived(pMySQLParser ctx)
{
    MySQLParser_select_part2_derived_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_query_expression_option_return query_expression_option817;
    #undef	RETURN_TYPE_query_expression_option817
    #define	RETURN_TYPE_query_expression_option817 MySQLParser_query_expression_option_return

    MySQLParser_select_item_list_return select_item_list818;
    #undef	RETURN_TYPE_select_item_list818
    #define	RETURN_TYPE_select_item_list818 MySQLParser_select_item_list_return

    MySQLParser_select_source_and_options_return select_source_and_options819;
    #undef	RETURN_TYPE_select_source_and_options819
    #define	RETURN_TYPE_select_source_and_options819 MySQLParser_select_source_and_options_return

    MySQLParser_select_from_tail_return select_from_tail820;
    #undef	RETURN_TYPE_select_from_tail820
    #define	RETURN_TYPE_select_from_tail820 MySQLParser_select_from_tail_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    query_expression_option817.tree = NULL;

    select_item_list818.tree = NULL;

    select_source_and_options819.tree = NULL;

    select_from_tail820.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:779:21: ( ( options {greedy=true; } : query_expression_option )* select_item_list ( select_source_and_options )? ( select_from_tail )? )
        // MySQL.g:780:2: ( options {greedy=true; } : query_expression_option )* select_item_list ( select_source_and_options )? ( select_from_tail )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:780:2: ( options {greedy=true; } : query_expression_option )*

            for (;;)
            {
                int alt274=2;
                switch ( LA(1) )
                {
                case ALL_SYMBOL:
                case DISTINCT_SYMBOL:
                case HIGH_PRIORITY_SYMBOL:
                case SQL_BIG_RESULT_SYMBOL:
                case SQL_BUFFER_RESULT_SYMBOL:
                case SQL_CALC_FOUND_ROWS_SYMBOL:
                case SQL_SMALL_RESULT_SYMBOL:
                case STRAIGHT_JOIN_SYMBOL:
                	{
                		alt274=1;
                	}
                    break;

                }

                switch (alt274)
                {
            	case 1:
            	    // MySQL.g:780:32: query_expression_option
            	    {
            	        FOLLOWPUSH(FOLLOW_query_expression_option_in_select_part2_derived4016);
            	        query_expression_option817=query_expression_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_part2_derivedEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, query_expression_option817.tree);

            	    }
            	    break;

            	default:
            	    goto loop274;	/* break out of the loop */
            	    break;
                }
            }
            loop274: ; /* Jump out to here if this rule does not match */


            FOLLOWPUSH(FOLLOW_select_item_list_in_select_part2_derived4020);
            select_item_list818=select_item_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleselect_part2_derivedEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_item_list818.tree);

            // MySQL.g:780:75: ( select_source_and_options )?
            {
                int alt275=2;
                switch ( LA(1) )
                {
                    case FROM_SYMBOL:
                    case INTO_SYMBOL:
                    case LIMIT_SYMBOL:
                    	{
                    		alt275=1;
                    	}
                        break;
                }

                switch (alt275)
                {
            	case 1:
            	    // MySQL.g:780:75: select_source_and_options
            	    {
            	        FOLLOWPUSH(FOLLOW_select_source_and_options_in_select_part2_derived4022);
            	        select_source_and_options819=select_source_and_options(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_part2_derivedEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_source_and_options819.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:780:102: ( select_from_tail )?
            {
                int alt276=2;
                switch ( LA(1) )
                {
                    case FOR_SYMBOL:
                    case LOCK_SYMBOL:
                    	{
                    		alt276=1;
                    	}
                        break;
                }

                switch (alt276)
                {
            	case 1:
            	    // MySQL.g:780:102: select_from_tail
            	    {
            	        FOLLOWPUSH(FOLLOW_select_from_tail_in_select_part2_derived4025);
            	        select_from_tail820=select_from_tail(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_part2_derivedEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_from_tail820.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleselect_part2_derivedEx; /* Prevent compiler warnings */
    ruleselect_part2_derivedEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end select_part2_derived */

/**
 * $ANTLR start select_option
 * MySQL.g:783:1: select_option : ( query_expression_option | SQL_NO_CACHE_SYMBOL | SQL_CACHE_SYMBOL );
 */
static MySQLParser_select_option_return
select_option(pMySQLParser ctx)
{
    MySQLParser_select_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    SQL_NO_CACHE_SYMBOL822;
    pANTLR3_COMMON_TOKEN    SQL_CACHE_SYMBOL823;
    MySQLParser_query_expression_option_return query_expression_option821;
    #undef	RETURN_TYPE_query_expression_option821
    #define	RETURN_TYPE_query_expression_option821 MySQLParser_query_expression_option_return

    pANTLR3_BASE_TREE SQL_NO_CACHE_SYMBOL822_tree;
    pANTLR3_BASE_TREE SQL_CACHE_SYMBOL823_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SQL_NO_CACHE_SYMBOL822       = NULL;
    SQL_CACHE_SYMBOL823       = NULL;
    query_expression_option821.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SQL_NO_CACHE_SYMBOL822_tree   = NULL;
    SQL_CACHE_SYMBOL823_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:783:14: ( query_expression_option | SQL_NO_CACHE_SYMBOL | SQL_CACHE_SYMBOL )

            ANTLR3_UINT32 alt277;

            alt277=3;

            switch ( LA(1) )
            {
            case ALL_SYMBOL:
            case DISTINCT_SYMBOL:
            case HIGH_PRIORITY_SYMBOL:
            case SQL_BIG_RESULT_SYMBOL:
            case SQL_BUFFER_RESULT_SYMBOL:
            case SQL_CALC_FOUND_ROWS_SYMBOL:
            case SQL_SMALL_RESULT_SYMBOL:
            case STRAIGHT_JOIN_SYMBOL:
            	{
            		alt277=1;
            	}
                break;
            case SQL_NO_CACHE_SYMBOL:
            	{
            		alt277=2;
            	}
                break;
            case SQL_CACHE_SYMBOL:
            	{
            		alt277=3;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 277;
                EXCEPTION->state        = 0;


                goto ruleselect_optionEx;

            }

            switch (alt277)
            {
        	case 1:
        	    // MySQL.g:784:2: query_expression_option
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_query_expression_option_in_select_option4035);
        	        query_expression_option821=query_expression_option(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, query_expression_option821.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:785:4: SQL_NO_CACHE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SQL_NO_CACHE_SYMBOL822 = (pANTLR3_COMMON_TOKEN) MATCHT(SQL_NO_CACHE_SYMBOL, &FOLLOW_SQL_NO_CACHE_SYMBOL_in_select_option4040);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SQL_NO_CACHE_SYMBOL822_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SQL_NO_CACHE_SYMBOL822));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SQL_NO_CACHE_SYMBOL822_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:786:4: SQL_CACHE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SQL_CACHE_SYMBOL823 = (pANTLR3_COMMON_TOKEN) MATCHT(SQL_CACHE_SYMBOL, &FOLLOW_SQL_CACHE_SYMBOL_in_select_option4045);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SQL_CACHE_SYMBOL823_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SQL_CACHE_SYMBOL823));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SQL_CACHE_SYMBOL823_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleselect_optionEx; /* Prevent compiler warnings */
    ruleselect_optionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end select_option */

/**
 * $ANTLR start query_expression_option
 * MySQL.g:789:1: query_expression_option : ( ( ALL_SYMBOL | DISTINCT_SYMBOL ) | STRAIGHT_JOIN_SYMBOL | HIGH_PRIORITY_SYMBOL | SQL_SMALL_RESULT_SYMBOL | SQL_BIG_RESULT_SYMBOL | SQL_BUFFER_RESULT_SYMBOL | SQL_CALC_FOUND_ROWS_SYMBOL );
 */
static MySQLParser_query_expression_option_return
query_expression_option(pMySQLParser ctx)
{
    MySQLParser_query_expression_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set824;

    pANTLR3_BASE_TREE set824_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set824       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set824_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:789:24: ( ( ALL_SYMBOL | DISTINCT_SYMBOL ) | STRAIGHT_JOIN_SYMBOL | HIGH_PRIORITY_SYMBOL | SQL_SMALL_RESULT_SYMBOL | SQL_BIG_RESULT_SYMBOL | SQL_BUFFER_RESULT_SYMBOL | SQL_CALC_FOUND_ROWS_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set824=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == ALL_SYMBOL || LA(1) == DISTINCT_SYMBOL || LA(1) == HIGH_PRIORITY_SYMBOL || ((LA(1) >= SQL_BIG_RESULT_SYMBOL) && (LA(1) <= SQL_BUFFER_RESULT_SYMBOL)) || LA(1) == SQL_CALC_FOUND_ROWS_SYMBOL || LA(1) == SQL_SMALL_RESULT_SYMBOL || LA(1) == STRAIGHT_JOIN_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set824))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto rulequery_expression_optionEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto rulequery_expression_optionEx; /* Prevent compiler warnings */
    rulequery_expression_optionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end query_expression_option */

/**
 * $ANTLR start select_item_list
 * MySQL.g:799:1: select_item_list : ( select_item | MULT_OPERATOR ) ( COMMA_SYMBOL select_item )* ;
 */
static MySQLParser_select_item_list_return
select_item_list(pMySQLParser ctx)
{
    MySQLParser_select_item_list_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    MULT_OPERATOR826;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL827;
    MySQLParser_select_item_return select_item825;
    #undef	RETURN_TYPE_select_item825
    #define	RETURN_TYPE_select_item825 MySQLParser_select_item_return

    MySQLParser_select_item_return select_item828;
    #undef	RETURN_TYPE_select_item828
    #define	RETURN_TYPE_select_item828 MySQLParser_select_item_return

    pANTLR3_BASE_TREE MULT_OPERATOR826_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL827_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    MULT_OPERATOR826       = NULL;
    COMMA_SYMBOL827       = NULL;
    select_item825.tree = NULL;

    select_item828.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    MULT_OPERATOR826_tree   = NULL;
    COMMA_SYMBOL827_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:799:17: ( ( select_item | MULT_OPERATOR ) ( COMMA_SYMBOL select_item )* )
        // MySQL.g:800:2: ( select_item | MULT_OPERATOR ) ( COMMA_SYMBOL select_item )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:800:2: ( select_item | MULT_OPERATOR )
            {
                int alt278=2;
                {
                    int LA278_0 = LA(1);
                    if ( (LA278_0 == BACK_TICK_QUOTED_ID || LA278_0 == IDENTIFIER))
                    {
                        alt278=1;
                    }
                    else if ( ((((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)))||((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))) && (LA278_0 == DOUBLE_QUOTED_TEXT))
                    {
                        alt278=1;
                    }
                    else if ( (LA278_0 == ASCII_SYMBOL || LA278_0 == BITWISE_NOT_OPERATOR || LA278_0 == DATE_SYMBOL || LA278_0 == DAY_SYMBOL || LA278_0 == FALSE_SYMBOL || LA278_0 == FLOAT || ((LA278_0 >= HEXNUMBER) && (LA278_0 <= HEXSTRING)) || LA278_0 == INTEGER || LA278_0 == INTERVAL_SYMBOL || LA278_0 == LOGICAL_NOT_OPERATOR || LA278_0 == MINUS_OPERATOR || LA278_0 == NCHAR_TEXT || LA278_0 == NOT2_SYMBOL || LA278_0 == NOT_SYMBOL || LA278_0 == PLUS_OPERATOR || LA278_0 == SINGLE_QUOTED_TEXT || ((LA278_0 >= TIMESTAMP_SYMBOL) && (LA278_0 <= TIME_SYMBOL)) || LA278_0 == TRUE_SYMBOL || LA278_0 == UNDERSCORE_CHARSET))
                    {
                        alt278=1;
                    }
                    else if ( ((SERVER_VERSION >= 50003)) && (((LA278_0 >= BITNUMBER) && (LA278_0 <= BITSTRING))))
                    {
                        alt278=1;
                    }
                    else if ( (((LA278_0 >= ACTION_SYMBOL) && (LA278_0 <= ADDDATE_SYMBOL)) || ((LA278_0 >= AFTER_SYMBOL) && (LA278_0 <= ALGORITHM_SYMBOL)) || LA278_0 == ANALYZE_SYMBOL || LA278_0 == ANY_SYMBOL || ((LA278_0 >= AT_AT_SIGN_SYMBOL) && (LA278_0 <= BACKUP_SYMBOL)) || LA278_0 == BEGIN_SYMBOL || ((LA278_0 >= BINARY_SYMBOL) && (LA278_0 <= BINLOG_SYMBOL)) || ((LA278_0 >= BIT_AND_SYMBOL) && (LA278_0 <= BIT_XOR_SYMBOL)) || ((LA278_0 >= BLOCK_SYMBOL) && (LA278_0 <= BOOL_SYMBOL)) || ((LA278_0 >= BTREE_SYMBOL) && (LA278_0 <= BYTE_SYMBOL)) || LA278_0 == CACHE_SYMBOL || LA278_0 == CASCADED_SYMBOL || ((LA278_0 >= CASE_SYMBOL) && (LA278_0 <= CHANGED_SYMBOL)) || ((LA278_0 >= CHARSET_SYMBOL) && (LA278_0 <= CHECKSUM_SYMBOL)) || ((LA278_0 >= CIPHER_SYMBOL) && (LA278_0 <= CLIENT_SYMBOL)) || ((LA278_0 >= CLOSE_SYMBOL) && (LA278_0 <= CODE_SYMBOL)) || LA278_0 == COLLATION_SYMBOL || ((LA278_0 >= COLUMNS_SYMBOL) && (LA278_0 <= COLUMN_NAME_SYMBOL)) || ((LA278_0 >= COMMENT_SYMBOL) && (LA278_0 <= COMPRESSED_SYMBOL)) || LA278_0 == CONCURRENT_SYMBOL || ((LA278_0 >= CONNECTION_SYMBOL) && (LA278_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA278_0 >= CONTAINS_SYMBOL) && (LA278_0 <= CONTEXT_SYMBOL)) || ((LA278_0 >= CONTRIBUTORS_SYMBOL) && (LA278_0 <= CPU_SYMBOL)) || ((LA278_0 >= CUBE_SYMBOL) && (LA278_0 <= CURRENT_SYMBOL)) || ((LA278_0 >= CURRENT_USER_SYMBOL) && (LA278_0 <= CURSOR_NAME_SYMBOL)) || LA278_0 == CURTIME_SYMBOL || ((LA278_0 >= DATABASE_SYMBOL) && (LA278_0 <= DATETIME_SYMBOL)) || LA278_0 == DATE_ADD_SYMBOL || LA278_0 == DATE_SUB_SYMBOL || LA278_0 == DEALLOCATE_SYMBOL || LA278_0 == DEFAULT_AUTH_SYMBOL || LA278_0 == DEFINER_SYMBOL || LA278_0 == DELAY_KEY_WRITE_SYMBOL || LA278_0 == DES_KEY_FILE_SYMBOL || LA278_0 == DIAGNOSTICS_SYMBOL || ((LA278_0 >= DIRECTORY_SYMBOL) && (LA278_0 <= DISK_SYMBOL)) || LA278_0 == DOT_SYMBOL || LA278_0 == DO_SYMBOL || ((LA278_0 >= DUMPFILE_SYMBOL) && (LA278_0 <= DYNAMIC_SYMBOL)) || LA278_0 == ENABLE_SYMBOL || LA278_0 == ENDS_SYMBOL || ((LA278_0 >= END_SYMBOL) && (LA278_0 <= ENUM_SYMBOL)) || ((LA278_0 >= ERRORS_SYMBOL) && (LA278_0 <= ERROR_SYMBOL)) || ((LA278_0 >= ESCAPE_SYMBOL) && (LA278_0 <= EVERY_SYMBOL)) || ((LA278_0 >= EXECUTE_SYMBOL) && (LA278_0 <= EXISTS_SYMBOL)) || LA278_0 == EXPANSION_SYMBOL || LA278_0 == EXPORT_SYMBOL || ((LA278_0 >= EXTENDED_SYMBOL) && (LA278_0 <= EXTRACT_SYMBOL)) || ((LA278_0 >= FAST_SYMBOL) && (LA278_0 <= FAULTS_SYMBOL)) || ((LA278_0 >= FILE_SYMBOL) && (LA278_0 <= FIXED_SYMBOL)) || LA278_0 == FLUSH_SYMBOL || LA278_0 == FORMAT_SYMBOL || LA278_0 == FOUND_SYMBOL || LA278_0 == FULL_SYMBOL || ((LA278_0 >= FUNCTION_SYMBOL) && (LA278_0 <= GET_FORMAT_SYMBOL)) || ((LA278_0 >= GLOBAL_SYMBOL) && (LA278_0 <= GRANTS_SYMBOL)) || LA278_0 == GROUP_CONCAT_SYMBOL || ((LA278_0 >= HANDLER_SYMBOL) && (LA278_0 <= HASH_SYMBOL)) || LA278_0 == HELP_SYMBOL || ((LA278_0 >= HOSTS_SYMBOL) && (LA278_0 <= HOST_SYMBOL)) || ((LA278_0 >= HOUR_SYMBOL) && (LA278_0 <= IDENTIFIED_SYMBOL)) || ((LA278_0 >= IF_SYMBOL) && (LA278_0 <= IGNORE_SERVER_IDS_SYMBOL)) || ((LA278_0 >= IMPORT_SYMBOL) && (LA278_0 <= INDEXES_SYMBOL)) || LA278_0 == INITIAL_SIZE_SYMBOL || LA278_0 == INNODB_SYMBOL || ((LA278_0 >= INSERT_METHOD_SYMBOL) && (LA278_0 <= INSTALL_SYMBOL)) || LA278_0 == INVOKER_SYMBOL || LA278_0 == IO_SYMBOL || ((LA278_0 >= IPC_SYMBOL) && (LA278_0 <= ISSUER_SYMBOL)) || LA278_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA278_0 >= LANGUAGE_SYMBOL) && (LA278_0 <= LAST_SYMBOL)) || LA278_0 == LEAVES_SYMBOL || LA278_0 == LEFT_SYMBOL || LA278_0 == LESS_SYMBOL || LA278_0 == LEVEL_SYMBOL || LA278_0 == LINESTRING_SYMBOL || LA278_0 == LIST_SYMBOL || LA278_0 == LOCAL_SYMBOL || LA278_0 == LOCKS_SYMBOL || LA278_0 == LOGFILE_SYMBOL || LA278_0 == LOGS_SYMBOL || LA278_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA278_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA278_0 <= MASTER_SSL_SYMBOL)) || ((LA278_0 >= MASTER_SYMBOL) && (LA278_0 <= MATCH_SYMBOL)) || ((LA278_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA278_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA278_0 >= MEDIUM_SYMBOL) && (LA278_0 <= MICROSECOND_SYMBOL)) || LA278_0 == MIGRATE_SYMBOL || ((LA278_0 >= MINUTE_SYMBOL) && (LA278_0 <= MIN_SYMBOL)) || LA278_0 == MODE_SYMBOL || LA278_0 == MODIFY_SYMBOL || ((LA278_0 >= MOD_SYMBOL) && (LA278_0 <= MULTILINESTRING_SYMBOL)) || ((LA278_0 >= MULTIPOINT_SYMBOL) && (LA278_0 <= MULTIPOLYGON_SYMBOL)) || ((LA278_0 >= MUTEX_SYMBOL) && (LA278_0 <= NATIONAL_SYMBOL)) || LA278_0 == NCHAR_SYMBOL || LA278_0 == NDBCLUSTER_SYMBOL || ((LA278_0 >= NEW_SYMBOL) && (LA278_0 <= NONE_SYMBOL)) || ((LA278_0 >= NOW_SYMBOL) && (LA278_0 <= NO_WAIT_SYMBOL)) || LA278_0 == NULL2_SYMBOL || ((LA278_0 >= NULL_SYMBOL) && (LA278_0 <= NUMBER_SYMBOL)) || LA278_0 == NVARCHAR_SYMBOL || ((LA278_0 >= OFFSET_SYMBOL) && (LA278_0 <= ONE_SYMBOL)) || ((LA278_0 >= OPEN_PAR_SYMBOL) && (LA278_0 <= OPEN_SYMBOL)) || LA278_0 == OPTIONS_SYMBOL || ((LA278_0 >= OWNER_SYMBOL) && (LA278_0 <= PARAM_MARKER)) || ((LA278_0 >= PARSER_SYMBOL) && (LA278_0 <= PARTITION_SYMBOL)) || ((LA278_0 >= PASSWORD_SYMBOL) && (LA278_0 <= PLUGIN_SYMBOL)) || ((LA278_0 >= POINT_SYMBOL) && (LA278_0 <= POSITION_SYMBOL)) || ((LA278_0 >= PREPARE_SYMBOL) && (LA278_0 <= PREV_SYMBOL)) || LA278_0 == PRIVILEGES_SYMBOL || ((LA278_0 >= PROCESSLIST_SYMBOL) && (LA278_0 <= PROXY_SYMBOL)) || ((LA278_0 >= QUARTER_SYMBOL) && (LA278_0 <= QUICK_SYMBOL)) || LA278_0 == READ_ONLY_SYMBOL || ((LA278_0 >= REBUILD_SYMBOL) && (LA278_0 <= REDUNDANT_SYMBOL)) || ((LA278_0 >= RELAYLOG_SYMBOL) && (LA278_0 <= RELAY_THREAD_SYMBOL)) || ((LA278_0 >= RELOAD_SYMBOL) && (LA278_0 <= REMOVE_SYMBOL)) || ((LA278_0 >= REORGANIZE_SYMBOL) && (LA278_0 <= REPLICATION_SYMBOL)) || LA278_0 == RESET_SYMBOL || LA278_0 == RESTORE_SYMBOL || ((LA278_0 >= RESUME_SYMBOL) && (LA278_0 <= RETURNS_SYMBOL)) || LA278_0 == REVERSE_SYMBOL || LA278_0 == RIGHT_SYMBOL || ((LA278_0 >= ROLLBACK_SYMBOL) && (LA278_0 <= SCHEDULE_SYMBOL)) || LA278_0 == SCHEMA_NAME_SYMBOL || ((LA278_0 >= SECOND_SYMBOL) && (LA278_0 <= SECURITY_SYMBOL)) || ((LA278_0 >= SERIALIZABLE_SYMBOL) && (LA278_0 <= SERIAL_SYMBOL)) || ((LA278_0 >= SERVER_SYMBOL) && (LA278_0 <= SESSION_SYMBOL)) || LA278_0 == SHARE_SYMBOL || LA278_0 == SHUTDOWN_SYMBOL || ((LA278_0 >= SIGNED_SYMBOL) && (LA278_0 <= SIMPLE_SYMBOL)) || ((LA278_0 >= SLAVE_SYMBOL) && (LA278_0 <= SLOW_SYMBOL)) || ((LA278_0 >= SNAPSHOT_SYMBOL) && (LA278_0 <= SOURCE_SYMBOL)) || ((LA278_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA278_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA278_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA278_0 <= SQL_CACHE_SYMBOL)) || LA278_0 == SQL_NO_CACHE_SYMBOL || LA278_0 == SQL_THREAD_SYMBOL || ((LA278_0 >= STARTS_SYMBOL) && (LA278_0 <= STATUS_SYMBOL)) || LA278_0 == STDDEV_SAMP_SYMBOL || ((LA278_0 >= STD_SYMBOL) && (LA278_0 <= STORAGE_SYMBOL)) || ((LA278_0 >= STRING_SYMBOL) && (LA278_0 <= SUBPARTITION_SYMBOL)) || LA278_0 == SUBSTRING_SYMBOL || ((LA278_0 >= SUM_SYMBOL) && (LA278_0 <= SYSDATE_SYMBOL)) || ((LA278_0 >= TABLESPACE_SYMBOL) && (LA278_0 <= TABLE_NAME_SYMBOL)) || ((LA278_0 >= TEMPORARY_SYMBOL) && (LA278_0 <= TEMPTABLE_SYMBOL)) || ((LA278_0 >= TEXT_SYMBOL) && (LA278_0 <= THAN_SYMBOL)) || ((LA278_0 >= TIMESTAMP_ADD_SYMBOL) && (LA278_0 <= TIMESTAMP_DIFF_SYMBOL)) || ((LA278_0 >= TRANSACTION_SYMBOL) && (LA278_0 <= TRIGGERS_SYMBOL)) || LA278_0 == TRIM_SYMBOL || ((LA278_0 >= TRUNCATE_SYMBOL) && (LA278_0 <= UDF_RETURNS_SYMBOL)) || ((LA278_0 >= UNCOMMITTED_SYMBOL) && (LA278_0 <= UNDEFINED_SYMBOL)) || ((LA278_0 >= UNDOFILE_SYMBOL) && (LA278_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA278_0 >= UNICODE_SYMBOL) && (LA278_0 <= UNINSTALL_SYMBOL)) || LA278_0 == UNKNOWN_SYMBOL || LA278_0 == UNTIL_SYMBOL || LA278_0 == UPGRADE_SYMBOL || ((LA278_0 >= USER_RESOURCES_SYMBOL) && (LA278_0 <= USE_FRM_SYMBOL)) || ((LA278_0 >= UTC_DATE_SYMBOL) && (LA278_0 <= VALUE_SYMBOL)) || ((LA278_0 >= VARIABLES_SYMBOL) && (LA278_0 <= VARIANCE_SYMBOL)) || LA278_0 == VAR_SAMP_SYMBOL || ((LA278_0 >= VIEW_SYMBOL) && (LA278_0 <= WEIGHT_STRING_SYMBOL)) || ((LA278_0 >= WORK_SYMBOL) && (LA278_0 <= WRAPPER_SYMBOL)) || LA278_0 == X509_SYMBOL || ((LA278_0 >= XA_SYMBOL) && (LA278_0 <= XML_SYMBOL)) || LA278_0 == YEAR_SYMBOL || LA278_0 == 732))
                    {
                        alt278=1;
                    }
                    else if ( (LA278_0 == MULT_OPERATOR))
                    {
                        alt278=2;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 278;
                        EXCEPTION->state        = 0;


                        goto ruleselect_item_listEx;

                    }
                }
                switch (alt278)
                {
            	case 1:
            	    // MySQL.g:800:3: select_item
            	    {
            	        FOLLOWPUSH(FOLLOW_select_item_in_select_item_list4100);
            	        select_item825=select_item(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_item_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_item825.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:800:17: MULT_OPERATOR
            	    {
            	        MULT_OPERATOR826 = (pANTLR3_COMMON_TOKEN) MATCHT(MULT_OPERATOR, &FOLLOW_MULT_OPERATOR_in_select_item_list4104);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_item_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        MULT_OPERATOR826_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MULT_OPERATOR826));
            	        ADAPTOR->addChild(ADAPTOR, root_0, MULT_OPERATOR826_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:800:32: ( COMMA_SYMBOL select_item )*

            for (;;)
            {
                int alt279=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt279=1;
                	}
                    break;

                }

                switch (alt279)
                {
            	case 1:
            	    // MySQL.g:800:33: COMMA_SYMBOL select_item
            	    {
            	        COMMA_SYMBOL827 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_select_item_list4108);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_item_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL827_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL827));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL827_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_select_item_in_select_item_list4110);
            	        select_item828=select_item(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_item_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_item828.tree);

            	    }
            	    break;

            	default:
            	    goto loop279;	/* break out of the loop */
            	    break;
                }
            }
            loop279: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto ruleselect_item_listEx; /* Prevent compiler warnings */
    ruleselect_item_listEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end select_item_list */

/**
 * $ANTLR start select_item
 * MySQL.g:803:1: select_item : ( ( qualified_identifier_with_wildcard )=> qualified_identifier_with_wildcard -> ^( SELECT_EXPR qualified_identifier_with_wildcard ) | expression ( select_alias )? -> ^( SELECT_EXPR expression ( select_alias )? ) );
 */
static MySQLParser_select_item_return
select_item(pMySQLParser ctx)
{
    MySQLParser_select_item_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_qualified_identifier_with_wildcard_return qualified_identifier_with_wildcard829;
    #undef	RETURN_TYPE_qualified_identifier_with_wildcard829
    #define	RETURN_TYPE_qualified_identifier_with_wildcard829 MySQLParser_qualified_identifier_with_wildcard_return

    MySQLParser_expression_return expression830;
    #undef	RETURN_TYPE_expression830
    #define	RETURN_TYPE_expression830 MySQLParser_expression_return

    MySQLParser_select_alias_return select_alias831;
    #undef	RETURN_TYPE_select_alias831
    #define	RETURN_TYPE_select_alias831 MySQLParser_select_alias_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_expression;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_select_alias;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_qualified_identifier_with_wildcard;
    /* Initialize rule variables
     */

    root_0 = NULL;

    qualified_identifier_with_wildcard829.tree = NULL;

    expression830.tree = NULL;

    select_alias831.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;



    stream_expression   = NULL;
    #define CREATE_stream_expression  if (stream_expression == NULL) {stream_expression = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule expression"); }
    stream_select_alias   = NULL;
    #define CREATE_stream_select_alias  if (stream_select_alias == NULL) {stream_select_alias = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule select_alias"); }
    stream_qualified_identifier_with_wildcard   = NULL;
    #define CREATE_stream_qualified_identifier_with_wildcard  if (stream_qualified_identifier_with_wildcard == NULL) {stream_qualified_identifier_with_wildcard = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule qualified_identifier_with_wildcard"); }

    retval.tree  = NULL;

    {
        {
            //  MySQL.g:803:12: ( ( qualified_identifier_with_wildcard )=> qualified_identifier_with_wildcard -> ^( SELECT_EXPR qualified_identifier_with_wildcard ) | expression ( select_alias )? -> ^( SELECT_EXPR expression ( select_alias )? ) )

            ANTLR3_UINT32 alt281;

            alt281=2;

            {
                int LA281_0 = LA(1);
                if ( (LA281_0 == IDENTIFIER))
                {
                    switch ( LA(2) )
                    {
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_102 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 102;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 1;


                        goto ruleselect_itemEx;

                    }

                }
                else if ( (LA281_0 == BACK_TICK_QUOTED_ID))
                {
                    switch ( LA(2) )
                    {
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_144 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 144;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 2;


                        goto ruleselect_itemEx;

                    }

                }
                else if ( ((((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)))||((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))) && (LA281_0 == DOUBLE_QUOTED_TEXT))
                {
                    {
                        int LA281_3 = LA(2);
                        if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA281_3 == DOT_SYMBOL))
                        {
                            {
                                int LA281_186 = LA(3);
                                if ( (( (( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) )) && (synpred1_MySQL(ctx)) )))
                                {
                                    alt281=1;
                                }
                                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))
                                {
                                    alt281=2;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 281;
                                    EXCEPTION->state        = 186;


                                    goto ruleselect_itemEx;

                                }
                            }
                        }
                        else if ( ((((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)))||((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))) && (LA281_3 == EOF || ((LA281_3 >= ACTION_SYMBOL) && (LA281_3 <= ADDDATE_SYMBOL)) || ((LA281_3 >= AFTER_SYMBOL) && (LA281_3 <= ALGORITHM_SYMBOL)) || ((LA281_3 >= ANALYZE_SYMBOL) && (LA281_3 <= ASCII_SYMBOL)) || LA281_3 == AS_SYMBOL || ((LA281_3 >= AT_SYMBOL) && (LA281_3 <= BACKUP_SYMBOL)) || LA281_3 == BACK_TICK_QUOTED_ID || ((LA281_3 >= BEGIN_SYMBOL) && (LA281_3 <= BETWEEN_SYMBOL)) || LA281_3 == BINLOG_SYMBOL || LA281_3 == BITWISE_AND_OPERATOR || ((LA281_3 >= BITWISE_OR_OPERATOR) && (LA281_3 <= BITWISE_XOR_OPERATOR)) || LA281_3 == BIT_SYMBOL || ((LA281_3 >= BLOCK_SYMBOL) && (LA281_3 <= BOOL_SYMBOL)) || ((LA281_3 >= BTREE_SYMBOL) && (LA281_3 <= BYTE_SYMBOL)) || LA281_3 == CACHE_SYMBOL || LA281_3 == CASCADED_SYMBOL || ((LA281_3 >= CATALOG_NAME_SYMBOL) && (LA281_3 <= CHANGED_SYMBOL)) || LA281_3 == CHARSET_SYMBOL || LA281_3 == CHECKSUM_SYMBOL || ((LA281_3 >= CIPHER_SYMBOL) && (LA281_3 <= COLLATION_SYMBOL)) || ((LA281_3 >= COLUMNS_SYMBOL) && (LA281_3 <= COLUMN_NAME_SYMBOL)) || LA281_3 == COMMA_SYMBOL || ((LA281_3 >= COMMENT_SYMBOL) && (LA281_3 <= CONCURRENT_SYMBOL)) || ((LA281_3 >= CONNECTION_SYMBOL) && (LA281_3 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA281_3 >= CONTAINS_SYMBOL) && (LA281_3 <= CONTEXT_SYMBOL)) || LA281_3 == CONTRIBUTORS_SYMBOL || LA281_3 == CPU_SYMBOL || LA281_3 == CUBE_SYMBOL || LA281_3 == CURRENT_SYMBOL || LA281_3 == CURSOR_NAME_SYMBOL || ((LA281_3 >= DATAFILE_SYMBOL) && (LA281_3 <= DATETIME_SYMBOL)) || LA281_3 == DATE_SYMBOL || ((LA281_3 >= DAY_SYMBOL) && (LA281_3 <= DEALLOCATE_SYMBOL)) || LA281_3 == DEFAULT_AUTH_SYMBOL || LA281_3 == DEFINER_SYMBOL || LA281_3 == DELAY_KEY_WRITE_SYMBOL || LA281_3 == DES_KEY_FILE_SYMBOL || LA281_3 == DIAGNOSTICS_SYMBOL || ((LA281_3 >= DIRECTORY_SYMBOL) && (LA281_3 <= DISK_SYMBOL)) || ((LA281_3 >= DIV_OPERATOR) && (LA281_3 <= DIV_SYMBOL)) || LA281_3 == DOUBLE_QUOTED_TEXT || LA281_3 == DO_SYMBOL || ((LA281_3 >= DUMPFILE_SYMBOL) && (LA281_3 <= DYNAMIC_SYMBOL)) || LA281_3 == ENABLE_SYMBOL || LA281_3 == ENDS_SYMBOL || ((LA281_3 >= END_SYMBOL) && (LA281_3 <= ERROR_SYMBOL)) || ((LA281_3 >= ESCAPE_SYMBOL) && (LA281_3 <= EVERY_SYMBOL)) || LA281_3 == EXECUTE_SYMBOL || LA281_3 == EXPANSION_SYMBOL || LA281_3 == EXPORT_SYMBOL || ((LA281_3 >= EXTENDED_SYMBOL) && (LA281_3 <= EXTENT_SIZE_SYMBOL)) || ((LA281_3 >= FAST_SYMBOL) && (LA281_3 <= FAULTS_SYMBOL)) || ((LA281_3 >= FILE_SYMBOL) && (LA281_3 <= FIXED_SYMBOL)) || LA281_3 == FLUSH_SYMBOL || ((LA281_3 >= FORMAT_SYMBOL) && (LA281_3 <= FOUND_SYMBOL)) || LA281_3 == FROM_SYMBOL || LA281_3 == FULL_SYMBOL || ((LA281_3 >= FUNCTION_SYMBOL) && (LA281_3 <= GET_FORMAT_SYMBOL)) || ((LA281_3 >= GLOBAL_SYMBOL) && (LA281_3 <= GRANTS_SYMBOL)) || ((LA281_3 >= GREATER_OR_EQUAL_OPERATOR) && (LA281_3 <= GREATER_THAN_OPERATOR)) || ((LA281_3 >= HANDLER_SYMBOL) && (LA281_3 <= HASH_SYMBOL)) || LA281_3 == HELP_SYMBOL || ((LA281_3 >= HOSTS_SYMBOL) && (LA281_3 <= HOST_SYMBOL)) || ((LA281_3 >= HOUR_SYMBOL) && (LA281_3 <= IDENTIFIER)) || LA281_3 == IGNORE_SERVER_IDS_SYMBOL || ((LA281_3 >= IMPORT_SYMBOL) && (LA281_3 <= INDEXES_SYMBOL)) || LA281_3 == INITIAL_SIZE_SYMBOL || LA281_3 == INNODB_SYMBOL || LA281_3 == INSERT_METHOD_SYMBOL || LA281_3 == INSTALL_SYMBOL || LA281_3 == INTO_SYMBOL || ((LA281_3 >= INVOKER_SYMBOL) && (LA281_3 <= IN_SYMBOL)) || LA281_3 == IO_SYMBOL || ((LA281_3 >= IPC_SYMBOL) && (LA281_3 <= IS_SYMBOL)) || LA281_3 == KEY_BLOCK_SIZE_SYMBOL || ((LA281_3 >= LANGUAGE_SYMBOL) && (LA281_3 <= LAST_SYMBOL)) || LA281_3 == LEAVES_SYMBOL || ((LA281_3 >= LESS_OR_EQUAL_OPERATOR) && (LA281_3 <= LESS_THAN_OPERATOR)) || LA281_3 == LEVEL_SYMBOL || ((LA281_3 >= LIKE_SYMBOL) && (LA281_3 <= LIMIT_SYMBOL)) || LA281_3 == LINESTRING_SYMBOL || LA281_3 == LIST_SYMBOL || LA281_3 == LOCAL_SYMBOL || ((LA281_3 >= LOCKS_SYMBOL) && (LA281_3 <= LOGICAL_AND_OPERATOR)) || ((LA281_3 >= LOGICAL_OR_OPERATOR) && (LA281_3 <= LOGS_SYMBOL)) || LA281_3 == MASTER_AUTO_POSITION_SYMBOL || ((LA281_3 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA281_3 <= MASTER_SSL_SYMBOL)) || ((LA281_3 >= MASTER_SYMBOL) && (LA281_3 <= MASTER_USER_SYMBOL)) || ((LA281_3 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA281_3 <= MAX_SIZE_SYMBOL)) || ((LA281_3 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA281_3 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA281_3 >= MEDIUM_SYMBOL) && (LA281_3 <= MICROSECOND_SYMBOL)) || ((LA281_3 >= MIGRATE_SYMBOL) && (LA281_3 <= MINUS_OPERATOR)) || ((LA281_3 >= MINUTE_SYMBOL) && (LA281_3 <= MIN_ROWS_SYMBOL)) || LA281_3 == MODE_SYMBOL || ((LA281_3 >= MODIFY_SYMBOL) && (LA281_3 <= MULTILINESTRING_SYMBOL)) || ((LA281_3 >= MULTIPOINT_SYMBOL) && (LA281_3 <= NATIONAL_SYMBOL)) || ((LA281_3 >= NCHAR_SYMBOL) && (LA281_3 <= NDBCLUSTER_SYMBOL)) || ((LA281_3 >= NEW_SYMBOL) && (LA281_3 <= NONE_SYMBOL)) || ((LA281_3 >= NOT_EQUAL2_OPERATOR) && (LA281_3 <= NOT_SYMBOL)) || ((LA281_3 >= NO_SYMBOL) && (LA281_3 <= NO_WAIT_SYMBOL)) || LA281_3 == NULL_SAFE_EQUAL_OPERATOR || LA281_3 == NUMBER_SYMBOL || LA281_3 == NVARCHAR_SYMBOL || ((LA281_3 >= OFFSET_SYMBOL) && (LA281_3 <= ONE_SYMBOL)) || LA281_3 == ON_SYMBOL || LA281_3 == OPEN_SYMBOL || LA281_3 == OPTIONS_SYMBOL || LA281_3 == OR_SYMBOL || ((LA281_3 >= OWNER_SYMBOL) && (LA281_3 <= PAGE_SYMBOL)) || ((LA281_3 >= PARSER_SYMBOL) && (LA281_3 <= PARTITION_SYMBOL)) || ((LA281_3 >= PASSWORD_SYMBOL) && (LA281_3 <= PORT_SYMBOL)) || ((LA281_3 >= PREPARE_SYMBOL) && (LA281_3 <= PREV_SYMBOL)) || LA281_3 == PRIVILEGES_SYMBOL || ((LA281_3 >= PROCESSLIST_SYMBOL) && (LA281_3 <= PROXY_SYMBOL)) || ((LA281_3 >= QUARTER_SYMBOL) && (LA281_3 <= QUICK_SYMBOL)) || LA281_3 == READ_ONLY_SYMBOL || ((LA281_3 >= REBUILD_SYMBOL) && (LA281_3 <= REDUNDANT_SYMBOL)) || ((LA281_3 >= REGEXP_SYMBOL) && (LA281_3 <= RELAY_THREAD_SYMBOL)) || ((LA281_3 >= RELOAD_SYMBOL) && (LA281_3 <= REMOVE_SYMBOL)) || ((LA281_3 >= REORGANIZE_SYMBOL) && (LA281_3 <= REPEATABLE_SYMBOL)) || LA281_3 == REPLICATION_SYMBOL || LA281_3 == RESET_SYMBOL || LA281_3 == RESTORE_SYMBOL || ((LA281_3 >= RESUME_SYMBOL) && (LA281_3 <= RETURNS_SYMBOL)) || LA281_3 == REVERSE_SYMBOL || ((LA281_3 >= ROLLBACK_SYMBOL) && (LA281_3 <= SCHEDULE_SYMBOL)) || LA281_3 == SCHEMA_NAME_SYMBOL || ((LA281_3 >= SECOND_SYMBOL) && (LA281_3 <= SECURITY_SYMBOL)) || LA281_3 == SEMICOLON_SYMBOL || ((LA281_3 >= SERIALIZABLE_SYMBOL) && (LA281_3 <= SERIAL_SYMBOL)) || ((LA281_3 >= SERVER_SYMBOL) && (LA281_3 <= SESSION_SYMBOL)) || ((LA281_3 >= SHARE_SYMBOL) && (LA281_3 <= SHIFT_RIGHT_OPERATOR)) || LA281_3 == SHUTDOWN_SYMBOL || ((LA281_3 >= SIGNED_SYMBOL) && (LA281_3 <= SIMPLE_SYMBOL)) || ((LA281_3 >= SINGLE_QUOTED_TEXT) && (LA281_3 <= SLOW_SYMBOL)) || ((LA281_3 >= SNAPSHOT_SYMBOL) && (LA281_3 <= SOURCE_SYMBOL)) || ((LA281_3 >= SQL_AFTER_GTIDS_SYMBOL) && (LA281_3 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA281_3 >= SQL_BUFFER_RESULT_SYMBOL) && (LA281_3 <= SQL_CACHE_SYMBOL)) || LA281_3 == SQL_NO_CACHE_SYMBOL || LA281_3 == SQL_THREAD_SYMBOL || ((LA281_3 >= STARTS_SYMBOL) && (LA281_3 <= STATUS_SYMBOL)) || ((LA281_3 >= STOP_SYMBOL) && (LA281_3 <= STORAGE_SYMBOL)) || ((LA281_3 >= STRING_SYMBOL) && (LA281_3 <= SUBPARTITION_SYMBOL)) || ((LA281_3 >= SUPER_SYMBOL) && (LA281_3 <= SWITCHES_SYMBOL)) || ((LA281_3 >= TABLESPACE_SYMBOL) && (LA281_3 <= TABLE_NAME_SYMBOL)) || ((LA281_3 >= TEMPORARY_SYMBOL) && (LA281_3 <= TEMPTABLE_SYMBOL)) || ((LA281_3 >= TEXT_SYMBOL) && (LA281_3 <= THAN_SYMBOL)) || ((LA281_3 >= TIMESTAMP_ADD_SYMBOL) && (LA281_3 <= TIME_SYMBOL)) || ((LA281_3 >= TRANSACTION_SYMBOL) && (LA281_3 <= TRIGGERS_SYMBOL)) || ((LA281_3 >= TRUNCATE_SYMBOL) && (LA281_3 <= UDF_RETURNS_SYMBOL)) || ((LA281_3 >= UNCOMMITTED_SYMBOL) && (LA281_3 <= UNDEFINED_SYMBOL)) || ((LA281_3 >= UNDERSCORE_CHARSET) && (LA281_3 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA281_3 >= UNICODE_SYMBOL) && (LA281_3 <= UNION_SYMBOL)) || LA281_3 == UNKNOWN_SYMBOL || LA281_3 == UNTIL_SYMBOL || LA281_3 == UPGRADE_SYMBOL || ((LA281_3 >= USER_RESOURCES_SYMBOL) && (LA281_3 <= USE_FRM_SYMBOL)) || LA281_3 == VALUE_SYMBOL || LA281_3 == VARIABLES_SYMBOL || ((LA281_3 >= VIEW_SYMBOL) && (LA281_3 <= WEIGHT_STRING_SYMBOL)) || ((LA281_3 >= WITH_SYMBOL) && (LA281_3 <= WRAPPER_SYMBOL)) || LA281_3 == X509_SYMBOL || ((LA281_3 >= XA_SYMBOL) && (LA281_3 <= XOR_SYMBOL)) || LA281_3 == YEAR_SYMBOL))
                        {
                            alt281=2;
                        }
                        else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA281_3 == OPEN_PAR_SYMBOL))
                        {
                            alt281=2;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 281;
                            EXCEPTION->state        = 3;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (LA281_0 == DATE_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_229 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 229;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 4;


                        goto ruleselect_itemEx;

                    }

                }
                else if ( (LA281_0 == ASCII_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_271 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 271;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 5;


                        goto ruleselect_itemEx;

                    }

                }
                else if ( (LA281_0 == BITWISE_NOT_OPERATOR || LA281_0 == FALSE_SYMBOL || LA281_0 == FLOAT || ((LA281_0 >= HEXNUMBER) && (LA281_0 <= HEXSTRING)) || LA281_0 == INTEGER || LA281_0 == INTERVAL_SYMBOL || LA281_0 == LOGICAL_NOT_OPERATOR || LA281_0 == MINUS_OPERATOR || LA281_0 == NCHAR_TEXT || LA281_0 == NOT2_SYMBOL || LA281_0 == NOT_SYMBOL || LA281_0 == PLUS_OPERATOR || LA281_0 == SINGLE_QUOTED_TEXT || LA281_0 == TRUE_SYMBOL || LA281_0 == UNDERSCORE_CHARSET))
                {
                    alt281=2;
                }
                else if ( (LA281_0 == TIME_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_313 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 313;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 10;


                        goto ruleselect_itemEx;

                    }

                }
                else if ( (LA281_0 == TIMESTAMP_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_355 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 355;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 11;


                        goto ruleselect_itemEx;

                    }

                }
                else if ( (LA281_0 == DAY_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_397 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 397;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 12;


                        goto ruleselect_itemEx;

                    }

                }
                else if ( ((SERVER_VERSION >= 50003)) && (((LA281_0 >= BITNUMBER) && (LA281_0 <= BITSTRING))))
                {
                    alt281=2;
                }
                else if ( (((LA281_0 >= AT_AT_SIGN_SYMBOL) && (LA281_0 <= AT_SIGN_SYMBOL)) || LA281_0 == BINARY_SYMBOL || ((LA281_0 >= BIT_AND_SYMBOL) && (LA281_0 <= BIT_OR_SYMBOL)) || LA281_0 == BIT_XOR_SYMBOL || ((LA281_0 >= CASE_SYMBOL) && (LA281_0 <= CAST_SYMBOL)) || LA281_0 == CHAR_SYMBOL || ((LA281_0 >= CONVERT_SYMBOL) && (LA281_0 <= COUNT_SYMBOL)) || LA281_0 == CURDATE_SYMBOL || LA281_0 == CURRENT_USER_SYMBOL || LA281_0 == CURTIME_SYMBOL || LA281_0 == DATABASE_SYMBOL || LA281_0 == DATE_ADD_SYMBOL || LA281_0 == DATE_SUB_SYMBOL || LA281_0 == DOT_SYMBOL || LA281_0 == EXISTS_SYMBOL || LA281_0 == EXTRACT_SYMBOL || LA281_0 == GROUP_CONCAT_SYMBOL || LA281_0 == IF_SYMBOL || LA281_0 == INSERT_SYMBOL || LA281_0 == LEFT_SYMBOL || LA281_0 == MATCH_SYMBOL || LA281_0 == MAX_SYMBOL || LA281_0 == MIN_SYMBOL || LA281_0 == MOD_SYMBOL || LA281_0 == NOW_SYMBOL || LA281_0 == NULL2_SYMBOL || LA281_0 == NULL_SYMBOL || LA281_0 == OPEN_PAR_SYMBOL || LA281_0 == PARAM_MARKER || LA281_0 == POSITION_SYMBOL || ((LA281_0 >= REPEAT_SYMBOL) && (LA281_0 <= REPLACE_SYMBOL)) || LA281_0 == RIGHT_SYMBOL || LA281_0 == STDDEV_SAMP_SYMBOL || LA281_0 == STD_SYMBOL || LA281_0 == SUBSTRING_SYMBOL || LA281_0 == SUM_SYMBOL || LA281_0 == SYSDATE_SYMBOL || LA281_0 == TRIM_SYMBOL || ((LA281_0 >= UTC_DATE_SYMBOL) && (LA281_0 <= VALUES_SYMBOL)) || LA281_0 == VARIANCE_SYMBOL || LA281_0 == VAR_SAMP_SYMBOL || LA281_0 == 732))
                {
                    alt281=2;
                }
                else if ( (LA281_0 == HOUR_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_439 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 439;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 24;


                        goto ruleselect_itemEx;

                    }

                }
                else if ( (LA281_0 == MINUTE_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_481 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 481;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 25;


                        goto ruleselect_itemEx;

                    }

                }
                else if ( (LA281_0 == MONTH_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_523 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 523;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 28;


                        goto ruleselect_itemEx;

                    }

                }
                else if ( (LA281_0 == SECOND_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_565 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 565;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 29;


                        goto ruleselect_itemEx;

                    }

                }
                else if ( (LA281_0 == USER_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_606 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 606;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 31;


                        goto ruleselect_itemEx;

                    }

                }
                else if ( (LA281_0 == YEAR_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_649 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 649;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 33;


                        goto ruleselect_itemEx;

                    }

                }
                else if ( (LA281_0 == ADDDATE_SYMBOL || LA281_0 == SUBDATE_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_691 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 691;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 35;


                        goto ruleselect_itemEx;

                    }

                }
                else if ( (LA281_0 == GET_FORMAT_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_733 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 733;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 36;


                        goto ruleselect_itemEx;

                    }

                }
                else if ( (((LA281_0 >= TIMESTAMP_ADD_SYMBOL) && (LA281_0 <= TIMESTAMP_DIFF_SYMBOL))))
                {
                    switch ( LA(2) )
                    {
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_775 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 775;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 41;


                        goto ruleselect_itemEx;

                    }

                }
                else if ( (LA281_0 == COALESCE_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_816 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 816;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 46;


                        goto ruleselect_itemEx;

                    }

                }
                else if ( (LA281_0 == CHARSET_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_859 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 859;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 50;


                        goto ruleselect_itemEx;

                    }

                }
                else if ( (LA281_0 == FORMAT_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_901 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 901;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 51;


                        goto ruleselect_itemEx;

                    }

                }
                else if ( (LA281_0 == COLLATION_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_943 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 943;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 52;


                        goto ruleselect_itemEx;

                    }

                }
                else if ( (LA281_0 == MICROSECOND_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_985 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 985;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 53;


                        goto ruleselect_itemEx;

                    }

                }
                else if ( (LA281_0 == TRUNCATE_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_1027 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 1027;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 56;


                        goto ruleselect_itemEx;

                    }

                }
                else if ( (LA281_0 == OLD_PASSWORD_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_1069 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 1069;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 57;


                        goto ruleselect_itemEx;

                    }

                }
                else if ( (LA281_0 == PASSWORD_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_1111 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 1111;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 59;


                        goto ruleselect_itemEx;

                    }

                }
                else if ( (LA281_0 == QUARTER_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_1153 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 1153;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 60;


                        goto ruleselect_itemEx;

                    }

                }
                else if ( (LA281_0 == REVERSE_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_1195 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 1195;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 61;


                        goto ruleselect_itemEx;

                    }

                }
                else if ( (LA281_0 == ROW_COUNT_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_1236 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 1236;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 64;


                        goto ruleselect_itemEx;

                    }

                }
                else if ( (LA281_0 == WEEK_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_1279 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 1279;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 65;


                        goto ruleselect_itemEx;

                    }

                }
                else if ( (LA281_0 == CONTAINS_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_1321 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 1321;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 66;


                        goto ruleselect_itemEx;

                    }

                }
                else if ( (LA281_0 == WEIGHT_STRING_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_1363 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 1363;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 67;


                        goto ruleselect_itemEx;

                    }

                }
                else if ( (LA281_0 == GEOMETRYCOLLECTION_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_1404 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 1404;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 68;


                        goto ruleselect_itemEx;

                    }

                }
                else if ( (LA281_0 == BACKUP_SYMBOL || LA281_0 == BEGIN_SYMBOL || LA281_0 == BYTE_SYMBOL || LA281_0 == CACHE_SYMBOL || LA281_0 == CHECKSUM_SYMBOL || LA281_0 == CLOSE_SYMBOL || LA281_0 == COMMENT_SYMBOL || LA281_0 == COMMIT_SYMBOL || LA281_0 == DEALLOCATE_SYMBOL || LA281_0 == DO_SYMBOL || LA281_0 == END_SYMBOL || LA281_0 == EXECUTE_SYMBOL || LA281_0 == FLUSH_SYMBOL || LA281_0 == HANDLER_SYMBOL || LA281_0 == HELP_SYMBOL || LA281_0 == HOST_SYMBOL || LA281_0 == INSTALL_SYMBOL || LA281_0 == LANGUAGE_SYMBOL || LA281_0 == NO_SYMBOL || LA281_0 == OPEN_SYMBOL || LA281_0 == OPTIONS_SYMBOL || LA281_0 == OWNER_SYMBOL || LA281_0 == PARSER_SYMBOL || LA281_0 == PARTITION_SYMBOL || LA281_0 == PORT_SYMBOL || LA281_0 == PREPARE_SYMBOL || LA281_0 == REMOVE_SYMBOL || LA281_0 == REPAIR_SYMBOL || LA281_0 == RESET_SYMBOL || LA281_0 == RESTORE_SYMBOL || LA281_0 == ROLLBACK_SYMBOL || LA281_0 == SAVEPOINT_SYMBOL || LA281_0 == SECURITY_SYMBOL || LA281_0 == SERVER_SYMBOL || LA281_0 == SIGNED_SYMBOL || LA281_0 == SLAVE_SYMBOL || ((LA281_0 >= SOCKET_SYMBOL) && (LA281_0 <= SONAME_SYMBOL)) || LA281_0 == START_SYMBOL || LA281_0 == STOP_SYMBOL || ((LA281_0 >= UNICODE_SYMBOL) && (LA281_0 <= UNINSTALL_SYMBOL)) || LA281_0 == UPGRADE_SYMBOL || LA281_0 == WRAPPER_SYMBOL || LA281_0 == XA_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_1446 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 1446;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 69;


                        goto ruleselect_itemEx;

                    }

                }
                else if ( (LA281_0 == LINESTRING_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_1488 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 1488;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 70;


                        goto ruleselect_itemEx;

                    }

                }
                else if ( (LA281_0 == MULTILINESTRING_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_1530 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 1530;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 71;


                        goto ruleselect_itemEx;

                    }

                }
                else if ( (LA281_0 == MULTIPOINT_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_1572 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 1572;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 72;


                        goto ruleselect_itemEx;

                    }

                }
                else if ( (LA281_0 == MULTIPOLYGON_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_1614 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 1614;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 73;


                        goto ruleselect_itemEx;

                    }

                }
                else if ( (LA281_0 == POINT_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_1657 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 1657;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 74;


                        goto ruleselect_itemEx;

                    }

                }
                else if ( (LA281_0 == POLYGON_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_1698 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 1698;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 75;


                        goto ruleselect_itemEx;

                    }

                }
                else if ( (LA281_0 == AVG_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_1741 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 1741;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 76;


                        goto ruleselect_itemEx;

                    }

                }
                else if ( (LA281_0 == ROW_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_1782 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 1782;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 77;


                        goto ruleselect_itemEx;

                    }

                }
                else if ( (LA281_0 == ACTION_SYMBOL || ((LA281_0 >= AFTER_SYMBOL) && (LA281_0 <= ALGORITHM_SYMBOL)) || LA281_0 == ANALYZE_SYMBOL || LA281_0 == ANY_SYMBOL || ((LA281_0 >= AT_SYMBOL) && (LA281_0 <= AVG_ROW_LENGTH_SYMBOL)) || LA281_0 == BINLOG_SYMBOL || LA281_0 == BIT_SYMBOL || ((LA281_0 >= BLOCK_SYMBOL) && (LA281_0 <= BOOL_SYMBOL)) || LA281_0 == BTREE_SYMBOL || LA281_0 == CASCADED_SYMBOL || ((LA281_0 >= CATALOG_NAME_SYMBOL) && (LA281_0 <= CHANGED_SYMBOL)) || ((LA281_0 >= CIPHER_SYMBOL) && (LA281_0 <= CLIENT_SYMBOL)) || LA281_0 == CODE_SYMBOL || ((LA281_0 >= COLUMNS_SYMBOL) && (LA281_0 <= COLUMN_NAME_SYMBOL)) || LA281_0 == COMMITTED_SYMBOL || ((LA281_0 >= COMPACT_SYMBOL) && (LA281_0 <= COMPRESSED_SYMBOL)) || LA281_0 == CONCURRENT_SYMBOL || ((LA281_0 >= CONNECTION_SYMBOL) && (LA281_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || LA281_0 == CONTEXT_SYMBOL || LA281_0 == CONTRIBUTORS_SYMBOL || LA281_0 == CPU_SYMBOL || LA281_0 == CUBE_SYMBOL || LA281_0 == CURRENT_SYMBOL || LA281_0 == CURSOR_NAME_SYMBOL || ((LA281_0 >= DATAFILE_SYMBOL) && (LA281_0 <= DATETIME_SYMBOL)) || LA281_0 == DEFAULT_AUTH_SYMBOL || LA281_0 == DEFINER_SYMBOL || LA281_0 == DELAY_KEY_WRITE_SYMBOL || LA281_0 == DES_KEY_FILE_SYMBOL || LA281_0 == DIAGNOSTICS_SYMBOL || ((LA281_0 >= DIRECTORY_SYMBOL) && (LA281_0 <= DISK_SYMBOL)) || ((LA281_0 >= DUMPFILE_SYMBOL) && (LA281_0 <= DYNAMIC_SYMBOL)) || LA281_0 == ENABLE_SYMBOL || LA281_0 == ENDS_SYMBOL || ((LA281_0 >= ENGINES_SYMBOL) && (LA281_0 <= ENUM_SYMBOL)) || ((LA281_0 >= ERRORS_SYMBOL) && (LA281_0 <= ERROR_SYMBOL)) || ((LA281_0 >= ESCAPE_SYMBOL) && (LA281_0 <= EVERY_SYMBOL)) || LA281_0 == EXPANSION_SYMBOL || LA281_0 == EXPORT_SYMBOL || ((LA281_0 >= EXTENDED_SYMBOL) && (LA281_0 <= EXTENT_SIZE_SYMBOL)) || ((LA281_0 >= FAST_SYMBOL) && (LA281_0 <= FAULTS_SYMBOL)) || ((LA281_0 >= FILE_SYMBOL) && (LA281_0 <= FIXED_SYMBOL)) || LA281_0 == FOUND_SYMBOL || LA281_0 == FULL_SYMBOL || ((LA281_0 >= FUNCTION_SYMBOL) && (LA281_0 <= GENERAL_SYMBOL)) || LA281_0 == GEOMETRY_SYMBOL || ((LA281_0 >= GLOBAL_SYMBOL) && (LA281_0 <= GRANTS_SYMBOL)) || LA281_0 == HASH_SYMBOL || LA281_0 == HOSTS_SYMBOL || LA281_0 == IDENTIFIED_SYMBOL || LA281_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA281_0 >= IMPORT_SYMBOL) && (LA281_0 <= INDEXES_SYMBOL)) || LA281_0 == INITIAL_SIZE_SYMBOL || LA281_0 == INNODB_SYMBOL || LA281_0 == INSERT_METHOD_SYMBOL || LA281_0 == INVOKER_SYMBOL || LA281_0 == IO_SYMBOL || ((LA281_0 >= IPC_SYMBOL) && (LA281_0 <= ISSUER_SYMBOL)) || LA281_0 == KEY_BLOCK_SIZE_SYMBOL || LA281_0 == LAST_SYMBOL || LA281_0 == LEAVES_SYMBOL || LA281_0 == LESS_SYMBOL || LA281_0 == LEVEL_SYMBOL || LA281_0 == LIST_SYMBOL || LA281_0 == LOCAL_SYMBOL || LA281_0 == LOCKS_SYMBOL || LA281_0 == LOGFILE_SYMBOL || LA281_0 == LOGS_SYMBOL || LA281_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA281_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA281_0 <= MASTER_SSL_SYMBOL)) || ((LA281_0 >= MASTER_SYMBOL) && (LA281_0 <= MASTER_USER_SYMBOL)) || ((LA281_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA281_0 <= MAX_SIZE_SYMBOL)) || ((LA281_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA281_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA281_0 >= MEDIUM_SYMBOL) && (LA281_0 <= MESSAGE_TEXT_SYMBOL)) || LA281_0 == MIGRATE_SYMBOL || LA281_0 == MIN_ROWS_SYMBOL || LA281_0 == MODE_SYMBOL || LA281_0 == MODIFY_SYMBOL || ((LA281_0 >= MUTEX_SYMBOL) && (LA281_0 <= NATIONAL_SYMBOL)) || LA281_0 == NCHAR_SYMBOL || LA281_0 == NDBCLUSTER_SYMBOL || ((LA281_0 >= NEW_SYMBOL) && (LA281_0 <= NONE_SYMBOL)) || LA281_0 == NO_WAIT_SYMBOL || LA281_0 == NUMBER_SYMBOL || LA281_0 == NVARCHAR_SYMBOL || LA281_0 == OFFSET_SYMBOL || ((LA281_0 >= ONE_SHOT_SYMBOL) && (LA281_0 <= ONE_SYMBOL)) || ((LA281_0 >= PACK_KEYS_SYMBOL) && (LA281_0 <= PAGE_SYMBOL)) || ((LA281_0 >= PARTIAL_SYMBOL) && (LA281_0 <= PARTITIONS_SYMBOL)) || ((LA281_0 >= PHASE_SYMBOL) && (LA281_0 <= PLUGIN_SYMBOL)) || ((LA281_0 >= PRESERVE_SYMBOL) && (LA281_0 <= PREV_SYMBOL)) || LA281_0 == PRIVILEGES_SYMBOL || ((LA281_0 >= PROCESSLIST_SYMBOL) && (LA281_0 <= PROXY_SYMBOL)) || ((LA281_0 >= QUERY_SYMBOL) && (LA281_0 <= QUICK_SYMBOL)) || LA281_0 == READ_ONLY_SYMBOL || ((LA281_0 >= REBUILD_SYMBOL) && (LA281_0 <= REDUNDANT_SYMBOL)) || ((LA281_0 >= RELAYLOG_SYMBOL) && (LA281_0 <= RELAY_THREAD_SYMBOL)) || LA281_0 == RELOAD_SYMBOL || LA281_0 == REORGANIZE_SYMBOL || LA281_0 == REPEATABLE_SYMBOL || LA281_0 == REPLICATION_SYMBOL || ((LA281_0 >= RESUME_SYMBOL) && (LA281_0 <= RETURNS_SYMBOL)) || ((LA281_0 >= ROLLUP_SYMBOL) && (LA281_0 <= ROWS_SYMBOL)) || LA281_0 == ROW_FORMAT_SYMBOL || LA281_0 == RTREE_SYMBOL || LA281_0 == SCHEDULE_SYMBOL || LA281_0 == SCHEMA_NAME_SYMBOL || ((LA281_0 >= SERIALIZABLE_SYMBOL) && (LA281_0 <= SERIAL_SYMBOL)) || LA281_0 == SESSION_SYMBOL || LA281_0 == SHARE_SYMBOL || LA281_0 == SHUTDOWN_SYMBOL || LA281_0 == SIMPLE_SYMBOL || LA281_0 == SLOW_SYMBOL || LA281_0 == SNAPSHOT_SYMBOL || ((LA281_0 >= SOUNDS_SYMBOL) && (LA281_0 <= SOURCE_SYMBOL)) || ((LA281_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA281_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA281_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA281_0 <= SQL_CACHE_SYMBOL)) || LA281_0 == SQL_NO_CACHE_SYMBOL || LA281_0 == SQL_THREAD_SYMBOL || LA281_0 == STARTS_SYMBOL || ((LA281_0 >= STATS_AUTO_RECALC_SYMBOL) && (LA281_0 <= STATUS_SYMBOL)) || LA281_0 == STORAGE_SYMBOL || ((LA281_0 >= STRING_SYMBOL) && (LA281_0 <= SUBCLASS_ORIGIN_SYMBOL)) || ((LA281_0 >= SUBJECT_SYMBOL) && (LA281_0 <= SUBPARTITION_SYMBOL)) || ((LA281_0 >= SUPER_SYMBOL) && (LA281_0 <= SWITCHES_SYMBOL)) || ((LA281_0 >= TABLESPACE_SYMBOL) && (LA281_0 <= TABLE_NAME_SYMBOL)) || ((LA281_0 >= TEMPORARY_SYMBOL) && (LA281_0 <= TEMPTABLE_SYMBOL)) || ((LA281_0 >= TEXT_SYMBOL) && (LA281_0 <= THAN_SYMBOL)) || ((LA281_0 >= TRANSACTION_SYMBOL) && (LA281_0 <= TRIGGERS_SYMBOL)) || ((LA281_0 >= TYPES_SYMBOL) && (LA281_0 <= UDF_RETURNS_SYMBOL)) || ((LA281_0 >= UNCOMMITTED_SYMBOL) && (LA281_0 <= UNDEFINED_SYMBOL)) || ((LA281_0 >= UNDOFILE_SYMBOL) && (LA281_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || LA281_0 == UNKNOWN_SYMBOL || LA281_0 == UNTIL_SYMBOL || LA281_0 == USER_RESOURCES_SYMBOL || LA281_0 == USE_FRM_SYMBOL || LA281_0 == VALUE_SYMBOL || LA281_0 == VARIABLES_SYMBOL || ((LA281_0 >= VIEW_SYMBOL) && (LA281_0 <= WARNINGS_SYMBOL)) || LA281_0 == WORK_SYMBOL || LA281_0 == X509_SYMBOL || LA281_0 == XML_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA281_1824 = LA(3);
                    		    if ( (synpred1_MySQL(ctx)))
                    		    {
                    		        alt281=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt281=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 281;
                    		        EXCEPTION->state        = 1824;


                    		        goto ruleselect_itemEx;

                    		    }
                    		}
                    	}
                        break;
                    case EOF:
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case AND_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AS_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BETWEEN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITWISE_AND_OPERATOR:
                    case BITWISE_OR_OPERATOR:
                    case BITWISE_XOR_OPERATOR:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_PAR_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMA_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCAT_PIPES_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DIV_OPERATOR:
                    case DIV_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case EQUAL_OPERATOR:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOR_SYMBOL:
                    case FOUND_SYMBOL:
                    case FROM_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTO_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IN_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case IS_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_SYMBOL:
                    case LESS_THAN_OPERATOR:
                    case LEVEL_SYMBOL:
                    case LIKE_SYMBOL:
                    case LIMIT_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGICAL_AND_OPERATOR:
                    case LOGICAL_OR_OPERATOR:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUS_OPERATOR:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_OPERATOR:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MULT_OPERATOR:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOT_EQUAL2_OPERATOR:
                    case NOT_EQUAL_OPERATOR:
                    case NOT_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL_SAFE_EQUAL_OPERATOR:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case ON_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OR_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case PLUS_OPERATOR:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case REGEXP_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHIFT_LEFT_OPERATOR:
                    case SHIFT_RIGHT_OPERATOR:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNION_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WITH_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case XOR_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt281=2;
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 281;
                        EXCEPTION->state        = 95;


                        goto ruleselect_itemEx;

                    }

                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 281;
                    EXCEPTION->state        = 0;


                    goto ruleselect_itemEx;

                }
            }
            switch (alt281)
            {
        	case 1:
        	    // MySQL.g:804:2: ( qualified_identifier_with_wildcard )=> qualified_identifier_with_wildcard
        	    {
        	        FOLLOWPUSH(FOLLOW_qualified_identifier_with_wildcard_in_select_item4127);
        	        qualified_identifier_with_wildcard829=qualified_identifier_with_wildcard(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) { CREATE_stream_qualified_identifier_with_wildcard; stream_qualified_identifier_with_wildcard->add(stream_qualified_identifier_with_wildcard, qualified_identifier_with_wildcard829.tree, NULL); }

        	        /* AST REWRITE
        	         * elements          : qualified_identifier_with_wildcard
        	         * token labels      : 
        	         * rule labels       : retval
        	         * token list labels : 
        	         * rule list labels  : 
        	         */
        	        if ( BACKTRACKING==0 ) 

        	        {
        	        	pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_retval;

        	        	stream_retval=antlr3RewriteRuleSubtreeStreamNewAEE(ADAPTOR,  RECOGNIZER, (pANTLR3_UINT8)"token retval", retval.tree != NULL ? retval.tree : NULL);

        	        	root_0			    = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
        	        	retval.tree    = root_0;
        	        	// 804:77: -> ^( SELECT_EXPR qualified_identifier_with_wildcard )
        	        	{
        	        	    // MySQL.g:804:80: ^( SELECT_EXPR qualified_identifier_with_wildcard )
        	        	    {
        	        	        pANTLR3_BASE_TREE root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
        	        	        root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, 
        	        	        (pANTLR3_BASE_TREE)ADAPTOR->createTypeText(ADAPTOR, SELECT_EXPR, (pANTLR3_UINT8)"SELECT_EXPR")
        	        	        , root_1));

        	        	        ADAPTOR->addChild(ADAPTOR, root_1, stream_qualified_identifier_with_wildcard == NULL ? NULL : stream_qualified_identifier_with_wildcard->nextTree(stream_qualified_identifier_with_wildcard));

        	        	        ADAPTOR->addChild(ADAPTOR, root_0, root_1);
        	        	    }

        	        	}


        	        	retval.tree = root_0; // set result root
        	        	if (stream_retval != NULL) stream_retval->free(stream_retval);


        	        }
        	    }
        	    break;
        	case 2:
        	    // MySQL.g:805:4: expression ( select_alias )?
        	    {
        	        FOLLOWPUSH(FOLLOW_expression_in_select_item4140);
        	        expression830=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) { CREATE_stream_expression; stream_expression->add(stream_expression, expression830.tree, NULL); }

        	        // MySQL.g:805:15: ( select_alias )?
        	        {
        	            int alt280=2;
        	            {
        	                int LA280_0 = LA(1);
        	                if ( (LA280_0 == AS_SYMBOL || LA280_0 == NCHAR_TEXT || LA280_0 == SINGLE_QUOTED_TEXT || LA280_0 == UNDERSCORE_CHARSET))
        	                {
        	                    alt280=1;
        	                }
        	                else if ( ((((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)))||((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))) && (LA280_0 == DOUBLE_QUOTED_TEXT))
        	                {
        	                    alt280=1;
        	                }
        	                else if ( (((LA280_0 >= ACTION_SYMBOL) && (LA280_0 <= ADDDATE_SYMBOL)) || ((LA280_0 >= AFTER_SYMBOL) && (LA280_0 <= ALGORITHM_SYMBOL)) || LA280_0 == ANALYZE_SYMBOL || ((LA280_0 >= ANY_SYMBOL) && (LA280_0 <= ASCII_SYMBOL)) || ((LA280_0 >= AT_SYMBOL) && (LA280_0 <= BACKUP_SYMBOL)) || LA280_0 == BACK_TICK_QUOTED_ID || LA280_0 == BEGIN_SYMBOL || LA280_0 == BINLOG_SYMBOL || LA280_0 == BIT_SYMBOL || ((LA280_0 >= BLOCK_SYMBOL) && (LA280_0 <= BOOL_SYMBOL)) || ((LA280_0 >= BTREE_SYMBOL) && (LA280_0 <= BYTE_SYMBOL)) || LA280_0 == CACHE_SYMBOL || LA280_0 == CASCADED_SYMBOL || ((LA280_0 >= CATALOG_NAME_SYMBOL) && (LA280_0 <= CHANGED_SYMBOL)) || LA280_0 == CHARSET_SYMBOL || LA280_0 == CHECKSUM_SYMBOL || ((LA280_0 >= CIPHER_SYMBOL) && (LA280_0 <= CLIENT_SYMBOL)) || ((LA280_0 >= CLOSE_SYMBOL) && (LA280_0 <= CODE_SYMBOL)) || LA280_0 == COLLATION_SYMBOL || ((LA280_0 >= COLUMNS_SYMBOL) && (LA280_0 <= COLUMN_NAME_SYMBOL)) || ((LA280_0 >= COMMENT_SYMBOL) && (LA280_0 <= COMPRESSED_SYMBOL)) || LA280_0 == CONCURRENT_SYMBOL || ((LA280_0 >= CONNECTION_SYMBOL) && (LA280_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA280_0 >= CONTAINS_SYMBOL) && (LA280_0 <= CONTEXT_SYMBOL)) || LA280_0 == CONTRIBUTORS_SYMBOL || LA280_0 == CPU_SYMBOL || LA280_0 == CUBE_SYMBOL || LA280_0 == CURRENT_SYMBOL || LA280_0 == CURSOR_NAME_SYMBOL || ((LA280_0 >= DATAFILE_SYMBOL) && (LA280_0 <= DATETIME_SYMBOL)) || LA280_0 == DATE_SYMBOL || ((LA280_0 >= DAY_SYMBOL) && (LA280_0 <= DEALLOCATE_SYMBOL)) || LA280_0 == DEFAULT_AUTH_SYMBOL || LA280_0 == DEFINER_SYMBOL || LA280_0 == DELAY_KEY_WRITE_SYMBOL || LA280_0 == DES_KEY_FILE_SYMBOL || LA280_0 == DIAGNOSTICS_SYMBOL || ((LA280_0 >= DIRECTORY_SYMBOL) && (LA280_0 <= DISK_SYMBOL)) || LA280_0 == DO_SYMBOL || ((LA280_0 >= DUMPFILE_SYMBOL) && (LA280_0 <= DYNAMIC_SYMBOL)) || LA280_0 == ENABLE_SYMBOL || LA280_0 == ENDS_SYMBOL || ((LA280_0 >= END_SYMBOL) && (LA280_0 <= ENUM_SYMBOL)) || ((LA280_0 >= ERRORS_SYMBOL) && (LA280_0 <= ERROR_SYMBOL)) || ((LA280_0 >= ESCAPE_SYMBOL) && (LA280_0 <= EVERY_SYMBOL)) || LA280_0 == EXECUTE_SYMBOL || LA280_0 == EXPANSION_SYMBOL || LA280_0 == EXPORT_SYMBOL || ((LA280_0 >= EXTENDED_SYMBOL) && (LA280_0 <= EXTENT_SIZE_SYMBOL)) || ((LA280_0 >= FAST_SYMBOL) && (LA280_0 <= FAULTS_SYMBOL)) || ((LA280_0 >= FILE_SYMBOL) && (LA280_0 <= FIXED_SYMBOL)) || LA280_0 == FLUSH_SYMBOL || LA280_0 == FORMAT_SYMBOL || LA280_0 == FOUND_SYMBOL || LA280_0 == FULL_SYMBOL || ((LA280_0 >= FUNCTION_SYMBOL) && (LA280_0 <= GET_FORMAT_SYMBOL)) || ((LA280_0 >= GLOBAL_SYMBOL) && (LA280_0 <= GRANTS_SYMBOL)) || ((LA280_0 >= HANDLER_SYMBOL) && (LA280_0 <= HASH_SYMBOL)) || LA280_0 == HELP_SYMBOL || ((LA280_0 >= HOSTS_SYMBOL) && (LA280_0 <= HOST_SYMBOL)) || ((LA280_0 >= HOUR_SYMBOL) && (LA280_0 <= IDENTIFIER)) || LA280_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA280_0 >= IMPORT_SYMBOL) && (LA280_0 <= INDEXES_SYMBOL)) || LA280_0 == INITIAL_SIZE_SYMBOL || LA280_0 == INNODB_SYMBOL || LA280_0 == INSERT_METHOD_SYMBOL || LA280_0 == INSTALL_SYMBOL || LA280_0 == INVOKER_SYMBOL || LA280_0 == IO_SYMBOL || ((LA280_0 >= IPC_SYMBOL) && (LA280_0 <= ISSUER_SYMBOL)) || LA280_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA280_0 >= LANGUAGE_SYMBOL) && (LA280_0 <= LAST_SYMBOL)) || LA280_0 == LEAVES_SYMBOL || LA280_0 == LESS_SYMBOL || LA280_0 == LEVEL_SYMBOL || LA280_0 == LINESTRING_SYMBOL || LA280_0 == LIST_SYMBOL || LA280_0 == LOCAL_SYMBOL || LA280_0 == LOCKS_SYMBOL || LA280_0 == LOGFILE_SYMBOL || LA280_0 == LOGS_SYMBOL || LA280_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA280_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA280_0 <= MASTER_SSL_SYMBOL)) || ((LA280_0 >= MASTER_SYMBOL) && (LA280_0 <= MASTER_USER_SYMBOL)) || ((LA280_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA280_0 <= MAX_SIZE_SYMBOL)) || ((LA280_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA280_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA280_0 >= MEDIUM_SYMBOL) && (LA280_0 <= MICROSECOND_SYMBOL)) || LA280_0 == MIGRATE_SYMBOL || ((LA280_0 >= MINUTE_SYMBOL) && (LA280_0 <= MIN_ROWS_SYMBOL)) || LA280_0 == MODE_SYMBOL || LA280_0 == MODIFY_SYMBOL || ((LA280_0 >= MONTH_SYMBOL) && (LA280_0 <= MULTILINESTRING_SYMBOL)) || ((LA280_0 >= MULTIPOINT_SYMBOL) && (LA280_0 <= MULTIPOLYGON_SYMBOL)) || ((LA280_0 >= MUTEX_SYMBOL) && (LA280_0 <= NATIONAL_SYMBOL)) || LA280_0 == NCHAR_SYMBOL || LA280_0 == NDBCLUSTER_SYMBOL || ((LA280_0 >= NEW_SYMBOL) && (LA280_0 <= NONE_SYMBOL)) || ((LA280_0 >= NO_SYMBOL) && (LA280_0 <= NO_WAIT_SYMBOL)) || LA280_0 == NUMBER_SYMBOL || LA280_0 == NVARCHAR_SYMBOL || ((LA280_0 >= OFFSET_SYMBOL) && (LA280_0 <= ONE_SYMBOL)) || LA280_0 == OPEN_SYMBOL || LA280_0 == OPTIONS_SYMBOL || ((LA280_0 >= OWNER_SYMBOL) && (LA280_0 <= PAGE_SYMBOL)) || ((LA280_0 >= PARSER_SYMBOL) && (LA280_0 <= PARTITION_SYMBOL)) || ((LA280_0 >= PASSWORD_SYMBOL) && (LA280_0 <= PLUGIN_SYMBOL)) || ((LA280_0 >= POINT_SYMBOL) && (LA280_0 <= PORT_SYMBOL)) || ((LA280_0 >= PREPARE_SYMBOL) && (LA280_0 <= PREV_SYMBOL)) || LA280_0 == PRIVILEGES_SYMBOL || ((LA280_0 >= PROCESSLIST_SYMBOL) && (LA280_0 <= PROXY_SYMBOL)) || ((LA280_0 >= QUARTER_SYMBOL) && (LA280_0 <= QUICK_SYMBOL)) || LA280_0 == READ_ONLY_SYMBOL || ((LA280_0 >= REBUILD_SYMBOL) && (LA280_0 <= REDUNDANT_SYMBOL)) || ((LA280_0 >= RELAYLOG_SYMBOL) && (LA280_0 <= RELAY_THREAD_SYMBOL)) || ((LA280_0 >= RELOAD_SYMBOL) && (LA280_0 <= REMOVE_SYMBOL)) || ((LA280_0 >= REORGANIZE_SYMBOL) && (LA280_0 <= REPEATABLE_SYMBOL)) || LA280_0 == REPLICATION_SYMBOL || LA280_0 == RESET_SYMBOL || LA280_0 == RESTORE_SYMBOL || ((LA280_0 >= RESUME_SYMBOL) && (LA280_0 <= RETURNS_SYMBOL)) || LA280_0 == REVERSE_SYMBOL || ((LA280_0 >= ROLLBACK_SYMBOL) && (LA280_0 <= SCHEDULE_SYMBOL)) || LA280_0 == SCHEMA_NAME_SYMBOL || ((LA280_0 >= SECOND_SYMBOL) && (LA280_0 <= SECURITY_SYMBOL)) || ((LA280_0 >= SERIALIZABLE_SYMBOL) && (LA280_0 <= SERIAL_SYMBOL)) || ((LA280_0 >= SERVER_SYMBOL) && (LA280_0 <= SESSION_SYMBOL)) || LA280_0 == SHARE_SYMBOL || LA280_0 == SHUTDOWN_SYMBOL || ((LA280_0 >= SIGNED_SYMBOL) && (LA280_0 <= SIMPLE_SYMBOL)) || ((LA280_0 >= SLAVE_SYMBOL) && (LA280_0 <= SLOW_SYMBOL)) || ((LA280_0 >= SNAPSHOT_SYMBOL) && (LA280_0 <= SOURCE_SYMBOL)) || ((LA280_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA280_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA280_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA280_0 <= SQL_CACHE_SYMBOL)) || LA280_0 == SQL_NO_CACHE_SYMBOL || LA280_0 == SQL_THREAD_SYMBOL || ((LA280_0 >= STARTS_SYMBOL) && (LA280_0 <= STATUS_SYMBOL)) || ((LA280_0 >= STOP_SYMBOL) && (LA280_0 <= STORAGE_SYMBOL)) || ((LA280_0 >= STRING_SYMBOL) && (LA280_0 <= SUBPARTITION_SYMBOL)) || ((LA280_0 >= SUPER_SYMBOL) && (LA280_0 <= SWITCHES_SYMBOL)) || ((LA280_0 >= TABLESPACE_SYMBOL) && (LA280_0 <= TABLE_NAME_SYMBOL)) || ((LA280_0 >= TEMPORARY_SYMBOL) && (LA280_0 <= TEMPTABLE_SYMBOL)) || ((LA280_0 >= TEXT_SYMBOL) && (LA280_0 <= THAN_SYMBOL)) || ((LA280_0 >= TIMESTAMP_ADD_SYMBOL) && (LA280_0 <= TIME_SYMBOL)) || ((LA280_0 >= TRANSACTION_SYMBOL) && (LA280_0 <= TRIGGERS_SYMBOL)) || ((LA280_0 >= TRUNCATE_SYMBOL) && (LA280_0 <= UDF_RETURNS_SYMBOL)) || ((LA280_0 >= UNCOMMITTED_SYMBOL) && (LA280_0 <= UNDEFINED_SYMBOL)) || ((LA280_0 >= UNDOFILE_SYMBOL) && (LA280_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA280_0 >= UNICODE_SYMBOL) && (LA280_0 <= UNINSTALL_SYMBOL)) || LA280_0 == UNKNOWN_SYMBOL || LA280_0 == UNTIL_SYMBOL || LA280_0 == UPGRADE_SYMBOL || ((LA280_0 >= USER_RESOURCES_SYMBOL) && (LA280_0 <= USE_FRM_SYMBOL)) || LA280_0 == VALUE_SYMBOL || LA280_0 == VARIABLES_SYMBOL || ((LA280_0 >= VIEW_SYMBOL) && (LA280_0 <= WEIGHT_STRING_SYMBOL)) || ((LA280_0 >= WORK_SYMBOL) && (LA280_0 <= WRAPPER_SYMBOL)) || LA280_0 == X509_SYMBOL || ((LA280_0 >= XA_SYMBOL) && (LA280_0 <= XML_SYMBOL)) || LA280_0 == YEAR_SYMBOL))
        	                {
        	                    alt280=1;
        	                }
        	            }
        	            switch (alt280)
        	            {
        	        	case 1:
        	        	    // MySQL.g:805:15: select_alias
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_select_alias_in_select_item4142);
        	        	        select_alias831=select_alias(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleselect_itemEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) { CREATE_stream_select_alias; stream_select_alias->add(stream_select_alias, select_alias831.tree, NULL); }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        /* AST REWRITE
        	         * elements          : expression, select_alias
        	         * token labels      : 
        	         * rule labels       : retval
        	         * token list labels : 
        	         * rule list labels  : 
        	         */
        	        if ( BACKTRACKING==0 ) 

        	        {
        	        	pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_retval;

        	        	stream_retval=antlr3RewriteRuleSubtreeStreamNewAEE(ADAPTOR,  RECOGNIZER, (pANTLR3_UINT8)"token retval", retval.tree != NULL ? retval.tree : NULL);

        	        	root_0			    = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
        	        	retval.tree    = root_0;
        	        	// 805:29: -> ^( SELECT_EXPR expression ( select_alias )? )
        	        	{
        	        	    // MySQL.g:805:32: ^( SELECT_EXPR expression ( select_alias )? )
        	        	    {
        	        	        pANTLR3_BASE_TREE root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
        	        	        root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, 
        	        	        (pANTLR3_BASE_TREE)ADAPTOR->createTypeText(ADAPTOR, SELECT_EXPR, (pANTLR3_UINT8)"SELECT_EXPR")
        	        	        , root_1));

        	        	        ADAPTOR->addChild(ADAPTOR, root_1, stream_expression == NULL ? NULL : stream_expression->nextTree(stream_expression));

        	        	        // MySQL.g:805:57: ( select_alias )?
        	        	        {
        	        	        	if ( (stream_select_alias != NULL && stream_select_alias->hasNext(stream_select_alias))  )
        	        	        	{
        	        	        		ADAPTOR->addChild(ADAPTOR, root_1, stream_select_alias == NULL ? NULL : stream_select_alias->nextTree(stream_select_alias));

        	        	        	}
        	        	        	if ( stream_select_alias != NULL) stream_select_alias->reset(stream_select_alias);

        	        	        }

        	        	        ADAPTOR->addChild(ADAPTOR, root_0, root_1);
        	        	    }

        	        	}


        	        	retval.tree = root_0; // set result root
        	        	if (stream_retval != NULL) stream_retval->free(stream_retval);


        	        }
        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleselect_itemEx; /* Prevent compiler warnings */
    ruleselect_itemEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
        if (stream_expression != NULL) stream_expression->free(stream_expression);
        if (stream_select_alias != NULL) stream_select_alias->free(stream_select_alias);
        if (stream_qualified_identifier_with_wildcard != NULL) stream_qualified_identifier_with_wildcard->free(stream_qualified_identifier_with_wildcard);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end select_item */

/**
 * $ANTLR start select_alias
 * MySQL.g:808:1: select_alias : ( AS_SYMBOL )? text_or_identifier ;
 */
static MySQLParser_select_alias_return
select_alias(pMySQLParser ctx)
{
    MySQLParser_select_alias_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    AS_SYMBOL832;
    MySQLParser_text_or_identifier_return text_or_identifier833;
    #undef	RETURN_TYPE_text_or_identifier833
    #define	RETURN_TYPE_text_or_identifier833 MySQLParser_text_or_identifier_return

    pANTLR3_BASE_TREE AS_SYMBOL832_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    AS_SYMBOL832       = NULL;
    text_or_identifier833.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    AS_SYMBOL832_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:808:13: ( ( AS_SYMBOL )? text_or_identifier )
        // MySQL.g:809:2: ( AS_SYMBOL )? text_or_identifier
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:809:2: ( AS_SYMBOL )?
            {
                int alt282=2;
                switch ( LA(1) )
                {
                    case AS_SYMBOL:
                    	{
                    		alt282=1;
                    	}
                        break;
                }

                switch (alt282)
                {
            	case 1:
            	    // MySQL.g:809:2: AS_SYMBOL
            	    {
            	        AS_SYMBOL832 = (pANTLR3_COMMON_TOKEN) MATCHT(AS_SYMBOL, &FOLLOW_AS_SYMBOL_in_select_alias4163);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_aliasEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        AS_SYMBOL832_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AS_SYMBOL832));
            	        ADAPTOR->addChild(ADAPTOR, root_0, AS_SYMBOL832_tree);
            	        }

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_text_or_identifier_in_select_alias4166);
            text_or_identifier833=text_or_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleselect_aliasEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_identifier833.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleselect_aliasEx; /* Prevent compiler warnings */
    ruleselect_aliasEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end select_alias */

/**
 * $ANTLR start select_source_and_options
 * MySQL.g:812:1: select_source_and_options : ( limit_clause | into_clause ( select_from )? | select_from ( into_clause )? );
 */
static MySQLParser_select_source_and_options_return
select_source_and_options(pMySQLParser ctx)
{
    MySQLParser_select_source_and_options_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_limit_clause_return limit_clause834;
    #undef	RETURN_TYPE_limit_clause834
    #define	RETURN_TYPE_limit_clause834 MySQLParser_limit_clause_return

    MySQLParser_into_clause_return into_clause835;
    #undef	RETURN_TYPE_into_clause835
    #define	RETURN_TYPE_into_clause835 MySQLParser_into_clause_return

    MySQLParser_select_from_return select_from836;
    #undef	RETURN_TYPE_select_from836
    #define	RETURN_TYPE_select_from836 MySQLParser_select_from_return

    MySQLParser_select_from_return select_from837;
    #undef	RETURN_TYPE_select_from837
    #define	RETURN_TYPE_select_from837 MySQLParser_select_from_return

    MySQLParser_into_clause_return into_clause838;
    #undef	RETURN_TYPE_into_clause838
    #define	RETURN_TYPE_into_clause838 MySQLParser_into_clause_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    limit_clause834.tree = NULL;

    into_clause835.tree = NULL;

    select_from836.tree = NULL;

    select_from837.tree = NULL;

    into_clause838.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:812:26: ( limit_clause | into_clause ( select_from )? | select_from ( into_clause )? )

            ANTLR3_UINT32 alt285;

            alt285=3;

            switch ( LA(1) )
            {
            case LIMIT_SYMBOL:
            	{
            		alt285=1;
            	}
                break;
            case INTO_SYMBOL:
            	{
            		alt285=2;
            	}
                break;
            case FROM_SYMBOL:
            	{
            		alt285=3;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 285;
                EXCEPTION->state        = 0;


                goto ruleselect_source_and_optionsEx;

            }

            switch (alt285)
            {
        	case 1:
        	    // MySQL.g:813:2: limit_clause
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_limit_clause_in_select_source_and_options4184);
        	        limit_clause834=limit_clause(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_source_and_optionsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_clause834.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:814:4: into_clause ( select_from )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_into_clause_in_select_source_and_options4189);
        	        into_clause835=into_clause(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_source_and_optionsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, into_clause835.tree);

        	        // MySQL.g:814:16: ( select_from )?
        	        {
        	            int alt283=2;
        	            switch ( LA(1) )
        	            {
        	                case FROM_SYMBOL:
        	                	{
        	                		alt283=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt283)
        	            {
        	        	case 1:
        	        	    // MySQL.g:814:16: select_from
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_select_from_in_select_source_and_options4191);
        	        	        select_from836=select_from(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleselect_source_and_optionsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_from836.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:815:4: select_from ( into_clause )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_select_from_in_select_source_and_options4197);
        	        select_from837=select_from(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_source_and_optionsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_from837.tree);

        	        // MySQL.g:815:16: ( into_clause )?
        	        {
        	            int alt284=2;
        	            switch ( LA(1) )
        	            {
        	                case INTO_SYMBOL:
        	                	{
        	                		alt284=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt284)
        	            {
        	        	case 1:
        	        	    // MySQL.g:815:16: into_clause
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_into_clause_in_select_source_and_options4199);
        	        	        into_clause838=into_clause(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleselect_source_and_optionsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, into_clause838.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleselect_source_and_optionsEx; /* Prevent compiler warnings */
    ruleselect_source_and_optionsEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end select_source_and_options */

/**
 * $ANTLR start limit_clause
 * MySQL.g:818:1: limit_clause : LIMIT_SYMBOL limit_options ;
 */
static MySQLParser_limit_clause_return
limit_clause(pMySQLParser ctx)
{
    MySQLParser_limit_clause_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    LIMIT_SYMBOL839;
    MySQLParser_limit_options_return limit_options840;
    #undef	RETURN_TYPE_limit_options840
    #define	RETURN_TYPE_limit_options840 MySQLParser_limit_options_return

    pANTLR3_BASE_TREE LIMIT_SYMBOL839_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    LIMIT_SYMBOL839       = NULL;
    limit_options840.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    LIMIT_SYMBOL839_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:818:13: ( LIMIT_SYMBOL limit_options )
        // MySQL.g:819:2: LIMIT_SYMBOL limit_options
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            LIMIT_SYMBOL839 = (pANTLR3_COMMON_TOKEN) MATCHT(LIMIT_SYMBOL, &FOLLOW_LIMIT_SYMBOL_in_limit_clause4209);
            if  (HASEXCEPTION())
            {
                goto rulelimit_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            LIMIT_SYMBOL839_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LIMIT_SYMBOL839));
            ADAPTOR->addChild(ADAPTOR, root_0, LIMIT_SYMBOL839_tree);
            }

            FOLLOWPUSH(FOLLOW_limit_options_in_limit_clause4211);
            limit_options840=limit_options(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulelimit_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_options840.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto rulelimit_clauseEx; /* Prevent compiler warnings */
    rulelimit_clauseEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end limit_clause */

/**
 * $ANTLR start limit_options
 * MySQL.g:822:1: limit_options : limit_option ( ( COMMA_SYMBOL | OFFSET_SYMBOL ) limit_option )? ;
 */
static MySQLParser_limit_options_return
limit_options(pMySQLParser ctx)
{
    MySQLParser_limit_options_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set842;
    MySQLParser_limit_option_return limit_option841;
    #undef	RETURN_TYPE_limit_option841
    #define	RETURN_TYPE_limit_option841 MySQLParser_limit_option_return

    MySQLParser_limit_option_return limit_option843;
    #undef	RETURN_TYPE_limit_option843
    #define	RETURN_TYPE_limit_option843 MySQLParser_limit_option_return

    pANTLR3_BASE_TREE set842_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set842       = NULL;
    limit_option841.tree = NULL;

    limit_option843.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set842_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:822:14: ( limit_option ( ( COMMA_SYMBOL | OFFSET_SYMBOL ) limit_option )? )
        // MySQL.g:823:2: limit_option ( ( COMMA_SYMBOL | OFFSET_SYMBOL ) limit_option )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_limit_option_in_limit_options4220);
            limit_option841=limit_option(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulelimit_optionsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_option841.tree);

            // MySQL.g:823:15: ( ( COMMA_SYMBOL | OFFSET_SYMBOL ) limit_option )?
            {
                int alt286=2;
                switch ( LA(1) )
                {
                    case COMMA_SYMBOL:
                    case OFFSET_SYMBOL:
                    	{
                    		alt286=1;
                    	}
                        break;
                }

                switch (alt286)
                {
            	case 1:
            	    // MySQL.g:823:16: ( COMMA_SYMBOL | OFFSET_SYMBOL ) limit_option
            	    {
            	        set842=(pANTLR3_COMMON_TOKEN)LT(1);

            	        if ( LA(1) == COMMA_SYMBOL || LA(1) == OFFSET_SYMBOL )
            	        {
            	            CONSUME();
            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set842))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	            CONSTRUCTEX();
            	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	            EXCEPTION->expectingSet = NULL;

            	            goto rulelimit_optionsEx;
            	        }


            	        FOLLOWPUSH(FOLLOW_limit_option_in_limit_options4231);
            	        limit_option843=limit_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulelimit_optionsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_option843.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulelimit_optionsEx; /* Prevent compiler warnings */
    rulelimit_optionsEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end limit_options */

/**
 * $ANTLR start limit_option
 * MySQL.g:826:1: limit_option : ( PARAM_MARKER | INTEGER | identifier );
 */
static MySQLParser_limit_option_return
limit_option(pMySQLParser ctx)
{
    MySQLParser_limit_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    PARAM_MARKER844;
    pANTLR3_COMMON_TOKEN    INTEGER845;
    MySQLParser_identifier_return identifier846;
    #undef	RETURN_TYPE_identifier846
    #define	RETURN_TYPE_identifier846 MySQLParser_identifier_return

    pANTLR3_BASE_TREE PARAM_MARKER844_tree;
    pANTLR3_BASE_TREE INTEGER845_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PARAM_MARKER844       = NULL;
    INTEGER845       = NULL;
    identifier846.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PARAM_MARKER844_tree   = NULL;
    INTEGER845_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:826:13: ( PARAM_MARKER | INTEGER | identifier )

            ANTLR3_UINT32 alt287;

            alt287=3;

            {
                int LA287_0 = LA(1);
                if ( (LA287_0 == PARAM_MARKER))
                {
                    alt287=1;
                }
                else if ( (LA287_0 == INTEGER))
                {
                    alt287=2;
                }
                else if ( (LA287_0 == BACK_TICK_QUOTED_ID || LA287_0 == IDENTIFIER))
                {
                    alt287=3;
                }
                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA287_0 == DOUBLE_QUOTED_TEXT))
                {
                    alt287=3;
                }
                else if ( (((LA287_0 >= ACTION_SYMBOL) && (LA287_0 <= ADDDATE_SYMBOL)) || ((LA287_0 >= AFTER_SYMBOL) && (LA287_0 <= ALGORITHM_SYMBOL)) || LA287_0 == ANALYZE_SYMBOL || ((LA287_0 >= ANY_SYMBOL) && (LA287_0 <= ASCII_SYMBOL)) || ((LA287_0 >= AT_SYMBOL) && (LA287_0 <= BACKUP_SYMBOL)) || LA287_0 == BEGIN_SYMBOL || LA287_0 == BINLOG_SYMBOL || LA287_0 == BIT_SYMBOL || ((LA287_0 >= BLOCK_SYMBOL) && (LA287_0 <= BOOL_SYMBOL)) || ((LA287_0 >= BTREE_SYMBOL) && (LA287_0 <= BYTE_SYMBOL)) || LA287_0 == CACHE_SYMBOL || LA287_0 == CASCADED_SYMBOL || ((LA287_0 >= CATALOG_NAME_SYMBOL) && (LA287_0 <= CHANGED_SYMBOL)) || LA287_0 == CHARSET_SYMBOL || LA287_0 == CHECKSUM_SYMBOL || ((LA287_0 >= CIPHER_SYMBOL) && (LA287_0 <= CLIENT_SYMBOL)) || ((LA287_0 >= CLOSE_SYMBOL) && (LA287_0 <= CODE_SYMBOL)) || LA287_0 == COLLATION_SYMBOL || ((LA287_0 >= COLUMNS_SYMBOL) && (LA287_0 <= COLUMN_NAME_SYMBOL)) || ((LA287_0 >= COMMENT_SYMBOL) && (LA287_0 <= COMPRESSED_SYMBOL)) || LA287_0 == CONCURRENT_SYMBOL || ((LA287_0 >= CONNECTION_SYMBOL) && (LA287_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA287_0 >= CONTAINS_SYMBOL) && (LA287_0 <= CONTEXT_SYMBOL)) || LA287_0 == CONTRIBUTORS_SYMBOL || LA287_0 == CPU_SYMBOL || LA287_0 == CUBE_SYMBOL || LA287_0 == CURRENT_SYMBOL || LA287_0 == CURSOR_NAME_SYMBOL || ((LA287_0 >= DATAFILE_SYMBOL) && (LA287_0 <= DATETIME_SYMBOL)) || LA287_0 == DATE_SYMBOL || ((LA287_0 >= DAY_SYMBOL) && (LA287_0 <= DEALLOCATE_SYMBOL)) || LA287_0 == DEFAULT_AUTH_SYMBOL || LA287_0 == DEFINER_SYMBOL || LA287_0 == DELAY_KEY_WRITE_SYMBOL || LA287_0 == DES_KEY_FILE_SYMBOL || LA287_0 == DIAGNOSTICS_SYMBOL || ((LA287_0 >= DIRECTORY_SYMBOL) && (LA287_0 <= DISK_SYMBOL)) || LA287_0 == DO_SYMBOL || ((LA287_0 >= DUMPFILE_SYMBOL) && (LA287_0 <= DYNAMIC_SYMBOL)) || LA287_0 == ENABLE_SYMBOL || LA287_0 == ENDS_SYMBOL || ((LA287_0 >= END_SYMBOL) && (LA287_0 <= ENUM_SYMBOL)) || ((LA287_0 >= ERRORS_SYMBOL) && (LA287_0 <= ERROR_SYMBOL)) || ((LA287_0 >= ESCAPE_SYMBOL) && (LA287_0 <= EVERY_SYMBOL)) || LA287_0 == EXECUTE_SYMBOL || LA287_0 == EXPANSION_SYMBOL || LA287_0 == EXPORT_SYMBOL || ((LA287_0 >= EXTENDED_SYMBOL) && (LA287_0 <= EXTENT_SIZE_SYMBOL)) || ((LA287_0 >= FAST_SYMBOL) && (LA287_0 <= FAULTS_SYMBOL)) || ((LA287_0 >= FILE_SYMBOL) && (LA287_0 <= FIXED_SYMBOL)) || LA287_0 == FLUSH_SYMBOL || LA287_0 == FORMAT_SYMBOL || LA287_0 == FOUND_SYMBOL || LA287_0 == FULL_SYMBOL || ((LA287_0 >= FUNCTION_SYMBOL) && (LA287_0 <= GET_FORMAT_SYMBOL)) || ((LA287_0 >= GLOBAL_SYMBOL) && (LA287_0 <= GRANTS_SYMBOL)) || ((LA287_0 >= HANDLER_SYMBOL) && (LA287_0 <= HASH_SYMBOL)) || LA287_0 == HELP_SYMBOL || ((LA287_0 >= HOSTS_SYMBOL) && (LA287_0 <= HOST_SYMBOL)) || ((LA287_0 >= HOUR_SYMBOL) && (LA287_0 <= IDENTIFIED_SYMBOL)) || LA287_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA287_0 >= IMPORT_SYMBOL) && (LA287_0 <= INDEXES_SYMBOL)) || LA287_0 == INITIAL_SIZE_SYMBOL || LA287_0 == INNODB_SYMBOL || LA287_0 == INSERT_METHOD_SYMBOL || LA287_0 == INSTALL_SYMBOL || LA287_0 == INVOKER_SYMBOL || LA287_0 == IO_SYMBOL || ((LA287_0 >= IPC_SYMBOL) && (LA287_0 <= ISSUER_SYMBOL)) || LA287_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA287_0 >= LANGUAGE_SYMBOL) && (LA287_0 <= LAST_SYMBOL)) || LA287_0 == LEAVES_SYMBOL || LA287_0 == LESS_SYMBOL || LA287_0 == LEVEL_SYMBOL || LA287_0 == LINESTRING_SYMBOL || LA287_0 == LIST_SYMBOL || LA287_0 == LOCAL_SYMBOL || LA287_0 == LOCKS_SYMBOL || LA287_0 == LOGFILE_SYMBOL || LA287_0 == LOGS_SYMBOL || LA287_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA287_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA287_0 <= MASTER_SSL_SYMBOL)) || ((LA287_0 >= MASTER_SYMBOL) && (LA287_0 <= MASTER_USER_SYMBOL)) || ((LA287_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA287_0 <= MAX_SIZE_SYMBOL)) || ((LA287_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA287_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA287_0 >= MEDIUM_SYMBOL) && (LA287_0 <= MICROSECOND_SYMBOL)) || LA287_0 == MIGRATE_SYMBOL || ((LA287_0 >= MINUTE_SYMBOL) && (LA287_0 <= MIN_ROWS_SYMBOL)) || LA287_0 == MODE_SYMBOL || LA287_0 == MODIFY_SYMBOL || ((LA287_0 >= MONTH_SYMBOL) && (LA287_0 <= MULTILINESTRING_SYMBOL)) || ((LA287_0 >= MULTIPOINT_SYMBOL) && (LA287_0 <= MULTIPOLYGON_SYMBOL)) || ((LA287_0 >= MUTEX_SYMBOL) && (LA287_0 <= NATIONAL_SYMBOL)) || LA287_0 == NCHAR_SYMBOL || LA287_0 == NDBCLUSTER_SYMBOL || ((LA287_0 >= NEW_SYMBOL) && (LA287_0 <= NONE_SYMBOL)) || ((LA287_0 >= NO_SYMBOL) && (LA287_0 <= NO_WAIT_SYMBOL)) || LA287_0 == NUMBER_SYMBOL || LA287_0 == NVARCHAR_SYMBOL || ((LA287_0 >= OFFSET_SYMBOL) && (LA287_0 <= ONE_SYMBOL)) || LA287_0 == OPEN_SYMBOL || LA287_0 == OPTIONS_SYMBOL || ((LA287_0 >= OWNER_SYMBOL) && (LA287_0 <= PAGE_SYMBOL)) || ((LA287_0 >= PARSER_SYMBOL) && (LA287_0 <= PARTITION_SYMBOL)) || ((LA287_0 >= PASSWORD_SYMBOL) && (LA287_0 <= PLUGIN_SYMBOL)) || ((LA287_0 >= POINT_SYMBOL) && (LA287_0 <= PORT_SYMBOL)) || ((LA287_0 >= PREPARE_SYMBOL) && (LA287_0 <= PREV_SYMBOL)) || LA287_0 == PRIVILEGES_SYMBOL || ((LA287_0 >= PROCESSLIST_SYMBOL) && (LA287_0 <= PROXY_SYMBOL)) || ((LA287_0 >= QUARTER_SYMBOL) && (LA287_0 <= QUICK_SYMBOL)) || LA287_0 == READ_ONLY_SYMBOL || ((LA287_0 >= REBUILD_SYMBOL) && (LA287_0 <= REDUNDANT_SYMBOL)) || ((LA287_0 >= RELAYLOG_SYMBOL) && (LA287_0 <= RELAY_THREAD_SYMBOL)) || ((LA287_0 >= RELOAD_SYMBOL) && (LA287_0 <= REMOVE_SYMBOL)) || ((LA287_0 >= REORGANIZE_SYMBOL) && (LA287_0 <= REPEATABLE_SYMBOL)) || LA287_0 == REPLICATION_SYMBOL || LA287_0 == RESET_SYMBOL || LA287_0 == RESTORE_SYMBOL || ((LA287_0 >= RESUME_SYMBOL) && (LA287_0 <= RETURNS_SYMBOL)) || LA287_0 == REVERSE_SYMBOL || ((LA287_0 >= ROLLBACK_SYMBOL) && (LA287_0 <= SCHEDULE_SYMBOL)) || LA287_0 == SCHEMA_NAME_SYMBOL || ((LA287_0 >= SECOND_SYMBOL) && (LA287_0 <= SECURITY_SYMBOL)) || ((LA287_0 >= SERIALIZABLE_SYMBOL) && (LA287_0 <= SERIAL_SYMBOL)) || ((LA287_0 >= SERVER_SYMBOL) && (LA287_0 <= SESSION_SYMBOL)) || LA287_0 == SHARE_SYMBOL || LA287_0 == SHUTDOWN_SYMBOL || ((LA287_0 >= SIGNED_SYMBOL) && (LA287_0 <= SIMPLE_SYMBOL)) || ((LA287_0 >= SLAVE_SYMBOL) && (LA287_0 <= SLOW_SYMBOL)) || ((LA287_0 >= SNAPSHOT_SYMBOL) && (LA287_0 <= SOURCE_SYMBOL)) || ((LA287_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA287_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA287_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA287_0 <= SQL_CACHE_SYMBOL)) || LA287_0 == SQL_NO_CACHE_SYMBOL || LA287_0 == SQL_THREAD_SYMBOL || ((LA287_0 >= STARTS_SYMBOL) && (LA287_0 <= STATUS_SYMBOL)) || ((LA287_0 >= STOP_SYMBOL) && (LA287_0 <= STORAGE_SYMBOL)) || ((LA287_0 >= STRING_SYMBOL) && (LA287_0 <= SUBPARTITION_SYMBOL)) || ((LA287_0 >= SUPER_SYMBOL) && (LA287_0 <= SWITCHES_SYMBOL)) || ((LA287_0 >= TABLESPACE_SYMBOL) && (LA287_0 <= TABLE_NAME_SYMBOL)) || ((LA287_0 >= TEMPORARY_SYMBOL) && (LA287_0 <= TEMPTABLE_SYMBOL)) || ((LA287_0 >= TEXT_SYMBOL) && (LA287_0 <= THAN_SYMBOL)) || ((LA287_0 >= TIMESTAMP_ADD_SYMBOL) && (LA287_0 <= TIME_SYMBOL)) || ((LA287_0 >= TRANSACTION_SYMBOL) && (LA287_0 <= TRIGGERS_SYMBOL)) || ((LA287_0 >= TRUNCATE_SYMBOL) && (LA287_0 <= UDF_RETURNS_SYMBOL)) || ((LA287_0 >= UNCOMMITTED_SYMBOL) && (LA287_0 <= UNDEFINED_SYMBOL)) || ((LA287_0 >= UNDOFILE_SYMBOL) && (LA287_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA287_0 >= UNICODE_SYMBOL) && (LA287_0 <= UNINSTALL_SYMBOL)) || LA287_0 == UNKNOWN_SYMBOL || LA287_0 == UNTIL_SYMBOL || LA287_0 == UPGRADE_SYMBOL || ((LA287_0 >= USER_RESOURCES_SYMBOL) && (LA287_0 <= USE_FRM_SYMBOL)) || LA287_0 == VALUE_SYMBOL || LA287_0 == VARIABLES_SYMBOL || ((LA287_0 >= VIEW_SYMBOL) && (LA287_0 <= WEIGHT_STRING_SYMBOL)) || ((LA287_0 >= WORK_SYMBOL) && (LA287_0 <= WRAPPER_SYMBOL)) || LA287_0 == X509_SYMBOL || ((LA287_0 >= XA_SYMBOL) && (LA287_0 <= XML_SYMBOL)) || LA287_0 == YEAR_SYMBOL))
                {
                    alt287=3;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 287;
                    EXCEPTION->state        = 0;


                    goto rulelimit_optionEx;

                }
            }
            switch (alt287)
            {
        	case 1:
        	    // MySQL.g:827:2: PARAM_MARKER
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PARAM_MARKER844 = (pANTLR3_COMMON_TOKEN) MATCHT(PARAM_MARKER, &FOLLOW_PARAM_MARKER_in_limit_option4242);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelimit_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PARAM_MARKER844_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARAM_MARKER844));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PARAM_MARKER844_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:828:4: INTEGER
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        INTEGER845 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_limit_option4247);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelimit_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INTEGER845_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER845));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER845_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:829:4: identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_identifier_in_limit_option4252);
        	        identifier846=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelimit_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier846.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulelimit_optionEx; /* Prevent compiler warnings */
    rulelimit_optionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end limit_option */

/**
 * $ANTLR start into_clause
 * MySQL.g:832:1: into_clause : INTO_SYMBOL ( OUTFILE_SYMBOL string_literal ( charset_clause )? ( fields_clause )? ( lines_clause )? | DUMPFILE_SYMBOL string_literal | ( AT_SIGN_SYMBOL )? at_variable_identifier ( COMMA_SYMBOL ( AT_SIGN_SYMBOL )? at_variable_identifier )* ) ;
 */
static MySQLParser_into_clause_return
into_clause(pMySQLParser ctx)
{
    MySQLParser_into_clause_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    INTO_SYMBOL847;
    pANTLR3_COMMON_TOKEN    OUTFILE_SYMBOL848;
    pANTLR3_COMMON_TOKEN    DUMPFILE_SYMBOL853;
    pANTLR3_COMMON_TOKEN    AT_SIGN_SYMBOL855;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL857;
    pANTLR3_COMMON_TOKEN    AT_SIGN_SYMBOL858;
    MySQLParser_string_literal_return string_literal849;
    #undef	RETURN_TYPE_string_literal849
    #define	RETURN_TYPE_string_literal849 MySQLParser_string_literal_return

    MySQLParser_charset_clause_return charset_clause850;
    #undef	RETURN_TYPE_charset_clause850
    #define	RETURN_TYPE_charset_clause850 MySQLParser_charset_clause_return

    MySQLParser_fields_clause_return fields_clause851;
    #undef	RETURN_TYPE_fields_clause851
    #define	RETURN_TYPE_fields_clause851 MySQLParser_fields_clause_return

    MySQLParser_lines_clause_return lines_clause852;
    #undef	RETURN_TYPE_lines_clause852
    #define	RETURN_TYPE_lines_clause852 MySQLParser_lines_clause_return

    MySQLParser_string_literal_return string_literal854;
    #undef	RETURN_TYPE_string_literal854
    #define	RETURN_TYPE_string_literal854 MySQLParser_string_literal_return

    MySQLParser_at_variable_identifier_return at_variable_identifier856;
    #undef	RETURN_TYPE_at_variable_identifier856
    #define	RETURN_TYPE_at_variable_identifier856 MySQLParser_at_variable_identifier_return

    MySQLParser_at_variable_identifier_return at_variable_identifier859;
    #undef	RETURN_TYPE_at_variable_identifier859
    #define	RETURN_TYPE_at_variable_identifier859 MySQLParser_at_variable_identifier_return

    pANTLR3_BASE_TREE INTO_SYMBOL847_tree;
    pANTLR3_BASE_TREE OUTFILE_SYMBOL848_tree;
    pANTLR3_BASE_TREE DUMPFILE_SYMBOL853_tree;
    pANTLR3_BASE_TREE AT_SIGN_SYMBOL855_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL857_tree;
    pANTLR3_BASE_TREE AT_SIGN_SYMBOL858_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    INTO_SYMBOL847       = NULL;
    OUTFILE_SYMBOL848       = NULL;
    DUMPFILE_SYMBOL853       = NULL;
    AT_SIGN_SYMBOL855       = NULL;
    COMMA_SYMBOL857       = NULL;
    AT_SIGN_SYMBOL858       = NULL;
    string_literal849.tree = NULL;

    charset_clause850.tree = NULL;

    fields_clause851.tree = NULL;

    lines_clause852.tree = NULL;

    string_literal854.tree = NULL;

    at_variable_identifier856.tree = NULL;

    at_variable_identifier859.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    INTO_SYMBOL847_tree   = NULL;
    OUTFILE_SYMBOL848_tree   = NULL;
    DUMPFILE_SYMBOL853_tree   = NULL;
    AT_SIGN_SYMBOL855_tree   = NULL;
    COMMA_SYMBOL857_tree   = NULL;
    AT_SIGN_SYMBOL858_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:832:12: ( INTO_SYMBOL ( OUTFILE_SYMBOL string_literal ( charset_clause )? ( fields_clause )? ( lines_clause )? | DUMPFILE_SYMBOL string_literal | ( AT_SIGN_SYMBOL )? at_variable_identifier ( COMMA_SYMBOL ( AT_SIGN_SYMBOL )? at_variable_identifier )* ) )
        // MySQL.g:833:2: INTO_SYMBOL ( OUTFILE_SYMBOL string_literal ( charset_clause )? ( fields_clause )? ( lines_clause )? | DUMPFILE_SYMBOL string_literal | ( AT_SIGN_SYMBOL )? at_variable_identifier ( COMMA_SYMBOL ( AT_SIGN_SYMBOL )? at_variable_identifier )* )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            INTO_SYMBOL847 = (pANTLR3_COMMON_TOKEN) MATCHT(INTO_SYMBOL, &FOLLOW_INTO_SYMBOL_in_into_clause4262);
            if  (HASEXCEPTION())
            {
                goto ruleinto_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            INTO_SYMBOL847_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTO_SYMBOL847));
            ADAPTOR->addChild(ADAPTOR, root_0, INTO_SYMBOL847_tree);
            }

            // MySQL.g:834:2: ( OUTFILE_SYMBOL string_literal ( charset_clause )? ( fields_clause )? ( lines_clause )? | DUMPFILE_SYMBOL string_literal | ( AT_SIGN_SYMBOL )? at_variable_identifier ( COMMA_SYMBOL ( AT_SIGN_SYMBOL )? at_variable_identifier )* )
            {
                int alt294=3;
                {
                    int LA294_0 = LA(1);
                    if ( (LA294_0 == OUTFILE_SYMBOL))
                    {
                        alt294=1;
                    }
                    else if ( (LA294_0 == DUMPFILE_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case DOUBLE_QUOTED_TEXT:
                        case NCHAR_TEXT:
                        case SINGLE_QUOTED_TEXT:
                        case UNDERSCORE_CHARSET:
                        	{
                        		alt294=2;
                        	}
                            break;
                        case EOF:
                        case CLOSE_PAR_SYMBOL:
                        case COMMA_SYMBOL:
                        case FOR_SYMBOL:
                        case FROM_SYMBOL:
                        case LOCK_SYMBOL:
                        case ON_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        case UNION_SYMBOL:
                        case WITH_SYMBOL:
                        	{
                        		alt294=3;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 294;
                            EXCEPTION->state        = 2;


                            goto ruleinto_clauseEx;

                        }

                    }
                    else if ( (LA294_0 == AT_SIGN_SYMBOL || LA294_0 == NCHAR_TEXT || LA294_0 == SINGLE_QUOTED_TEXT || LA294_0 == UNDERSCORE_CHARSET))
                    {
                        alt294=3;
                    }
                    else if ( ((((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)))||((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))) && (LA294_0 == DOUBLE_QUOTED_TEXT))
                    {
                        alt294=3;
                    }
                    else if ( (((LA294_0 >= ACTION_SYMBOL) && (LA294_0 <= ADDDATE_SYMBOL)) || ((LA294_0 >= AFTER_SYMBOL) && (LA294_0 <= ALGORITHM_SYMBOL)) || LA294_0 == ANALYZE_SYMBOL || ((LA294_0 >= ANY_SYMBOL) && (LA294_0 <= ASCII_SYMBOL)) || ((LA294_0 >= AT_SYMBOL) && (LA294_0 <= BACKUP_SYMBOL)) || LA294_0 == BACK_TICK_QUOTED_ID || LA294_0 == BEGIN_SYMBOL || LA294_0 == BINLOG_SYMBOL || LA294_0 == BIT_SYMBOL || ((LA294_0 >= BLOCK_SYMBOL) && (LA294_0 <= BOOL_SYMBOL)) || ((LA294_0 >= BTREE_SYMBOL) && (LA294_0 <= BYTE_SYMBOL)) || LA294_0 == CACHE_SYMBOL || LA294_0 == CASCADED_SYMBOL || ((LA294_0 >= CATALOG_NAME_SYMBOL) && (LA294_0 <= CHANGED_SYMBOL)) || LA294_0 == CHARSET_SYMBOL || LA294_0 == CHECKSUM_SYMBOL || ((LA294_0 >= CIPHER_SYMBOL) && (LA294_0 <= CLIENT_SYMBOL)) || ((LA294_0 >= CLOSE_SYMBOL) && (LA294_0 <= CODE_SYMBOL)) || LA294_0 == COLLATION_SYMBOL || ((LA294_0 >= COLUMNS_SYMBOL) && (LA294_0 <= COLUMN_NAME_SYMBOL)) || ((LA294_0 >= COMMENT_SYMBOL) && (LA294_0 <= COMPRESSED_SYMBOL)) || LA294_0 == CONCURRENT_SYMBOL || ((LA294_0 >= CONNECTION_SYMBOL) && (LA294_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA294_0 >= CONTAINS_SYMBOL) && (LA294_0 <= CONTEXT_SYMBOL)) || LA294_0 == CONTRIBUTORS_SYMBOL || LA294_0 == CPU_SYMBOL || LA294_0 == CUBE_SYMBOL || LA294_0 == CURRENT_SYMBOL || LA294_0 == CURSOR_NAME_SYMBOL || ((LA294_0 >= DATAFILE_SYMBOL) && (LA294_0 <= DATETIME_SYMBOL)) || LA294_0 == DATE_SYMBOL || ((LA294_0 >= DAY_SYMBOL) && (LA294_0 <= DEALLOCATE_SYMBOL)) || LA294_0 == DEFAULT_AUTH_SYMBOL || LA294_0 == DEFINER_SYMBOL || LA294_0 == DELAY_KEY_WRITE_SYMBOL || LA294_0 == DES_KEY_FILE_SYMBOL || LA294_0 == DIAGNOSTICS_SYMBOL || ((LA294_0 >= DIRECTORY_SYMBOL) && (LA294_0 <= DISK_SYMBOL)) || LA294_0 == DO_SYMBOL || ((LA294_0 >= DUPLICATE_SYMBOL) && (LA294_0 <= DYNAMIC_SYMBOL)) || LA294_0 == ENABLE_SYMBOL || LA294_0 == ENDS_SYMBOL || ((LA294_0 >= END_SYMBOL) && (LA294_0 <= ENUM_SYMBOL)) || ((LA294_0 >= ERRORS_SYMBOL) && (LA294_0 <= ERROR_SYMBOL)) || ((LA294_0 >= ESCAPE_SYMBOL) && (LA294_0 <= EVERY_SYMBOL)) || LA294_0 == EXECUTE_SYMBOL || LA294_0 == EXPANSION_SYMBOL || LA294_0 == EXPORT_SYMBOL || ((LA294_0 >= EXTENDED_SYMBOL) && (LA294_0 <= EXTENT_SIZE_SYMBOL)) || ((LA294_0 >= FAST_SYMBOL) && (LA294_0 <= FAULTS_SYMBOL)) || ((LA294_0 >= FILE_SYMBOL) && (LA294_0 <= FIXED_SYMBOL)) || LA294_0 == FLUSH_SYMBOL || LA294_0 == FORMAT_SYMBOL || LA294_0 == FOUND_SYMBOL || LA294_0 == FULL_SYMBOL || ((LA294_0 >= FUNCTION_SYMBOL) && (LA294_0 <= GET_FORMAT_SYMBOL)) || ((LA294_0 >= GLOBAL_SYMBOL) && (LA294_0 <= GRANTS_SYMBOL)) || ((LA294_0 >= HANDLER_SYMBOL) && (LA294_0 <= HASH_SYMBOL)) || LA294_0 == HELP_SYMBOL || ((LA294_0 >= HOSTS_SYMBOL) && (LA294_0 <= HOST_SYMBOL)) || ((LA294_0 >= HOUR_SYMBOL) && (LA294_0 <= IDENTIFIER)) || LA294_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA294_0 >= IMPORT_SYMBOL) && (LA294_0 <= INDEXES_SYMBOL)) || LA294_0 == INITIAL_SIZE_SYMBOL || LA294_0 == INNODB_SYMBOL || LA294_0 == INSERT_METHOD_SYMBOL || LA294_0 == INSTALL_SYMBOL || LA294_0 == INVOKER_SYMBOL || LA294_0 == IO_SYMBOL || ((LA294_0 >= IPC_SYMBOL) && (LA294_0 <= ISSUER_SYMBOL)) || LA294_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA294_0 >= LANGUAGE_SYMBOL) && (LA294_0 <= LAST_SYMBOL)) || LA294_0 == LEAVES_SYMBOL || LA294_0 == LESS_SYMBOL || LA294_0 == LEVEL_SYMBOL || LA294_0 == LINESTRING_SYMBOL || LA294_0 == LIST_SYMBOL || LA294_0 == LOCAL_SYMBOL || LA294_0 == LOCKS_SYMBOL || LA294_0 == LOGFILE_SYMBOL || LA294_0 == LOGS_SYMBOL || LA294_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA294_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA294_0 <= MASTER_SSL_SYMBOL)) || ((LA294_0 >= MASTER_SYMBOL) && (LA294_0 <= MASTER_USER_SYMBOL)) || ((LA294_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA294_0 <= MAX_SIZE_SYMBOL)) || ((LA294_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA294_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA294_0 >= MEDIUM_SYMBOL) && (LA294_0 <= MICROSECOND_SYMBOL)) || LA294_0 == MIGRATE_SYMBOL || ((LA294_0 >= MINUTE_SYMBOL) && (LA294_0 <= MIN_ROWS_SYMBOL)) || LA294_0 == MODE_SYMBOL || LA294_0 == MODIFY_SYMBOL || ((LA294_0 >= MONTH_SYMBOL) && (LA294_0 <= MULTILINESTRING_SYMBOL)) || ((LA294_0 >= MULTIPOINT_SYMBOL) && (LA294_0 <= MULTIPOLYGON_SYMBOL)) || ((LA294_0 >= MUTEX_SYMBOL) && (LA294_0 <= NATIONAL_SYMBOL)) || LA294_0 == NCHAR_SYMBOL || LA294_0 == NDBCLUSTER_SYMBOL || ((LA294_0 >= NEW_SYMBOL) && (LA294_0 <= NONE_SYMBOL)) || ((LA294_0 >= NO_SYMBOL) && (LA294_0 <= NO_WAIT_SYMBOL)) || LA294_0 == NUMBER_SYMBOL || LA294_0 == NVARCHAR_SYMBOL || ((LA294_0 >= OFFSET_SYMBOL) && (LA294_0 <= ONE_SYMBOL)) || LA294_0 == OPEN_SYMBOL || LA294_0 == OPTIONS_SYMBOL || ((LA294_0 >= OWNER_SYMBOL) && (LA294_0 <= PAGE_SYMBOL)) || ((LA294_0 >= PARSER_SYMBOL) && (LA294_0 <= PARTITION_SYMBOL)) || ((LA294_0 >= PASSWORD_SYMBOL) && (LA294_0 <= PLUGIN_SYMBOL)) || ((LA294_0 >= POINT_SYMBOL) && (LA294_0 <= PORT_SYMBOL)) || ((LA294_0 >= PREPARE_SYMBOL) && (LA294_0 <= PREV_SYMBOL)) || LA294_0 == PRIVILEGES_SYMBOL || ((LA294_0 >= PROCESSLIST_SYMBOL) && (LA294_0 <= PROXY_SYMBOL)) || ((LA294_0 >= QUARTER_SYMBOL) && (LA294_0 <= QUICK_SYMBOL)) || LA294_0 == READ_ONLY_SYMBOL || ((LA294_0 >= REBUILD_SYMBOL) && (LA294_0 <= REDUNDANT_SYMBOL)) || ((LA294_0 >= RELAYLOG_SYMBOL) && (LA294_0 <= RELAY_THREAD_SYMBOL)) || ((LA294_0 >= RELOAD_SYMBOL) && (LA294_0 <= REMOVE_SYMBOL)) || ((LA294_0 >= REORGANIZE_SYMBOL) && (LA294_0 <= REPEATABLE_SYMBOL)) || LA294_0 == REPLICATION_SYMBOL || LA294_0 == RESET_SYMBOL || LA294_0 == RESTORE_SYMBOL || ((LA294_0 >= RESUME_SYMBOL) && (LA294_0 <= RETURNS_SYMBOL)) || LA294_0 == REVERSE_SYMBOL || ((LA294_0 >= ROLLBACK_SYMBOL) && (LA294_0 <= SCHEDULE_SYMBOL)) || LA294_0 == SCHEMA_NAME_SYMBOL || ((LA294_0 >= SECOND_SYMBOL) && (LA294_0 <= SECURITY_SYMBOL)) || ((LA294_0 >= SERIALIZABLE_SYMBOL) && (LA294_0 <= SERIAL_SYMBOL)) || ((LA294_0 >= SERVER_SYMBOL) && (LA294_0 <= SESSION_SYMBOL)) || LA294_0 == SHARE_SYMBOL || LA294_0 == SHUTDOWN_SYMBOL || ((LA294_0 >= SIGNED_SYMBOL) && (LA294_0 <= SIMPLE_SYMBOL)) || ((LA294_0 >= SLAVE_SYMBOL) && (LA294_0 <= SLOW_SYMBOL)) || ((LA294_0 >= SNAPSHOT_SYMBOL) && (LA294_0 <= SOURCE_SYMBOL)) || ((LA294_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA294_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA294_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA294_0 <= SQL_CACHE_SYMBOL)) || LA294_0 == SQL_NO_CACHE_SYMBOL || LA294_0 == SQL_THREAD_SYMBOL || ((LA294_0 >= STARTS_SYMBOL) && (LA294_0 <= STATUS_SYMBOL)) || ((LA294_0 >= STOP_SYMBOL) && (LA294_0 <= STORAGE_SYMBOL)) || ((LA294_0 >= STRING_SYMBOL) && (LA294_0 <= SUBPARTITION_SYMBOL)) || ((LA294_0 >= SUPER_SYMBOL) && (LA294_0 <= SWITCHES_SYMBOL)) || ((LA294_0 >= TABLESPACE_SYMBOL) && (LA294_0 <= TABLE_NAME_SYMBOL)) || ((LA294_0 >= TEMPORARY_SYMBOL) && (LA294_0 <= TEMPTABLE_SYMBOL)) || ((LA294_0 >= TEXT_SYMBOL) && (LA294_0 <= THAN_SYMBOL)) || ((LA294_0 >= TIMESTAMP_ADD_SYMBOL) && (LA294_0 <= TIME_SYMBOL)) || ((LA294_0 >= TRANSACTION_SYMBOL) && (LA294_0 <= TRIGGERS_SYMBOL)) || ((LA294_0 >= TRUNCATE_SYMBOL) && (LA294_0 <= UDF_RETURNS_SYMBOL)) || ((LA294_0 >= UNCOMMITTED_SYMBOL) && (LA294_0 <= UNDEFINED_SYMBOL)) || ((LA294_0 >= UNDOFILE_SYMBOL) && (LA294_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA294_0 >= UNICODE_SYMBOL) && (LA294_0 <= UNINSTALL_SYMBOL)) || LA294_0 == UNKNOWN_SYMBOL || LA294_0 == UNTIL_SYMBOL || LA294_0 == UPGRADE_SYMBOL || ((LA294_0 >= USER_RESOURCES_SYMBOL) && (LA294_0 <= USE_FRM_SYMBOL)) || LA294_0 == VALUE_SYMBOL || LA294_0 == VARIABLES_SYMBOL || ((LA294_0 >= VIEW_SYMBOL) && (LA294_0 <= WEIGHT_STRING_SYMBOL)) || ((LA294_0 >= WORK_SYMBOL) && (LA294_0 <= WRAPPER_SYMBOL)) || LA294_0 == X509_SYMBOL || ((LA294_0 >= XA_SYMBOL) && (LA294_0 <= XML_SYMBOL)) || LA294_0 == YEAR_SYMBOL))
                    {
                        alt294=3;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 294;
                        EXCEPTION->state        = 0;


                        goto ruleinto_clauseEx;

                    }
                }
                switch (alt294)
                {
            	case 1:
            	    // MySQL.g:835:3: OUTFILE_SYMBOL string_literal ( charset_clause )? ( fields_clause )? ( lines_clause )?
            	    {
            	        OUTFILE_SYMBOL848 = (pANTLR3_COMMON_TOKEN) MATCHT(OUTFILE_SYMBOL, &FOLLOW_OUTFILE_SYMBOL_in_into_clause4269);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinto_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OUTFILE_SYMBOL848_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OUTFILE_SYMBOL848));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OUTFILE_SYMBOL848_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_string_literal_in_into_clause4271);
            	        string_literal849=string_literal(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinto_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal849.tree);

            	        // MySQL.g:835:33: ( charset_clause )?
            	        {
            	            int alt288=2;
            	            switch ( LA(1) )
            	            {
            	                case CHARSET_SYMBOL:
            	                case CHAR_SYMBOL:
            	                	{
            	                		alt288=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt288)
            	            {
            	        	case 1:
            	        	    // MySQL.g:835:33: charset_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_charset_clause_in_into_clause4273);
            	        	        charset_clause850=charset_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleinto_clauseEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset_clause850.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:835:49: ( fields_clause )?
            	        {
            	            int alt289=2;
            	            switch ( LA(1) )
            	            {
            	                case COLUMNS_SYMBOL:
            	                	{
            	                		alt289=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt289)
            	            {
            	        	case 1:
            	        	    // MySQL.g:835:49: fields_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_fields_clause_in_into_clause4276);
            	        	        fields_clause851=fields_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleinto_clauseEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, fields_clause851.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:835:64: ( lines_clause )?
            	        {
            	            int alt290=2;
            	            switch ( LA(1) )
            	            {
            	                case LINES_SYMBOL:
            	                	{
            	                		alt290=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt290)
            	            {
            	        	case 1:
            	        	    // MySQL.g:835:64: lines_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_lines_clause_in_into_clause4279);
            	        	        lines_clause852=lines_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleinto_clauseEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, lines_clause852.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:836:5: DUMPFILE_SYMBOL string_literal
            	    {
            	        DUMPFILE_SYMBOL853 = (pANTLR3_COMMON_TOKEN) MATCHT(DUMPFILE_SYMBOL, &FOLLOW_DUMPFILE_SYMBOL_in_into_clause4286);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinto_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DUMPFILE_SYMBOL853_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DUMPFILE_SYMBOL853));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DUMPFILE_SYMBOL853_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_string_literal_in_into_clause4288);
            	        string_literal854=string_literal(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinto_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal854.tree);

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:837:5: ( AT_SIGN_SYMBOL )? at_variable_identifier ( COMMA_SYMBOL ( AT_SIGN_SYMBOL )? at_variable_identifier )*
            	    {
            	        // MySQL.g:837:5: ( AT_SIGN_SYMBOL )?
            	        {
            	            int alt291=2;
            	            switch ( LA(1) )
            	            {
            	                case AT_SIGN_SYMBOL:
            	                	{
            	                		alt291=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt291)
            	            {
            	        	case 1:
            	        	    // MySQL.g:837:5: AT_SIGN_SYMBOL
            	        	    {
            	        	        AT_SIGN_SYMBOL855 = (pANTLR3_COMMON_TOKEN) MATCHT(AT_SIGN_SYMBOL, &FOLLOW_AT_SIGN_SYMBOL_in_into_clause4294);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleinto_clauseEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        AT_SIGN_SYMBOL855_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AT_SIGN_SYMBOL855));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, AT_SIGN_SYMBOL855_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_at_variable_identifier_in_into_clause4297);
            	        at_variable_identifier856=at_variable_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinto_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, at_variable_identifier856.tree);

            	        // MySQL.g:837:44: ( COMMA_SYMBOL ( AT_SIGN_SYMBOL )? at_variable_identifier )*

            	        for (;;)
            	        {
            	            int alt293=2;
            	            switch ( LA(1) )
            	            {
            	            case COMMA_SYMBOL:
            	            	{
            	            		alt293=1;
            	            	}
            	                break;

            	            }

            	            switch (alt293)
            	            {
            	        	case 1:
            	        	    // MySQL.g:837:45: COMMA_SYMBOL ( AT_SIGN_SYMBOL )? at_variable_identifier
            	        	    {
            	        	        COMMA_SYMBOL857 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_into_clause4300);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleinto_clauseEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COMMA_SYMBOL857_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL857));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL857_tree);
            	        	        }

            	        	        // MySQL.g:837:58: ( AT_SIGN_SYMBOL )?
            	        	        {
            	        	            int alt292=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case AT_SIGN_SYMBOL:
            	        	                	{
            	        	                		alt292=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt292)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:837:58: AT_SIGN_SYMBOL
            	        	        	    {
            	        	        	        AT_SIGN_SYMBOL858 = (pANTLR3_COMMON_TOKEN) MATCHT(AT_SIGN_SYMBOL, &FOLLOW_AT_SIGN_SYMBOL_in_into_clause4302);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruleinto_clauseEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        AT_SIGN_SYMBOL858_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AT_SIGN_SYMBOL858));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, AT_SIGN_SYMBOL858_tree);
            	        	        	        }

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_at_variable_identifier_in_into_clause4305);
            	        	        at_variable_identifier859=at_variable_identifier(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleinto_clauseEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, at_variable_identifier859.tree);

            	        	    }
            	        	    break;

            	        	default:
            	        	    goto loop293;	/* break out of the loop */
            	        	    break;
            	            }
            	        }
            	        loop293: ; /* Jump out to here if this rule does not match */


            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleinto_clauseEx; /* Prevent compiler warnings */
    ruleinto_clauseEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end into_clause */

/**
 * $ANTLR start select_from
 * MySQL.g:841:1: select_from : FROM_SYMBOL ( DUAL_SYMBOL ( where_clause )? ( limit_clause )? -> ^( FROM_SYMBOL DUAL_SYMBOL ( where_clause )? ( limit_clause )? ) | table_references ( where_clause )? ( group_by_clause )? ( having_clause )? ( order_by_clause )? ( limit_clause )? ( procedure_analyse_clause )? -> ^( FROM_SYMBOL table_references ( where_clause )? ( group_by_clause )? ( having_clause )? ( order_by_clause )? ( limit_clause )? ( procedure_analyse_clause )? ) ) ;
 */
static MySQLParser_select_from_return
select_from(pMySQLParser ctx)
{
    MySQLParser_select_from_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    FROM_SYMBOL860;
    pANTLR3_COMMON_TOKEN    DUAL_SYMBOL861;
    MySQLParser_where_clause_return where_clause862;
    #undef	RETURN_TYPE_where_clause862
    #define	RETURN_TYPE_where_clause862 MySQLParser_where_clause_return

    MySQLParser_limit_clause_return limit_clause863;
    #undef	RETURN_TYPE_limit_clause863
    #define	RETURN_TYPE_limit_clause863 MySQLParser_limit_clause_return

    MySQLParser_table_references_return table_references864;
    #undef	RETURN_TYPE_table_references864
    #define	RETURN_TYPE_table_references864 MySQLParser_table_references_return

    MySQLParser_where_clause_return where_clause865;
    #undef	RETURN_TYPE_where_clause865
    #define	RETURN_TYPE_where_clause865 MySQLParser_where_clause_return

    MySQLParser_group_by_clause_return group_by_clause866;
    #undef	RETURN_TYPE_group_by_clause866
    #define	RETURN_TYPE_group_by_clause866 MySQLParser_group_by_clause_return

    MySQLParser_having_clause_return having_clause867;
    #undef	RETURN_TYPE_having_clause867
    #define	RETURN_TYPE_having_clause867 MySQLParser_having_clause_return

    MySQLParser_order_by_clause_return order_by_clause868;
    #undef	RETURN_TYPE_order_by_clause868
    #define	RETURN_TYPE_order_by_clause868 MySQLParser_order_by_clause_return

    MySQLParser_limit_clause_return limit_clause869;
    #undef	RETURN_TYPE_limit_clause869
    #define	RETURN_TYPE_limit_clause869 MySQLParser_limit_clause_return

    MySQLParser_procedure_analyse_clause_return procedure_analyse_clause870;
    #undef	RETURN_TYPE_procedure_analyse_clause870
    #define	RETURN_TYPE_procedure_analyse_clause870 MySQLParser_procedure_analyse_clause_return

    pANTLR3_BASE_TREE FROM_SYMBOL860_tree;
    pANTLR3_BASE_TREE DUAL_SYMBOL861_tree;
    pANTLR3_REWRITE_RULE_TOKEN_STREAM stream_DUAL_SYMBOL;
    pANTLR3_REWRITE_RULE_TOKEN_STREAM stream_FROM_SYMBOL;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_procedure_analyse_clause;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_limit_clause;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_table_references;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_having_clause;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_order_by_clause;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_where_clause;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_group_by_clause;
    /* Initialize rule variables
     */

    root_0 = NULL;

    FROM_SYMBOL860       = NULL;
    DUAL_SYMBOL861       = NULL;
    where_clause862.tree = NULL;

    limit_clause863.tree = NULL;

    table_references864.tree = NULL;

    where_clause865.tree = NULL;

    group_by_clause866.tree = NULL;

    having_clause867.tree = NULL;

    order_by_clause868.tree = NULL;

    limit_clause869.tree = NULL;

    procedure_analyse_clause870.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    FROM_SYMBOL860_tree   = NULL;
    DUAL_SYMBOL861_tree   = NULL;

    stream_DUAL_SYMBOL   = NULL;
    #define CREATE_stream_DUAL_SYMBOL  if (stream_DUAL_SYMBOL == NULL) {stream_DUAL_SYMBOL = antlr3RewriteRuleTOKENStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"token DUAL_SYMBOL"); } 
    stream_FROM_SYMBOL   = NULL;
    #define CREATE_stream_FROM_SYMBOL  if (stream_FROM_SYMBOL == NULL) {stream_FROM_SYMBOL = antlr3RewriteRuleTOKENStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"token FROM_SYMBOL"); } 
    stream_procedure_analyse_clause   = NULL;
    #define CREATE_stream_procedure_analyse_clause  if (stream_procedure_analyse_clause == NULL) {stream_procedure_analyse_clause = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule procedure_analyse_clause"); }
    stream_limit_clause   = NULL;
    #define CREATE_stream_limit_clause  if (stream_limit_clause == NULL) {stream_limit_clause = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule limit_clause"); }
    stream_table_references   = NULL;
    #define CREATE_stream_table_references  if (stream_table_references == NULL) {stream_table_references = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule table_references"); }
    stream_having_clause   = NULL;
    #define CREATE_stream_having_clause  if (stream_having_clause == NULL) {stream_having_clause = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule having_clause"); }
    stream_order_by_clause   = NULL;
    #define CREATE_stream_order_by_clause  if (stream_order_by_clause == NULL) {stream_order_by_clause = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule order_by_clause"); }
    stream_where_clause   = NULL;
    #define CREATE_stream_where_clause  if (stream_where_clause == NULL) {stream_where_clause = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule where_clause"); }
    stream_group_by_clause   = NULL;
    #define CREATE_stream_group_by_clause  if (stream_group_by_clause == NULL) {stream_group_by_clause = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule group_by_clause"); }

    retval.tree  = NULL;

    {
        // MySQL.g:841:12: ( FROM_SYMBOL ( DUAL_SYMBOL ( where_clause )? ( limit_clause )? -> ^( FROM_SYMBOL DUAL_SYMBOL ( where_clause )? ( limit_clause )? ) | table_references ( where_clause )? ( group_by_clause )? ( having_clause )? ( order_by_clause )? ( limit_clause )? ( procedure_analyse_clause )? -> ^( FROM_SYMBOL table_references ( where_clause )? ( group_by_clause )? ( having_clause )? ( order_by_clause )? ( limit_clause )? ( procedure_analyse_clause )? ) ) )
        // MySQL.g:842:2: FROM_SYMBOL ( DUAL_SYMBOL ( where_clause )? ( limit_clause )? -> ^( FROM_SYMBOL DUAL_SYMBOL ( where_clause )? ( limit_clause )? ) | table_references ( where_clause )? ( group_by_clause )? ( having_clause )? ( order_by_clause )? ( limit_clause )? ( procedure_analyse_clause )? -> ^( FROM_SYMBOL table_references ( where_clause )? ( group_by_clause )? ( having_clause )? ( order_by_clause )? ( limit_clause )? ( procedure_analyse_clause )? ) )
        {
            FROM_SYMBOL860 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_select_from4319);
            if  (HASEXCEPTION())
            {
                goto ruleselect_fromEx;
            }
            if (HASFAILED())
            {
                return retval;
            }
             
            if ( BACKTRACKING==0 ) { CREATE_stream_FROM_SYMBOL; stream_FROM_SYMBOL->add(stream_FROM_SYMBOL, FROM_SYMBOL860, NULL); }


            // MySQL.g:843:2: ( DUAL_SYMBOL ( where_clause )? ( limit_clause )? -> ^( FROM_SYMBOL DUAL_SYMBOL ( where_clause )? ( limit_clause )? ) | table_references ( where_clause )? ( group_by_clause )? ( having_clause )? ( order_by_clause )? ( limit_clause )? ( procedure_analyse_clause )? -> ^( FROM_SYMBOL table_references ( where_clause )? ( group_by_clause )? ( having_clause )? ( order_by_clause )? ( limit_clause )? ( procedure_analyse_clause )? ) )
            {
                int alt303=2;
                {
                    int LA303_0 = LA(1);
                    if ( (LA303_0 == DUAL_SYMBOL))
                    {
                        alt303=1;
                    }
                    else if ( (LA303_0 == BACK_TICK_QUOTED_ID || LA303_0 == IDENTIFIER || LA303_0 == OPEN_PAR_SYMBOL))
                    {
                        alt303=2;
                    }
                    else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA303_0 == DOUBLE_QUOTED_TEXT))
                    {
                        alt303=2;
                    }
                    else if ( (((LA303_0 >= ACTION_SYMBOL) && (LA303_0 <= ADDDATE_SYMBOL)) || ((LA303_0 >= AFTER_SYMBOL) && (LA303_0 <= ALGORITHM_SYMBOL)) || LA303_0 == ANALYZE_SYMBOL || ((LA303_0 >= ANY_SYMBOL) && (LA303_0 <= ASCII_SYMBOL)) || ((LA303_0 >= AT_SYMBOL) && (LA303_0 <= BACKUP_SYMBOL)) || LA303_0 == BEGIN_SYMBOL || LA303_0 == BINLOG_SYMBOL || LA303_0 == BIT_SYMBOL || ((LA303_0 >= BLOCK_SYMBOL) && (LA303_0 <= BOOL_SYMBOL)) || ((LA303_0 >= BTREE_SYMBOL) && (LA303_0 <= BYTE_SYMBOL)) || LA303_0 == CACHE_SYMBOL || LA303_0 == CASCADED_SYMBOL || ((LA303_0 >= CATALOG_NAME_SYMBOL) && (LA303_0 <= CHANGED_SYMBOL)) || LA303_0 == CHARSET_SYMBOL || LA303_0 == CHECKSUM_SYMBOL || ((LA303_0 >= CIPHER_SYMBOL) && (LA303_0 <= CLIENT_SYMBOL)) || ((LA303_0 >= CLOSE_SYMBOL) && (LA303_0 <= CODE_SYMBOL)) || LA303_0 == COLLATION_SYMBOL || ((LA303_0 >= COLUMNS_SYMBOL) && (LA303_0 <= COLUMN_NAME_SYMBOL)) || ((LA303_0 >= COMMENT_SYMBOL) && (LA303_0 <= COMPRESSED_SYMBOL)) || LA303_0 == CONCURRENT_SYMBOL || ((LA303_0 >= CONNECTION_SYMBOL) && (LA303_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA303_0 >= CONTAINS_SYMBOL) && (LA303_0 <= CONTEXT_SYMBOL)) || LA303_0 == CONTRIBUTORS_SYMBOL || LA303_0 == CPU_SYMBOL || LA303_0 == CUBE_SYMBOL || LA303_0 == CURRENT_SYMBOL || LA303_0 == CURSOR_NAME_SYMBOL || ((LA303_0 >= DATAFILE_SYMBOL) && (LA303_0 <= DATETIME_SYMBOL)) || LA303_0 == DATE_SYMBOL || ((LA303_0 >= DAY_SYMBOL) && (LA303_0 <= DEALLOCATE_SYMBOL)) || LA303_0 == DEFAULT_AUTH_SYMBOL || LA303_0 == DEFINER_SYMBOL || LA303_0 == DELAY_KEY_WRITE_SYMBOL || LA303_0 == DES_KEY_FILE_SYMBOL || LA303_0 == DIAGNOSTICS_SYMBOL || ((LA303_0 >= DIRECTORY_SYMBOL) && (LA303_0 <= DISK_SYMBOL)) || LA303_0 == DOT_SYMBOL || LA303_0 == DO_SYMBOL || ((LA303_0 >= DUMPFILE_SYMBOL) && (LA303_0 <= DYNAMIC_SYMBOL)) || LA303_0 == ENABLE_SYMBOL || LA303_0 == ENDS_SYMBOL || ((LA303_0 >= END_SYMBOL) && (LA303_0 <= ENUM_SYMBOL)) || ((LA303_0 >= ERRORS_SYMBOL) && (LA303_0 <= ERROR_SYMBOL)) || ((LA303_0 >= ESCAPE_SYMBOL) && (LA303_0 <= EVERY_SYMBOL)) || LA303_0 == EXECUTE_SYMBOL || LA303_0 == EXPANSION_SYMBOL || LA303_0 == EXPORT_SYMBOL || ((LA303_0 >= EXTENDED_SYMBOL) && (LA303_0 <= EXTENT_SIZE_SYMBOL)) || ((LA303_0 >= FAST_SYMBOL) && (LA303_0 <= FAULTS_SYMBOL)) || ((LA303_0 >= FILE_SYMBOL) && (LA303_0 <= FIXED_SYMBOL)) || LA303_0 == FLUSH_SYMBOL || LA303_0 == FORMAT_SYMBOL || LA303_0 == FOUND_SYMBOL || LA303_0 == FULL_SYMBOL || ((LA303_0 >= FUNCTION_SYMBOL) && (LA303_0 <= GET_FORMAT_SYMBOL)) || ((LA303_0 >= GLOBAL_SYMBOL) && (LA303_0 <= GRANTS_SYMBOL)) || ((LA303_0 >= HANDLER_SYMBOL) && (LA303_0 <= HASH_SYMBOL)) || LA303_0 == HELP_SYMBOL || ((LA303_0 >= HOSTS_SYMBOL) && (LA303_0 <= HOST_SYMBOL)) || ((LA303_0 >= HOUR_SYMBOL) && (LA303_0 <= IDENTIFIED_SYMBOL)) || LA303_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA303_0 >= IMPORT_SYMBOL) && (LA303_0 <= INDEXES_SYMBOL)) || LA303_0 == INITIAL_SIZE_SYMBOL || LA303_0 == INNODB_SYMBOL || LA303_0 == INSERT_METHOD_SYMBOL || LA303_0 == INSTALL_SYMBOL || LA303_0 == INVOKER_SYMBOL || LA303_0 == IO_SYMBOL || ((LA303_0 >= IPC_SYMBOL) && (LA303_0 <= ISSUER_SYMBOL)) || LA303_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA303_0 >= LANGUAGE_SYMBOL) && (LA303_0 <= LAST_SYMBOL)) || LA303_0 == LEAVES_SYMBOL || LA303_0 == LESS_SYMBOL || LA303_0 == LEVEL_SYMBOL || LA303_0 == LINESTRING_SYMBOL || LA303_0 == LIST_SYMBOL || LA303_0 == LOCAL_SYMBOL || LA303_0 == LOCKS_SYMBOL || LA303_0 == LOGFILE_SYMBOL || LA303_0 == LOGS_SYMBOL || LA303_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA303_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA303_0 <= MASTER_SSL_SYMBOL)) || ((LA303_0 >= MASTER_SYMBOL) && (LA303_0 <= MASTER_USER_SYMBOL)) || ((LA303_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA303_0 <= MAX_SIZE_SYMBOL)) || ((LA303_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA303_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA303_0 >= MEDIUM_SYMBOL) && (LA303_0 <= MICROSECOND_SYMBOL)) || LA303_0 == MIGRATE_SYMBOL || ((LA303_0 >= MINUTE_SYMBOL) && (LA303_0 <= MIN_ROWS_SYMBOL)) || LA303_0 == MODE_SYMBOL || LA303_0 == MODIFY_SYMBOL || ((LA303_0 >= MONTH_SYMBOL) && (LA303_0 <= MULTILINESTRING_SYMBOL)) || ((LA303_0 >= MULTIPOINT_SYMBOL) && (LA303_0 <= MULTIPOLYGON_SYMBOL)) || ((LA303_0 >= MUTEX_SYMBOL) && (LA303_0 <= NATIONAL_SYMBOL)) || LA303_0 == NCHAR_SYMBOL || LA303_0 == NDBCLUSTER_SYMBOL || ((LA303_0 >= NEW_SYMBOL) && (LA303_0 <= NONE_SYMBOL)) || ((LA303_0 >= NO_SYMBOL) && (LA303_0 <= NO_WAIT_SYMBOL)) || LA303_0 == NUMBER_SYMBOL || LA303_0 == NVARCHAR_SYMBOL || ((LA303_0 >= OFFSET_SYMBOL) && (LA303_0 <= ONE_SYMBOL)) || LA303_0 == OPEN_SYMBOL || LA303_0 == OPTIONS_SYMBOL || ((LA303_0 >= OWNER_SYMBOL) && (LA303_0 <= PAGE_SYMBOL)) || ((LA303_0 >= PARSER_SYMBOL) && (LA303_0 <= PARTITION_SYMBOL)) || ((LA303_0 >= PASSWORD_SYMBOL) && (LA303_0 <= PLUGIN_SYMBOL)) || ((LA303_0 >= POINT_SYMBOL) && (LA303_0 <= PORT_SYMBOL)) || ((LA303_0 >= PREPARE_SYMBOL) && (LA303_0 <= PREV_SYMBOL)) || LA303_0 == PRIVILEGES_SYMBOL || ((LA303_0 >= PROCESSLIST_SYMBOL) && (LA303_0 <= PROXY_SYMBOL)) || ((LA303_0 >= QUARTER_SYMBOL) && (LA303_0 <= QUICK_SYMBOL)) || LA303_0 == READ_ONLY_SYMBOL || ((LA303_0 >= REBUILD_SYMBOL) && (LA303_0 <= REDUNDANT_SYMBOL)) || ((LA303_0 >= RELAYLOG_SYMBOL) && (LA303_0 <= RELAY_THREAD_SYMBOL)) || ((LA303_0 >= RELOAD_SYMBOL) && (LA303_0 <= REMOVE_SYMBOL)) || ((LA303_0 >= REORGANIZE_SYMBOL) && (LA303_0 <= REPEATABLE_SYMBOL)) || LA303_0 == REPLICATION_SYMBOL || LA303_0 == RESET_SYMBOL || LA303_0 == RESTORE_SYMBOL || ((LA303_0 >= RESUME_SYMBOL) && (LA303_0 <= RETURNS_SYMBOL)) || LA303_0 == REVERSE_SYMBOL || ((LA303_0 >= ROLLBACK_SYMBOL) && (LA303_0 <= SCHEDULE_SYMBOL)) || LA303_0 == SCHEMA_NAME_SYMBOL || ((LA303_0 >= SECOND_SYMBOL) && (LA303_0 <= SECURITY_SYMBOL)) || ((LA303_0 >= SERIALIZABLE_SYMBOL) && (LA303_0 <= SERIAL_SYMBOL)) || ((LA303_0 >= SERVER_SYMBOL) && (LA303_0 <= SESSION_SYMBOL)) || LA303_0 == SHARE_SYMBOL || LA303_0 == SHUTDOWN_SYMBOL || ((LA303_0 >= SIGNED_SYMBOL) && (LA303_0 <= SIMPLE_SYMBOL)) || ((LA303_0 >= SLAVE_SYMBOL) && (LA303_0 <= SLOW_SYMBOL)) || ((LA303_0 >= SNAPSHOT_SYMBOL) && (LA303_0 <= SOURCE_SYMBOL)) || ((LA303_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA303_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA303_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA303_0 <= SQL_CACHE_SYMBOL)) || LA303_0 == SQL_NO_CACHE_SYMBOL || LA303_0 == SQL_THREAD_SYMBOL || ((LA303_0 >= STARTS_SYMBOL) && (LA303_0 <= STATUS_SYMBOL)) || ((LA303_0 >= STOP_SYMBOL) && (LA303_0 <= STORAGE_SYMBOL)) || ((LA303_0 >= STRING_SYMBOL) && (LA303_0 <= SUBPARTITION_SYMBOL)) || ((LA303_0 >= SUPER_SYMBOL) && (LA303_0 <= SWITCHES_SYMBOL)) || ((LA303_0 >= TABLESPACE_SYMBOL) && (LA303_0 <= TABLE_NAME_SYMBOL)) || ((LA303_0 >= TEMPORARY_SYMBOL) && (LA303_0 <= TEMPTABLE_SYMBOL)) || ((LA303_0 >= TEXT_SYMBOL) && (LA303_0 <= THAN_SYMBOL)) || ((LA303_0 >= TIMESTAMP_ADD_SYMBOL) && (LA303_0 <= TIME_SYMBOL)) || ((LA303_0 >= TRANSACTION_SYMBOL) && (LA303_0 <= TRIGGERS_SYMBOL)) || ((LA303_0 >= TRUNCATE_SYMBOL) && (LA303_0 <= UDF_RETURNS_SYMBOL)) || ((LA303_0 >= UNCOMMITTED_SYMBOL) && (LA303_0 <= UNDEFINED_SYMBOL)) || ((LA303_0 >= UNDOFILE_SYMBOL) && (LA303_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA303_0 >= UNICODE_SYMBOL) && (LA303_0 <= UNINSTALL_SYMBOL)) || LA303_0 == UNKNOWN_SYMBOL || LA303_0 == UNTIL_SYMBOL || LA303_0 == UPGRADE_SYMBOL || ((LA303_0 >= USER_RESOURCES_SYMBOL) && (LA303_0 <= USE_FRM_SYMBOL)) || LA303_0 == VALUE_SYMBOL || LA303_0 == VARIABLES_SYMBOL || ((LA303_0 >= VIEW_SYMBOL) && (LA303_0 <= WEIGHT_STRING_SYMBOL)) || ((LA303_0 >= WORK_SYMBOL) && (LA303_0 <= WRAPPER_SYMBOL)) || LA303_0 == X509_SYMBOL || ((LA303_0 >= XA_SYMBOL) && (LA303_0 <= XML_SYMBOL)) || LA303_0 == YEAR_SYMBOL || LA303_0 == 732))
                    {
                        alt303=2;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 303;
                        EXCEPTION->state        = 0;


                        goto ruleselect_fromEx;

                    }
                }
                switch (alt303)
                {
            	case 1:
            	    // MySQL.g:844:3: DUAL_SYMBOL ( where_clause )? ( limit_clause )?
            	    {
            	        DUAL_SYMBOL861 = (pANTLR3_COMMON_TOKEN) MATCHT(DUAL_SYMBOL, &FOLLOW_DUAL_SYMBOL_in_select_from4326);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_fromEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }
            	         
            	        if ( BACKTRACKING==0 ) { CREATE_stream_DUAL_SYMBOL; stream_DUAL_SYMBOL->add(stream_DUAL_SYMBOL, DUAL_SYMBOL861, NULL); }


            	        // MySQL.g:844:15: ( where_clause )?
            	        {
            	            int alt295=2;
            	            switch ( LA(1) )
            	            {
            	                case WHERE_SYMBOL:
            	                	{
            	                		alt295=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt295)
            	            {
            	        	case 1:
            	        	    // MySQL.g:844:15: where_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_where_clause_in_select_from4328);
            	        	        where_clause862=where_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleselect_fromEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) { CREATE_stream_where_clause; stream_where_clause->add(stream_where_clause, where_clause862.tree, NULL); }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:844:29: ( limit_clause )?
            	        {
            	            int alt296=2;
            	            switch ( LA(1) )
            	            {
            	                case LIMIT_SYMBOL:
            	                	{
            	                		alt296=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt296)
            	            {
            	        	case 1:
            	        	    // MySQL.g:844:29: limit_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_limit_clause_in_select_from4331);
            	        	        limit_clause863=limit_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleselect_fromEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) { CREATE_stream_limit_clause; stream_limit_clause->add(stream_limit_clause, limit_clause863.tree, NULL); }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        /* AST REWRITE
            	         * elements          : where_clause, limit_clause, FROM_SYMBOL, DUAL_SYMBOL
            	         * token labels      : 
            	         * rule labels       : retval
            	         * token list labels : 
            	         * rule list labels  : 
            	         */
            	        if ( BACKTRACKING==0 ) 

            	        {
            	        	pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_retval;

            	        	stream_retval=antlr3RewriteRuleSubtreeStreamNewAEE(ADAPTOR,  RECOGNIZER, (pANTLR3_UINT8)"token retval", retval.tree != NULL ? retval.tree : NULL);

            	        	root_0			    = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
            	        	retval.tree    = root_0;
            	        	// 844:43: -> ^( FROM_SYMBOL DUAL_SYMBOL ( where_clause )? ( limit_clause )? )
            	        	{
            	        	    // MySQL.g:844:46: ^( FROM_SYMBOL DUAL_SYMBOL ( where_clause )? ( limit_clause )? )
            	        	    {
            	        	        pANTLR3_BASE_TREE root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
            	        	        root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, 
            	        	        stream_FROM_SYMBOL == NULL ? NULL : stream_FROM_SYMBOL->nextNode(stream_FROM_SYMBOL)
            	        	        , root_1));

            	        	        ADAPTOR->addChild(ADAPTOR, root_1, 
            	        	        stream_DUAL_SYMBOL == NULL ? NULL : stream_DUAL_SYMBOL->nextNode(stream_DUAL_SYMBOL)
            	        	        );

            	        	        // MySQL.g:844:72: ( where_clause )?
            	        	        {
            	        	        	if ( (stream_where_clause != NULL && stream_where_clause->hasNext(stream_where_clause))  )
            	        	        	{
            	        	        		ADAPTOR->addChild(ADAPTOR, root_1, stream_where_clause == NULL ? NULL : stream_where_clause->nextTree(stream_where_clause));

            	        	        	}
            	        	        	if ( stream_where_clause != NULL) stream_where_clause->reset(stream_where_clause);

            	        	        }

            	        	        // MySQL.g:844:86: ( limit_clause )?
            	        	        {
            	        	        	if ( (stream_limit_clause != NULL && stream_limit_clause->hasNext(stream_limit_clause))  )
            	        	        	{
            	        	        		ADAPTOR->addChild(ADAPTOR, root_1, stream_limit_clause == NULL ? NULL : stream_limit_clause->nextTree(stream_limit_clause));

            	        	        	}
            	        	        	if ( stream_limit_clause != NULL) stream_limit_clause->reset(stream_limit_clause);

            	        	        }

            	        	        ADAPTOR->addChild(ADAPTOR, root_0, root_1);
            	        	    }

            	        	}


            	        	retval.tree = root_0; // set result root
            	        	if (stream_retval != NULL) stream_retval->free(stream_retval);


            	        }
            	    }
            	    break;
            	case 2:
            	    // MySQL.g:845:5: table_references ( where_clause )? ( group_by_clause )? ( having_clause )? ( order_by_clause )? ( limit_clause )? ( procedure_analyse_clause )?
            	    {
            	        FOLLOWPUSH(FOLLOW_table_references_in_select_from4352);
            	        table_references864=table_references(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_fromEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) { CREATE_stream_table_references; stream_table_references->add(stream_table_references, table_references864.tree, NULL); }

            	        // MySQL.g:845:22: ( where_clause )?
            	        {
            	            int alt297=2;
            	            switch ( LA(1) )
            	            {
            	                case WHERE_SYMBOL:
            	                	{
            	                		alt297=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt297)
            	            {
            	        	case 1:
            	        	    // MySQL.g:845:22: where_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_where_clause_in_select_from4354);
            	        	        where_clause865=where_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleselect_fromEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) { CREATE_stream_where_clause; stream_where_clause->add(stream_where_clause, where_clause865.tree, NULL); }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:845:36: ( group_by_clause )?
            	        {
            	            int alt298=2;
            	            switch ( LA(1) )
            	            {
            	                case GROUP_SYMBOL:
            	                	{
            	                		alt298=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt298)
            	            {
            	        	case 1:
            	        	    // MySQL.g:845:36: group_by_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_group_by_clause_in_select_from4357);
            	        	        group_by_clause866=group_by_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleselect_fromEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) { CREATE_stream_group_by_clause; stream_group_by_clause->add(stream_group_by_clause, group_by_clause866.tree, NULL); }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:845:53: ( having_clause )?
            	        {
            	            int alt299=2;
            	            switch ( LA(1) )
            	            {
            	                case HAVING_SYMBOL:
            	                	{
            	                		alt299=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt299)
            	            {
            	        	case 1:
            	        	    // MySQL.g:845:53: having_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_having_clause_in_select_from4360);
            	        	        having_clause867=having_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleselect_fromEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) { CREATE_stream_having_clause; stream_having_clause->add(stream_having_clause, having_clause867.tree, NULL); }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:845:68: ( order_by_clause )?
            	        {
            	            int alt300=2;
            	            switch ( LA(1) )
            	            {
            	                case ORDER_SYMBOL:
            	                	{
            	                		alt300=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt300)
            	            {
            	        	case 1:
            	        	    // MySQL.g:845:68: order_by_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_order_by_clause_in_select_from4363);
            	        	        order_by_clause868=order_by_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleselect_fromEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) { CREATE_stream_order_by_clause; stream_order_by_clause->add(stream_order_by_clause, order_by_clause868.tree, NULL); }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:845:85: ( limit_clause )?
            	        {
            	            int alt301=2;
            	            switch ( LA(1) )
            	            {
            	                case LIMIT_SYMBOL:
            	                	{
            	                		alt301=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt301)
            	            {
            	        	case 1:
            	        	    // MySQL.g:845:85: limit_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_limit_clause_in_select_from4366);
            	        	        limit_clause869=limit_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleselect_fromEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) { CREATE_stream_limit_clause; stream_limit_clause->add(stream_limit_clause, limit_clause869.tree, NULL); }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:845:99: ( procedure_analyse_clause )?
            	        {
            	            int alt302=2;
            	            switch ( LA(1) )
            	            {
            	                case PROCEDURE_SYMBOL:
            	                	{
            	                		alt302=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt302)
            	            {
            	        	case 1:
            	        	    // MySQL.g:845:99: procedure_analyse_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_procedure_analyse_clause_in_select_from4369);
            	        	        procedure_analyse_clause870=procedure_analyse_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleselect_fromEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) { CREATE_stream_procedure_analyse_clause; stream_procedure_analyse_clause->add(stream_procedure_analyse_clause, procedure_analyse_clause870.tree, NULL); }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        /* AST REWRITE
            	         * elements          : procedure_analyse_clause, limit_clause, group_by_clause, FROM_SYMBOL, table_references, order_by_clause, having_clause, where_clause
            	         * token labels      : 
            	         * rule labels       : retval
            	         * token list labels : 
            	         * rule list labels  : 
            	         */
            	        if ( BACKTRACKING==0 ) 

            	        {
            	        	pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_retval;

            	        	stream_retval=antlr3RewriteRuleSubtreeStreamNewAEE(ADAPTOR,  RECOGNIZER, (pANTLR3_UINT8)"token retval", retval.tree != NULL ? retval.tree : NULL);

            	        	root_0			    = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
            	        	retval.tree    = root_0;
            	        	// 846:7: -> ^( FROM_SYMBOL table_references ( where_clause )? ( group_by_clause )? ( having_clause )? ( order_by_clause )? ( limit_clause )? ( procedure_analyse_clause )? )
            	        	{
            	        	    // MySQL.g:846:10: ^( FROM_SYMBOL table_references ( where_clause )? ( group_by_clause )? ( having_clause )? ( order_by_clause )? ( limit_clause )? ( procedure_analyse_clause )? )
            	        	    {
            	        	        pANTLR3_BASE_TREE root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
            	        	        root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, 
            	        	        stream_FROM_SYMBOL == NULL ? NULL : stream_FROM_SYMBOL->nextNode(stream_FROM_SYMBOL)
            	        	        , root_1));

            	        	        ADAPTOR->addChild(ADAPTOR, root_1, stream_table_references == NULL ? NULL : stream_table_references->nextTree(stream_table_references));

            	        	        // MySQL.g:846:41: ( where_clause )?
            	        	        {
            	        	        	if ( (stream_where_clause != NULL && stream_where_clause->hasNext(stream_where_clause))  )
            	        	        	{
            	        	        		ADAPTOR->addChild(ADAPTOR, root_1, stream_where_clause == NULL ? NULL : stream_where_clause->nextTree(stream_where_clause));

            	        	        	}
            	        	        	if ( stream_where_clause != NULL) stream_where_clause->reset(stream_where_clause);

            	        	        }

            	        	        // MySQL.g:846:55: ( group_by_clause )?
            	        	        {
            	        	        	if ( (stream_group_by_clause != NULL && stream_group_by_clause->hasNext(stream_group_by_clause))  )
            	        	        	{
            	        	        		ADAPTOR->addChild(ADAPTOR, root_1, stream_group_by_clause == NULL ? NULL : stream_group_by_clause->nextTree(stream_group_by_clause));

            	        	        	}
            	        	        	if ( stream_group_by_clause != NULL) stream_group_by_clause->reset(stream_group_by_clause);

            	        	        }

            	        	        // MySQL.g:846:72: ( having_clause )?
            	        	        {
            	        	        	if ( (stream_having_clause != NULL && stream_having_clause->hasNext(stream_having_clause))  )
            	        	        	{
            	        	        		ADAPTOR->addChild(ADAPTOR, root_1, stream_having_clause == NULL ? NULL : stream_having_clause->nextTree(stream_having_clause));

            	        	        	}
            	        	        	if ( stream_having_clause != NULL) stream_having_clause->reset(stream_having_clause);

            	        	        }

            	        	        // MySQL.g:846:87: ( order_by_clause )?
            	        	        {
            	        	        	if ( (stream_order_by_clause != NULL && stream_order_by_clause->hasNext(stream_order_by_clause))  )
            	        	        	{
            	        	        		ADAPTOR->addChild(ADAPTOR, root_1, stream_order_by_clause == NULL ? NULL : stream_order_by_clause->nextTree(stream_order_by_clause));

            	        	        	}
            	        	        	if ( stream_order_by_clause != NULL) stream_order_by_clause->reset(stream_order_by_clause);

            	        	        }

            	        	        // MySQL.g:846:104: ( limit_clause )?
            	        	        {
            	        	        	if ( (stream_limit_clause != NULL && stream_limit_clause->hasNext(stream_limit_clause))  )
            	        	        	{
            	        	        		ADAPTOR->addChild(ADAPTOR, root_1, stream_limit_clause == NULL ? NULL : stream_limit_clause->nextTree(stream_limit_clause));

            	        	        	}
            	        	        	if ( stream_limit_clause != NULL) stream_limit_clause->reset(stream_limit_clause);

            	        	        }

            	        	        // MySQL.g:846:118: ( procedure_analyse_clause )?
            	        	        {
            	        	        	if ( (stream_procedure_analyse_clause != NULL && stream_procedure_analyse_clause->hasNext(stream_procedure_analyse_clause))  )
            	        	        	{
            	        	        		ADAPTOR->addChild(ADAPTOR, root_1, stream_procedure_analyse_clause == NULL ? NULL : stream_procedure_analyse_clause->nextTree(stream_procedure_analyse_clause));

            	        	        	}
            	        	        	if ( stream_procedure_analyse_clause != NULL) stream_procedure_analyse_clause->reset(stream_procedure_analyse_clause);

            	        	        }

            	        	        ADAPTOR->addChild(ADAPTOR, root_0, root_1);
            	        	    }

            	        	}


            	        	retval.tree = root_0; // set result root
            	        	if (stream_retval != NULL) stream_retval->free(stream_retval);


            	        }
            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleselect_fromEx; /* Prevent compiler warnings */
    ruleselect_fromEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
        if (stream_DUAL_SYMBOL != NULL) stream_DUAL_SYMBOL->free(stream_DUAL_SYMBOL);
        if (stream_FROM_SYMBOL != NULL) stream_FROM_SYMBOL->free(stream_FROM_SYMBOL);
        if (stream_procedure_analyse_clause != NULL) stream_procedure_analyse_clause->free(stream_procedure_analyse_clause);
        if (stream_limit_clause != NULL) stream_limit_clause->free(stream_limit_clause);
        if (stream_table_references != NULL) stream_table_references->free(stream_table_references);
        if (stream_having_clause != NULL) stream_having_clause->free(stream_having_clause);
        if (stream_order_by_clause != NULL) stream_order_by_clause->free(stream_order_by_clause);
        if (stream_where_clause != NULL) stream_where_clause->free(stream_where_clause);
        if (stream_group_by_clause != NULL) stream_group_by_clause->free(stream_group_by_clause);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end select_from */

/**
 * $ANTLR start procedure_analyse_clause
 * MySQL.g:850:1: procedure_analyse_clause : PROCEDURE_SYMBOL ^ ANALYSE_SYMBOL OPEN_PAR_SYMBOL ( INTEGER ( COMMA_SYMBOL INTEGER )? )? CLOSE_PAR_SYMBOL ;
 */
static MySQLParser_procedure_analyse_clause_return
procedure_analyse_clause(pMySQLParser ctx)
{
    MySQLParser_procedure_analyse_clause_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    PROCEDURE_SYMBOL871;
    pANTLR3_COMMON_TOKEN    ANALYSE_SYMBOL872;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL873;
    pANTLR3_COMMON_TOKEN    INTEGER874;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL875;
    pANTLR3_COMMON_TOKEN    INTEGER876;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL877;

    pANTLR3_BASE_TREE PROCEDURE_SYMBOL871_tree;
    pANTLR3_BASE_TREE ANALYSE_SYMBOL872_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL873_tree;
    pANTLR3_BASE_TREE INTEGER874_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL875_tree;
    pANTLR3_BASE_TREE INTEGER876_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL877_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PROCEDURE_SYMBOL871       = NULL;
    ANALYSE_SYMBOL872       = NULL;
    OPEN_PAR_SYMBOL873       = NULL;
    INTEGER874       = NULL;
    COMMA_SYMBOL875       = NULL;
    INTEGER876       = NULL;
    CLOSE_PAR_SYMBOL877       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PROCEDURE_SYMBOL871_tree   = NULL;
    ANALYSE_SYMBOL872_tree   = NULL;
    OPEN_PAR_SYMBOL873_tree   = NULL;
    INTEGER874_tree   = NULL;
    COMMA_SYMBOL875_tree   = NULL;
    INTEGER876_tree   = NULL;
    CLOSE_PAR_SYMBOL877_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:850:25: ( PROCEDURE_SYMBOL ^ ANALYSE_SYMBOL OPEN_PAR_SYMBOL ( INTEGER ( COMMA_SYMBOL INTEGER )? )? CLOSE_PAR_SYMBOL )
        // MySQL.g:851:2: PROCEDURE_SYMBOL ^ ANALYSE_SYMBOL OPEN_PAR_SYMBOL ( INTEGER ( COMMA_SYMBOL INTEGER )? )? CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            PROCEDURE_SYMBOL871 = (pANTLR3_COMMON_TOKEN) MATCHT(PROCEDURE_SYMBOL, &FOLLOW_PROCEDURE_SYMBOL_in_procedure_analyse_clause4414);
            if  (HASEXCEPTION())
            {
                goto ruleprocedure_analyse_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            PROCEDURE_SYMBOL871_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PROCEDURE_SYMBOL871))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, PROCEDURE_SYMBOL871_tree, root_0));
            }

            ANALYSE_SYMBOL872 = (pANTLR3_COMMON_TOKEN) MATCHT(ANALYSE_SYMBOL, &FOLLOW_ANALYSE_SYMBOL_in_procedure_analyse_clause4417);
            if  (HASEXCEPTION())
            {
                goto ruleprocedure_analyse_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ANALYSE_SYMBOL872_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ANALYSE_SYMBOL872));
            ADAPTOR->addChild(ADAPTOR, root_0, ANALYSE_SYMBOL872_tree);
            }

            OPEN_PAR_SYMBOL873 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_procedure_analyse_clause4419);
            if  (HASEXCEPTION())
            {
                goto ruleprocedure_analyse_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL873_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL873));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL873_tree);
            }

            // MySQL.g:851:51: ( INTEGER ( COMMA_SYMBOL INTEGER )? )?
            {
                int alt305=2;
                switch ( LA(1) )
                {
                    case INTEGER:
                    	{
                    		alt305=1;
                    	}
                        break;
                }

                switch (alt305)
                {
            	case 1:
            	    // MySQL.g:851:52: INTEGER ( COMMA_SYMBOL INTEGER )?
            	    {
            	        INTEGER874 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_procedure_analyse_clause4422);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprocedure_analyse_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INTEGER874_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER874));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER874_tree);
            	        }

            	        // MySQL.g:851:60: ( COMMA_SYMBOL INTEGER )?
            	        {
            	            int alt304=2;
            	            switch ( LA(1) )
            	            {
            	                case COMMA_SYMBOL:
            	                	{
            	                		alt304=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt304)
            	            {
            	        	case 1:
            	        	    // MySQL.g:851:61: COMMA_SYMBOL INTEGER
            	        	    {
            	        	        COMMA_SYMBOL875 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_procedure_analyse_clause4425);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleprocedure_analyse_clauseEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COMMA_SYMBOL875_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL875));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL875_tree);
            	        	        }

            	        	        INTEGER876 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_procedure_analyse_clause4427);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleprocedure_analyse_clauseEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        INTEGER876_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER876));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER876_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL877 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_procedure_analyse_clause4433);
            if  (HASEXCEPTION())
            {
                goto ruleprocedure_analyse_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL877_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL877));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL877_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleprocedure_analyse_clauseEx; /* Prevent compiler warnings */
    ruleprocedure_analyse_clauseEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end procedure_analyse_clause */

/**
 * $ANTLR start having_clause
 * MySQL.g:854:1: having_clause : HAVING_SYMBOL ^ expression ;
 */
static MySQLParser_having_clause_return
having_clause(pMySQLParser ctx)
{
    MySQLParser_having_clause_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    HAVING_SYMBOL878;
    MySQLParser_expression_return expression879;
    #undef	RETURN_TYPE_expression879
    #define	RETURN_TYPE_expression879 MySQLParser_expression_return

    pANTLR3_BASE_TREE HAVING_SYMBOL878_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    HAVING_SYMBOL878       = NULL;
    expression879.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    HAVING_SYMBOL878_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:854:14: ( HAVING_SYMBOL ^ expression )
        // MySQL.g:855:2: HAVING_SYMBOL ^ expression
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            HAVING_SYMBOL878 = (pANTLR3_COMMON_TOKEN) MATCHT(HAVING_SYMBOL, &FOLLOW_HAVING_SYMBOL_in_having_clause4442);
            if  (HASEXCEPTION())
            {
                goto rulehaving_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            HAVING_SYMBOL878_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HAVING_SYMBOL878))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, HAVING_SYMBOL878_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_expression_in_having_clause4445);
            expression879=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulehaving_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression879.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto rulehaving_clauseEx; /* Prevent compiler warnings */
    rulehaving_clauseEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end having_clause */

/**
 * $ANTLR start group_by_clause
 * MySQL.g:858:1: group_by_clause : GROUP_SYMBOL ^ BY_SYMBOL expression_list_with_direction ( olap_option )? ;
 */
static MySQLParser_group_by_clause_return
group_by_clause(pMySQLParser ctx)
{
    MySQLParser_group_by_clause_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    GROUP_SYMBOL880;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL881;
    MySQLParser_expression_list_with_direction_return expression_list_with_direction882;
    #undef	RETURN_TYPE_expression_list_with_direction882
    #define	RETURN_TYPE_expression_list_with_direction882 MySQLParser_expression_list_with_direction_return

    MySQLParser_olap_option_return olap_option883;
    #undef	RETURN_TYPE_olap_option883
    #define	RETURN_TYPE_olap_option883 MySQLParser_olap_option_return

    pANTLR3_BASE_TREE GROUP_SYMBOL880_tree;
    pANTLR3_BASE_TREE BY_SYMBOL881_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    GROUP_SYMBOL880       = NULL;
    BY_SYMBOL881       = NULL;
    expression_list_with_direction882.tree = NULL;

    olap_option883.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    GROUP_SYMBOL880_tree   = NULL;
    BY_SYMBOL881_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:858:16: ( GROUP_SYMBOL ^ BY_SYMBOL expression_list_with_direction ( olap_option )? )
        // MySQL.g:859:2: GROUP_SYMBOL ^ BY_SYMBOL expression_list_with_direction ( olap_option )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            GROUP_SYMBOL880 = (pANTLR3_COMMON_TOKEN) MATCHT(GROUP_SYMBOL, &FOLLOW_GROUP_SYMBOL_in_group_by_clause4454);
            if  (HASEXCEPTION())
            {
                goto rulegroup_by_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            GROUP_SYMBOL880_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GROUP_SYMBOL880))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, GROUP_SYMBOL880_tree, root_0));
            }

            BY_SYMBOL881 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_group_by_clause4457);
            if  (HASEXCEPTION())
            {
                goto rulegroup_by_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            BY_SYMBOL881_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BY_SYMBOL881));
            ADAPTOR->addChild(ADAPTOR, root_0, BY_SYMBOL881_tree);
            }

            FOLLOWPUSH(FOLLOW_expression_list_with_direction_in_group_by_clause4459);
            expression_list_with_direction882=expression_list_with_direction(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulegroup_by_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression_list_with_direction882.tree);

            // MySQL.g:859:57: ( olap_option )?
            {
                int alt306=2;
                switch ( LA(1) )
                {
                    case WITH_SYMBOL:
                    	{
                    		switch ( LA(2) )
                    		{
                    		    case CUBE_SYMBOL:
                    		    case ROLLUP_SYMBOL:
                    		    	{
                    		    		alt306=1;
                    		    	}
                    		        break;
                    		}

                    	}
                        break;
                }

                switch (alt306)
                {
            	case 1:
            	    // MySQL.g:859:57: olap_option
            	    {
            	        FOLLOWPUSH(FOLLOW_olap_option_in_group_by_clause4461);
            	        olap_option883=olap_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulegroup_by_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, olap_option883.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulegroup_by_clauseEx; /* Prevent compiler warnings */
    rulegroup_by_clauseEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end group_by_clause */

/**
 * $ANTLR start olap_option
 * MySQL.g:862:1: olap_option : ( WITH_SYMBOL CUBE_SYMBOL | WITH_SYMBOL ROLLUP_SYMBOL );
 */
static MySQLParser_olap_option_return
olap_option(pMySQLParser ctx)
{
    MySQLParser_olap_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    WITH_SYMBOL884;
    pANTLR3_COMMON_TOKEN    CUBE_SYMBOL885;
    pANTLR3_COMMON_TOKEN    WITH_SYMBOL886;
    pANTLR3_COMMON_TOKEN    ROLLUP_SYMBOL887;

    pANTLR3_BASE_TREE WITH_SYMBOL884_tree;
    pANTLR3_BASE_TREE CUBE_SYMBOL885_tree;
    pANTLR3_BASE_TREE WITH_SYMBOL886_tree;
    pANTLR3_BASE_TREE ROLLUP_SYMBOL887_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    WITH_SYMBOL884       = NULL;
    CUBE_SYMBOL885       = NULL;
    WITH_SYMBOL886       = NULL;
    ROLLUP_SYMBOL887       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    WITH_SYMBOL884_tree   = NULL;
    CUBE_SYMBOL885_tree   = NULL;
    WITH_SYMBOL886_tree   = NULL;
    ROLLUP_SYMBOL887_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:862:12: ( WITH_SYMBOL CUBE_SYMBOL | WITH_SYMBOL ROLLUP_SYMBOL )

            ANTLR3_UINT32 alt307;

            alt307=2;

            switch ( LA(1) )
            {
            case WITH_SYMBOL:
            	{
            		switch ( LA(2) )
            		{
            		case CUBE_SYMBOL:
            			{
            				alt307=1;
            			}
            		    break;
            		case ROLLUP_SYMBOL:
            			{
            				alt307=2;
            			}
            		    break;

            		default:
            		    if (BACKTRACKING>0)
            		    {
            		        FAILEDFLAG = ANTLR3_TRUE;
            		        return retval;
            		    }

            		    CONSTRUCTEX();
            		    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            		    EXCEPTION->message      = (void *)"";
            		    EXCEPTION->decisionNum  = 307;
            		    EXCEPTION->state        = 1;


            		    goto ruleolap_optionEx;

            		}

            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 307;
                EXCEPTION->state        = 0;


                goto ruleolap_optionEx;

            }

            switch (alt307)
            {
        	case 1:
        	    // MySQL.g:863:2: WITH_SYMBOL CUBE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        WITH_SYMBOL884 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_olap_option4471);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleolap_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        WITH_SYMBOL884_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WITH_SYMBOL884));
        	        ADAPTOR->addChild(ADAPTOR, root_0, WITH_SYMBOL884_tree);
        	        }

        	        CUBE_SYMBOL885 = (pANTLR3_COMMON_TOKEN) MATCHT(CUBE_SYMBOL, &FOLLOW_CUBE_SYMBOL_in_olap_option4473);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleolap_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CUBE_SYMBOL885_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CUBE_SYMBOL885));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CUBE_SYMBOL885_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:864:4: WITH_SYMBOL ROLLUP_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        WITH_SYMBOL886 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_olap_option4478);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleolap_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        WITH_SYMBOL886_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WITH_SYMBOL886));
        	        ADAPTOR->addChild(ADAPTOR, root_0, WITH_SYMBOL886_tree);
        	        }

        	        ROLLUP_SYMBOL887 = (pANTLR3_COMMON_TOKEN) MATCHT(ROLLUP_SYMBOL, &FOLLOW_ROLLUP_SYMBOL_in_olap_option4480);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleolap_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ROLLUP_SYMBOL887_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ROLLUP_SYMBOL887));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ROLLUP_SYMBOL887_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleolap_optionEx; /* Prevent compiler warnings */
    ruleolap_optionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end olap_option */

/**
 * $ANTLR start order_by_clause
 * MySQL.g:867:1: order_by_clause : ORDER_SYMBOL ^ BY_SYMBOL expression_list_with_direction ;
 */
static MySQLParser_order_by_clause_return
order_by_clause(pMySQLParser ctx)
{
    MySQLParser_order_by_clause_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    ORDER_SYMBOL888;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL889;
    MySQLParser_expression_list_with_direction_return expression_list_with_direction890;
    #undef	RETURN_TYPE_expression_list_with_direction890
    #define	RETURN_TYPE_expression_list_with_direction890 MySQLParser_expression_list_with_direction_return

    pANTLR3_BASE_TREE ORDER_SYMBOL888_tree;
    pANTLR3_BASE_TREE BY_SYMBOL889_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ORDER_SYMBOL888       = NULL;
    BY_SYMBOL889       = NULL;
    expression_list_with_direction890.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ORDER_SYMBOL888_tree   = NULL;
    BY_SYMBOL889_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:867:16: ( ORDER_SYMBOL ^ BY_SYMBOL expression_list_with_direction )
        // MySQL.g:868:2: ORDER_SYMBOL ^ BY_SYMBOL expression_list_with_direction
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            ORDER_SYMBOL888 = (pANTLR3_COMMON_TOKEN) MATCHT(ORDER_SYMBOL, &FOLLOW_ORDER_SYMBOL_in_order_by_clause4489);
            if  (HASEXCEPTION())
            {
                goto ruleorder_by_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ORDER_SYMBOL888_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ORDER_SYMBOL888))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, ORDER_SYMBOL888_tree, root_0));
            }

            BY_SYMBOL889 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_order_by_clause4492);
            if  (HASEXCEPTION())
            {
                goto ruleorder_by_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            BY_SYMBOL889_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BY_SYMBOL889));
            ADAPTOR->addChild(ADAPTOR, root_0, BY_SYMBOL889_tree);
            }

            FOLLOWPUSH(FOLLOW_expression_list_with_direction_in_order_by_clause4494);
            expression_list_with_direction890=expression_list_with_direction(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleorder_by_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression_list_with_direction890.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleorder_by_clauseEx; /* Prevent compiler warnings */
    ruleorder_by_clauseEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end order_by_clause */

/**
 * $ANTLR start direction
 * MySQL.g:871:1: direction : ( ASC_SYMBOL | DESC_SYMBOL );
 */
static MySQLParser_direction_return
direction(pMySQLParser ctx)
{
    MySQLParser_direction_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set891;

    pANTLR3_BASE_TREE set891_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set891       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set891_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:871:10: ( ASC_SYMBOL | DESC_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set891=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == ASC_SYMBOL || LA(1) == DESC_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set891))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto ruledirectionEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto ruledirectionEx; /* Prevent compiler warnings */
    ruledirectionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end direction */

/**
 * $ANTLR start where_clause
 * MySQL.g:876:1: where_clause : WHERE_SYMBOL ^ expression ;
 */
static MySQLParser_where_clause_return
where_clause(pMySQLParser ctx)
{
    MySQLParser_where_clause_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    WHERE_SYMBOL892;
    MySQLParser_expression_return expression893;
    #undef	RETURN_TYPE_expression893
    #define	RETURN_TYPE_expression893 MySQLParser_expression_return

    pANTLR3_BASE_TREE WHERE_SYMBOL892_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    WHERE_SYMBOL892       = NULL;
    expression893.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    WHERE_SYMBOL892_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:876:13: ( WHERE_SYMBOL ^ expression )
        // MySQL.g:877:2: WHERE_SYMBOL ^ expression
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            WHERE_SYMBOL892 = (pANTLR3_COMMON_TOKEN) MATCHT(WHERE_SYMBOL, &FOLLOW_WHERE_SYMBOL_in_where_clause4525);
            if  (HASEXCEPTION())
            {
                goto rulewhere_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            WHERE_SYMBOL892_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WHERE_SYMBOL892))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, WHERE_SYMBOL892_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_expression_in_where_clause4528);
            expression893=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulewhere_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression893.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto rulewhere_clauseEx; /* Prevent compiler warnings */
    rulewhere_clauseEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end where_clause */

/**
 * $ANTLR start table_references
 * MySQL.g:880:1: table_references : escaped_table_reference ( COMMA_SYMBOL escaped_table_reference )* ;
 */
static MySQLParser_table_references_return
table_references(pMySQLParser ctx)
{
    MySQLParser_table_references_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL895;
    MySQLParser_escaped_table_reference_return escaped_table_reference894;
    #undef	RETURN_TYPE_escaped_table_reference894
    #define	RETURN_TYPE_escaped_table_reference894 MySQLParser_escaped_table_reference_return

    MySQLParser_escaped_table_reference_return escaped_table_reference896;
    #undef	RETURN_TYPE_escaped_table_reference896
    #define	RETURN_TYPE_escaped_table_reference896 MySQLParser_escaped_table_reference_return

    pANTLR3_BASE_TREE COMMA_SYMBOL895_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL895       = NULL;
    escaped_table_reference894.tree = NULL;

    escaped_table_reference896.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL895_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:880:17: ( escaped_table_reference ( COMMA_SYMBOL escaped_table_reference )* )
        // MySQL.g:881:3: escaped_table_reference ( COMMA_SYMBOL escaped_table_reference )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_escaped_table_reference_in_table_references4538);
            escaped_table_reference894=escaped_table_reference(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruletable_referencesEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, escaped_table_reference894.tree);

            // MySQL.g:881:27: ( COMMA_SYMBOL escaped_table_reference )*

            for (;;)
            {
                int alt308=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt308=1;
                	}
                    break;

                }

                switch (alt308)
                {
            	case 1:
            	    // MySQL.g:881:28: COMMA_SYMBOL escaped_table_reference
            	    {
            	        COMMA_SYMBOL895 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_table_references4541);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_referencesEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL895_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL895));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL895_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_escaped_table_reference_in_table_references4543);
            	        escaped_table_reference896=escaped_table_reference(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_referencesEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, escaped_table_reference896.tree);

            	    }
            	    break;

            	default:
            	    goto loop308;	/* break out of the loop */
            	    break;
                }
            }
            loop308: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto ruletable_referencesEx; /* Prevent compiler warnings */
    ruletable_referencesEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end table_references */

/**
 * $ANTLR start escaped_table_reference
 * MySQL.g:890:1: escaped_table_reference : ( table_reference | '{' identifier table_reference '}' );
 */
static MySQLParser_escaped_table_reference_return
escaped_table_reference(pMySQLParser ctx)
{
    MySQLParser_escaped_table_reference_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    char_literal898;
    pANTLR3_COMMON_TOKEN    char_literal901;
    MySQLParser_table_reference_return table_reference897;
    #undef	RETURN_TYPE_table_reference897
    #define	RETURN_TYPE_table_reference897 MySQLParser_table_reference_return

    MySQLParser_identifier_return identifier899;
    #undef	RETURN_TYPE_identifier899
    #define	RETURN_TYPE_identifier899 MySQLParser_identifier_return

    MySQLParser_table_reference_return table_reference900;
    #undef	RETURN_TYPE_table_reference900
    #define	RETURN_TYPE_table_reference900 MySQLParser_table_reference_return

    pANTLR3_BASE_TREE char_literal898_tree;
    pANTLR3_BASE_TREE char_literal901_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    char_literal898       = NULL;
    char_literal901       = NULL;
    table_reference897.tree = NULL;

    identifier899.tree = NULL;

    table_reference900.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    char_literal898_tree   = NULL;
    char_literal901_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:890:24: ( table_reference | '{' identifier table_reference '}' )

            ANTLR3_UINT32 alt309;

            alt309=2;

            {
                int LA309_0 = LA(1);
                if ( (LA309_0 == BACK_TICK_QUOTED_ID || LA309_0 == IDENTIFIER || LA309_0 == OPEN_PAR_SYMBOL))
                {
                    alt309=1;
                }
                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA309_0 == DOUBLE_QUOTED_TEXT))
                {
                    alt309=1;
                }
                else if ( (((LA309_0 >= ACTION_SYMBOL) && (LA309_0 <= ADDDATE_SYMBOL)) || ((LA309_0 >= AFTER_SYMBOL) && (LA309_0 <= ALGORITHM_SYMBOL)) || LA309_0 == ANALYZE_SYMBOL || ((LA309_0 >= ANY_SYMBOL) && (LA309_0 <= ASCII_SYMBOL)) || ((LA309_0 >= AT_SYMBOL) && (LA309_0 <= BACKUP_SYMBOL)) || LA309_0 == BEGIN_SYMBOL || LA309_0 == BINLOG_SYMBOL || LA309_0 == BIT_SYMBOL || ((LA309_0 >= BLOCK_SYMBOL) && (LA309_0 <= BOOL_SYMBOL)) || ((LA309_0 >= BTREE_SYMBOL) && (LA309_0 <= BYTE_SYMBOL)) || LA309_0 == CACHE_SYMBOL || LA309_0 == CASCADED_SYMBOL || ((LA309_0 >= CATALOG_NAME_SYMBOL) && (LA309_0 <= CHANGED_SYMBOL)) || LA309_0 == CHARSET_SYMBOL || LA309_0 == CHECKSUM_SYMBOL || ((LA309_0 >= CIPHER_SYMBOL) && (LA309_0 <= CLIENT_SYMBOL)) || ((LA309_0 >= CLOSE_SYMBOL) && (LA309_0 <= CODE_SYMBOL)) || LA309_0 == COLLATION_SYMBOL || ((LA309_0 >= COLUMNS_SYMBOL) && (LA309_0 <= COLUMN_NAME_SYMBOL)) || ((LA309_0 >= COMMENT_SYMBOL) && (LA309_0 <= COMPRESSED_SYMBOL)) || LA309_0 == CONCURRENT_SYMBOL || ((LA309_0 >= CONNECTION_SYMBOL) && (LA309_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA309_0 >= CONTAINS_SYMBOL) && (LA309_0 <= CONTEXT_SYMBOL)) || LA309_0 == CONTRIBUTORS_SYMBOL || LA309_0 == CPU_SYMBOL || LA309_0 == CUBE_SYMBOL || LA309_0 == CURRENT_SYMBOL || LA309_0 == CURSOR_NAME_SYMBOL || ((LA309_0 >= DATAFILE_SYMBOL) && (LA309_0 <= DATETIME_SYMBOL)) || LA309_0 == DATE_SYMBOL || ((LA309_0 >= DAY_SYMBOL) && (LA309_0 <= DEALLOCATE_SYMBOL)) || LA309_0 == DEFAULT_AUTH_SYMBOL || LA309_0 == DEFINER_SYMBOL || LA309_0 == DELAY_KEY_WRITE_SYMBOL || LA309_0 == DES_KEY_FILE_SYMBOL || LA309_0 == DIAGNOSTICS_SYMBOL || ((LA309_0 >= DIRECTORY_SYMBOL) && (LA309_0 <= DISK_SYMBOL)) || LA309_0 == DOT_SYMBOL || LA309_0 == DO_SYMBOL || ((LA309_0 >= DUMPFILE_SYMBOL) && (LA309_0 <= DYNAMIC_SYMBOL)) || LA309_0 == ENABLE_SYMBOL || LA309_0 == ENDS_SYMBOL || ((LA309_0 >= END_SYMBOL) && (LA309_0 <= ENUM_SYMBOL)) || ((LA309_0 >= ERRORS_SYMBOL) && (LA309_0 <= ERROR_SYMBOL)) || ((LA309_0 >= ESCAPE_SYMBOL) && (LA309_0 <= EVERY_SYMBOL)) || LA309_0 == EXECUTE_SYMBOL || LA309_0 == EXPANSION_SYMBOL || LA309_0 == EXPORT_SYMBOL || ((LA309_0 >= EXTENDED_SYMBOL) && (LA309_0 <= EXTENT_SIZE_SYMBOL)) || ((LA309_0 >= FAST_SYMBOL) && (LA309_0 <= FAULTS_SYMBOL)) || ((LA309_0 >= FILE_SYMBOL) && (LA309_0 <= FIXED_SYMBOL)) || LA309_0 == FLUSH_SYMBOL || LA309_0 == FORMAT_SYMBOL || LA309_0 == FOUND_SYMBOL || LA309_0 == FULL_SYMBOL || ((LA309_0 >= FUNCTION_SYMBOL) && (LA309_0 <= GET_FORMAT_SYMBOL)) || ((LA309_0 >= GLOBAL_SYMBOL) && (LA309_0 <= GRANTS_SYMBOL)) || ((LA309_0 >= HANDLER_SYMBOL) && (LA309_0 <= HASH_SYMBOL)) || LA309_0 == HELP_SYMBOL || ((LA309_0 >= HOSTS_SYMBOL) && (LA309_0 <= HOST_SYMBOL)) || ((LA309_0 >= HOUR_SYMBOL) && (LA309_0 <= IDENTIFIED_SYMBOL)) || LA309_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA309_0 >= IMPORT_SYMBOL) && (LA309_0 <= INDEXES_SYMBOL)) || LA309_0 == INITIAL_SIZE_SYMBOL || LA309_0 == INNODB_SYMBOL || LA309_0 == INSERT_METHOD_SYMBOL || LA309_0 == INSTALL_SYMBOL || LA309_0 == INVOKER_SYMBOL || LA309_0 == IO_SYMBOL || ((LA309_0 >= IPC_SYMBOL) && (LA309_0 <= ISSUER_SYMBOL)) || LA309_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA309_0 >= LANGUAGE_SYMBOL) && (LA309_0 <= LAST_SYMBOL)) || LA309_0 == LEAVES_SYMBOL || LA309_0 == LESS_SYMBOL || LA309_0 == LEVEL_SYMBOL || LA309_0 == LINESTRING_SYMBOL || LA309_0 == LIST_SYMBOL || LA309_0 == LOCAL_SYMBOL || LA309_0 == LOCKS_SYMBOL || LA309_0 == LOGFILE_SYMBOL || LA309_0 == LOGS_SYMBOL || LA309_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA309_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA309_0 <= MASTER_SSL_SYMBOL)) || ((LA309_0 >= MASTER_SYMBOL) && (LA309_0 <= MASTER_USER_SYMBOL)) || ((LA309_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA309_0 <= MAX_SIZE_SYMBOL)) || ((LA309_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA309_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA309_0 >= MEDIUM_SYMBOL) && (LA309_0 <= MICROSECOND_SYMBOL)) || LA309_0 == MIGRATE_SYMBOL || ((LA309_0 >= MINUTE_SYMBOL) && (LA309_0 <= MIN_ROWS_SYMBOL)) || LA309_0 == MODE_SYMBOL || LA309_0 == MODIFY_SYMBOL || ((LA309_0 >= MONTH_SYMBOL) && (LA309_0 <= MULTILINESTRING_SYMBOL)) || ((LA309_0 >= MULTIPOINT_SYMBOL) && (LA309_0 <= MULTIPOLYGON_SYMBOL)) || ((LA309_0 >= MUTEX_SYMBOL) && (LA309_0 <= NATIONAL_SYMBOL)) || LA309_0 == NCHAR_SYMBOL || LA309_0 == NDBCLUSTER_SYMBOL || ((LA309_0 >= NEW_SYMBOL) && (LA309_0 <= NONE_SYMBOL)) || ((LA309_0 >= NO_SYMBOL) && (LA309_0 <= NO_WAIT_SYMBOL)) || LA309_0 == NUMBER_SYMBOL || LA309_0 == NVARCHAR_SYMBOL || ((LA309_0 >= OFFSET_SYMBOL) && (LA309_0 <= ONE_SYMBOL)) || LA309_0 == OPEN_SYMBOL || LA309_0 == OPTIONS_SYMBOL || ((LA309_0 >= OWNER_SYMBOL) && (LA309_0 <= PAGE_SYMBOL)) || ((LA309_0 >= PARSER_SYMBOL) && (LA309_0 <= PARTITION_SYMBOL)) || ((LA309_0 >= PASSWORD_SYMBOL) && (LA309_0 <= PLUGIN_SYMBOL)) || ((LA309_0 >= POINT_SYMBOL) && (LA309_0 <= PORT_SYMBOL)) || ((LA309_0 >= PREPARE_SYMBOL) && (LA309_0 <= PREV_SYMBOL)) || LA309_0 == PRIVILEGES_SYMBOL || ((LA309_0 >= PROCESSLIST_SYMBOL) && (LA309_0 <= PROXY_SYMBOL)) || ((LA309_0 >= QUARTER_SYMBOL) && (LA309_0 <= QUICK_SYMBOL)) || LA309_0 == READ_ONLY_SYMBOL || ((LA309_0 >= REBUILD_SYMBOL) && (LA309_0 <= REDUNDANT_SYMBOL)) || ((LA309_0 >= RELAYLOG_SYMBOL) && (LA309_0 <= RELAY_THREAD_SYMBOL)) || ((LA309_0 >= RELOAD_SYMBOL) && (LA309_0 <= REMOVE_SYMBOL)) || ((LA309_0 >= REORGANIZE_SYMBOL) && (LA309_0 <= REPEATABLE_SYMBOL)) || LA309_0 == REPLICATION_SYMBOL || LA309_0 == RESET_SYMBOL || LA309_0 == RESTORE_SYMBOL || ((LA309_0 >= RESUME_SYMBOL) && (LA309_0 <= RETURNS_SYMBOL)) || LA309_0 == REVERSE_SYMBOL || ((LA309_0 >= ROLLBACK_SYMBOL) && (LA309_0 <= SCHEDULE_SYMBOL)) || LA309_0 == SCHEMA_NAME_SYMBOL || ((LA309_0 >= SECOND_SYMBOL) && (LA309_0 <= SECURITY_SYMBOL)) || ((LA309_0 >= SERIALIZABLE_SYMBOL) && (LA309_0 <= SERIAL_SYMBOL)) || ((LA309_0 >= SERVER_SYMBOL) && (LA309_0 <= SESSION_SYMBOL)) || LA309_0 == SHARE_SYMBOL || LA309_0 == SHUTDOWN_SYMBOL || ((LA309_0 >= SIGNED_SYMBOL) && (LA309_0 <= SIMPLE_SYMBOL)) || ((LA309_0 >= SLAVE_SYMBOL) && (LA309_0 <= SLOW_SYMBOL)) || ((LA309_0 >= SNAPSHOT_SYMBOL) && (LA309_0 <= SOURCE_SYMBOL)) || ((LA309_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA309_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA309_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA309_0 <= SQL_CACHE_SYMBOL)) || LA309_0 == SQL_NO_CACHE_SYMBOL || LA309_0 == SQL_THREAD_SYMBOL || ((LA309_0 >= STARTS_SYMBOL) && (LA309_0 <= STATUS_SYMBOL)) || ((LA309_0 >= STOP_SYMBOL) && (LA309_0 <= STORAGE_SYMBOL)) || ((LA309_0 >= STRING_SYMBOL) && (LA309_0 <= SUBPARTITION_SYMBOL)) || ((LA309_0 >= SUPER_SYMBOL) && (LA309_0 <= SWITCHES_SYMBOL)) || ((LA309_0 >= TABLESPACE_SYMBOL) && (LA309_0 <= TABLE_NAME_SYMBOL)) || ((LA309_0 >= TEMPORARY_SYMBOL) && (LA309_0 <= TEMPTABLE_SYMBOL)) || ((LA309_0 >= TEXT_SYMBOL) && (LA309_0 <= THAN_SYMBOL)) || ((LA309_0 >= TIMESTAMP_ADD_SYMBOL) && (LA309_0 <= TIME_SYMBOL)) || ((LA309_0 >= TRANSACTION_SYMBOL) && (LA309_0 <= TRIGGERS_SYMBOL)) || ((LA309_0 >= TRUNCATE_SYMBOL) && (LA309_0 <= UDF_RETURNS_SYMBOL)) || ((LA309_0 >= UNCOMMITTED_SYMBOL) && (LA309_0 <= UNDEFINED_SYMBOL)) || ((LA309_0 >= UNDOFILE_SYMBOL) && (LA309_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA309_0 >= UNICODE_SYMBOL) && (LA309_0 <= UNINSTALL_SYMBOL)) || LA309_0 == UNKNOWN_SYMBOL || LA309_0 == UNTIL_SYMBOL || LA309_0 == UPGRADE_SYMBOL || ((LA309_0 >= USER_RESOURCES_SYMBOL) && (LA309_0 <= USE_FRM_SYMBOL)) || LA309_0 == VALUE_SYMBOL || LA309_0 == VARIABLES_SYMBOL || ((LA309_0 >= VIEW_SYMBOL) && (LA309_0 <= WEIGHT_STRING_SYMBOL)) || ((LA309_0 >= WORK_SYMBOL) && (LA309_0 <= WRAPPER_SYMBOL)) || LA309_0 == X509_SYMBOL || ((LA309_0 >= XA_SYMBOL) && (LA309_0 <= XML_SYMBOL)) || LA309_0 == YEAR_SYMBOL))
                {
                    alt309=1;
                }
                else if ( (LA309_0 == 732))
                {
                    alt309=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 309;
                    EXCEPTION->state        = 0;


                    goto ruleescaped_table_referenceEx;

                }
            }
            switch (alt309)
            {
        	case 1:
        	    // MySQL.g:891:2: table_reference
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_table_reference_in_escaped_table_reference4560);
        	        table_reference897=table_reference(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleescaped_table_referenceEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_reference897.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:892:4: '{' identifier table_reference '}'
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        char_literal898 = (pANTLR3_COMMON_TOKEN) MATCHT(732, &FOLLOW_732_in_escaped_table_reference4565);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleescaped_table_referenceEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        char_literal898_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, char_literal898));
        	        ADAPTOR->addChild(ADAPTOR, root_0, char_literal898_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_identifier_in_escaped_table_reference4567);
        	        identifier899=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleescaped_table_referenceEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier899.tree);

        	        FOLLOWPUSH(FOLLOW_table_reference_in_escaped_table_reference4569);
        	        table_reference900=table_reference(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleescaped_table_referenceEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_reference900.tree);

        	        char_literal901 = (pANTLR3_COMMON_TOKEN) MATCHT(733, &FOLLOW_733_in_escaped_table_reference4571);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleescaped_table_referenceEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        char_literal901_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, char_literal901));
        	        ADAPTOR->addChild(ADAPTOR, root_0, char_literal901_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleescaped_table_referenceEx; /* Prevent compiler warnings */
    ruleescaped_table_referenceEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end escaped_table_reference */

/**
 * $ANTLR start table_reference
 * MySQL.g:895:1: table_reference : table_factor ( options {greedy=true; } : join )* -> ^( TABLE_REFERENCE table_factor ( join )* ) ;
 */
static MySQLParser_table_reference_return
table_reference(pMySQLParser ctx)
{
    MySQLParser_table_reference_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_table_factor_return table_factor902;
    #undef	RETURN_TYPE_table_factor902
    #define	RETURN_TYPE_table_factor902 MySQLParser_table_factor_return

    MySQLParser_join_return join903;
    #undef	RETURN_TYPE_join903
    #define	RETURN_TYPE_join903 MySQLParser_join_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_table_factor;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_join;
    /* Initialize rule variables
     */

    root_0 = NULL;

    table_factor902.tree = NULL;

    join903.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;



    stream_table_factor   = NULL;
    #define CREATE_stream_table_factor  if (stream_table_factor == NULL) {stream_table_factor = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule table_factor"); }
    stream_join   = NULL;
    #define CREATE_stream_join  if (stream_join == NULL) {stream_join = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule join"); }

    retval.tree  = NULL;

    {
        // MySQL.g:895:16: ( table_factor ( options {greedy=true; } : join )* -> ^( TABLE_REFERENCE table_factor ( join )* ) )
        // MySQL.g:896:2: table_factor ( options {greedy=true; } : join )*
        {
            FOLLOWPUSH(FOLLOW_table_factor_in_table_reference4580);
            table_factor902=table_factor(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruletable_referenceEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_table_factor; stream_table_factor->add(stream_table_factor, table_factor902.tree, NULL); }

            // MySQL.g:896:15: ( options {greedy=true; } : join )*

            for (;;)
            {
                int alt310=2;
                switch ( LA(1) )
                {
                case CROSS_SYMBOL:
                case INNER_SYMBOL:
                	{
                		alt310=1;
                	}
                    break;
                case JOIN_SYMBOL:
                	{
                		alt310=1;
                	}
                    break;
                case STRAIGHT_JOIN_SYMBOL:
                	{
                		alt310=1;
                	}
                    break;
                case LEFT_SYMBOL:
                case RIGHT_SYMBOL:
                	{
                		alt310=1;
                	}
                    break;
                case NATURAL_SYMBOL:
                	{
                		alt310=1;
                	}
                    break;

                }

                switch (alt310)
                {
            	case 1:
            	    // MySQL.g:896:45: join
            	    {
            	        FOLLOWPUSH(FOLLOW_join_in_table_reference4596);
            	        join903=join(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_referenceEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) { CREATE_stream_join; stream_join->add(stream_join, join903.tree, NULL); }

            	    }
            	    break;

            	default:
            	    goto loop310;	/* break out of the loop */
            	    break;
                }
            }
            loop310: ; /* Jump out to here if this rule does not match */


            /* AST REWRITE
             * elements          : join, table_factor
             * token labels      : 
             * rule labels       : retval
             * token list labels : 
             * rule list labels  : 
             */
            if ( BACKTRACKING==0 ) 

            {
            	pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_retval;

            	stream_retval=antlr3RewriteRuleSubtreeStreamNewAEE(ADAPTOR,  RECOGNIZER, (pANTLR3_UINT8)"token retval", retval.tree != NULL ? retval.tree : NULL);

            	root_0			    = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
            	retval.tree    = root_0;
            	// 896:52: -> ^( TABLE_REFERENCE table_factor ( join )* )
            	{
            	    // MySQL.g:896:55: ^( TABLE_REFERENCE table_factor ( join )* )
            	    {
            	        pANTLR3_BASE_TREE root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
            	        root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, 
            	        (pANTLR3_BASE_TREE)ADAPTOR->createTypeText(ADAPTOR, TABLE_REFERENCE, (pANTLR3_UINT8)"TABLE_REFERENCE")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_table_factor == NULL ? NULL : stream_table_factor->nextTree(stream_table_factor));

            	        // MySQL.g:896:86: ( join )*
            	        {
            	        	while ( (stream_join != NULL && stream_join->hasNext(stream_join))  )
            	        	{
            	        		ADAPTOR->addChild(ADAPTOR, root_1, stream_join == NULL ? NULL : stream_join->nextTree(stream_join));

            	        	}
            	        	if (stream_join != NULL) stream_join->reset(stream_join);

            	        }

            	        ADAPTOR->addChild(ADAPTOR, root_0, root_1);
            	    }

            	}


            	retval.tree = root_0; // set result root
            	if (stream_retval != NULL) stream_retval->free(stream_retval);


            }
        }

    }

    // This is where rules clean up and exit
    //
    goto ruletable_referenceEx; /* Prevent compiler warnings */
    ruletable_referenceEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
        if (stream_table_factor != NULL) stream_table_factor->free(stream_table_factor);
        if (stream_join != NULL) stream_join->free(stream_join);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end table_reference */

/**
 * $ANTLR start join
 * MySQL.g:899:1: join : join_table -> ^( JOIN join_table ) ;
 */
static MySQLParser_join_return
join(pMySQLParser ctx)
{
    MySQLParser_join_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_join_table_return join_table904;
    #undef	RETURN_TYPE_join_table904
    #define	RETURN_TYPE_join_table904 MySQLParser_join_table_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_join_table;
    /* Initialize rule variables
     */

    root_0 = NULL;

    join_table904.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;



    stream_join_table   = NULL;
    #define CREATE_stream_join_table  if (stream_join_table == NULL) {stream_join_table = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule join_table"); }

    retval.tree  = NULL;

    {
        // MySQL.g:899:5: ( join_table -> ^( JOIN join_table ) )
        // MySQL.g:900:2: join_table
        {
            FOLLOWPUSH(FOLLOW_join_table_in_join4618);
            join_table904=join_table(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulejoinEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_join_table; stream_join_table->add(stream_join_table, join_table904.tree, NULL); }

            /* AST REWRITE
             * elements          : join_table
             * token labels      : 
             * rule labels       : retval
             * token list labels : 
             * rule list labels  : 
             */
            if ( BACKTRACKING==0 ) 

            {
            	pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_retval;

            	stream_retval=antlr3RewriteRuleSubtreeStreamNewAEE(ADAPTOR,  RECOGNIZER, (pANTLR3_UINT8)"token retval", retval.tree != NULL ? retval.tree : NULL);

            	root_0			    = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
            	retval.tree    = root_0;
            	// 900:13: -> ^( JOIN join_table )
            	{
            	    // MySQL.g:900:16: ^( JOIN join_table )
            	    {
            	        pANTLR3_BASE_TREE root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
            	        root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, 
            	        (pANTLR3_BASE_TREE)ADAPTOR->createTypeText(ADAPTOR, JOIN, (pANTLR3_UINT8)"JOIN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_join_table == NULL ? NULL : stream_join_table->nextTree(stream_join_table));

            	        ADAPTOR->addChild(ADAPTOR, root_0, root_1);
            	    }

            	}


            	retval.tree = root_0; // set result root
            	if (stream_retval != NULL) stream_retval->free(stream_retval);


            }
        }

    }

    // This is where rules clean up and exit
    //
    goto rulejoinEx; /* Prevent compiler warnings */
    rulejoinEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
        if (stream_join_table != NULL) stream_join_table->free(stream_join_table);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end join */

/**
 * $ANTLR start table_factor
 * MySQL.g:903:1: table_factor : ({...}? subquery table_alias | OPEN_PAR_SYMBOL table_references CLOSE_PAR_SYMBOL | table_identifier ( PARTITION_SYMBOL identifier_list_with_parentheses )? ( table_alias )? ( index_hint_list )? -> ^( TABLE_REF_ID table_identifier ( PARTITION_SYMBOL identifier_list_with_parentheses )? ( table_alias )? ( index_hint_list )? ) );
 */
static MySQLParser_table_factor_return
table_factor(pMySQLParser ctx)
{
    MySQLParser_table_factor_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL907;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL909;
    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL911;
    MySQLParser_subquery_return subquery905;
    #undef	RETURN_TYPE_subquery905
    #define	RETURN_TYPE_subquery905 MySQLParser_subquery_return

    MySQLParser_table_alias_return table_alias906;
    #undef	RETURN_TYPE_table_alias906
    #define	RETURN_TYPE_table_alias906 MySQLParser_table_alias_return

    MySQLParser_table_references_return table_references908;
    #undef	RETURN_TYPE_table_references908
    #define	RETURN_TYPE_table_references908 MySQLParser_table_references_return

    MySQLParser_table_identifier_return table_identifier910;
    #undef	RETURN_TYPE_table_identifier910
    #define	RETURN_TYPE_table_identifier910 MySQLParser_table_identifier_return

    MySQLParser_identifier_list_with_parentheses_return identifier_list_with_parentheses912;
    #undef	RETURN_TYPE_identifier_list_with_parentheses912
    #define	RETURN_TYPE_identifier_list_with_parentheses912 MySQLParser_identifier_list_with_parentheses_return

    MySQLParser_table_alias_return table_alias913;
    #undef	RETURN_TYPE_table_alias913
    #define	RETURN_TYPE_table_alias913 MySQLParser_table_alias_return

    MySQLParser_index_hint_list_return index_hint_list914;
    #undef	RETURN_TYPE_index_hint_list914
    #define	RETURN_TYPE_index_hint_list914 MySQLParser_index_hint_list_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL907_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL909_tree;
    pANTLR3_BASE_TREE PARTITION_SYMBOL911_tree;
    pANTLR3_REWRITE_RULE_TOKEN_STREAM stream_PARTITION_SYMBOL;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_table_identifier;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_index_hint_list;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_table_alias;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_identifier_list_with_parentheses;
    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL907       = NULL;
    CLOSE_PAR_SYMBOL909       = NULL;
    PARTITION_SYMBOL911       = NULL;
    subquery905.tree = NULL;

    table_alias906.tree = NULL;

    table_references908.tree = NULL;

    table_identifier910.tree = NULL;

    identifier_list_with_parentheses912.tree = NULL;

    table_alias913.tree = NULL;

    index_hint_list914.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL907_tree   = NULL;
    CLOSE_PAR_SYMBOL909_tree   = NULL;
    PARTITION_SYMBOL911_tree   = NULL;

    stream_PARTITION_SYMBOL   = NULL;
    #define CREATE_stream_PARTITION_SYMBOL  if (stream_PARTITION_SYMBOL == NULL) {stream_PARTITION_SYMBOL = antlr3RewriteRuleTOKENStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"token PARTITION_SYMBOL"); } 
    stream_table_identifier   = NULL;
    #define CREATE_stream_table_identifier  if (stream_table_identifier == NULL) {stream_table_identifier = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule table_identifier"); }
    stream_index_hint_list   = NULL;
    #define CREATE_stream_index_hint_list  if (stream_index_hint_list == NULL) {stream_index_hint_list = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule index_hint_list"); }
    stream_table_alias   = NULL;
    #define CREATE_stream_table_alias  if (stream_table_alias == NULL) {stream_table_alias = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule table_alias"); }
    stream_identifier_list_with_parentheses   = NULL;
    #define CREATE_stream_identifier_list_with_parentheses  if (stream_identifier_list_with_parentheses == NULL) {stream_identifier_list_with_parentheses = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule identifier_list_with_parentheses"); }

    retval.tree  = NULL;

    {
        {
            //  MySQL.g:903:13: ({...}? subquery table_alias | OPEN_PAR_SYMBOL table_references CLOSE_PAR_SYMBOL | table_identifier ( PARTITION_SYMBOL identifier_list_with_parentheses )? ( table_alias )? ( index_hint_list )? -> ^( TABLE_REF_ID table_identifier ( PARTITION_SYMBOL identifier_list_with_parentheses )? ( table_alias )? ( index_hint_list )? ) )

            ANTLR3_UINT32 alt314;

            alt314=3;

            {
                int LA314_0 = LA(1);
                if ( (LA314_0 == OPEN_PAR_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case SELECT_SYMBOL:
                    	{
                    		alt314=1;
                    	}
                        break;
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DOT_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOUND_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_SYMBOL:
                    case LEVEL_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case YEAR_SYMBOL:
                    case 732:
                    	{
                    		alt314=2;
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 314;
                        EXCEPTION->state        = 1;


                        goto ruletable_factorEx;

                    }

                }
                else if ( (LA314_0 == BACK_TICK_QUOTED_ID || LA314_0 == IDENTIFIER))
                {
                    alt314=3;
                }
                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA314_0 == DOUBLE_QUOTED_TEXT))
                {
                    alt314=3;
                }
                else if ( (((LA314_0 >= ACTION_SYMBOL) && (LA314_0 <= ADDDATE_SYMBOL)) || ((LA314_0 >= AFTER_SYMBOL) && (LA314_0 <= ALGORITHM_SYMBOL)) || LA314_0 == ANALYZE_SYMBOL || ((LA314_0 >= ANY_SYMBOL) && (LA314_0 <= ASCII_SYMBOL)) || ((LA314_0 >= AT_SYMBOL) && (LA314_0 <= BACKUP_SYMBOL)) || LA314_0 == BEGIN_SYMBOL || LA314_0 == BINLOG_SYMBOL || LA314_0 == BIT_SYMBOL || ((LA314_0 >= BLOCK_SYMBOL) && (LA314_0 <= BOOL_SYMBOL)) || ((LA314_0 >= BTREE_SYMBOL) && (LA314_0 <= BYTE_SYMBOL)) || LA314_0 == CACHE_SYMBOL || LA314_0 == CASCADED_SYMBOL || ((LA314_0 >= CATALOG_NAME_SYMBOL) && (LA314_0 <= CHANGED_SYMBOL)) || LA314_0 == CHARSET_SYMBOL || LA314_0 == CHECKSUM_SYMBOL || ((LA314_0 >= CIPHER_SYMBOL) && (LA314_0 <= CLIENT_SYMBOL)) || ((LA314_0 >= CLOSE_SYMBOL) && (LA314_0 <= CODE_SYMBOL)) || LA314_0 == COLLATION_SYMBOL || ((LA314_0 >= COLUMNS_SYMBOL) && (LA314_0 <= COLUMN_NAME_SYMBOL)) || ((LA314_0 >= COMMENT_SYMBOL) && (LA314_0 <= COMPRESSED_SYMBOL)) || LA314_0 == CONCURRENT_SYMBOL || ((LA314_0 >= CONNECTION_SYMBOL) && (LA314_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA314_0 >= CONTAINS_SYMBOL) && (LA314_0 <= CONTEXT_SYMBOL)) || LA314_0 == CONTRIBUTORS_SYMBOL || LA314_0 == CPU_SYMBOL || LA314_0 == CUBE_SYMBOL || LA314_0 == CURRENT_SYMBOL || LA314_0 == CURSOR_NAME_SYMBOL || ((LA314_0 >= DATAFILE_SYMBOL) && (LA314_0 <= DATETIME_SYMBOL)) || LA314_0 == DATE_SYMBOL || ((LA314_0 >= DAY_SYMBOL) && (LA314_0 <= DEALLOCATE_SYMBOL)) || LA314_0 == DEFAULT_AUTH_SYMBOL || LA314_0 == DEFINER_SYMBOL || LA314_0 == DELAY_KEY_WRITE_SYMBOL || LA314_0 == DES_KEY_FILE_SYMBOL || LA314_0 == DIAGNOSTICS_SYMBOL || ((LA314_0 >= DIRECTORY_SYMBOL) && (LA314_0 <= DISK_SYMBOL)) || LA314_0 == DOT_SYMBOL || LA314_0 == DO_SYMBOL || ((LA314_0 >= DUMPFILE_SYMBOL) && (LA314_0 <= DYNAMIC_SYMBOL)) || LA314_0 == ENABLE_SYMBOL || LA314_0 == ENDS_SYMBOL || ((LA314_0 >= END_SYMBOL) && (LA314_0 <= ENUM_SYMBOL)) || ((LA314_0 >= ERRORS_SYMBOL) && (LA314_0 <= ERROR_SYMBOL)) || ((LA314_0 >= ESCAPE_SYMBOL) && (LA314_0 <= EVERY_SYMBOL)) || LA314_0 == EXECUTE_SYMBOL || LA314_0 == EXPANSION_SYMBOL || LA314_0 == EXPORT_SYMBOL || ((LA314_0 >= EXTENDED_SYMBOL) && (LA314_0 <= EXTENT_SIZE_SYMBOL)) || ((LA314_0 >= FAST_SYMBOL) && (LA314_0 <= FAULTS_SYMBOL)) || ((LA314_0 >= FILE_SYMBOL) && (LA314_0 <= FIXED_SYMBOL)) || LA314_0 == FLUSH_SYMBOL || LA314_0 == FORMAT_SYMBOL || LA314_0 == FOUND_SYMBOL || LA314_0 == FULL_SYMBOL || ((LA314_0 >= FUNCTION_SYMBOL) && (LA314_0 <= GET_FORMAT_SYMBOL)) || ((LA314_0 >= GLOBAL_SYMBOL) && (LA314_0 <= GRANTS_SYMBOL)) || ((LA314_0 >= HANDLER_SYMBOL) && (LA314_0 <= HASH_SYMBOL)) || LA314_0 == HELP_SYMBOL || ((LA314_0 >= HOSTS_SYMBOL) && (LA314_0 <= HOST_SYMBOL)) || ((LA314_0 >= HOUR_SYMBOL) && (LA314_0 <= IDENTIFIED_SYMBOL)) || LA314_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA314_0 >= IMPORT_SYMBOL) && (LA314_0 <= INDEXES_SYMBOL)) || LA314_0 == INITIAL_SIZE_SYMBOL || LA314_0 == INNODB_SYMBOL || LA314_0 == INSERT_METHOD_SYMBOL || LA314_0 == INSTALL_SYMBOL || LA314_0 == INVOKER_SYMBOL || LA314_0 == IO_SYMBOL || ((LA314_0 >= IPC_SYMBOL) && (LA314_0 <= ISSUER_SYMBOL)) || LA314_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA314_0 >= LANGUAGE_SYMBOL) && (LA314_0 <= LAST_SYMBOL)) || LA314_0 == LEAVES_SYMBOL || LA314_0 == LESS_SYMBOL || LA314_0 == LEVEL_SYMBOL || LA314_0 == LINESTRING_SYMBOL || LA314_0 == LIST_SYMBOL || LA314_0 == LOCAL_SYMBOL || LA314_0 == LOCKS_SYMBOL || LA314_0 == LOGFILE_SYMBOL || LA314_0 == LOGS_SYMBOL || LA314_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA314_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA314_0 <= MASTER_SSL_SYMBOL)) || ((LA314_0 >= MASTER_SYMBOL) && (LA314_0 <= MASTER_USER_SYMBOL)) || ((LA314_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA314_0 <= MAX_SIZE_SYMBOL)) || ((LA314_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA314_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA314_0 >= MEDIUM_SYMBOL) && (LA314_0 <= MICROSECOND_SYMBOL)) || LA314_0 == MIGRATE_SYMBOL || ((LA314_0 >= MINUTE_SYMBOL) && (LA314_0 <= MIN_ROWS_SYMBOL)) || LA314_0 == MODE_SYMBOL || LA314_0 == MODIFY_SYMBOL || ((LA314_0 >= MONTH_SYMBOL) && (LA314_0 <= MULTILINESTRING_SYMBOL)) || ((LA314_0 >= MULTIPOINT_SYMBOL) && (LA314_0 <= MULTIPOLYGON_SYMBOL)) || ((LA314_0 >= MUTEX_SYMBOL) && (LA314_0 <= NATIONAL_SYMBOL)) || LA314_0 == NCHAR_SYMBOL || LA314_0 == NDBCLUSTER_SYMBOL || ((LA314_0 >= NEW_SYMBOL) && (LA314_0 <= NONE_SYMBOL)) || ((LA314_0 >= NO_SYMBOL) && (LA314_0 <= NO_WAIT_SYMBOL)) || LA314_0 == NUMBER_SYMBOL || LA314_0 == NVARCHAR_SYMBOL || ((LA314_0 >= OFFSET_SYMBOL) && (LA314_0 <= ONE_SYMBOL)) || LA314_0 == OPEN_SYMBOL || LA314_0 == OPTIONS_SYMBOL || ((LA314_0 >= OWNER_SYMBOL) && (LA314_0 <= PAGE_SYMBOL)) || ((LA314_0 >= PARSER_SYMBOL) && (LA314_0 <= PARTITION_SYMBOL)) || ((LA314_0 >= PASSWORD_SYMBOL) && (LA314_0 <= PLUGIN_SYMBOL)) || ((LA314_0 >= POINT_SYMBOL) && (LA314_0 <= PORT_SYMBOL)) || ((LA314_0 >= PREPARE_SYMBOL) && (LA314_0 <= PREV_SYMBOL)) || LA314_0 == PRIVILEGES_SYMBOL || ((LA314_0 >= PROCESSLIST_SYMBOL) && (LA314_0 <= PROXY_SYMBOL)) || ((LA314_0 >= QUARTER_SYMBOL) && (LA314_0 <= QUICK_SYMBOL)) || LA314_0 == READ_ONLY_SYMBOL || ((LA314_0 >= REBUILD_SYMBOL) && (LA314_0 <= REDUNDANT_SYMBOL)) || ((LA314_0 >= RELAYLOG_SYMBOL) && (LA314_0 <= RELAY_THREAD_SYMBOL)) || ((LA314_0 >= RELOAD_SYMBOL) && (LA314_0 <= REMOVE_SYMBOL)) || ((LA314_0 >= REORGANIZE_SYMBOL) && (LA314_0 <= REPEATABLE_SYMBOL)) || LA314_0 == REPLICATION_SYMBOL || LA314_0 == RESET_SYMBOL || LA314_0 == RESTORE_SYMBOL || ((LA314_0 >= RESUME_SYMBOL) && (LA314_0 <= RETURNS_SYMBOL)) || LA314_0 == REVERSE_SYMBOL || ((LA314_0 >= ROLLBACK_SYMBOL) && (LA314_0 <= SCHEDULE_SYMBOL)) || LA314_0 == SCHEMA_NAME_SYMBOL || ((LA314_0 >= SECOND_SYMBOL) && (LA314_0 <= SECURITY_SYMBOL)) || ((LA314_0 >= SERIALIZABLE_SYMBOL) && (LA314_0 <= SERIAL_SYMBOL)) || ((LA314_0 >= SERVER_SYMBOL) && (LA314_0 <= SESSION_SYMBOL)) || LA314_0 == SHARE_SYMBOL || LA314_0 == SHUTDOWN_SYMBOL || ((LA314_0 >= SIGNED_SYMBOL) && (LA314_0 <= SIMPLE_SYMBOL)) || ((LA314_0 >= SLAVE_SYMBOL) && (LA314_0 <= SLOW_SYMBOL)) || ((LA314_0 >= SNAPSHOT_SYMBOL) && (LA314_0 <= SOURCE_SYMBOL)) || ((LA314_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA314_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA314_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA314_0 <= SQL_CACHE_SYMBOL)) || LA314_0 == SQL_NO_CACHE_SYMBOL || LA314_0 == SQL_THREAD_SYMBOL || ((LA314_0 >= STARTS_SYMBOL) && (LA314_0 <= STATUS_SYMBOL)) || ((LA314_0 >= STOP_SYMBOL) && (LA314_0 <= STORAGE_SYMBOL)) || ((LA314_0 >= STRING_SYMBOL) && (LA314_0 <= SUBPARTITION_SYMBOL)) || ((LA314_0 >= SUPER_SYMBOL) && (LA314_0 <= SWITCHES_SYMBOL)) || ((LA314_0 >= TABLESPACE_SYMBOL) && (LA314_0 <= TABLE_NAME_SYMBOL)) || ((LA314_0 >= TEMPORARY_SYMBOL) && (LA314_0 <= TEMPTABLE_SYMBOL)) || ((LA314_0 >= TEXT_SYMBOL) && (LA314_0 <= THAN_SYMBOL)) || ((LA314_0 >= TIMESTAMP_ADD_SYMBOL) && (LA314_0 <= TIME_SYMBOL)) || ((LA314_0 >= TRANSACTION_SYMBOL) && (LA314_0 <= TRIGGERS_SYMBOL)) || ((LA314_0 >= TRUNCATE_SYMBOL) && (LA314_0 <= UDF_RETURNS_SYMBOL)) || ((LA314_0 >= UNCOMMITTED_SYMBOL) && (LA314_0 <= UNDEFINED_SYMBOL)) || ((LA314_0 >= UNDOFILE_SYMBOL) && (LA314_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA314_0 >= UNICODE_SYMBOL) && (LA314_0 <= UNINSTALL_SYMBOL)) || LA314_0 == UNKNOWN_SYMBOL || LA314_0 == UNTIL_SYMBOL || LA314_0 == UPGRADE_SYMBOL || ((LA314_0 >= USER_RESOURCES_SYMBOL) && (LA314_0 <= USE_FRM_SYMBOL)) || LA314_0 == VALUE_SYMBOL || LA314_0 == VARIABLES_SYMBOL || ((LA314_0 >= VIEW_SYMBOL) && (LA314_0 <= WEIGHT_STRING_SYMBOL)) || ((LA314_0 >= WORK_SYMBOL) && (LA314_0 <= WRAPPER_SYMBOL)) || LA314_0 == X509_SYMBOL || ((LA314_0 >= XA_SYMBOL) && (LA314_0 <= XML_SYMBOL)) || LA314_0 == YEAR_SYMBOL))
                {
                    alt314=3;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 314;
                    EXCEPTION->state        = 0;


                    goto ruletable_factorEx;

                }
            }
            switch (alt314)
            {
        	case 1:
        	    // MySQL.g:904:2: {...}? subquery table_alias
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((LA(1) == OPEN_PAR_SYMBOL && LA(2) == SELECT_SYMBOL)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"LA(1) == OPEN_PAR_SYMBOL && LA(2) == SELECT_SYMBOL";
        	                EXCEPTION->ruleName	 = (void *)"table_factor";


        	        }

        	        FOLLOWPUSH(FOLLOW_subquery_in_table_factor4637);
        	        subquery905=subquery(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_factorEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, subquery905.tree);

        	        FOLLOWPUSH(FOLLOW_table_alias_in_table_factor4639);
        	        table_alias906=table_alias(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_factorEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_alias906.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:905:4: OPEN_PAR_SYMBOL table_references CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        OPEN_PAR_SYMBOL907 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_table_factor4644);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_factorEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL907_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL907));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL907_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_table_references_in_table_factor4646);
        	        table_references908=table_references(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_factorEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_references908.tree);

        	        CLOSE_PAR_SYMBOL909 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_table_factor4648);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_factorEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL909_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL909));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL909_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:906:4: table_identifier ( PARTITION_SYMBOL identifier_list_with_parentheses )? ( table_alias )? ( index_hint_list )?
        	    {
        	        FOLLOWPUSH(FOLLOW_table_identifier_in_table_factor4653);
        	        table_identifier910=table_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_factorEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) { CREATE_stream_table_identifier; stream_table_identifier->add(stream_table_identifier, table_identifier910.tree, NULL); }

        	        // MySQL.g:906:21: ( PARTITION_SYMBOL identifier_list_with_parentheses )?
        	        {
        	            int alt311=2;
        	            switch ( LA(1) )
        	            {
        	                case PARTITION_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case OPEN_PAR_SYMBOL:
        	                		    	{
        	                		    		alt311=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt311)
        	            {
        	        	case 1:
        	        	    // MySQL.g:906:22: PARTITION_SYMBOL identifier_list_with_parentheses
        	        	    {
        	        	        PARTITION_SYMBOL911 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_table_factor4656);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletable_factorEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }
        	        	         
        	        	        if ( BACKTRACKING==0 ) { CREATE_stream_PARTITION_SYMBOL; stream_PARTITION_SYMBOL->add(stream_PARTITION_SYMBOL, PARTITION_SYMBOL911, NULL); }


        	        	        FOLLOWPUSH(FOLLOW_identifier_list_with_parentheses_in_table_factor4658);
        	        	        identifier_list_with_parentheses912=identifier_list_with_parentheses(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletable_factorEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) { CREATE_stream_identifier_list_with_parentheses; stream_identifier_list_with_parentheses->add(stream_identifier_list_with_parentheses, identifier_list_with_parentheses912.tree, NULL); }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:906:74: ( table_alias )?
        	        {
        	            int alt312=2;
        	            {
        	                int LA312_0 = LA(1);
        	                if ( (LA312_0 == AS_SYMBOL || LA312_0 == BACK_TICK_QUOTED_ID || LA312_0 == EQUAL_OPERATOR || LA312_0 == IDENTIFIER))
        	                {
        	                    alt312=1;
        	                }
        	                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA312_0 == DOUBLE_QUOTED_TEXT))
        	                {
        	                    alt312=1;
        	                }
        	                else if ( (((LA312_0 >= ACTION_SYMBOL) && (LA312_0 <= ADDDATE_SYMBOL)) || ((LA312_0 >= AFTER_SYMBOL) && (LA312_0 <= ALGORITHM_SYMBOL)) || LA312_0 == ANALYZE_SYMBOL || ((LA312_0 >= ANY_SYMBOL) && (LA312_0 <= ASCII_SYMBOL)) || ((LA312_0 >= AT_SYMBOL) && (LA312_0 <= BACKUP_SYMBOL)) || LA312_0 == BEGIN_SYMBOL || LA312_0 == BINLOG_SYMBOL || LA312_0 == BIT_SYMBOL || ((LA312_0 >= BLOCK_SYMBOL) && (LA312_0 <= BOOL_SYMBOL)) || ((LA312_0 >= BTREE_SYMBOL) && (LA312_0 <= BYTE_SYMBOL)) || LA312_0 == CACHE_SYMBOL || LA312_0 == CASCADED_SYMBOL || ((LA312_0 >= CATALOG_NAME_SYMBOL) && (LA312_0 <= CHANGED_SYMBOL)) || LA312_0 == CHARSET_SYMBOL || LA312_0 == CHECKSUM_SYMBOL || ((LA312_0 >= CIPHER_SYMBOL) && (LA312_0 <= CLIENT_SYMBOL)) || ((LA312_0 >= CLOSE_SYMBOL) && (LA312_0 <= CODE_SYMBOL)) || LA312_0 == COLLATION_SYMBOL || ((LA312_0 >= COLUMNS_SYMBOL) && (LA312_0 <= COLUMN_NAME_SYMBOL)) || ((LA312_0 >= COMMENT_SYMBOL) && (LA312_0 <= COMPRESSED_SYMBOL)) || LA312_0 == CONCURRENT_SYMBOL || ((LA312_0 >= CONNECTION_SYMBOL) && (LA312_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA312_0 >= CONTAINS_SYMBOL) && (LA312_0 <= CONTEXT_SYMBOL)) || LA312_0 == CONTRIBUTORS_SYMBOL || LA312_0 == CPU_SYMBOL || LA312_0 == CUBE_SYMBOL || LA312_0 == CURRENT_SYMBOL || LA312_0 == CURSOR_NAME_SYMBOL || ((LA312_0 >= DATAFILE_SYMBOL) && (LA312_0 <= DATETIME_SYMBOL)) || LA312_0 == DATE_SYMBOL || ((LA312_0 >= DAY_SYMBOL) && (LA312_0 <= DEALLOCATE_SYMBOL)) || LA312_0 == DEFAULT_AUTH_SYMBOL || LA312_0 == DEFINER_SYMBOL || LA312_0 == DELAY_KEY_WRITE_SYMBOL || LA312_0 == DES_KEY_FILE_SYMBOL || LA312_0 == DIAGNOSTICS_SYMBOL || ((LA312_0 >= DIRECTORY_SYMBOL) && (LA312_0 <= DISK_SYMBOL)) || LA312_0 == DO_SYMBOL || ((LA312_0 >= DUMPFILE_SYMBOL) && (LA312_0 <= DYNAMIC_SYMBOL)) || LA312_0 == ENABLE_SYMBOL || LA312_0 == ENDS_SYMBOL || ((LA312_0 >= END_SYMBOL) && (LA312_0 <= ENUM_SYMBOL)) || ((LA312_0 >= ERRORS_SYMBOL) && (LA312_0 <= ERROR_SYMBOL)) || ((LA312_0 >= ESCAPE_SYMBOL) && (LA312_0 <= EVERY_SYMBOL)) || LA312_0 == EXECUTE_SYMBOL || LA312_0 == EXPANSION_SYMBOL || LA312_0 == EXPORT_SYMBOL || ((LA312_0 >= EXTENDED_SYMBOL) && (LA312_0 <= EXTENT_SIZE_SYMBOL)) || ((LA312_0 >= FAST_SYMBOL) && (LA312_0 <= FAULTS_SYMBOL)) || ((LA312_0 >= FILE_SYMBOL) && (LA312_0 <= FIXED_SYMBOL)) || LA312_0 == FLUSH_SYMBOL || LA312_0 == FORMAT_SYMBOL || LA312_0 == FOUND_SYMBOL || LA312_0 == FULL_SYMBOL || ((LA312_0 >= FUNCTION_SYMBOL) && (LA312_0 <= GET_FORMAT_SYMBOL)) || ((LA312_0 >= GLOBAL_SYMBOL) && (LA312_0 <= GRANTS_SYMBOL)) || ((LA312_0 >= HANDLER_SYMBOL) && (LA312_0 <= HASH_SYMBOL)) || LA312_0 == HELP_SYMBOL || ((LA312_0 >= HOSTS_SYMBOL) && (LA312_0 <= HOST_SYMBOL)) || ((LA312_0 >= HOUR_SYMBOL) && (LA312_0 <= IDENTIFIED_SYMBOL)) || LA312_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA312_0 >= IMPORT_SYMBOL) && (LA312_0 <= INDEXES_SYMBOL)) || LA312_0 == INITIAL_SIZE_SYMBOL || LA312_0 == INNODB_SYMBOL || LA312_0 == INSERT_METHOD_SYMBOL || LA312_0 == INSTALL_SYMBOL || LA312_0 == INVOKER_SYMBOL || LA312_0 == IO_SYMBOL || ((LA312_0 >= IPC_SYMBOL) && (LA312_0 <= ISSUER_SYMBOL)) || LA312_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA312_0 >= LANGUAGE_SYMBOL) && (LA312_0 <= LAST_SYMBOL)) || LA312_0 == LEAVES_SYMBOL || LA312_0 == LESS_SYMBOL || LA312_0 == LEVEL_SYMBOL || LA312_0 == LINESTRING_SYMBOL || LA312_0 == LIST_SYMBOL || LA312_0 == LOCAL_SYMBOL || LA312_0 == LOCKS_SYMBOL || LA312_0 == LOGFILE_SYMBOL || LA312_0 == LOGS_SYMBOL || LA312_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA312_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA312_0 <= MASTER_SSL_SYMBOL)) || ((LA312_0 >= MASTER_SYMBOL) && (LA312_0 <= MASTER_USER_SYMBOL)) || ((LA312_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA312_0 <= MAX_SIZE_SYMBOL)) || ((LA312_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA312_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA312_0 >= MEDIUM_SYMBOL) && (LA312_0 <= MICROSECOND_SYMBOL)) || LA312_0 == MIGRATE_SYMBOL || ((LA312_0 >= MINUTE_SYMBOL) && (LA312_0 <= MIN_ROWS_SYMBOL)) || LA312_0 == MODE_SYMBOL || LA312_0 == MODIFY_SYMBOL || ((LA312_0 >= MONTH_SYMBOL) && (LA312_0 <= MULTILINESTRING_SYMBOL)) || ((LA312_0 >= MULTIPOINT_SYMBOL) && (LA312_0 <= MULTIPOLYGON_SYMBOL)) || ((LA312_0 >= MUTEX_SYMBOL) && (LA312_0 <= NATIONAL_SYMBOL)) || LA312_0 == NCHAR_SYMBOL || LA312_0 == NDBCLUSTER_SYMBOL || ((LA312_0 >= NEW_SYMBOL) && (LA312_0 <= NONE_SYMBOL)) || ((LA312_0 >= NO_SYMBOL) && (LA312_0 <= NO_WAIT_SYMBOL)) || LA312_0 == NUMBER_SYMBOL || LA312_0 == NVARCHAR_SYMBOL || ((LA312_0 >= OFFSET_SYMBOL) && (LA312_0 <= ONE_SYMBOL)) || LA312_0 == OPEN_SYMBOL || LA312_0 == OPTIONS_SYMBOL || ((LA312_0 >= OWNER_SYMBOL) && (LA312_0 <= PAGE_SYMBOL)) || ((LA312_0 >= PARSER_SYMBOL) && (LA312_0 <= PARTITION_SYMBOL)) || ((LA312_0 >= PASSWORD_SYMBOL) && (LA312_0 <= PLUGIN_SYMBOL)) || ((LA312_0 >= POINT_SYMBOL) && (LA312_0 <= PORT_SYMBOL)) || ((LA312_0 >= PREPARE_SYMBOL) && (LA312_0 <= PREV_SYMBOL)) || LA312_0 == PRIVILEGES_SYMBOL || ((LA312_0 >= PROCESSLIST_SYMBOL) && (LA312_0 <= PROXY_SYMBOL)) || ((LA312_0 >= QUARTER_SYMBOL) && (LA312_0 <= QUICK_SYMBOL)) || LA312_0 == READ_ONLY_SYMBOL || ((LA312_0 >= REBUILD_SYMBOL) && (LA312_0 <= REDUNDANT_SYMBOL)) || ((LA312_0 >= RELAYLOG_SYMBOL) && (LA312_0 <= RELAY_THREAD_SYMBOL)) || ((LA312_0 >= RELOAD_SYMBOL) && (LA312_0 <= REMOVE_SYMBOL)) || ((LA312_0 >= REORGANIZE_SYMBOL) && (LA312_0 <= REPEATABLE_SYMBOL)) || LA312_0 == REPLICATION_SYMBOL || LA312_0 == RESET_SYMBOL || LA312_0 == RESTORE_SYMBOL || ((LA312_0 >= RESUME_SYMBOL) && (LA312_0 <= RETURNS_SYMBOL)) || LA312_0 == REVERSE_SYMBOL || ((LA312_0 >= ROLLBACK_SYMBOL) && (LA312_0 <= SCHEDULE_SYMBOL)) || LA312_0 == SCHEMA_NAME_SYMBOL || ((LA312_0 >= SECOND_SYMBOL) && (LA312_0 <= SECURITY_SYMBOL)) || ((LA312_0 >= SERIALIZABLE_SYMBOL) && (LA312_0 <= SERIAL_SYMBOL)) || ((LA312_0 >= SERVER_SYMBOL) && (LA312_0 <= SESSION_SYMBOL)) || LA312_0 == SHARE_SYMBOL || LA312_0 == SHUTDOWN_SYMBOL || ((LA312_0 >= SIGNED_SYMBOL) && (LA312_0 <= SIMPLE_SYMBOL)) || ((LA312_0 >= SLAVE_SYMBOL) && (LA312_0 <= SLOW_SYMBOL)) || ((LA312_0 >= SNAPSHOT_SYMBOL) && (LA312_0 <= SOURCE_SYMBOL)) || ((LA312_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA312_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA312_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA312_0 <= SQL_CACHE_SYMBOL)) || LA312_0 == SQL_NO_CACHE_SYMBOL || LA312_0 == SQL_THREAD_SYMBOL || ((LA312_0 >= STARTS_SYMBOL) && (LA312_0 <= STATUS_SYMBOL)) || ((LA312_0 >= STOP_SYMBOL) && (LA312_0 <= STORAGE_SYMBOL)) || ((LA312_0 >= STRING_SYMBOL) && (LA312_0 <= SUBPARTITION_SYMBOL)) || ((LA312_0 >= SUPER_SYMBOL) && (LA312_0 <= SWITCHES_SYMBOL)) || ((LA312_0 >= TABLESPACE_SYMBOL) && (LA312_0 <= TABLE_NAME_SYMBOL)) || ((LA312_0 >= TEMPORARY_SYMBOL) && (LA312_0 <= TEMPTABLE_SYMBOL)) || ((LA312_0 >= TEXT_SYMBOL) && (LA312_0 <= THAN_SYMBOL)) || ((LA312_0 >= TIMESTAMP_ADD_SYMBOL) && (LA312_0 <= TIME_SYMBOL)) || ((LA312_0 >= TRANSACTION_SYMBOL) && (LA312_0 <= TRIGGERS_SYMBOL)) || ((LA312_0 >= TRUNCATE_SYMBOL) && (LA312_0 <= UDF_RETURNS_SYMBOL)) || ((LA312_0 >= UNCOMMITTED_SYMBOL) && (LA312_0 <= UNDEFINED_SYMBOL)) || ((LA312_0 >= UNDOFILE_SYMBOL) && (LA312_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA312_0 >= UNICODE_SYMBOL) && (LA312_0 <= UNINSTALL_SYMBOL)) || LA312_0 == UNKNOWN_SYMBOL || LA312_0 == UNTIL_SYMBOL || LA312_0 == UPGRADE_SYMBOL || ((LA312_0 >= USER_RESOURCES_SYMBOL) && (LA312_0 <= USE_FRM_SYMBOL)) || LA312_0 == VALUE_SYMBOL || LA312_0 == VARIABLES_SYMBOL || ((LA312_0 >= VIEW_SYMBOL) && (LA312_0 <= WEIGHT_STRING_SYMBOL)) || ((LA312_0 >= WORK_SYMBOL) && (LA312_0 <= WRAPPER_SYMBOL)) || LA312_0 == X509_SYMBOL || ((LA312_0 >= XA_SYMBOL) && (LA312_0 <= XML_SYMBOL)) || LA312_0 == YEAR_SYMBOL))
        	                {
        	                    alt312=1;
        	                }
        	            }
        	            switch (alt312)
        	            {
        	        	case 1:
        	        	    // MySQL.g:906:74: table_alias
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_table_alias_in_table_factor4662);
        	        	        table_alias913=table_alias(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletable_factorEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) { CREATE_stream_table_alias; stream_table_alias->add(stream_table_alias, table_alias913.tree, NULL); }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:906:87: ( index_hint_list )?
        	        {
        	            int alt313=2;
        	            switch ( LA(1) )
        	            {
        	                case FORCE_SYMBOL:
        	                case IGNORE_SYMBOL:
        	                case USE_SYMBOL:
        	                	{
        	                		alt313=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt313)
        	            {
        	        	case 1:
        	        	    // MySQL.g:906:87: index_hint_list
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_index_hint_list_in_table_factor4665);
        	        	        index_hint_list914=index_hint_list(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletable_factorEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) { CREATE_stream_index_hint_list; stream_index_hint_list->add(stream_index_hint_list, index_hint_list914.tree, NULL); }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        /* AST REWRITE
        	         * elements          : table_alias, identifier_list_with_parentheses, index_hint_list, PARTITION_SYMBOL, table_identifier
        	         * token labels      : 
        	         * rule labels       : retval
        	         * token list labels : 
        	         * rule list labels  : 
        	         */
        	        if ( BACKTRACKING==0 ) 

        	        {
        	        	pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_retval;

        	        	stream_retval=antlr3RewriteRuleSubtreeStreamNewAEE(ADAPTOR,  RECOGNIZER, (pANTLR3_UINT8)"token retval", retval.tree != NULL ? retval.tree : NULL);

        	        	root_0			    = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
        	        	retval.tree    = root_0;
        	        	// 907:3: -> ^( TABLE_REF_ID table_identifier ( PARTITION_SYMBOL identifier_list_with_parentheses )? ( table_alias )? ( index_hint_list )? )
        	        	{
        	        	    // MySQL.g:907:6: ^( TABLE_REF_ID table_identifier ( PARTITION_SYMBOL identifier_list_with_parentheses )? ( table_alias )? ( index_hint_list )? )
        	        	    {
        	        	        pANTLR3_BASE_TREE root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
        	        	        root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, 
        	        	        (pANTLR3_BASE_TREE)ADAPTOR->createTypeText(ADAPTOR, TABLE_REF_ID, (pANTLR3_UINT8)"TABLE_REF_ID")
        	        	        , root_1));

        	        	        ADAPTOR->addChild(ADAPTOR, root_1, stream_table_identifier == NULL ? NULL : stream_table_identifier->nextTree(stream_table_identifier));

        	        	        // MySQL.g:907:38: ( PARTITION_SYMBOL identifier_list_with_parentheses )?
        	        	        {
        	        	        	if ( (stream_identifier_list_with_parentheses != NULL && stream_identifier_list_with_parentheses->hasNext(stream_identifier_list_with_parentheses)) || (stream_PARTITION_SYMBOL != NULL && stream_PARTITION_SYMBOL->hasNext(stream_PARTITION_SYMBOL))  )
        	        	        	{
        	        	        		ADAPTOR->addChild(ADAPTOR, root_1, 
        	        	        		stream_PARTITION_SYMBOL == NULL ? NULL : stream_PARTITION_SYMBOL->nextNode(stream_PARTITION_SYMBOL)
        	        	        		);

        	        	        		ADAPTOR->addChild(ADAPTOR, root_1, stream_identifier_list_with_parentheses == NULL ? NULL : stream_identifier_list_with_parentheses->nextTree(stream_identifier_list_with_parentheses));

        	        	        	}
        	        	        	if ( stream_identifier_list_with_parentheses != NULL) stream_identifier_list_with_parentheses->reset(stream_identifier_list_with_parentheses);
        	        	        	if ( stream_PARTITION_SYMBOL != NULL) stream_PARTITION_SYMBOL->reset(stream_PARTITION_SYMBOL);

        	        	        }

        	        	        // MySQL.g:907:91: ( table_alias )?
        	        	        {
        	        	        	if ( (stream_table_alias != NULL && stream_table_alias->hasNext(stream_table_alias))  )
        	        	        	{
        	        	        		ADAPTOR->addChild(ADAPTOR, root_1, stream_table_alias == NULL ? NULL : stream_table_alias->nextTree(stream_table_alias));

        	        	        	}
        	        	        	if ( stream_table_alias != NULL) stream_table_alias->reset(stream_table_alias);

        	        	        }

        	        	        // MySQL.g:907:104: ( index_hint_list )?
        	        	        {
        	        	        	if ( (stream_index_hint_list != NULL && stream_index_hint_list->hasNext(stream_index_hint_list))  )
        	        	        	{
        	        	        		ADAPTOR->addChild(ADAPTOR, root_1, stream_index_hint_list == NULL ? NULL : stream_index_hint_list->nextTree(stream_index_hint_list));

        	        	        	}
        	        	        	if ( stream_index_hint_list != NULL) stream_index_hint_list->reset(stream_index_hint_list);

        	        	        }

        	        	        ADAPTOR->addChild(ADAPTOR, root_0, root_1);
        	        	    }

        	        	}


        	        	retval.tree = root_0; // set result root
        	        	if (stream_retval != NULL) stream_retval->free(stream_retval);


        	        }
        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruletable_factorEx; /* Prevent compiler warnings */
    ruletable_factorEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
        if (stream_PARTITION_SYMBOL != NULL) stream_PARTITION_SYMBOL->free(stream_PARTITION_SYMBOL);
        if (stream_table_identifier != NULL) stream_table_identifier->free(stream_table_identifier);
        if (stream_index_hint_list != NULL) stream_index_hint_list->free(stream_index_hint_list);
        if (stream_table_alias != NULL) stream_table_alias->free(stream_table_alias);
        if (stream_identifier_list_with_parentheses != NULL) stream_identifier_list_with_parentheses->free(stream_identifier_list_with_parentheses);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end table_factor */

/**
 * $ANTLR start table_identifier
 * MySQL.g:910:1: table_identifier : ( identifier ( options {greedy=true; } : DOT_SYMBOL identifier )? | DOT_SYMBOL identifier );
 */
static MySQLParser_table_identifier_return
table_identifier(pMySQLParser ctx)
{
    MySQLParser_table_identifier_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    DOT_SYMBOL916;
    pANTLR3_COMMON_TOKEN    DOT_SYMBOL918;
    MySQLParser_identifier_return identifier915;
    #undef	RETURN_TYPE_identifier915
    #define	RETURN_TYPE_identifier915 MySQLParser_identifier_return

    MySQLParser_identifier_return identifier917;
    #undef	RETURN_TYPE_identifier917
    #define	RETURN_TYPE_identifier917 MySQLParser_identifier_return

    MySQLParser_identifier_return identifier919;
    #undef	RETURN_TYPE_identifier919
    #define	RETURN_TYPE_identifier919 MySQLParser_identifier_return

    pANTLR3_BASE_TREE DOT_SYMBOL916_tree;
    pANTLR3_BASE_TREE DOT_SYMBOL918_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DOT_SYMBOL916       = NULL;
    DOT_SYMBOL918       = NULL;
    identifier915.tree = NULL;

    identifier917.tree = NULL;

    identifier919.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DOT_SYMBOL916_tree   = NULL;
    DOT_SYMBOL918_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:910:17: ( identifier ( options {greedy=true; } : DOT_SYMBOL identifier )? | DOT_SYMBOL identifier )

            ANTLR3_UINT32 alt316;

            alt316=2;

            {
                int LA316_0 = LA(1);
                if ( (LA316_0 == BACK_TICK_QUOTED_ID || LA316_0 == IDENTIFIER))
                {
                    alt316=1;
                }
                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA316_0 == DOUBLE_QUOTED_TEXT))
                {
                    alt316=1;
                }
                else if ( (((LA316_0 >= ACTION_SYMBOL) && (LA316_0 <= ADDDATE_SYMBOL)) || ((LA316_0 >= AFTER_SYMBOL) && (LA316_0 <= ALGORITHM_SYMBOL)) || LA316_0 == ANALYZE_SYMBOL || ((LA316_0 >= ANY_SYMBOL) && (LA316_0 <= ASCII_SYMBOL)) || ((LA316_0 >= AT_SYMBOL) && (LA316_0 <= BACKUP_SYMBOL)) || LA316_0 == BEGIN_SYMBOL || LA316_0 == BINLOG_SYMBOL || LA316_0 == BIT_SYMBOL || ((LA316_0 >= BLOCK_SYMBOL) && (LA316_0 <= BOOL_SYMBOL)) || ((LA316_0 >= BTREE_SYMBOL) && (LA316_0 <= BYTE_SYMBOL)) || LA316_0 == CACHE_SYMBOL || LA316_0 == CASCADED_SYMBOL || ((LA316_0 >= CATALOG_NAME_SYMBOL) && (LA316_0 <= CHANGED_SYMBOL)) || LA316_0 == CHARSET_SYMBOL || LA316_0 == CHECKSUM_SYMBOL || ((LA316_0 >= CIPHER_SYMBOL) && (LA316_0 <= CLIENT_SYMBOL)) || ((LA316_0 >= CLOSE_SYMBOL) && (LA316_0 <= CODE_SYMBOL)) || LA316_0 == COLLATION_SYMBOL || ((LA316_0 >= COLUMNS_SYMBOL) && (LA316_0 <= COLUMN_NAME_SYMBOL)) || ((LA316_0 >= COMMENT_SYMBOL) && (LA316_0 <= COMPRESSED_SYMBOL)) || LA316_0 == CONCURRENT_SYMBOL || ((LA316_0 >= CONNECTION_SYMBOL) && (LA316_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA316_0 >= CONTAINS_SYMBOL) && (LA316_0 <= CONTEXT_SYMBOL)) || LA316_0 == CONTRIBUTORS_SYMBOL || LA316_0 == CPU_SYMBOL || LA316_0 == CUBE_SYMBOL || LA316_0 == CURRENT_SYMBOL || LA316_0 == CURSOR_NAME_SYMBOL || ((LA316_0 >= DATAFILE_SYMBOL) && (LA316_0 <= DATETIME_SYMBOL)) || LA316_0 == DATE_SYMBOL || ((LA316_0 >= DAY_SYMBOL) && (LA316_0 <= DEALLOCATE_SYMBOL)) || LA316_0 == DEFAULT_AUTH_SYMBOL || LA316_0 == DEFINER_SYMBOL || LA316_0 == DELAY_KEY_WRITE_SYMBOL || LA316_0 == DES_KEY_FILE_SYMBOL || LA316_0 == DIAGNOSTICS_SYMBOL || ((LA316_0 >= DIRECTORY_SYMBOL) && (LA316_0 <= DISK_SYMBOL)) || LA316_0 == DO_SYMBOL || ((LA316_0 >= DUMPFILE_SYMBOL) && (LA316_0 <= DYNAMIC_SYMBOL)) || LA316_0 == ENABLE_SYMBOL || LA316_0 == ENDS_SYMBOL || ((LA316_0 >= END_SYMBOL) && (LA316_0 <= ENUM_SYMBOL)) || ((LA316_0 >= ERRORS_SYMBOL) && (LA316_0 <= ERROR_SYMBOL)) || ((LA316_0 >= ESCAPE_SYMBOL) && (LA316_0 <= EVERY_SYMBOL)) || LA316_0 == EXECUTE_SYMBOL || LA316_0 == EXPANSION_SYMBOL || LA316_0 == EXPORT_SYMBOL || ((LA316_0 >= EXTENDED_SYMBOL) && (LA316_0 <= EXTENT_SIZE_SYMBOL)) || ((LA316_0 >= FAST_SYMBOL) && (LA316_0 <= FAULTS_SYMBOL)) || ((LA316_0 >= FILE_SYMBOL) && (LA316_0 <= FIXED_SYMBOL)) || LA316_0 == FLUSH_SYMBOL || LA316_0 == FORMAT_SYMBOL || LA316_0 == FOUND_SYMBOL || LA316_0 == FULL_SYMBOL || ((LA316_0 >= FUNCTION_SYMBOL) && (LA316_0 <= GET_FORMAT_SYMBOL)) || ((LA316_0 >= GLOBAL_SYMBOL) && (LA316_0 <= GRANTS_SYMBOL)) || ((LA316_0 >= HANDLER_SYMBOL) && (LA316_0 <= HASH_SYMBOL)) || LA316_0 == HELP_SYMBOL || ((LA316_0 >= HOSTS_SYMBOL) && (LA316_0 <= HOST_SYMBOL)) || ((LA316_0 >= HOUR_SYMBOL) && (LA316_0 <= IDENTIFIED_SYMBOL)) || LA316_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA316_0 >= IMPORT_SYMBOL) && (LA316_0 <= INDEXES_SYMBOL)) || LA316_0 == INITIAL_SIZE_SYMBOL || LA316_0 == INNODB_SYMBOL || LA316_0 == INSERT_METHOD_SYMBOL || LA316_0 == INSTALL_SYMBOL || LA316_0 == INVOKER_SYMBOL || LA316_0 == IO_SYMBOL || ((LA316_0 >= IPC_SYMBOL) && (LA316_0 <= ISSUER_SYMBOL)) || LA316_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA316_0 >= LANGUAGE_SYMBOL) && (LA316_0 <= LAST_SYMBOL)) || LA316_0 == LEAVES_SYMBOL || LA316_0 == LESS_SYMBOL || LA316_0 == LEVEL_SYMBOL || LA316_0 == LINESTRING_SYMBOL || LA316_0 == LIST_SYMBOL || LA316_0 == LOCAL_SYMBOL || LA316_0 == LOCKS_SYMBOL || LA316_0 == LOGFILE_SYMBOL || LA316_0 == LOGS_SYMBOL || LA316_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA316_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA316_0 <= MASTER_SSL_SYMBOL)) || ((LA316_0 >= MASTER_SYMBOL) && (LA316_0 <= MASTER_USER_SYMBOL)) || ((LA316_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA316_0 <= MAX_SIZE_SYMBOL)) || ((LA316_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA316_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA316_0 >= MEDIUM_SYMBOL) && (LA316_0 <= MICROSECOND_SYMBOL)) || LA316_0 == MIGRATE_SYMBOL || ((LA316_0 >= MINUTE_SYMBOL) && (LA316_0 <= MIN_ROWS_SYMBOL)) || LA316_0 == MODE_SYMBOL || LA316_0 == MODIFY_SYMBOL || ((LA316_0 >= MONTH_SYMBOL) && (LA316_0 <= MULTILINESTRING_SYMBOL)) || ((LA316_0 >= MULTIPOINT_SYMBOL) && (LA316_0 <= MULTIPOLYGON_SYMBOL)) || ((LA316_0 >= MUTEX_SYMBOL) && (LA316_0 <= NATIONAL_SYMBOL)) || LA316_0 == NCHAR_SYMBOL || LA316_0 == NDBCLUSTER_SYMBOL || ((LA316_0 >= NEW_SYMBOL) && (LA316_0 <= NONE_SYMBOL)) || ((LA316_0 >= NO_SYMBOL) && (LA316_0 <= NO_WAIT_SYMBOL)) || LA316_0 == NUMBER_SYMBOL || LA316_0 == NVARCHAR_SYMBOL || ((LA316_0 >= OFFSET_SYMBOL) && (LA316_0 <= ONE_SYMBOL)) || LA316_0 == OPEN_SYMBOL || LA316_0 == OPTIONS_SYMBOL || ((LA316_0 >= OWNER_SYMBOL) && (LA316_0 <= PAGE_SYMBOL)) || ((LA316_0 >= PARSER_SYMBOL) && (LA316_0 <= PARTITION_SYMBOL)) || ((LA316_0 >= PASSWORD_SYMBOL) && (LA316_0 <= PLUGIN_SYMBOL)) || ((LA316_0 >= POINT_SYMBOL) && (LA316_0 <= PORT_SYMBOL)) || ((LA316_0 >= PREPARE_SYMBOL) && (LA316_0 <= PREV_SYMBOL)) || LA316_0 == PRIVILEGES_SYMBOL || ((LA316_0 >= PROCESSLIST_SYMBOL) && (LA316_0 <= PROXY_SYMBOL)) || ((LA316_0 >= QUARTER_SYMBOL) && (LA316_0 <= QUICK_SYMBOL)) || LA316_0 == READ_ONLY_SYMBOL || ((LA316_0 >= REBUILD_SYMBOL) && (LA316_0 <= REDUNDANT_SYMBOL)) || ((LA316_0 >= RELAYLOG_SYMBOL) && (LA316_0 <= RELAY_THREAD_SYMBOL)) || ((LA316_0 >= RELOAD_SYMBOL) && (LA316_0 <= REMOVE_SYMBOL)) || ((LA316_0 >= REORGANIZE_SYMBOL) && (LA316_0 <= REPEATABLE_SYMBOL)) || LA316_0 == REPLICATION_SYMBOL || LA316_0 == RESET_SYMBOL || LA316_0 == RESTORE_SYMBOL || ((LA316_0 >= RESUME_SYMBOL) && (LA316_0 <= RETURNS_SYMBOL)) || LA316_0 == REVERSE_SYMBOL || ((LA316_0 >= ROLLBACK_SYMBOL) && (LA316_0 <= SCHEDULE_SYMBOL)) || LA316_0 == SCHEMA_NAME_SYMBOL || ((LA316_0 >= SECOND_SYMBOL) && (LA316_0 <= SECURITY_SYMBOL)) || ((LA316_0 >= SERIALIZABLE_SYMBOL) && (LA316_0 <= SERIAL_SYMBOL)) || ((LA316_0 >= SERVER_SYMBOL) && (LA316_0 <= SESSION_SYMBOL)) || LA316_0 == SHARE_SYMBOL || LA316_0 == SHUTDOWN_SYMBOL || ((LA316_0 >= SIGNED_SYMBOL) && (LA316_0 <= SIMPLE_SYMBOL)) || ((LA316_0 >= SLAVE_SYMBOL) && (LA316_0 <= SLOW_SYMBOL)) || ((LA316_0 >= SNAPSHOT_SYMBOL) && (LA316_0 <= SOURCE_SYMBOL)) || ((LA316_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA316_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA316_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA316_0 <= SQL_CACHE_SYMBOL)) || LA316_0 == SQL_NO_CACHE_SYMBOL || LA316_0 == SQL_THREAD_SYMBOL || ((LA316_0 >= STARTS_SYMBOL) && (LA316_0 <= STATUS_SYMBOL)) || ((LA316_0 >= STOP_SYMBOL) && (LA316_0 <= STORAGE_SYMBOL)) || ((LA316_0 >= STRING_SYMBOL) && (LA316_0 <= SUBPARTITION_SYMBOL)) || ((LA316_0 >= SUPER_SYMBOL) && (LA316_0 <= SWITCHES_SYMBOL)) || ((LA316_0 >= TABLESPACE_SYMBOL) && (LA316_0 <= TABLE_NAME_SYMBOL)) || ((LA316_0 >= TEMPORARY_SYMBOL) && (LA316_0 <= TEMPTABLE_SYMBOL)) || ((LA316_0 >= TEXT_SYMBOL) && (LA316_0 <= THAN_SYMBOL)) || ((LA316_0 >= TIMESTAMP_ADD_SYMBOL) && (LA316_0 <= TIME_SYMBOL)) || ((LA316_0 >= TRANSACTION_SYMBOL) && (LA316_0 <= TRIGGERS_SYMBOL)) || ((LA316_0 >= TRUNCATE_SYMBOL) && (LA316_0 <= UDF_RETURNS_SYMBOL)) || ((LA316_0 >= UNCOMMITTED_SYMBOL) && (LA316_0 <= UNDEFINED_SYMBOL)) || ((LA316_0 >= UNDOFILE_SYMBOL) && (LA316_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA316_0 >= UNICODE_SYMBOL) && (LA316_0 <= UNINSTALL_SYMBOL)) || LA316_0 == UNKNOWN_SYMBOL || LA316_0 == UNTIL_SYMBOL || LA316_0 == UPGRADE_SYMBOL || ((LA316_0 >= USER_RESOURCES_SYMBOL) && (LA316_0 <= USE_FRM_SYMBOL)) || LA316_0 == VALUE_SYMBOL || LA316_0 == VARIABLES_SYMBOL || ((LA316_0 >= VIEW_SYMBOL) && (LA316_0 <= WEIGHT_STRING_SYMBOL)) || ((LA316_0 >= WORK_SYMBOL) && (LA316_0 <= WRAPPER_SYMBOL)) || LA316_0 == X509_SYMBOL || ((LA316_0 >= XA_SYMBOL) && (LA316_0 <= XML_SYMBOL)) || LA316_0 == YEAR_SYMBOL))
                {
                    alt316=1;
                }
                else if ( (LA316_0 == DOT_SYMBOL))
                {
                    alt316=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 316;
                    EXCEPTION->state        = 0;


                    goto ruletable_identifierEx;

                }
            }
            switch (alt316)
            {
        	case 1:
        	    // MySQL.g:913:2: identifier ( options {greedy=true; } : DOT_SYMBOL identifier )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_identifier_in_table_identifier4702);
        	        identifier915=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_identifierEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier915.tree);

        	        // MySQL.g:913:13: ( options {greedy=true; } : DOT_SYMBOL identifier )?
        	        {
        	            int alt315=2;
        	            switch ( LA(1) )
        	            {
        	                case DOT_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case IDENTIFIER:
        	                		    	{
        	                		    		alt315=1;
        	                		    	}
        	                		        break;
        	                		    case BACK_TICK_QUOTED_ID:
        	                		    	{
        	                		    		alt315=1;
        	                		    	}
        	                		        break;
        	                		    case DOUBLE_QUOTED_TEXT:
        	                		    	{
        	                		    		alt315=1;
        	                		    	}
        	                		        break;
        	                		    case ACTION_SYMBOL:
        	                		    case ADDDATE_SYMBOL:
        	                		    case AFTER_SYMBOL:
        	                		    case AGAINST_SYMBOL:
        	                		    case AGGREGATE_SYMBOL:
        	                		    case ALGORITHM_SYMBOL:
        	                		    case ANALYZE_SYMBOL:
        	                		    case ANY_SYMBOL:
        	                		    case AT_SYMBOL:
        	                		    case AUTHORS_SYMBOL:
        	                		    case AUTOEXTEND_SIZE_SYMBOL:
        	                		    case AUTO_INCREMENT_SYMBOL:
        	                		    case AVG_ROW_LENGTH_SYMBOL:
        	                		    case AVG_SYMBOL:
        	                		    case BINLOG_SYMBOL:
        	                		    case BIT_SYMBOL:
        	                		    case BLOCK_SYMBOL:
        	                		    case BOOLEAN_SYMBOL:
        	                		    case BOOL_SYMBOL:
        	                		    case BTREE_SYMBOL:
        	                		    case CASCADED_SYMBOL:
        	                		    case CATALOG_NAME_SYMBOL:
        	                		    case CHAIN_SYMBOL:
        	                		    case CHANGED_SYMBOL:
        	                		    case CIPHER_SYMBOL:
        	                		    case CLASS_ORIGIN_SYMBOL:
        	                		    case CLIENT_SYMBOL:
        	                		    case COALESCE_SYMBOL:
        	                		    case CODE_SYMBOL:
        	                		    case COLLATION_SYMBOL:
        	                		    case COLUMNS_SYMBOL:
        	                		    case COLUMN_FORMAT_SYMBOL:
        	                		    case COLUMN_NAME_SYMBOL:
        	                		    case COMMITTED_SYMBOL:
        	                		    case COMPACT_SYMBOL:
        	                		    case COMPLETION_SYMBOL:
        	                		    case COMPRESSED_SYMBOL:
        	                		    case CONCURRENT_SYMBOL:
        	                		    case CONNECTION_SYMBOL:
        	                		    case CONSISTENT_SYMBOL:
        	                		    case CONSTRAINT_CATALOG_SYMBOL:
        	                		    case CONSTRAINT_NAME_SYMBOL:
        	                		    case CONSTRAINT_SCHEMA_SYMBOL:
        	                		    case CONTEXT_SYMBOL:
        	                		    case CONTRIBUTORS_SYMBOL:
        	                		    case CPU_SYMBOL:
        	                		    case CUBE_SYMBOL:
        	                		    case CURRENT_SYMBOL:
        	                		    case CURSOR_NAME_SYMBOL:
        	                		    case DATAFILE_SYMBOL:
        	                		    case DATA_SYMBOL:
        	                		    case DATETIME_SYMBOL:
        	                		    case DATE_SYMBOL:
        	                		    case DAY_SYMBOL:
        	                		    case DEFAULT_AUTH_SYMBOL:
        	                		    case DEFINER_SYMBOL:
        	                		    case DELAY_KEY_WRITE_SYMBOL:
        	                		    case DES_KEY_FILE_SYMBOL:
        	                		    case DIAGNOSTICS_SYMBOL:
        	                		    case DIRECTORY_SYMBOL:
        	                		    case DISABLE_SYMBOL:
        	                		    case DISCARD_SYMBOL:
        	                		    case DISK_SYMBOL:
        	                		    case DUMPFILE_SYMBOL:
        	                		    case DUPLICATE_SYMBOL:
        	                		    case DYNAMIC_SYMBOL:
        	                		    case ENABLE_SYMBOL:
        	                		    case ENDS_SYMBOL:
        	                		    case ENGINES_SYMBOL:
        	                		    case ENGINE_SYMBOL:
        	                		    case ENUM_SYMBOL:
        	                		    case ERRORS_SYMBOL:
        	                		    case ERROR_SYMBOL:
        	                		    case ESCAPE_SYMBOL:
        	                		    case EVENTS_SYMBOL:
        	                		    case EVENT_SYMBOL:
        	                		    case EVERY_SYMBOL:
        	                		    case EXPANSION_SYMBOL:
        	                		    case EXPORT_SYMBOL:
        	                		    case EXTENDED_SYMBOL:
        	                		    case EXTENT_SIZE_SYMBOL:
        	                		    case FAST_SYMBOL:
        	                		    case FAULTS_SYMBOL:
        	                		    case FILE_SYMBOL:
        	                		    case FIRST_SYMBOL:
        	                		    case FIXED_SYMBOL:
        	                		    case FOUND_SYMBOL:
        	                		    case FULL_SYMBOL:
        	                		    case FUNCTION_SYMBOL:
        	                		    case GENERAL_SYMBOL:
        	                		    case GEOMETRYCOLLECTION_SYMBOL:
        	                		    case GEOMETRY_SYMBOL:
        	                		    case GET_FORMAT_SYMBOL:
        	                		    case GLOBAL_SYMBOL:
        	                		    case GRANTS_SYMBOL:
        	                		    case HASH_SYMBOL:
        	                		    case HOSTS_SYMBOL:
        	                		    case HOUR_SYMBOL:
        	                		    case IDENTIFIED_SYMBOL:
        	                		    case IGNORE_SERVER_IDS_SYMBOL:
        	                		    case IMPORT_SYMBOL:
        	                		    case INDEXES_SYMBOL:
        	                		    case INITIAL_SIZE_SYMBOL:
        	                		    case INNODB_SYMBOL:
        	                		    case INSERT_METHOD_SYMBOL:
        	                		    case INVOKER_SYMBOL:
        	                		    case IO_SYMBOL:
        	                		    case IPC_SYMBOL:
        	                		    case ISOLATION_SYMBOL:
        	                		    case ISSUER_SYMBOL:
        	                		    case KEY_BLOCK_SIZE_SYMBOL:
        	                		    case LAST_SYMBOL:
        	                		    case LEAVES_SYMBOL:
        	                		    case LESS_SYMBOL:
        	                		    case LEVEL_SYMBOL:
        	                		    case LINESTRING_SYMBOL:
        	                		    case LIST_SYMBOL:
        	                		    case LOCAL_SYMBOL:
        	                		    case LOCKS_SYMBOL:
        	                		    case LOGFILE_SYMBOL:
        	                		    case LOGS_SYMBOL:
        	                		    case MASTER_AUTO_POSITION_SYMBOL:
        	                		    case MASTER_CONNECT_RETRY_SYMBOL:
        	                		    case MASTER_DELAY_SYMBOL:
        	                		    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
        	                		    case MASTER_HOST_SYMBOL:
        	                		    case MASTER_LOG_FILE_SYMBOL:
        	                		    case MASTER_LOG_POS_SYMBOL:
        	                		    case MASTER_PASSWORD_SYMBOL:
        	                		    case MASTER_PORT_SYMBOL:
        	                		    case MASTER_RETRY_COUNT_SYMBOL:
        	                		    case MASTER_SERVER_ID_SYMBOL:
        	                		    case MASTER_SSL_CAPATH_SYMBOL:
        	                		    case MASTER_SSL_CA_SYMBOL:
        	                		    case MASTER_SSL_CERT_SYMBOL:
        	                		    case MASTER_SSL_CIPHER_SYMBOL:
        	                		    case MASTER_SSL_CRLPATH_SYMBOL:
        	                		    case MASTER_SSL_CRL_SYMBOL:
        	                		    case MASTER_SSL_KEY_SYMBOL:
        	                		    case MASTER_SSL_SYMBOL:
        	                		    case MASTER_SYMBOL:
        	                		    case MASTER_USER_SYMBOL:
        	                		    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
        	                		    case MAX_QUERIES_PER_HOUR_SYMBOL:
        	                		    case MAX_ROWS_SYMBOL:
        	                		    case MAX_SIZE_SYMBOL:
        	                		    case MAX_UPDATES_PER_HOUR_SYMBOL:
        	                		    case MAX_USER_CONNECTIONS_SYMBOL:
        	                		    case MEDIUM_SYMBOL:
        	                		    case MEMORY_SYMBOL:
        	                		    case MERGE_SYMBOL:
        	                		    case MESSAGE_TEXT_SYMBOL:
        	                		    case MICROSECOND_SYMBOL:
        	                		    case MIGRATE_SYMBOL:
        	                		    case MINUTE_SYMBOL:
        	                		    case MIN_ROWS_SYMBOL:
        	                		    case MODE_SYMBOL:
        	                		    case MODIFY_SYMBOL:
        	                		    case MONTH_SYMBOL:
        	                		    case MULTILINESTRING_SYMBOL:
        	                		    case MULTIPOINT_SYMBOL:
        	                		    case MULTIPOLYGON_SYMBOL:
        	                		    case MUTEX_SYMBOL:
        	                		    case MYSQL_ERRNO_SYMBOL:
        	                		    case NAMES_SYMBOL:
        	                		    case NAME_SYMBOL:
        	                		    case NATIONAL_SYMBOL:
        	                		    case NCHAR_SYMBOL:
        	                		    case NDBCLUSTER_SYMBOL:
        	                		    case NEW_SYMBOL:
        	                		    case NEXT_SYMBOL:
        	                		    case NODEGROUP_SYMBOL:
        	                		    case NONE_SYMBOL:
        	                		    case NO_WAIT_SYMBOL:
        	                		    case NUMBER_SYMBOL:
        	                		    case NVARCHAR_SYMBOL:
        	                		    case OFFSET_SYMBOL:
        	                		    case OLD_PASSWORD_SYMBOL:
        	                		    case ONE_SHOT_SYMBOL:
        	                		    case ONE_SYMBOL:
        	                		    case PACK_KEYS_SYMBOL:
        	                		    case PAGE_SYMBOL:
        	                		    case PARTIAL_SYMBOL:
        	                		    case PARTITIONING_SYMBOL:
        	                		    case PARTITIONS_SYMBOL:
        	                		    case PASSWORD_SYMBOL:
        	                		    case PHASE_SYMBOL:
        	                		    case PLUGINS_SYMBOL:
        	                		    case PLUGIN_DIR_SYMBOL:
        	                		    case PLUGIN_SYMBOL:
        	                		    case POINT_SYMBOL:
        	                		    case POLYGON_SYMBOL:
        	                		    case PRESERVE_SYMBOL:
        	                		    case PREV_SYMBOL:
        	                		    case PRIVILEGES_SYMBOL:
        	                		    case PROCESSLIST_SYMBOL:
        	                		    case PROCESS_SYMBOL:
        	                		    case PROFILES_SYMBOL:
        	                		    case PROFILE_SYMBOL:
        	                		    case PROXY_SYMBOL:
        	                		    case QUARTER_SYMBOL:
        	                		    case QUERY_SYMBOL:
        	                		    case QUICK_SYMBOL:
        	                		    case READ_ONLY_SYMBOL:
        	                		    case REBUILD_SYMBOL:
        	                		    case RECOVER_SYMBOL:
        	                		    case REDOFILE_SYMBOL:
        	                		    case REDO_BUFFER_SIZE_SYMBOL:
        	                		    case REDUNDANT_SYMBOL:
        	                		    case RELAYLOG_SYMBOL:
        	                		    case RELAY_LOG_FILE_SYMBOL:
        	                		    case RELAY_LOG_POS_SYMBOL:
        	                		    case RELAY_SYMBOL:
        	                		    case RELAY_THREAD_SYMBOL:
        	                		    case RELOAD_SYMBOL:
        	                		    case REORGANIZE_SYMBOL:
        	                		    case REPEATABLE_SYMBOL:
        	                		    case REPLICATION_SYMBOL:
        	                		    case RESUME_SYMBOL:
        	                		    case RETURNED_SQLSTATE_SYMBOL:
        	                		    case RETURNS_SYMBOL:
        	                		    case REVERSE_SYMBOL:
        	                		    case ROLLUP_SYMBOL:
        	                		    case ROUTINE_SYMBOL:
        	                		    case ROWS_SYMBOL:
        	                		    case ROW_COUNT_SYMBOL:
        	                		    case ROW_FORMAT_SYMBOL:
        	                		    case ROW_SYMBOL:
        	                		    case RTREE_SYMBOL:
        	                		    case SCHEDULE_SYMBOL:
        	                		    case SCHEMA_NAME_SYMBOL:
        	                		    case SECOND_SYMBOL:
        	                		    case SERIALIZABLE_SYMBOL:
        	                		    case SERIAL_SYMBOL:
        	                		    case SESSION_SYMBOL:
        	                		    case SHARE_SYMBOL:
        	                		    case SHUTDOWN_SYMBOL:
        	                		    case SIMPLE_SYMBOL:
        	                		    case SLOW_SYMBOL:
        	                		    case SNAPSHOT_SYMBOL:
        	                		    case SOUNDS_SYMBOL:
        	                		    case SOURCE_SYMBOL:
        	                		    case SQL_AFTER_GTIDS_SYMBOL:
        	                		    case SQL_AFTER_MTS_GAPS_SYMBOL:
        	                		    case SQL_BEFORE_GTIDS_SYMBOL:
        	                		    case SQL_BUFFER_RESULT_SYMBOL:
        	                		    case SQL_CACHE_SYMBOL:
        	                		    case SQL_NO_CACHE_SYMBOL:
        	                		    case SQL_THREAD_SYMBOL:
        	                		    case STARTS_SYMBOL:
        	                		    case STATS_AUTO_RECALC_SYMBOL:
        	                		    case STATS_PERSISTENT_SYMBOL:
        	                		    case STATS_SAMPLE_PAGES_SYMBOL:
        	                		    case STATUS_SYMBOL:
        	                		    case STORAGE_SYMBOL:
        	                		    case STRING_SYMBOL:
        	                		    case SUBCLASS_ORIGIN_SYMBOL:
        	                		    case SUBDATE_SYMBOL:
        	                		    case SUBJECT_SYMBOL:
        	                		    case SUBPARTITIONS_SYMBOL:
        	                		    case SUBPARTITION_SYMBOL:
        	                		    case SUPER_SYMBOL:
        	                		    case SUSPEND_SYMBOL:
        	                		    case SWAPS_SYMBOL:
        	                		    case SWITCHES_SYMBOL:
        	                		    case TABLESPACE_SYMBOL:
        	                		    case TABLES_SYMBOL:
        	                		    case TABLE_CHECKSUM_SYMBOL:
        	                		    case TABLE_NAME_SYMBOL:
        	                		    case TEMPORARY_SYMBOL:
        	                		    case TEMPTABLE_SYMBOL:
        	                		    case TEXT_SYMBOL:
        	                		    case THAN_SYMBOL:
        	                		    case TIMESTAMP_ADD_SYMBOL:
        	                		    case TIMESTAMP_DIFF_SYMBOL:
        	                		    case TIMESTAMP_SYMBOL:
        	                		    case TIME_SYMBOL:
        	                		    case TRANSACTION_SYMBOL:
        	                		    case TRIGGERS_SYMBOL:
        	                		    case TYPES_SYMBOL:
        	                		    case TYPE_SYMBOL:
        	                		    case UDF_RETURNS_SYMBOL:
        	                		    case UNCOMMITTED_SYMBOL:
        	                		    case UNDEFINED_SYMBOL:
        	                		    case UNDOFILE_SYMBOL:
        	                		    case UNDO_BUFFER_SIZE_SYMBOL:
        	                		    case UNKNOWN_SYMBOL:
        	                		    case UNTIL_SYMBOL:
        	                		    case USER_RESOURCES_SYMBOL:
        	                		    case USER_SYMBOL:
        	                		    case USE_FRM_SYMBOL:
        	                		    case VALUE_SYMBOL:
        	                		    case VARIABLES_SYMBOL:
        	                		    case VIEW_SYMBOL:
        	                		    case WAIT_SYMBOL:
        	                		    case WARNINGS_SYMBOL:
        	                		    case WEEK_SYMBOL:
        	                		    case WEIGHT_STRING_SYMBOL:
        	                		    case WORK_SYMBOL:
        	                		    case X509_SYMBOL:
        	                		    case XML_SYMBOL:
        	                		    case YEAR_SYMBOL:
        	                		    	{
        	                		    		alt315=1;
        	                		    	}
        	                		        break;
        	                		    case ASCII_SYMBOL:
        	                		    case BACKUP_SYMBOL:
        	                		    case BEGIN_SYMBOL:
        	                		    case BYTE_SYMBOL:
        	                		    case CACHE_SYMBOL:
        	                		    case CHARSET_SYMBOL:
        	                		    case CHECKSUM_SYMBOL:
        	                		    case CLOSE_SYMBOL:
        	                		    case COMMENT_SYMBOL:
        	                		    case COMMIT_SYMBOL:
        	                		    case CONTAINS_SYMBOL:
        	                		    case DEALLOCATE_SYMBOL:
        	                		    case DO_SYMBOL:
        	                		    case END_SYMBOL:
        	                		    case EXECUTE_SYMBOL:
        	                		    case FLUSH_SYMBOL:
        	                		    case FORMAT_SYMBOL:
        	                		    case HANDLER_SYMBOL:
        	                		    case HELP_SYMBOL:
        	                		    case HOST_SYMBOL:
        	                		    case INSTALL_SYMBOL:
        	                		    case LANGUAGE_SYMBOL:
        	                		    case NO_SYMBOL:
        	                		    case OPEN_SYMBOL:
        	                		    case OPTIONS_SYMBOL:
        	                		    case OWNER_SYMBOL:
        	                		    case PARSER_SYMBOL:
        	                		    case PARTITION_SYMBOL:
        	                		    case PORT_SYMBOL:
        	                		    case PREPARE_SYMBOL:
        	                		    case REMOVE_SYMBOL:
        	                		    case REPAIR_SYMBOL:
        	                		    case RESET_SYMBOL:
        	                		    case RESTORE_SYMBOL:
        	                		    case ROLLBACK_SYMBOL:
        	                		    case SAVEPOINT_SYMBOL:
        	                		    case SECURITY_SYMBOL:
        	                		    case SERVER_SYMBOL:
        	                		    case SIGNED_SYMBOL:
        	                		    case SLAVE_SYMBOL:
        	                		    case SOCKET_SYMBOL:
        	                		    case SONAME_SYMBOL:
        	                		    case START_SYMBOL:
        	                		    case STOP_SYMBOL:
        	                		    case TRUNCATE_SYMBOL:
        	                		    case UNICODE_SYMBOL:
        	                		    case UNINSTALL_SYMBOL:
        	                		    case UPGRADE_SYMBOL:
        	                		    case WRAPPER_SYMBOL:
        	                		    case XA_SYMBOL:
        	                		    	{
        	                		    		alt315=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt315)
        	            {
        	        	case 1:
        	        	    // MySQL.g:913:43: DOT_SYMBOL identifier
        	        	    {
        	        	        DOT_SYMBOL916 = (pANTLR3_COMMON_TOKEN) MATCHT(DOT_SYMBOL, &FOLLOW_DOT_SYMBOL_in_table_identifier4718);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletable_identifierEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DOT_SYMBOL916_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOT_SYMBOL916));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DOT_SYMBOL916_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_identifier_in_table_identifier4720);
        	        	        identifier917=identifier(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletable_identifierEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier917.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:914:4: DOT_SYMBOL identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DOT_SYMBOL918 = (pANTLR3_COMMON_TOKEN) MATCHT(DOT_SYMBOL, &FOLLOW_DOT_SYMBOL_in_table_identifier4727);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_identifierEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DOT_SYMBOL918_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOT_SYMBOL918));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DOT_SYMBOL918_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_identifier_in_table_identifier4729);
        	        identifier919=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_identifierEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier919.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruletable_identifierEx; /* Prevent compiler warnings */
    ruletable_identifierEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end table_identifier */

/**
 * $ANTLR start join_table
 * MySQL.g:917:1: join_table : ( ( INNER_SYMBOL | CROSS_SYMBOL )? JOIN_SYMBOL table_reference ( options {greedy=true; } : join_condition )? | STRAIGHT_JOIN_SYMBOL table_factor ( options {greedy=true; } : ON_SYMBOL expression )? | ( LEFT_SYMBOL | RIGHT_SYMBOL ) ( OUTER_SYMBOL )? JOIN_SYMBOL table_reference join_condition | NATURAL_SYMBOL ( ( LEFT_SYMBOL | RIGHT_SYMBOL ) ( OUTER_SYMBOL )? )? JOIN_SYMBOL table_factor );
 */
static MySQLParser_join_table_return
join_table(pMySQLParser ctx)
{
    MySQLParser_join_table_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set920;
    pANTLR3_COMMON_TOKEN    JOIN_SYMBOL921;
    pANTLR3_COMMON_TOKEN    STRAIGHT_JOIN_SYMBOL924;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL926;
    pANTLR3_COMMON_TOKEN    set928;
    pANTLR3_COMMON_TOKEN    OUTER_SYMBOL929;
    pANTLR3_COMMON_TOKEN    JOIN_SYMBOL930;
    pANTLR3_COMMON_TOKEN    NATURAL_SYMBOL933;
    pANTLR3_COMMON_TOKEN    set934;
    pANTLR3_COMMON_TOKEN    OUTER_SYMBOL935;
    pANTLR3_COMMON_TOKEN    JOIN_SYMBOL936;
    MySQLParser_table_reference_return table_reference922;
    #undef	RETURN_TYPE_table_reference922
    #define	RETURN_TYPE_table_reference922 MySQLParser_table_reference_return

    MySQLParser_join_condition_return join_condition923;
    #undef	RETURN_TYPE_join_condition923
    #define	RETURN_TYPE_join_condition923 MySQLParser_join_condition_return

    MySQLParser_table_factor_return table_factor925;
    #undef	RETURN_TYPE_table_factor925
    #define	RETURN_TYPE_table_factor925 MySQLParser_table_factor_return

    MySQLParser_expression_return expression927;
    #undef	RETURN_TYPE_expression927
    #define	RETURN_TYPE_expression927 MySQLParser_expression_return

    MySQLParser_table_reference_return table_reference931;
    #undef	RETURN_TYPE_table_reference931
    #define	RETURN_TYPE_table_reference931 MySQLParser_table_reference_return

    MySQLParser_join_condition_return join_condition932;
    #undef	RETURN_TYPE_join_condition932
    #define	RETURN_TYPE_join_condition932 MySQLParser_join_condition_return

    MySQLParser_table_factor_return table_factor937;
    #undef	RETURN_TYPE_table_factor937
    #define	RETURN_TYPE_table_factor937 MySQLParser_table_factor_return

    pANTLR3_BASE_TREE set920_tree;
    pANTLR3_BASE_TREE JOIN_SYMBOL921_tree;
    pANTLR3_BASE_TREE STRAIGHT_JOIN_SYMBOL924_tree;
    pANTLR3_BASE_TREE ON_SYMBOL926_tree;
    pANTLR3_BASE_TREE set928_tree;
    pANTLR3_BASE_TREE OUTER_SYMBOL929_tree;
    pANTLR3_BASE_TREE JOIN_SYMBOL930_tree;
    pANTLR3_BASE_TREE NATURAL_SYMBOL933_tree;
    pANTLR3_BASE_TREE set934_tree;
    pANTLR3_BASE_TREE OUTER_SYMBOL935_tree;
    pANTLR3_BASE_TREE JOIN_SYMBOL936_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set920       = NULL;
    JOIN_SYMBOL921       = NULL;
    STRAIGHT_JOIN_SYMBOL924       = NULL;
    ON_SYMBOL926       = NULL;
    set928       = NULL;
    OUTER_SYMBOL929       = NULL;
    JOIN_SYMBOL930       = NULL;
    NATURAL_SYMBOL933       = NULL;
    set934       = NULL;
    OUTER_SYMBOL935       = NULL;
    JOIN_SYMBOL936       = NULL;
    table_reference922.tree = NULL;

    join_condition923.tree = NULL;

    table_factor925.tree = NULL;

    expression927.tree = NULL;

    table_reference931.tree = NULL;

    join_condition932.tree = NULL;

    table_factor937.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set920_tree   = NULL;
    JOIN_SYMBOL921_tree   = NULL;
    STRAIGHT_JOIN_SYMBOL924_tree   = NULL;
    ON_SYMBOL926_tree   = NULL;
    set928_tree   = NULL;
    OUTER_SYMBOL929_tree   = NULL;
    JOIN_SYMBOL930_tree   = NULL;
    NATURAL_SYMBOL933_tree   = NULL;
    set934_tree   = NULL;
    OUTER_SYMBOL935_tree   = NULL;
    JOIN_SYMBOL936_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:917:11: ( ( INNER_SYMBOL | CROSS_SYMBOL )? JOIN_SYMBOL table_reference ( options {greedy=true; } : join_condition )? | STRAIGHT_JOIN_SYMBOL table_factor ( options {greedy=true; } : ON_SYMBOL expression )? | ( LEFT_SYMBOL | RIGHT_SYMBOL ) ( OUTER_SYMBOL )? JOIN_SYMBOL table_reference join_condition | NATURAL_SYMBOL ( ( LEFT_SYMBOL | RIGHT_SYMBOL ) ( OUTER_SYMBOL )? )? JOIN_SYMBOL table_factor )

            ANTLR3_UINT32 alt323;

            alt323=4;

            switch ( LA(1) )
            {
            case CROSS_SYMBOL:
            case INNER_SYMBOL:
            case JOIN_SYMBOL:
            	{
            		alt323=1;
            	}
                break;
            case STRAIGHT_JOIN_SYMBOL:
            	{
            		alt323=2;
            	}
                break;
            case LEFT_SYMBOL:
            case RIGHT_SYMBOL:
            	{
            		alt323=3;
            	}
                break;
            case NATURAL_SYMBOL:
            	{
            		alt323=4;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 323;
                EXCEPTION->state        = 0;


                goto rulejoin_tableEx;

            }

            switch (alt323)
            {
        	case 1:
        	    // MySQL.g:918:2: ( INNER_SYMBOL | CROSS_SYMBOL )? JOIN_SYMBOL table_reference ( options {greedy=true; } : join_condition )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:918:2: ( INNER_SYMBOL | CROSS_SYMBOL )?
        	        {
        	            int alt317=2;
        	            switch ( LA(1) )
        	            {
        	                case CROSS_SYMBOL:
        	                case INNER_SYMBOL:
        	                	{
        	                		alt317=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt317)
        	            {
        	        	case 1:
        	        	    // MySQL.g:
        	        	    {
        	        	        set920=(pANTLR3_COMMON_TOKEN)LT(1);

        	        	        if ( LA(1) == CROSS_SYMBOL || LA(1) == INNER_SYMBOL )
        	        	        {
        	        	            CONSUME();
        	        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set920))
        	        	            );
        	        	            PERRORRECOVERY=ANTLR3_FALSE;
        	        	            FAILEDFLAG=ANTLR3_FALSE;

        	        	        }
        	        	        else
        	        	        {
        	        	            if (BACKTRACKING>0)
        	        	            {
        	        	                FAILEDFLAG = ANTLR3_TRUE;
        	        	                return retval;
        	        	            }

        	        	            CONSTRUCTEX();
        	        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
        	        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
        	        	            EXCEPTION->expectingSet = NULL;

        	        	            goto rulejoin_tableEx;
        	        	        }


        	        	    }
        	        	    break;

        	            }
        	        }

        	        JOIN_SYMBOL921 = (pANTLR3_COMMON_TOKEN) MATCHT(JOIN_SYMBOL, &FOLLOW_JOIN_SYMBOL_in_join_table4747);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejoin_tableEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        JOIN_SYMBOL921_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, JOIN_SYMBOL921));
        	        ADAPTOR->addChild(ADAPTOR, root_0, JOIN_SYMBOL921_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_table_reference_in_join_table4749);
        	        table_reference922=table_reference(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejoin_tableEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_reference922.tree);

        	        // MySQL.g:918:61: ( options {greedy=true; } : join_condition )?
        	        {
        	            int alt318=2;
        	            switch ( LA(1) )
        	            {
        	                case ON_SYMBOL:
        	                	{
        	                		alt318=1;
        	                	}
        	                    break;
        	                case USING_SYMBOL:
        	                	{
        	                		alt318=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt318)
        	            {
        	        	case 1:
        	        	    // MySQL.g:918:89: join_condition
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_join_condition_in_join_table4763);
        	        	        join_condition923=join_condition(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulejoin_tableEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, join_condition923.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:919:4: STRAIGHT_JOIN_SYMBOL table_factor ( options {greedy=true; } : ON_SYMBOL expression )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        STRAIGHT_JOIN_SYMBOL924 = (pANTLR3_COMMON_TOKEN) MATCHT(STRAIGHT_JOIN_SYMBOL, &FOLLOW_STRAIGHT_JOIN_SYMBOL_in_join_table4770);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejoin_tableEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        STRAIGHT_JOIN_SYMBOL924_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STRAIGHT_JOIN_SYMBOL924));
        	        ADAPTOR->addChild(ADAPTOR, root_0, STRAIGHT_JOIN_SYMBOL924_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_table_factor_in_join_table4772);
        	        table_factor925=table_factor(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejoin_tableEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_factor925.tree);

        	        // MySQL.g:919:38: ( options {greedy=true; } : ON_SYMBOL expression )?
        	        {
        	            int alt319=2;
        	            switch ( LA(1) )
        	            {
        	                case ON_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case DUPLICATE_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case NOT_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case BITWISE_NOT_OPERATOR:
        	                		    case MINUS_OPERATOR:
        	                		    case PLUS_OPERATOR:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case LOGICAL_NOT_OPERATOR:
        	                		    case NOT2_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case INTERVAL_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case DATE_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case TIME_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case TIMESTAMP_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case NCHAR_TEXT:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case UNDERSCORE_CHARSET:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case SINGLE_QUOTED_TEXT:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case DOUBLE_QUOTED_TEXT:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case FLOAT:
        	                		    case INTEGER:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case HEXNUMBER:
        	                		    case HEXSTRING:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case FALSE_SYMBOL:
        	                		    case TRUE_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case BITNUMBER:
        	                		    case BITSTRING:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case NULL2_SYMBOL:
        	                		    case NULL_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case IDENTIFIER:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case BACK_TICK_QUOTED_ID:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case DAY_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case ASCII_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case DOT_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case CHAR_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case CURRENT_USER_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case HOUR_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case MINUTE_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case INSERT_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case LEFT_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case MONTH_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case SECOND_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case RIGHT_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case USER_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case TRIM_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case YEAR_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case VALUES_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case ADDDATE_SYMBOL:
        	                		    case SUBDATE_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case GET_FORMAT_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case CURDATE_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case CURTIME_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case DATE_ADD_SYMBOL:
        	                		    case DATE_SUB_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case EXTRACT_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case TIMESTAMP_ADD_SYMBOL:
        	                		    case TIMESTAMP_DIFF_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case NOW_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case POSITION_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case SUBSTRING_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case SYSDATE_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case COALESCE_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case UTC_DATE_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case UTC_TIME_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case UTC_TIMESTAMP_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case CHARSET_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case FORMAT_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case COLLATION_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case MICROSECOND_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case DATABASE_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case IF_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case TRUNCATE_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case OLD_PASSWORD_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case MOD_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case PASSWORD_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case QUARTER_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case REVERSE_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case REPEAT_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case REPLACE_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case ROW_COUNT_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case WEEK_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case CONTAINS_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case WEIGHT_STRING_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case GEOMETRYCOLLECTION_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case BACKUP_SYMBOL:
        	                		    case BEGIN_SYMBOL:
        	                		    case BYTE_SYMBOL:
        	                		    case CACHE_SYMBOL:
        	                		    case CHECKSUM_SYMBOL:
        	                		    case CLOSE_SYMBOL:
        	                		    case COMMENT_SYMBOL:
        	                		    case COMMIT_SYMBOL:
        	                		    case DEALLOCATE_SYMBOL:
        	                		    case DO_SYMBOL:
        	                		    case END_SYMBOL:
        	                		    case EXECUTE_SYMBOL:
        	                		    case FLUSH_SYMBOL:
        	                		    case HANDLER_SYMBOL:
        	                		    case HELP_SYMBOL:
        	                		    case HOST_SYMBOL:
        	                		    case INSTALL_SYMBOL:
        	                		    case LANGUAGE_SYMBOL:
        	                		    case NO_SYMBOL:
        	                		    case OPEN_SYMBOL:
        	                		    case OPTIONS_SYMBOL:
        	                		    case OWNER_SYMBOL:
        	                		    case PARSER_SYMBOL:
        	                		    case PARTITION_SYMBOL:
        	                		    case PORT_SYMBOL:
        	                		    case PREPARE_SYMBOL:
        	                		    case REMOVE_SYMBOL:
        	                		    case REPAIR_SYMBOL:
        	                		    case RESET_SYMBOL:
        	                		    case RESTORE_SYMBOL:
        	                		    case ROLLBACK_SYMBOL:
        	                		    case SAVEPOINT_SYMBOL:
        	                		    case SECURITY_SYMBOL:
        	                		    case SERVER_SYMBOL:
        	                		    case SIGNED_SYMBOL:
        	                		    case SLAVE_SYMBOL:
        	                		    case SOCKET_SYMBOL:
        	                		    case SONAME_SYMBOL:
        	                		    case START_SYMBOL:
        	                		    case STOP_SYMBOL:
        	                		    case UNICODE_SYMBOL:
        	                		    case UNINSTALL_SYMBOL:
        	                		    case UPGRADE_SYMBOL:
        	                		    case WRAPPER_SYMBOL:
        	                		    case XA_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case LINESTRING_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case MULTILINESTRING_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case MULTIPOINT_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case MULTIPOLYGON_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case POINT_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case POLYGON_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case AVG_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case ROW_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case BIT_AND_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case BIT_OR_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case BIT_XOR_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case COUNT_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case MIN_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case MAX_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case STD_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case VARIANCE_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case STDDEV_SAMP_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case VAR_SAMP_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case SUM_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case GROUP_CONCAT_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case PARAM_MARKER:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case AT_SIGN_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case AT_AT_SIGN_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case OPEN_PAR_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case EXISTS_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case ACTION_SYMBOL:
        	                		    case AFTER_SYMBOL:
        	                		    case AGAINST_SYMBOL:
        	                		    case AGGREGATE_SYMBOL:
        	                		    case ALGORITHM_SYMBOL:
        	                		    case ANALYZE_SYMBOL:
        	                		    case ANY_SYMBOL:
        	                		    case AT_SYMBOL:
        	                		    case AUTHORS_SYMBOL:
        	                		    case AUTOEXTEND_SIZE_SYMBOL:
        	                		    case AUTO_INCREMENT_SYMBOL:
        	                		    case AVG_ROW_LENGTH_SYMBOL:
        	                		    case BINLOG_SYMBOL:
        	                		    case BIT_SYMBOL:
        	                		    case BLOCK_SYMBOL:
        	                		    case BOOLEAN_SYMBOL:
        	                		    case BOOL_SYMBOL:
        	                		    case BTREE_SYMBOL:
        	                		    case CASCADED_SYMBOL:
        	                		    case CATALOG_NAME_SYMBOL:
        	                		    case CHAIN_SYMBOL:
        	                		    case CHANGED_SYMBOL:
        	                		    case CIPHER_SYMBOL:
        	                		    case CLASS_ORIGIN_SYMBOL:
        	                		    case CLIENT_SYMBOL:
        	                		    case CODE_SYMBOL:
        	                		    case COLUMNS_SYMBOL:
        	                		    case COLUMN_FORMAT_SYMBOL:
        	                		    case COLUMN_NAME_SYMBOL:
        	                		    case COMMITTED_SYMBOL:
        	                		    case COMPACT_SYMBOL:
        	                		    case COMPLETION_SYMBOL:
        	                		    case COMPRESSED_SYMBOL:
        	                		    case CONCURRENT_SYMBOL:
        	                		    case CONNECTION_SYMBOL:
        	                		    case CONSISTENT_SYMBOL:
        	                		    case CONSTRAINT_CATALOG_SYMBOL:
        	                		    case CONSTRAINT_NAME_SYMBOL:
        	                		    case CONSTRAINT_SCHEMA_SYMBOL:
        	                		    case CONTEXT_SYMBOL:
        	                		    case CONTRIBUTORS_SYMBOL:
        	                		    case CPU_SYMBOL:
        	                		    case CUBE_SYMBOL:
        	                		    case CURRENT_SYMBOL:
        	                		    case CURSOR_NAME_SYMBOL:
        	                		    case DATAFILE_SYMBOL:
        	                		    case DATA_SYMBOL:
        	                		    case DATETIME_SYMBOL:
        	                		    case DEFAULT_AUTH_SYMBOL:
        	                		    case DEFINER_SYMBOL:
        	                		    case DELAY_KEY_WRITE_SYMBOL:
        	                		    case DES_KEY_FILE_SYMBOL:
        	                		    case DIAGNOSTICS_SYMBOL:
        	                		    case DIRECTORY_SYMBOL:
        	                		    case DISABLE_SYMBOL:
        	                		    case DISCARD_SYMBOL:
        	                		    case DISK_SYMBOL:
        	                		    case DUMPFILE_SYMBOL:
        	                		    case DYNAMIC_SYMBOL:
        	                		    case ENABLE_SYMBOL:
        	                		    case ENDS_SYMBOL:
        	                		    case ENGINES_SYMBOL:
        	                		    case ENGINE_SYMBOL:
        	                		    case ENUM_SYMBOL:
        	                		    case ERRORS_SYMBOL:
        	                		    case ERROR_SYMBOL:
        	                		    case ESCAPE_SYMBOL:
        	                		    case EVENTS_SYMBOL:
        	                		    case EVENT_SYMBOL:
        	                		    case EVERY_SYMBOL:
        	                		    case EXPANSION_SYMBOL:
        	                		    case EXPORT_SYMBOL:
        	                		    case EXTENDED_SYMBOL:
        	                		    case EXTENT_SIZE_SYMBOL:
        	                		    case FAST_SYMBOL:
        	                		    case FAULTS_SYMBOL:
        	                		    case FILE_SYMBOL:
        	                		    case FIRST_SYMBOL:
        	                		    case FIXED_SYMBOL:
        	                		    case FOUND_SYMBOL:
        	                		    case FULL_SYMBOL:
        	                		    case FUNCTION_SYMBOL:
        	                		    case GENERAL_SYMBOL:
        	                		    case GEOMETRY_SYMBOL:
        	                		    case GLOBAL_SYMBOL:
        	                		    case GRANTS_SYMBOL:
        	                		    case HASH_SYMBOL:
        	                		    case HOSTS_SYMBOL:
        	                		    case IDENTIFIED_SYMBOL:
        	                		    case IGNORE_SERVER_IDS_SYMBOL:
        	                		    case IMPORT_SYMBOL:
        	                		    case INDEXES_SYMBOL:
        	                		    case INITIAL_SIZE_SYMBOL:
        	                		    case INNODB_SYMBOL:
        	                		    case INSERT_METHOD_SYMBOL:
        	                		    case INVOKER_SYMBOL:
        	                		    case IO_SYMBOL:
        	                		    case IPC_SYMBOL:
        	                		    case ISOLATION_SYMBOL:
        	                		    case ISSUER_SYMBOL:
        	                		    case KEY_BLOCK_SIZE_SYMBOL:
        	                		    case LAST_SYMBOL:
        	                		    case LEAVES_SYMBOL:
        	                		    case LESS_SYMBOL:
        	                		    case LEVEL_SYMBOL:
        	                		    case LIST_SYMBOL:
        	                		    case LOCAL_SYMBOL:
        	                		    case LOCKS_SYMBOL:
        	                		    case LOGFILE_SYMBOL:
        	                		    case LOGS_SYMBOL:
        	                		    case MASTER_AUTO_POSITION_SYMBOL:
        	                		    case MASTER_CONNECT_RETRY_SYMBOL:
        	                		    case MASTER_DELAY_SYMBOL:
        	                		    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
        	                		    case MASTER_HOST_SYMBOL:
        	                		    case MASTER_LOG_FILE_SYMBOL:
        	                		    case MASTER_LOG_POS_SYMBOL:
        	                		    case MASTER_PASSWORD_SYMBOL:
        	                		    case MASTER_PORT_SYMBOL:
        	                		    case MASTER_RETRY_COUNT_SYMBOL:
        	                		    case MASTER_SERVER_ID_SYMBOL:
        	                		    case MASTER_SSL_CAPATH_SYMBOL:
        	                		    case MASTER_SSL_CA_SYMBOL:
        	                		    case MASTER_SSL_CERT_SYMBOL:
        	                		    case MASTER_SSL_CIPHER_SYMBOL:
        	                		    case MASTER_SSL_CRLPATH_SYMBOL:
        	                		    case MASTER_SSL_CRL_SYMBOL:
        	                		    case MASTER_SSL_KEY_SYMBOL:
        	                		    case MASTER_SSL_SYMBOL:
        	                		    case MASTER_SYMBOL:
        	                		    case MASTER_USER_SYMBOL:
        	                		    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
        	                		    case MAX_QUERIES_PER_HOUR_SYMBOL:
        	                		    case MAX_ROWS_SYMBOL:
        	                		    case MAX_SIZE_SYMBOL:
        	                		    case MAX_UPDATES_PER_HOUR_SYMBOL:
        	                		    case MAX_USER_CONNECTIONS_SYMBOL:
        	                		    case MEDIUM_SYMBOL:
        	                		    case MEMORY_SYMBOL:
        	                		    case MERGE_SYMBOL:
        	                		    case MESSAGE_TEXT_SYMBOL:
        	                		    case MIGRATE_SYMBOL:
        	                		    case MIN_ROWS_SYMBOL:
        	                		    case MODE_SYMBOL:
        	                		    case MODIFY_SYMBOL:
        	                		    case MUTEX_SYMBOL:
        	                		    case MYSQL_ERRNO_SYMBOL:
        	                		    case NAMES_SYMBOL:
        	                		    case NAME_SYMBOL:
        	                		    case NATIONAL_SYMBOL:
        	                		    case NCHAR_SYMBOL:
        	                		    case NDBCLUSTER_SYMBOL:
        	                		    case NEW_SYMBOL:
        	                		    case NEXT_SYMBOL:
        	                		    case NODEGROUP_SYMBOL:
        	                		    case NONE_SYMBOL:
        	                		    case NO_WAIT_SYMBOL:
        	                		    case NUMBER_SYMBOL:
        	                		    case NVARCHAR_SYMBOL:
        	                		    case OFFSET_SYMBOL:
        	                		    case ONE_SHOT_SYMBOL:
        	                		    case ONE_SYMBOL:
        	                		    case PACK_KEYS_SYMBOL:
        	                		    case PAGE_SYMBOL:
        	                		    case PARTIAL_SYMBOL:
        	                		    case PARTITIONING_SYMBOL:
        	                		    case PARTITIONS_SYMBOL:
        	                		    case PHASE_SYMBOL:
        	                		    case PLUGINS_SYMBOL:
        	                		    case PLUGIN_DIR_SYMBOL:
        	                		    case PLUGIN_SYMBOL:
        	                		    case PRESERVE_SYMBOL:
        	                		    case PREV_SYMBOL:
        	                		    case PRIVILEGES_SYMBOL:
        	                		    case PROCESSLIST_SYMBOL:
        	                		    case PROCESS_SYMBOL:
        	                		    case PROFILES_SYMBOL:
        	                		    case PROFILE_SYMBOL:
        	                		    case PROXY_SYMBOL:
        	                		    case QUERY_SYMBOL:
        	                		    case QUICK_SYMBOL:
        	                		    case READ_ONLY_SYMBOL:
        	                		    case REBUILD_SYMBOL:
        	                		    case RECOVER_SYMBOL:
        	                		    case REDOFILE_SYMBOL:
        	                		    case REDO_BUFFER_SIZE_SYMBOL:
        	                		    case REDUNDANT_SYMBOL:
        	                		    case RELAYLOG_SYMBOL:
        	                		    case RELAY_LOG_FILE_SYMBOL:
        	                		    case RELAY_LOG_POS_SYMBOL:
        	                		    case RELAY_SYMBOL:
        	                		    case RELAY_THREAD_SYMBOL:
        	                		    case RELOAD_SYMBOL:
        	                		    case REORGANIZE_SYMBOL:
        	                		    case REPEATABLE_SYMBOL:
        	                		    case REPLICATION_SYMBOL:
        	                		    case RESUME_SYMBOL:
        	                		    case RETURNED_SQLSTATE_SYMBOL:
        	                		    case RETURNS_SYMBOL:
        	                		    case ROLLUP_SYMBOL:
        	                		    case ROUTINE_SYMBOL:
        	                		    case ROWS_SYMBOL:
        	                		    case ROW_FORMAT_SYMBOL:
        	                		    case RTREE_SYMBOL:
        	                		    case SCHEDULE_SYMBOL:
        	                		    case SCHEMA_NAME_SYMBOL:
        	                		    case SERIALIZABLE_SYMBOL:
        	                		    case SERIAL_SYMBOL:
        	                		    case SESSION_SYMBOL:
        	                		    case SHARE_SYMBOL:
        	                		    case SHUTDOWN_SYMBOL:
        	                		    case SIMPLE_SYMBOL:
        	                		    case SLOW_SYMBOL:
        	                		    case SNAPSHOT_SYMBOL:
        	                		    case SOUNDS_SYMBOL:
        	                		    case SOURCE_SYMBOL:
        	                		    case SQL_AFTER_GTIDS_SYMBOL:
        	                		    case SQL_AFTER_MTS_GAPS_SYMBOL:
        	                		    case SQL_BEFORE_GTIDS_SYMBOL:
        	                		    case SQL_BUFFER_RESULT_SYMBOL:
        	                		    case SQL_CACHE_SYMBOL:
        	                		    case SQL_NO_CACHE_SYMBOL:
        	                		    case SQL_THREAD_SYMBOL:
        	                		    case STARTS_SYMBOL:
        	                		    case STATS_AUTO_RECALC_SYMBOL:
        	                		    case STATS_PERSISTENT_SYMBOL:
        	                		    case STATS_SAMPLE_PAGES_SYMBOL:
        	                		    case STATUS_SYMBOL:
        	                		    case STORAGE_SYMBOL:
        	                		    case STRING_SYMBOL:
        	                		    case SUBCLASS_ORIGIN_SYMBOL:
        	                		    case SUBJECT_SYMBOL:
        	                		    case SUBPARTITIONS_SYMBOL:
        	                		    case SUBPARTITION_SYMBOL:
        	                		    case SUPER_SYMBOL:
        	                		    case SUSPEND_SYMBOL:
        	                		    case SWAPS_SYMBOL:
        	                		    case SWITCHES_SYMBOL:
        	                		    case TABLESPACE_SYMBOL:
        	                		    case TABLES_SYMBOL:
        	                		    case TABLE_CHECKSUM_SYMBOL:
        	                		    case TABLE_NAME_SYMBOL:
        	                		    case TEMPORARY_SYMBOL:
        	                		    case TEMPTABLE_SYMBOL:
        	                		    case TEXT_SYMBOL:
        	                		    case THAN_SYMBOL:
        	                		    case TRANSACTION_SYMBOL:
        	                		    case TRIGGERS_SYMBOL:
        	                		    case TYPES_SYMBOL:
        	                		    case TYPE_SYMBOL:
        	                		    case UDF_RETURNS_SYMBOL:
        	                		    case UNCOMMITTED_SYMBOL:
        	                		    case UNDEFINED_SYMBOL:
        	                		    case UNDOFILE_SYMBOL:
        	                		    case UNDO_BUFFER_SIZE_SYMBOL:
        	                		    case UNKNOWN_SYMBOL:
        	                		    case UNTIL_SYMBOL:
        	                		    case USER_RESOURCES_SYMBOL:
        	                		    case USE_FRM_SYMBOL:
        	                		    case VALUE_SYMBOL:
        	                		    case VARIABLES_SYMBOL:
        	                		    case VIEW_SYMBOL:
        	                		    case WAIT_SYMBOL:
        	                		    case WARNINGS_SYMBOL:
        	                		    case WORK_SYMBOL:
        	                		    case X509_SYMBOL:
        	                		    case XML_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case 732:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case MATCH_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case CASE_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case BINARY_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case CAST_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		    case CONVERT_SYMBOL:
        	                		    	{
        	                		    		alt319=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt319)
        	            {
        	        	case 1:
        	        	    // MySQL.g:919:66: ON_SYMBOL expression
        	        	    {
        	        	        ON_SYMBOL926 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_join_table4786);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulejoin_tableEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        ON_SYMBOL926_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL926));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL926_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_expression_in_join_table4788);
        	        	        expression927=expression(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulejoin_tableEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression927.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:920:4: ( LEFT_SYMBOL | RIGHT_SYMBOL ) ( OUTER_SYMBOL )? JOIN_SYMBOL table_reference join_condition
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set928=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == LEFT_SYMBOL || LA(1) == RIGHT_SYMBOL )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set928))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	            CONSTRUCTEX();
        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
        	            EXCEPTION->expectingSet = NULL;

        	            goto rulejoin_tableEx;
        	        }


        	        // MySQL.g:920:33: ( OUTER_SYMBOL )?
        	        {
        	            int alt320=2;
        	            switch ( LA(1) )
        	            {
        	                case OUTER_SYMBOL:
        	                	{
        	                		alt320=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt320)
        	            {
        	        	case 1:
        	        	    // MySQL.g:920:33: OUTER_SYMBOL
        	        	    {
        	        	        OUTER_SYMBOL929 = (pANTLR3_COMMON_TOKEN) MATCHT(OUTER_SYMBOL, &FOLLOW_OUTER_SYMBOL_in_join_table4803);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulejoin_tableEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        OUTER_SYMBOL929_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OUTER_SYMBOL929));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, OUTER_SYMBOL929_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        JOIN_SYMBOL930 = (pANTLR3_COMMON_TOKEN) MATCHT(JOIN_SYMBOL, &FOLLOW_JOIN_SYMBOL_in_join_table4806);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejoin_tableEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        JOIN_SYMBOL930_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, JOIN_SYMBOL930));
        	        ADAPTOR->addChild(ADAPTOR, root_0, JOIN_SYMBOL930_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_table_reference_in_join_table4808);
        	        table_reference931=table_reference(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejoin_tableEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_reference931.tree);

        	        FOLLOWPUSH(FOLLOW_join_condition_in_join_table4810);
        	        join_condition932=join_condition(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejoin_tableEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, join_condition932.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:921:4: NATURAL_SYMBOL ( ( LEFT_SYMBOL | RIGHT_SYMBOL ) ( OUTER_SYMBOL )? )? JOIN_SYMBOL table_factor
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NATURAL_SYMBOL933 = (pANTLR3_COMMON_TOKEN) MATCHT(NATURAL_SYMBOL, &FOLLOW_NATURAL_SYMBOL_in_join_table4815);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejoin_tableEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NATURAL_SYMBOL933_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NATURAL_SYMBOL933));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NATURAL_SYMBOL933_tree);
        	        }

        	        // MySQL.g:921:19: ( ( LEFT_SYMBOL | RIGHT_SYMBOL ) ( OUTER_SYMBOL )? )?
        	        {
        	            int alt322=2;
        	            switch ( LA(1) )
        	            {
        	                case LEFT_SYMBOL:
        	                case RIGHT_SYMBOL:
        	                	{
        	                		alt322=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt322)
        	            {
        	        	case 1:
        	        	    // MySQL.g:921:20: ( LEFT_SYMBOL | RIGHT_SYMBOL ) ( OUTER_SYMBOL )?
        	        	    {
        	        	        set934=(pANTLR3_COMMON_TOKEN)LT(1);

        	        	        if ( LA(1) == LEFT_SYMBOL || LA(1) == RIGHT_SYMBOL )
        	        	        {
        	        	            CONSUME();
        	        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set934))
        	        	            );
        	        	            PERRORRECOVERY=ANTLR3_FALSE;
        	        	            FAILEDFLAG=ANTLR3_FALSE;

        	        	        }
        	        	        else
        	        	        {
        	        	            if (BACKTRACKING>0)
        	        	            {
        	        	                FAILEDFLAG = ANTLR3_TRUE;
        	        	                return retval;
        	        	            }

        	        	            CONSTRUCTEX();
        	        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
        	        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
        	        	            EXCEPTION->expectingSet = NULL;

        	        	            goto rulejoin_tableEx;
        	        	        }


        	        	        // MySQL.g:921:49: ( OUTER_SYMBOL )?
        	        	        {
        	        	            int alt321=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case OUTER_SYMBOL:
        	        	                	{
        	        	                		alt321=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt321)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:921:49: OUTER_SYMBOL
        	        	        	    {
        	        	        	        OUTER_SYMBOL935 = (pANTLR3_COMMON_TOKEN) MATCHT(OUTER_SYMBOL, &FOLLOW_OUTER_SYMBOL_in_join_table4826);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulejoin_tableEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        OUTER_SYMBOL935_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OUTER_SYMBOL935));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, OUTER_SYMBOL935_tree);
        	        	        	        }

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        JOIN_SYMBOL936 = (pANTLR3_COMMON_TOKEN) MATCHT(JOIN_SYMBOL, &FOLLOW_JOIN_SYMBOL_in_join_table4831);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejoin_tableEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        JOIN_SYMBOL936_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, JOIN_SYMBOL936));
        	        ADAPTOR->addChild(ADAPTOR, root_0, JOIN_SYMBOL936_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_table_factor_in_join_table4833);
        	        table_factor937=table_factor(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejoin_tableEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_factor937.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulejoin_tableEx; /* Prevent compiler warnings */
    rulejoin_tableEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end join_table */

/**
 * $ANTLR start join_condition
 * MySQL.g:924:1: join_condition : ( ON_SYMBOL expression | USING_SYMBOL identifier_list_with_parentheses );
 */
static MySQLParser_join_condition_return
join_condition(pMySQLParser ctx)
{
    MySQLParser_join_condition_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    ON_SYMBOL938;
    pANTLR3_COMMON_TOKEN    USING_SYMBOL940;
    MySQLParser_expression_return expression939;
    #undef	RETURN_TYPE_expression939
    #define	RETURN_TYPE_expression939 MySQLParser_expression_return

    MySQLParser_identifier_list_with_parentheses_return identifier_list_with_parentheses941;
    #undef	RETURN_TYPE_identifier_list_with_parentheses941
    #define	RETURN_TYPE_identifier_list_with_parentheses941 MySQLParser_identifier_list_with_parentheses_return

    pANTLR3_BASE_TREE ON_SYMBOL938_tree;
    pANTLR3_BASE_TREE USING_SYMBOL940_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ON_SYMBOL938       = NULL;
    USING_SYMBOL940       = NULL;
    expression939.tree = NULL;

    identifier_list_with_parentheses941.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ON_SYMBOL938_tree   = NULL;
    USING_SYMBOL940_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:924:15: ( ON_SYMBOL expression | USING_SYMBOL identifier_list_with_parentheses )

            ANTLR3_UINT32 alt324;

            alt324=2;

            switch ( LA(1) )
            {
            case ON_SYMBOL:
            	{
            		alt324=1;
            	}
                break;
            case USING_SYMBOL:
            	{
            		alt324=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 324;
                EXCEPTION->state        = 0;


                goto rulejoin_conditionEx;

            }

            switch (alt324)
            {
        	case 1:
        	    // MySQL.g:925:2: ON_SYMBOL expression
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ON_SYMBOL938 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_join_condition4842);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejoin_conditionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ON_SYMBOL938_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL938));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL938_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_join_condition4844);
        	        expression939=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejoin_conditionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression939.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:926:4: USING_SYMBOL identifier_list_with_parentheses
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        USING_SYMBOL940 = (pANTLR3_COMMON_TOKEN) MATCHT(USING_SYMBOL, &FOLLOW_USING_SYMBOL_in_join_condition4849);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejoin_conditionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        USING_SYMBOL940_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USING_SYMBOL940));
        	        ADAPTOR->addChild(ADAPTOR, root_0, USING_SYMBOL940_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_identifier_list_with_parentheses_in_join_condition4851);
        	        identifier_list_with_parentheses941=identifier_list_with_parentheses(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejoin_conditionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list_with_parentheses941.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulejoin_conditionEx; /* Prevent compiler warnings */
    rulejoin_conditionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end join_condition */

/**
 * $ANTLR start union_opt
 * MySQL.g:929:1: union_opt : ( union_clause | order_by_clause ( limit_clause )? | limit_clause );
 */
static MySQLParser_union_opt_return
union_opt(pMySQLParser ctx)
{
    MySQLParser_union_opt_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_union_clause_return union_clause942;
    #undef	RETURN_TYPE_union_clause942
    #define	RETURN_TYPE_union_clause942 MySQLParser_union_clause_return

    MySQLParser_order_by_clause_return order_by_clause943;
    #undef	RETURN_TYPE_order_by_clause943
    #define	RETURN_TYPE_order_by_clause943 MySQLParser_order_by_clause_return

    MySQLParser_limit_clause_return limit_clause944;
    #undef	RETURN_TYPE_limit_clause944
    #define	RETURN_TYPE_limit_clause944 MySQLParser_limit_clause_return

    MySQLParser_limit_clause_return limit_clause945;
    #undef	RETURN_TYPE_limit_clause945
    #define	RETURN_TYPE_limit_clause945 MySQLParser_limit_clause_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    union_clause942.tree = NULL;

    order_by_clause943.tree = NULL;

    limit_clause944.tree = NULL;

    limit_clause945.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:929:10: ( union_clause | order_by_clause ( limit_clause )? | limit_clause )

            ANTLR3_UINT32 alt326;

            alt326=3;

            switch ( LA(1) )
            {
            case UNION_SYMBOL:
            	{
            		alt326=1;
            	}
                break;
            case ORDER_SYMBOL:
            	{
            		alt326=2;
            	}
                break;
            case LIMIT_SYMBOL:
            	{
            		alt326=3;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 326;
                EXCEPTION->state        = 0;


                goto ruleunion_optEx;

            }

            switch (alt326)
            {
        	case 1:
        	    // MySQL.g:930:2: union_clause
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_union_clause_in_union_opt4860);
        	        union_clause942=union_clause(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleunion_optEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, union_clause942.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:931:4: order_by_clause ( limit_clause )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_order_by_clause_in_union_opt4865);
        	        order_by_clause943=order_by_clause(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleunion_optEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, order_by_clause943.tree);

        	        // MySQL.g:931:20: ( limit_clause )?
        	        {
        	            int alt325=2;
        	            switch ( LA(1) )
        	            {
        	                case LIMIT_SYMBOL:
        	                	{
        	                		alt325=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt325)
        	            {
        	        	case 1:
        	        	    // MySQL.g:931:20: limit_clause
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_limit_clause_in_union_opt4867);
        	        	        limit_clause944=limit_clause(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleunion_optEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_clause944.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:932:4: limit_clause
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_limit_clause_in_union_opt4873);
        	        limit_clause945=limit_clause(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleunion_optEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_clause945.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleunion_optEx; /* Prevent compiler warnings */
    ruleunion_optEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end union_opt */

/**
 * $ANTLR start union_clause
 * MySQL.g:935:1: union_clause : UNION_SYMBOL ^ ( union_option )? select_statement ;
 */
static MySQLParser_union_clause_return
union_clause(pMySQLParser ctx)
{
    MySQLParser_union_clause_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    UNION_SYMBOL946;
    MySQLParser_union_option_return union_option947;
    #undef	RETURN_TYPE_union_option947
    #define	RETURN_TYPE_union_option947 MySQLParser_union_option_return

    MySQLParser_select_statement_return select_statement948;
    #undef	RETURN_TYPE_select_statement948
    #define	RETURN_TYPE_select_statement948 MySQLParser_select_statement_return

    pANTLR3_BASE_TREE UNION_SYMBOL946_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    UNION_SYMBOL946       = NULL;
    union_option947.tree = NULL;

    select_statement948.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    UNION_SYMBOL946_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:935:13: ( UNION_SYMBOL ^ ( union_option )? select_statement )
        // MySQL.g:936:3: UNION_SYMBOL ^ ( union_option )? select_statement
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            UNION_SYMBOL946 = (pANTLR3_COMMON_TOKEN) MATCHT(UNION_SYMBOL, &FOLLOW_UNION_SYMBOL_in_union_clause4884);
            if  (HASEXCEPTION())
            {
                goto ruleunion_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            UNION_SYMBOL946_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNION_SYMBOL946))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, UNION_SYMBOL946_tree, root_0));
            }

            // MySQL.g:936:17: ( union_option )?
            {
                int alt327=2;
                switch ( LA(1) )
                {
                    case ALL_SYMBOL:
                    case DISTINCT_SYMBOL:
                    	{
                    		alt327=1;
                    	}
                        break;
                }

                switch (alt327)
                {
            	case 1:
            	    // MySQL.g:936:17: union_option
            	    {
            	        FOLLOWPUSH(FOLLOW_union_option_in_union_clause4887);
            	        union_option947=union_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleunion_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, union_option947.tree);

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_select_statement_in_union_clause4890);
            select_statement948=select_statement(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleunion_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_statement948.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleunion_clauseEx; /* Prevent compiler warnings */
    ruleunion_clauseEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end union_clause */

/**
 * $ANTLR start union_option
 * MySQL.g:939:1: union_option : ( DISTINCT_SYMBOL | ALL_SYMBOL );
 */
static MySQLParser_union_option_return
union_option(pMySQLParser ctx)
{
    MySQLParser_union_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set949;

    pANTLR3_BASE_TREE set949_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set949       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set949_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:939:13: ( DISTINCT_SYMBOL | ALL_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set949=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == ALL_SYMBOL || LA(1) == DISTINCT_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set949))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto ruleunion_optionEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto ruleunion_optionEx; /* Prevent compiler warnings */
    ruleunion_optionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end union_option */

/**
 * $ANTLR start select_from_tail
 * MySQL.g:944:1: select_from_tail : ( FOR_SYMBOL UPDATE_SYMBOL | LOCK_SYMBOL IN_SYMBOL SHARE_SYMBOL MODE_SYMBOL );
 */
static MySQLParser_select_from_tail_return
select_from_tail(pMySQLParser ctx)
{
    MySQLParser_select_from_tail_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    FOR_SYMBOL950;
    pANTLR3_COMMON_TOKEN    UPDATE_SYMBOL951;
    pANTLR3_COMMON_TOKEN    LOCK_SYMBOL952;
    pANTLR3_COMMON_TOKEN    IN_SYMBOL953;
    pANTLR3_COMMON_TOKEN    SHARE_SYMBOL954;
    pANTLR3_COMMON_TOKEN    MODE_SYMBOL955;

    pANTLR3_BASE_TREE FOR_SYMBOL950_tree;
    pANTLR3_BASE_TREE UPDATE_SYMBOL951_tree;
    pANTLR3_BASE_TREE LOCK_SYMBOL952_tree;
    pANTLR3_BASE_TREE IN_SYMBOL953_tree;
    pANTLR3_BASE_TREE SHARE_SYMBOL954_tree;
    pANTLR3_BASE_TREE MODE_SYMBOL955_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    FOR_SYMBOL950       = NULL;
    UPDATE_SYMBOL951       = NULL;
    LOCK_SYMBOL952       = NULL;
    IN_SYMBOL953       = NULL;
    SHARE_SYMBOL954       = NULL;
    MODE_SYMBOL955       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    FOR_SYMBOL950_tree   = NULL;
    UPDATE_SYMBOL951_tree   = NULL;
    LOCK_SYMBOL952_tree   = NULL;
    IN_SYMBOL953_tree   = NULL;
    SHARE_SYMBOL954_tree   = NULL;
    MODE_SYMBOL955_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:944:17: ( FOR_SYMBOL UPDATE_SYMBOL | LOCK_SYMBOL IN_SYMBOL SHARE_SYMBOL MODE_SYMBOL )

            ANTLR3_UINT32 alt328;

            alt328=2;

            switch ( LA(1) )
            {
            case FOR_SYMBOL:
            	{
            		alt328=1;
            	}
                break;
            case LOCK_SYMBOL:
            	{
            		alt328=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 328;
                EXCEPTION->state        = 0;


                goto ruleselect_from_tailEx;

            }

            switch (alt328)
            {
        	case 1:
        	    // MySQL.g:945:2: FOR_SYMBOL UPDATE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOR_SYMBOL950 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_select_from_tail4914);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_from_tailEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FOR_SYMBOL950_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL950));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL950_tree);
        	        }

        	        UPDATE_SYMBOL951 = (pANTLR3_COMMON_TOKEN) MATCHT(UPDATE_SYMBOL, &FOLLOW_UPDATE_SYMBOL_in_select_from_tail4916);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_from_tailEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UPDATE_SYMBOL951_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UPDATE_SYMBOL951));
        	        ADAPTOR->addChild(ADAPTOR, root_0, UPDATE_SYMBOL951_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:946:4: LOCK_SYMBOL IN_SYMBOL SHARE_SYMBOL MODE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        LOCK_SYMBOL952 = (pANTLR3_COMMON_TOKEN) MATCHT(LOCK_SYMBOL, &FOLLOW_LOCK_SYMBOL_in_select_from_tail4921);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_from_tailEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LOCK_SYMBOL952_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOCK_SYMBOL952));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LOCK_SYMBOL952_tree);
        	        }

        	        IN_SYMBOL953 = (pANTLR3_COMMON_TOKEN) MATCHT(IN_SYMBOL, &FOLLOW_IN_SYMBOL_in_select_from_tail4923);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_from_tailEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        IN_SYMBOL953_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IN_SYMBOL953));
        	        ADAPTOR->addChild(ADAPTOR, root_0, IN_SYMBOL953_tree);
        	        }

        	        SHARE_SYMBOL954 = (pANTLR3_COMMON_TOKEN) MATCHT(SHARE_SYMBOL, &FOLLOW_SHARE_SYMBOL_in_select_from_tail4925);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_from_tailEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SHARE_SYMBOL954_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SHARE_SYMBOL954));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SHARE_SYMBOL954_tree);
        	        }

        	        MODE_SYMBOL955 = (pANTLR3_COMMON_TOKEN) MATCHT(MODE_SYMBOL, &FOLLOW_MODE_SYMBOL_in_select_from_tail4927);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_from_tailEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MODE_SYMBOL955_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MODE_SYMBOL955));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MODE_SYMBOL955_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleselect_from_tailEx; /* Prevent compiler warnings */
    ruleselect_from_tailEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end select_from_tail */

/**
 * $ANTLR start table_alias
 * MySQL.g:949:1: table_alias : ( AS_SYMBOL | EQUAL_OPERATOR )? identifier ;
 */
static MySQLParser_table_alias_return
table_alias(pMySQLParser ctx)
{
    MySQLParser_table_alias_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set956;
    MySQLParser_identifier_return identifier957;
    #undef	RETURN_TYPE_identifier957
    #define	RETURN_TYPE_identifier957 MySQLParser_identifier_return

    pANTLR3_BASE_TREE set956_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set956       = NULL;
    identifier957.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set956_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:949:12: ( ( AS_SYMBOL | EQUAL_OPERATOR )? identifier )
        // MySQL.g:950:2: ( AS_SYMBOL | EQUAL_OPERATOR )? identifier
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:950:2: ( AS_SYMBOL | EQUAL_OPERATOR )?
            {
                int alt329=2;
                switch ( LA(1) )
                {
                    case AS_SYMBOL:
                    case EQUAL_OPERATOR:
                    	{
                    		alt329=1;
                    	}
                        break;
                }

                switch (alt329)
                {
            	case 1:
            	    // MySQL.g:
            	    {
            	        set956=(pANTLR3_COMMON_TOKEN)LT(1);

            	        if ( LA(1) == AS_SYMBOL || LA(1) == EQUAL_OPERATOR )
            	        {
            	            CONSUME();
            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set956))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	            CONSTRUCTEX();
            	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	            EXCEPTION->expectingSet = NULL;

            	            goto ruletable_aliasEx;
            	        }


            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_identifier_in_table_alias4945);
            identifier957=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruletable_aliasEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier957.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto ruletable_aliasEx; /* Prevent compiler warnings */
    ruletable_aliasEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end table_alias */

/**
 * $ANTLR start index_hint_list
 * MySQL.g:953:1: index_hint_list : index_hint ( COMMA_SYMBOL index_hint )* -> ^( INDEX_HINT_LIST index_hint ( COMMA_SYMBOL index_hint )* ) ;
 */
static MySQLParser_index_hint_list_return
index_hint_list(pMySQLParser ctx)
{
    MySQLParser_index_hint_list_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL959;
    MySQLParser_index_hint_return index_hint958;
    #undef	RETURN_TYPE_index_hint958
    #define	RETURN_TYPE_index_hint958 MySQLParser_index_hint_return

    MySQLParser_index_hint_return index_hint960;
    #undef	RETURN_TYPE_index_hint960
    #define	RETURN_TYPE_index_hint960 MySQLParser_index_hint_return

    pANTLR3_BASE_TREE COMMA_SYMBOL959_tree;
    pANTLR3_REWRITE_RULE_TOKEN_STREAM stream_COMMA_SYMBOL;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_index_hint;
    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL959       = NULL;
    index_hint958.tree = NULL;

    index_hint960.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL959_tree   = NULL;

    stream_COMMA_SYMBOL   = NULL;
    #define CREATE_stream_COMMA_SYMBOL  if (stream_COMMA_SYMBOL == NULL) {stream_COMMA_SYMBOL = antlr3RewriteRuleTOKENStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"token COMMA_SYMBOL"); } 
    stream_index_hint   = NULL;
    #define CREATE_stream_index_hint  if (stream_index_hint == NULL) {stream_index_hint = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule index_hint"); }

    retval.tree  = NULL;

    {
        // MySQL.g:953:16: ( index_hint ( COMMA_SYMBOL index_hint )* -> ^( INDEX_HINT_LIST index_hint ( COMMA_SYMBOL index_hint )* ) )
        // MySQL.g:954:2: index_hint ( COMMA_SYMBOL index_hint )*
        {
            FOLLOWPUSH(FOLLOW_index_hint_in_index_hint_list4954);
            index_hint958=index_hint(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleindex_hint_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_index_hint; stream_index_hint->add(stream_index_hint, index_hint958.tree, NULL); }

            // MySQL.g:954:13: ( COMMA_SYMBOL index_hint )*

            for (;;)
            {
                int alt330=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		switch ( LA(2) )
                		{
                		case FORCE_SYMBOL:
                		case IGNORE_SYMBOL:
                		case USE_SYMBOL:
                			{
                				alt330=1;
                			}
                		    break;

                		}

                	}
                    break;

                }

                switch (alt330)
                {
            	case 1:
            	    // MySQL.g:954:14: COMMA_SYMBOL index_hint
            	    {
            	        COMMA_SYMBOL959 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_index_hint_list4957);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleindex_hint_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }
            	         
            	        if ( BACKTRACKING==0 ) { CREATE_stream_COMMA_SYMBOL; stream_COMMA_SYMBOL->add(stream_COMMA_SYMBOL, COMMA_SYMBOL959, NULL); }


            	        FOLLOWPUSH(FOLLOW_index_hint_in_index_hint_list4959);
            	        index_hint960=index_hint(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleindex_hint_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) { CREATE_stream_index_hint; stream_index_hint->add(stream_index_hint, index_hint960.tree, NULL); }

            	    }
            	    break;

            	default:
            	    goto loop330;	/* break out of the loop */
            	    break;
                }
            }
            loop330: ; /* Jump out to here if this rule does not match */


            /* AST REWRITE
             * elements          : index_hint, index_hint, COMMA_SYMBOL
             * token labels      : 
             * rule labels       : retval
             * token list labels : 
             * rule list labels  : 
             */
            if ( BACKTRACKING==0 ) 

            {
            	pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_retval;

            	stream_retval=antlr3RewriteRuleSubtreeStreamNewAEE(ADAPTOR,  RECOGNIZER, (pANTLR3_UINT8)"token retval", retval.tree != NULL ? retval.tree : NULL);

            	root_0			    = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
            	retval.tree    = root_0;
            	// 954:40: -> ^( INDEX_HINT_LIST index_hint ( COMMA_SYMBOL index_hint )* )
            	{
            	    // MySQL.g:954:43: ^( INDEX_HINT_LIST index_hint ( COMMA_SYMBOL index_hint )* )
            	    {
            	        pANTLR3_BASE_TREE root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
            	        root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, 
            	        (pANTLR3_BASE_TREE)ADAPTOR->createTypeText(ADAPTOR, INDEX_HINT_LIST, (pANTLR3_UINT8)"INDEX_HINT_LIST")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_index_hint == NULL ? NULL : stream_index_hint->nextTree(stream_index_hint));

            	        // MySQL.g:954:72: ( COMMA_SYMBOL index_hint )*
            	        {
            	        	while ( (stream_index_hint != NULL && stream_index_hint->hasNext(stream_index_hint)) || (stream_COMMA_SYMBOL != NULL && stream_COMMA_SYMBOL->hasNext(stream_COMMA_SYMBOL))  )
            	        	{
            	        		ADAPTOR->addChild(ADAPTOR, root_1, 
            	        		stream_COMMA_SYMBOL == NULL ? NULL : stream_COMMA_SYMBOL->nextNode(stream_COMMA_SYMBOL)
            	        		);

            	        		ADAPTOR->addChild(ADAPTOR, root_1, stream_index_hint == NULL ? NULL : stream_index_hint->nextTree(stream_index_hint));

            	        	}
            	        	if (stream_index_hint != NULL) stream_index_hint->reset(stream_index_hint);
            	        	if (stream_COMMA_SYMBOL != NULL) stream_COMMA_SYMBOL->reset(stream_COMMA_SYMBOL);

            	        }

            	        ADAPTOR->addChild(ADAPTOR, root_0, root_1);
            	    }

            	}


            	retval.tree = root_0; // set result root
            	if (stream_retval != NULL) stream_retval->free(stream_retval);


            }
        }

    }

    // This is where rules clean up and exit
    //
    goto ruleindex_hint_listEx; /* Prevent compiler warnings */
    ruleindex_hint_listEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
        if (stream_COMMA_SYMBOL != NULL) stream_COMMA_SYMBOL->free(stream_COMMA_SYMBOL);
        if (stream_index_hint != NULL) stream_index_hint->free(stream_index_hint);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end index_hint_list */

/**
 * $ANTLR start index_hint
 * MySQL.g:957:1: index_hint : ( index_hint_type key_or_index ( index_hint_clause )? OPEN_PAR_SYMBOL index_list CLOSE_PAR_SYMBOL | USE_SYMBOL key_or_index ( index_hint_clause )? OPEN_PAR_SYMBOL ( index_list )? CLOSE_PAR_SYMBOL );
 */
static MySQLParser_index_hint_return
index_hint(pMySQLParser ctx)
{
    MySQLParser_index_hint_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL964;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL966;
    pANTLR3_COMMON_TOKEN    USE_SYMBOL967;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL970;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL972;
    MySQLParser_index_hint_type_return index_hint_type961;
    #undef	RETURN_TYPE_index_hint_type961
    #define	RETURN_TYPE_index_hint_type961 MySQLParser_index_hint_type_return

    MySQLParser_key_or_index_return key_or_index962;
    #undef	RETURN_TYPE_key_or_index962
    #define	RETURN_TYPE_key_or_index962 MySQLParser_key_or_index_return

    MySQLParser_index_hint_clause_return index_hint_clause963;
    #undef	RETURN_TYPE_index_hint_clause963
    #define	RETURN_TYPE_index_hint_clause963 MySQLParser_index_hint_clause_return

    MySQLParser_index_list_return index_list965;
    #undef	RETURN_TYPE_index_list965
    #define	RETURN_TYPE_index_list965 MySQLParser_index_list_return

    MySQLParser_key_or_index_return key_or_index968;
    #undef	RETURN_TYPE_key_or_index968
    #define	RETURN_TYPE_key_or_index968 MySQLParser_key_or_index_return

    MySQLParser_index_hint_clause_return index_hint_clause969;
    #undef	RETURN_TYPE_index_hint_clause969
    #define	RETURN_TYPE_index_hint_clause969 MySQLParser_index_hint_clause_return

    MySQLParser_index_list_return index_list971;
    #undef	RETURN_TYPE_index_list971
    #define	RETURN_TYPE_index_list971 MySQLParser_index_list_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL964_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL966_tree;
    pANTLR3_BASE_TREE USE_SYMBOL967_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL970_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL972_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL964       = NULL;
    CLOSE_PAR_SYMBOL966       = NULL;
    USE_SYMBOL967       = NULL;
    OPEN_PAR_SYMBOL970       = NULL;
    CLOSE_PAR_SYMBOL972       = NULL;
    index_hint_type961.tree = NULL;

    key_or_index962.tree = NULL;

    index_hint_clause963.tree = NULL;

    index_list965.tree = NULL;

    key_or_index968.tree = NULL;

    index_hint_clause969.tree = NULL;

    index_list971.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL964_tree   = NULL;
    CLOSE_PAR_SYMBOL966_tree   = NULL;
    USE_SYMBOL967_tree   = NULL;
    OPEN_PAR_SYMBOL970_tree   = NULL;
    CLOSE_PAR_SYMBOL972_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:957:11: ( index_hint_type key_or_index ( index_hint_clause )? OPEN_PAR_SYMBOL index_list CLOSE_PAR_SYMBOL | USE_SYMBOL key_or_index ( index_hint_clause )? OPEN_PAR_SYMBOL ( index_list )? CLOSE_PAR_SYMBOL )

            ANTLR3_UINT32 alt334;

            alt334=2;

            switch ( LA(1) )
            {
            case FORCE_SYMBOL:
            case IGNORE_SYMBOL:
            	{
            		alt334=1;
            	}
                break;
            case USE_SYMBOL:
            	{
            		alt334=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 334;
                EXCEPTION->state        = 0;


                goto ruleindex_hintEx;

            }

            switch (alt334)
            {
        	case 1:
        	    // MySQL.g:958:2: index_hint_type key_or_index ( index_hint_clause )? OPEN_PAR_SYMBOL index_list CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_index_hint_type_in_index_hint4985);
        	        index_hint_type961=index_hint_type(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_hintEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_hint_type961.tree);

        	        FOLLOWPUSH(FOLLOW_key_or_index_in_index_hint4987);
        	        key_or_index962=key_or_index(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_hintEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, key_or_index962.tree);

        	        // MySQL.g:958:31: ( index_hint_clause )?
        	        {
        	            int alt331=2;
        	            switch ( LA(1) )
        	            {
        	                case FOR_SYMBOL:
        	                	{
        	                		alt331=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt331)
        	            {
        	        	case 1:
        	        	    // MySQL.g:958:31: index_hint_clause
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_index_hint_clause_in_index_hint4989);
        	        	        index_hint_clause963=index_hint_clause(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleindex_hintEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_hint_clause963.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        OPEN_PAR_SYMBOL964 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_index_hint4992);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_hintEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL964_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL964));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL964_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_index_list_in_index_hint4994);
        	        index_list965=index_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_hintEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_list965.tree);

        	        CLOSE_PAR_SYMBOL966 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_index_hint4996);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_hintEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL966_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL966));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL966_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:959:4: USE_SYMBOL key_or_index ( index_hint_clause )? OPEN_PAR_SYMBOL ( index_list )? CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        USE_SYMBOL967 = (pANTLR3_COMMON_TOKEN) MATCHT(USE_SYMBOL, &FOLLOW_USE_SYMBOL_in_index_hint5001);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_hintEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        USE_SYMBOL967_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USE_SYMBOL967));
        	        ADAPTOR->addChild(ADAPTOR, root_0, USE_SYMBOL967_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_key_or_index_in_index_hint5003);
        	        key_or_index968=key_or_index(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_hintEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, key_or_index968.tree);

        	        // MySQL.g:959:28: ( index_hint_clause )?
        	        {
        	            int alt332=2;
        	            switch ( LA(1) )
        	            {
        	                case FOR_SYMBOL:
        	                	{
        	                		alt332=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt332)
        	            {
        	        	case 1:
        	        	    // MySQL.g:959:28: index_hint_clause
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_index_hint_clause_in_index_hint5005);
        	        	        index_hint_clause969=index_hint_clause(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleindex_hintEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_hint_clause969.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        OPEN_PAR_SYMBOL970 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_index_hint5008);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_hintEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL970_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL970));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL970_tree);
        	        }

        	        // MySQL.g:959:63: ( index_list )?
        	        {
        	            int alt333=2;
        	            {
        	                int LA333_0 = LA(1);
        	                if ( (LA333_0 == BACK_TICK_QUOTED_ID || LA333_0 == IDENTIFIER))
        	                {
        	                    alt333=1;
        	                }
        	                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA333_0 == DOUBLE_QUOTED_TEXT))
        	                {
        	                    alt333=1;
        	                }
        	                else if ( (((LA333_0 >= ACTION_SYMBOL) && (LA333_0 <= ADDDATE_SYMBOL)) || ((LA333_0 >= AFTER_SYMBOL) && (LA333_0 <= ALGORITHM_SYMBOL)) || LA333_0 == ANALYZE_SYMBOL || ((LA333_0 >= ANY_SYMBOL) && (LA333_0 <= ASCII_SYMBOL)) || ((LA333_0 >= AT_SYMBOL) && (LA333_0 <= BACKUP_SYMBOL)) || LA333_0 == BEGIN_SYMBOL || LA333_0 == BINLOG_SYMBOL || LA333_0 == BIT_SYMBOL || ((LA333_0 >= BLOCK_SYMBOL) && (LA333_0 <= BOOL_SYMBOL)) || ((LA333_0 >= BTREE_SYMBOL) && (LA333_0 <= BYTE_SYMBOL)) || LA333_0 == CACHE_SYMBOL || LA333_0 == CASCADED_SYMBOL || ((LA333_0 >= CATALOG_NAME_SYMBOL) && (LA333_0 <= CHANGED_SYMBOL)) || LA333_0 == CHARSET_SYMBOL || LA333_0 == CHECKSUM_SYMBOL || ((LA333_0 >= CIPHER_SYMBOL) && (LA333_0 <= CLIENT_SYMBOL)) || ((LA333_0 >= CLOSE_SYMBOL) && (LA333_0 <= CODE_SYMBOL)) || LA333_0 == COLLATION_SYMBOL || ((LA333_0 >= COLUMNS_SYMBOL) && (LA333_0 <= COLUMN_NAME_SYMBOL)) || ((LA333_0 >= COMMENT_SYMBOL) && (LA333_0 <= COMPRESSED_SYMBOL)) || LA333_0 == CONCURRENT_SYMBOL || ((LA333_0 >= CONNECTION_SYMBOL) && (LA333_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA333_0 >= CONTAINS_SYMBOL) && (LA333_0 <= CONTEXT_SYMBOL)) || LA333_0 == CONTRIBUTORS_SYMBOL || LA333_0 == CPU_SYMBOL || LA333_0 == CUBE_SYMBOL || LA333_0 == CURRENT_SYMBOL || LA333_0 == CURSOR_NAME_SYMBOL || ((LA333_0 >= DATAFILE_SYMBOL) && (LA333_0 <= DATETIME_SYMBOL)) || LA333_0 == DATE_SYMBOL || ((LA333_0 >= DAY_SYMBOL) && (LA333_0 <= DEALLOCATE_SYMBOL)) || LA333_0 == DEFAULT_AUTH_SYMBOL || LA333_0 == DEFINER_SYMBOL || LA333_0 == DELAY_KEY_WRITE_SYMBOL || LA333_0 == DES_KEY_FILE_SYMBOL || LA333_0 == DIAGNOSTICS_SYMBOL || ((LA333_0 >= DIRECTORY_SYMBOL) && (LA333_0 <= DISK_SYMBOL)) || LA333_0 == DO_SYMBOL || ((LA333_0 >= DUMPFILE_SYMBOL) && (LA333_0 <= DYNAMIC_SYMBOL)) || LA333_0 == ENABLE_SYMBOL || LA333_0 == ENDS_SYMBOL || ((LA333_0 >= END_SYMBOL) && (LA333_0 <= ENUM_SYMBOL)) || ((LA333_0 >= ERRORS_SYMBOL) && (LA333_0 <= ERROR_SYMBOL)) || ((LA333_0 >= ESCAPE_SYMBOL) && (LA333_0 <= EVERY_SYMBOL)) || LA333_0 == EXECUTE_SYMBOL || LA333_0 == EXPANSION_SYMBOL || LA333_0 == EXPORT_SYMBOL || ((LA333_0 >= EXTENDED_SYMBOL) && (LA333_0 <= EXTENT_SIZE_SYMBOL)) || ((LA333_0 >= FAST_SYMBOL) && (LA333_0 <= FAULTS_SYMBOL)) || ((LA333_0 >= FILE_SYMBOL) && (LA333_0 <= FIXED_SYMBOL)) || LA333_0 == FLUSH_SYMBOL || LA333_0 == FORMAT_SYMBOL || LA333_0 == FOUND_SYMBOL || LA333_0 == FULL_SYMBOL || ((LA333_0 >= FUNCTION_SYMBOL) && (LA333_0 <= GET_FORMAT_SYMBOL)) || ((LA333_0 >= GLOBAL_SYMBOL) && (LA333_0 <= GRANTS_SYMBOL)) || ((LA333_0 >= HANDLER_SYMBOL) && (LA333_0 <= HASH_SYMBOL)) || LA333_0 == HELP_SYMBOL || ((LA333_0 >= HOSTS_SYMBOL) && (LA333_0 <= HOST_SYMBOL)) || ((LA333_0 >= HOUR_SYMBOL) && (LA333_0 <= IDENTIFIED_SYMBOL)) || LA333_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA333_0 >= IMPORT_SYMBOL) && (LA333_0 <= INDEXES_SYMBOL)) || LA333_0 == INITIAL_SIZE_SYMBOL || LA333_0 == INNODB_SYMBOL || LA333_0 == INSERT_METHOD_SYMBOL || LA333_0 == INSTALL_SYMBOL || LA333_0 == INVOKER_SYMBOL || LA333_0 == IO_SYMBOL || ((LA333_0 >= IPC_SYMBOL) && (LA333_0 <= ISSUER_SYMBOL)) || LA333_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA333_0 >= LANGUAGE_SYMBOL) && (LA333_0 <= LAST_SYMBOL)) || LA333_0 == LEAVES_SYMBOL || LA333_0 == LESS_SYMBOL || LA333_0 == LEVEL_SYMBOL || LA333_0 == LINESTRING_SYMBOL || LA333_0 == LIST_SYMBOL || LA333_0 == LOCAL_SYMBOL || LA333_0 == LOCKS_SYMBOL || LA333_0 == LOGFILE_SYMBOL || LA333_0 == LOGS_SYMBOL || LA333_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA333_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA333_0 <= MASTER_SSL_SYMBOL)) || ((LA333_0 >= MASTER_SYMBOL) && (LA333_0 <= MASTER_USER_SYMBOL)) || ((LA333_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA333_0 <= MAX_SIZE_SYMBOL)) || ((LA333_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA333_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA333_0 >= MEDIUM_SYMBOL) && (LA333_0 <= MICROSECOND_SYMBOL)) || LA333_0 == MIGRATE_SYMBOL || ((LA333_0 >= MINUTE_SYMBOL) && (LA333_0 <= MIN_ROWS_SYMBOL)) || LA333_0 == MODE_SYMBOL || LA333_0 == MODIFY_SYMBOL || ((LA333_0 >= MONTH_SYMBOL) && (LA333_0 <= MULTILINESTRING_SYMBOL)) || ((LA333_0 >= MULTIPOINT_SYMBOL) && (LA333_0 <= MULTIPOLYGON_SYMBOL)) || ((LA333_0 >= MUTEX_SYMBOL) && (LA333_0 <= NATIONAL_SYMBOL)) || LA333_0 == NCHAR_SYMBOL || LA333_0 == NDBCLUSTER_SYMBOL || ((LA333_0 >= NEW_SYMBOL) && (LA333_0 <= NONE_SYMBOL)) || ((LA333_0 >= NO_SYMBOL) && (LA333_0 <= NO_WAIT_SYMBOL)) || LA333_0 == NUMBER_SYMBOL || LA333_0 == NVARCHAR_SYMBOL || ((LA333_0 >= OFFSET_SYMBOL) && (LA333_0 <= ONE_SYMBOL)) || LA333_0 == OPEN_SYMBOL || LA333_0 == OPTIONS_SYMBOL || ((LA333_0 >= OWNER_SYMBOL) && (LA333_0 <= PAGE_SYMBOL)) || ((LA333_0 >= PARSER_SYMBOL) && (LA333_0 <= PARTITION_SYMBOL)) || ((LA333_0 >= PASSWORD_SYMBOL) && (LA333_0 <= PLUGIN_SYMBOL)) || ((LA333_0 >= POINT_SYMBOL) && (LA333_0 <= PORT_SYMBOL)) || ((LA333_0 >= PREPARE_SYMBOL) && (LA333_0 <= PRIVILEGES_SYMBOL)) || ((LA333_0 >= PROCESSLIST_SYMBOL) && (LA333_0 <= PROXY_SYMBOL)) || ((LA333_0 >= QUARTER_SYMBOL) && (LA333_0 <= QUICK_SYMBOL)) || LA333_0 == READ_ONLY_SYMBOL || ((LA333_0 >= REBUILD_SYMBOL) && (LA333_0 <= REDUNDANT_SYMBOL)) || ((LA333_0 >= RELAYLOG_SYMBOL) && (LA333_0 <= RELAY_THREAD_SYMBOL)) || ((LA333_0 >= RELOAD_SYMBOL) && (LA333_0 <= REMOVE_SYMBOL)) || ((LA333_0 >= REORGANIZE_SYMBOL) && (LA333_0 <= REPEATABLE_SYMBOL)) || LA333_0 == REPLICATION_SYMBOL || LA333_0 == RESET_SYMBOL || LA333_0 == RESTORE_SYMBOL || ((LA333_0 >= RESUME_SYMBOL) && (LA333_0 <= RETURNS_SYMBOL)) || LA333_0 == REVERSE_SYMBOL || ((LA333_0 >= ROLLBACK_SYMBOL) && (LA333_0 <= SCHEDULE_SYMBOL)) || LA333_0 == SCHEMA_NAME_SYMBOL || ((LA333_0 >= SECOND_SYMBOL) && (LA333_0 <= SECURITY_SYMBOL)) || ((LA333_0 >= SERIALIZABLE_SYMBOL) && (LA333_0 <= SERIAL_SYMBOL)) || ((LA333_0 >= SERVER_SYMBOL) && (LA333_0 <= SESSION_SYMBOL)) || LA333_0 == SHARE_SYMBOL || LA333_0 == SHUTDOWN_SYMBOL || ((LA333_0 >= SIGNED_SYMBOL) && (LA333_0 <= SIMPLE_SYMBOL)) || ((LA333_0 >= SLAVE_SYMBOL) && (LA333_0 <= SLOW_SYMBOL)) || ((LA333_0 >= SNAPSHOT_SYMBOL) && (LA333_0 <= SOURCE_SYMBOL)) || ((LA333_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA333_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA333_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA333_0 <= SQL_CACHE_SYMBOL)) || LA333_0 == SQL_NO_CACHE_SYMBOL || LA333_0 == SQL_THREAD_SYMBOL || ((LA333_0 >= STARTS_SYMBOL) && (LA333_0 <= STATUS_SYMBOL)) || ((LA333_0 >= STOP_SYMBOL) && (LA333_0 <= STORAGE_SYMBOL)) || ((LA333_0 >= STRING_SYMBOL) && (LA333_0 <= SUBPARTITION_SYMBOL)) || ((LA333_0 >= SUPER_SYMBOL) && (LA333_0 <= SWITCHES_SYMBOL)) || ((LA333_0 >= TABLESPACE_SYMBOL) && (LA333_0 <= TABLE_NAME_SYMBOL)) || ((LA333_0 >= TEMPORARY_SYMBOL) && (LA333_0 <= TEMPTABLE_SYMBOL)) || ((LA333_0 >= TEXT_SYMBOL) && (LA333_0 <= THAN_SYMBOL)) || ((LA333_0 >= TIMESTAMP_ADD_SYMBOL) && (LA333_0 <= TIME_SYMBOL)) || ((LA333_0 >= TRANSACTION_SYMBOL) && (LA333_0 <= TRIGGERS_SYMBOL)) || ((LA333_0 >= TRUNCATE_SYMBOL) && (LA333_0 <= UDF_RETURNS_SYMBOL)) || ((LA333_0 >= UNCOMMITTED_SYMBOL) && (LA333_0 <= UNDEFINED_SYMBOL)) || ((LA333_0 >= UNDOFILE_SYMBOL) && (LA333_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA333_0 >= UNICODE_SYMBOL) && (LA333_0 <= UNINSTALL_SYMBOL)) || LA333_0 == UNKNOWN_SYMBOL || LA333_0 == UNTIL_SYMBOL || LA333_0 == UPGRADE_SYMBOL || ((LA333_0 >= USER_RESOURCES_SYMBOL) && (LA333_0 <= USE_FRM_SYMBOL)) || LA333_0 == VALUE_SYMBOL || LA333_0 == VARIABLES_SYMBOL || ((LA333_0 >= VIEW_SYMBOL) && (LA333_0 <= WEIGHT_STRING_SYMBOL)) || ((LA333_0 >= WORK_SYMBOL) && (LA333_0 <= WRAPPER_SYMBOL)) || LA333_0 == X509_SYMBOL || ((LA333_0 >= XA_SYMBOL) && (LA333_0 <= XML_SYMBOL)) || LA333_0 == YEAR_SYMBOL))
        	                {
        	                    alt333=1;
        	                }
        	            }
        	            switch (alt333)
        	            {
        	        	case 1:
        	        	    // MySQL.g:959:63: index_list
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_index_list_in_index_hint5010);
        	        	        index_list971=index_list(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleindex_hintEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_list971.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        CLOSE_PAR_SYMBOL972 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_index_hint5013);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_hintEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL972_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL972));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL972_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleindex_hintEx; /* Prevent compiler warnings */
    ruleindex_hintEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end index_hint */

/**
 * $ANTLR start index_hint_type
 * MySQL.g:961:1: index_hint_type : ( FORCE_SYMBOL | IGNORE_SYMBOL );
 */
static MySQLParser_index_hint_type_return
index_hint_type(pMySQLParser ctx)
{
    MySQLParser_index_hint_type_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set973;

    pANTLR3_BASE_TREE set973_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set973       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set973_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:961:16: ( FORCE_SYMBOL | IGNORE_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set973=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == FORCE_SYMBOL || LA(1) == IGNORE_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set973))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto ruleindex_hint_typeEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto ruleindex_hint_typeEx; /* Prevent compiler warnings */
    ruleindex_hint_typeEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end index_hint_type */

/**
 * $ANTLR start key_or_index
 * MySQL.g:966:1: key_or_index : ( KEY_SYMBOL | INDEX_SYMBOL );
 */
static MySQLParser_key_or_index_return
key_or_index(pMySQLParser ctx)
{
    MySQLParser_key_or_index_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set974;

    pANTLR3_BASE_TREE set974_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set974       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set974_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:966:13: ( KEY_SYMBOL | INDEX_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set974=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == INDEX_SYMBOL || LA(1) == KEY_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set974))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto rulekey_or_indexEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto rulekey_or_indexEx; /* Prevent compiler warnings */
    rulekey_or_indexEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end key_or_index */

/**
 * $ANTLR start index_hint_clause
 * MySQL.g:971:1: index_hint_clause : FOR_SYMBOL ( JOIN_SYMBOL | ORDER_SYMBOL BY_SYMBOL | GROUP_SYMBOL BY_SYMBOL ) ;
 */
static MySQLParser_index_hint_clause_return
index_hint_clause(pMySQLParser ctx)
{
    MySQLParser_index_hint_clause_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    FOR_SYMBOL975;
    pANTLR3_COMMON_TOKEN    JOIN_SYMBOL976;
    pANTLR3_COMMON_TOKEN    ORDER_SYMBOL977;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL978;
    pANTLR3_COMMON_TOKEN    GROUP_SYMBOL979;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL980;

    pANTLR3_BASE_TREE FOR_SYMBOL975_tree;
    pANTLR3_BASE_TREE JOIN_SYMBOL976_tree;
    pANTLR3_BASE_TREE ORDER_SYMBOL977_tree;
    pANTLR3_BASE_TREE BY_SYMBOL978_tree;
    pANTLR3_BASE_TREE GROUP_SYMBOL979_tree;
    pANTLR3_BASE_TREE BY_SYMBOL980_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    FOR_SYMBOL975       = NULL;
    JOIN_SYMBOL976       = NULL;
    ORDER_SYMBOL977       = NULL;
    BY_SYMBOL978       = NULL;
    GROUP_SYMBOL979       = NULL;
    BY_SYMBOL980       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    FOR_SYMBOL975_tree   = NULL;
    JOIN_SYMBOL976_tree   = NULL;
    ORDER_SYMBOL977_tree   = NULL;
    BY_SYMBOL978_tree   = NULL;
    GROUP_SYMBOL979_tree   = NULL;
    BY_SYMBOL980_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:971:18: ( FOR_SYMBOL ( JOIN_SYMBOL | ORDER_SYMBOL BY_SYMBOL | GROUP_SYMBOL BY_SYMBOL ) )
        // MySQL.g:972:2: FOR_SYMBOL ( JOIN_SYMBOL | ORDER_SYMBOL BY_SYMBOL | GROUP_SYMBOL BY_SYMBOL )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOR_SYMBOL975 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_index_hint_clause5049);
            if  (HASEXCEPTION())
            {
                goto ruleindex_hint_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            FOR_SYMBOL975_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL975));
            ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL975_tree);
            }

            // MySQL.g:972:13: ( JOIN_SYMBOL | ORDER_SYMBOL BY_SYMBOL | GROUP_SYMBOL BY_SYMBOL )
            {
                int alt335=3;
                switch ( LA(1) )
                {
                case JOIN_SYMBOL:
                	{
                		alt335=1;
                	}
                    break;
                case ORDER_SYMBOL:
                	{
                		alt335=2;
                	}
                    break;
                case GROUP_SYMBOL:
                	{
                		alt335=3;
                	}
                    break;

                default:
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 335;
                    EXCEPTION->state        = 0;


                    goto ruleindex_hint_clauseEx;

                }

                switch (alt335)
                {
            	case 1:
            	    // MySQL.g:972:14: JOIN_SYMBOL
            	    {
            	        JOIN_SYMBOL976 = (pANTLR3_COMMON_TOKEN) MATCHT(JOIN_SYMBOL, &FOLLOW_JOIN_SYMBOL_in_index_hint_clause5052);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleindex_hint_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        JOIN_SYMBOL976_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, JOIN_SYMBOL976));
            	        ADAPTOR->addChild(ADAPTOR, root_0, JOIN_SYMBOL976_tree);
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:972:28: ORDER_SYMBOL BY_SYMBOL
            	    {
            	        ORDER_SYMBOL977 = (pANTLR3_COMMON_TOKEN) MATCHT(ORDER_SYMBOL, &FOLLOW_ORDER_SYMBOL_in_index_hint_clause5056);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleindex_hint_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ORDER_SYMBOL977_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ORDER_SYMBOL977));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ORDER_SYMBOL977_tree);
            	        }

            	        BY_SYMBOL978 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_index_hint_clause5058);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleindex_hint_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        BY_SYMBOL978_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BY_SYMBOL978));
            	        ADAPTOR->addChild(ADAPTOR, root_0, BY_SYMBOL978_tree);
            	        }

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:972:53: GROUP_SYMBOL BY_SYMBOL
            	    {
            	        GROUP_SYMBOL979 = (pANTLR3_COMMON_TOKEN) MATCHT(GROUP_SYMBOL, &FOLLOW_GROUP_SYMBOL_in_index_hint_clause5062);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleindex_hint_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        GROUP_SYMBOL979_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GROUP_SYMBOL979));
            	        ADAPTOR->addChild(ADAPTOR, root_0, GROUP_SYMBOL979_tree);
            	        }

            	        BY_SYMBOL980 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_index_hint_clause5064);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleindex_hint_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        BY_SYMBOL980_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BY_SYMBOL980));
            	        ADAPTOR->addChild(ADAPTOR, root_0, BY_SYMBOL980_tree);
            	        }

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleindex_hint_clauseEx; /* Prevent compiler warnings */
    ruleindex_hint_clauseEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end index_hint_clause */

/**
 * $ANTLR start index_list
 * MySQL.g:975:1: index_list : index_list_element ( COMMA_SYMBOL index_list_element )* ;
 */
static MySQLParser_index_list_return
index_list(pMySQLParser ctx)
{
    MySQLParser_index_list_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL982;
    MySQLParser_index_list_element_return index_list_element981;
    #undef	RETURN_TYPE_index_list_element981
    #define	RETURN_TYPE_index_list_element981 MySQLParser_index_list_element_return

    MySQLParser_index_list_element_return index_list_element983;
    #undef	RETURN_TYPE_index_list_element983
    #define	RETURN_TYPE_index_list_element983 MySQLParser_index_list_element_return

    pANTLR3_BASE_TREE COMMA_SYMBOL982_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL982       = NULL;
    index_list_element981.tree = NULL;

    index_list_element983.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL982_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:975:11: ( index_list_element ( COMMA_SYMBOL index_list_element )* )
        // MySQL.g:976:2: index_list_element ( COMMA_SYMBOL index_list_element )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_index_list_element_in_index_list5074);
            index_list_element981=index_list_element(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleindex_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_list_element981.tree);

            // MySQL.g:976:21: ( COMMA_SYMBOL index_list_element )*

            for (;;)
            {
                int alt336=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt336=1;
                	}
                    break;

                }

                switch (alt336)
                {
            	case 1:
            	    // MySQL.g:976:22: COMMA_SYMBOL index_list_element
            	    {
            	        COMMA_SYMBOL982 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_index_list5077);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleindex_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL982_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL982));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL982_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_index_list_element_in_index_list5079);
            	        index_list_element983=index_list_element(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleindex_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_list_element983.tree);

            	    }
            	    break;

            	default:
            	    goto loop336;	/* break out of the loop */
            	    break;
                }
            }
            loop336: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto ruleindex_listEx; /* Prevent compiler warnings */
    ruleindex_listEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end index_list */

/**
 * $ANTLR start index_list_element
 * MySQL.g:979:1: index_list_element : ( identifier | PRIMARY_SYMBOL );
 */
static MySQLParser_index_list_element_return
index_list_element(pMySQLParser ctx)
{
    MySQLParser_index_list_element_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    PRIMARY_SYMBOL985;
    MySQLParser_identifier_return identifier984;
    #undef	RETURN_TYPE_identifier984
    #define	RETURN_TYPE_identifier984 MySQLParser_identifier_return

    pANTLR3_BASE_TREE PRIMARY_SYMBOL985_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PRIMARY_SYMBOL985       = NULL;
    identifier984.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PRIMARY_SYMBOL985_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:979:19: ( identifier | PRIMARY_SYMBOL )

            ANTLR3_UINT32 alt337;

            alt337=2;

            {
                int LA337_0 = LA(1);
                if ( (LA337_0 == BACK_TICK_QUOTED_ID || LA337_0 == IDENTIFIER))
                {
                    alt337=1;
                }
                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA337_0 == DOUBLE_QUOTED_TEXT))
                {
                    alt337=1;
                }
                else if ( (((LA337_0 >= ACTION_SYMBOL) && (LA337_0 <= ADDDATE_SYMBOL)) || ((LA337_0 >= AFTER_SYMBOL) && (LA337_0 <= ALGORITHM_SYMBOL)) || LA337_0 == ANALYZE_SYMBOL || ((LA337_0 >= ANY_SYMBOL) && (LA337_0 <= ASCII_SYMBOL)) || ((LA337_0 >= AT_SYMBOL) && (LA337_0 <= BACKUP_SYMBOL)) || LA337_0 == BEGIN_SYMBOL || LA337_0 == BINLOG_SYMBOL || LA337_0 == BIT_SYMBOL || ((LA337_0 >= BLOCK_SYMBOL) && (LA337_0 <= BOOL_SYMBOL)) || ((LA337_0 >= BTREE_SYMBOL) && (LA337_0 <= BYTE_SYMBOL)) || LA337_0 == CACHE_SYMBOL || LA337_0 == CASCADED_SYMBOL || ((LA337_0 >= CATALOG_NAME_SYMBOL) && (LA337_0 <= CHANGED_SYMBOL)) || LA337_0 == CHARSET_SYMBOL || LA337_0 == CHECKSUM_SYMBOL || ((LA337_0 >= CIPHER_SYMBOL) && (LA337_0 <= CLIENT_SYMBOL)) || ((LA337_0 >= CLOSE_SYMBOL) && (LA337_0 <= CODE_SYMBOL)) || LA337_0 == COLLATION_SYMBOL || ((LA337_0 >= COLUMNS_SYMBOL) && (LA337_0 <= COLUMN_NAME_SYMBOL)) || ((LA337_0 >= COMMENT_SYMBOL) && (LA337_0 <= COMPRESSED_SYMBOL)) || LA337_0 == CONCURRENT_SYMBOL || ((LA337_0 >= CONNECTION_SYMBOL) && (LA337_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA337_0 >= CONTAINS_SYMBOL) && (LA337_0 <= CONTEXT_SYMBOL)) || LA337_0 == CONTRIBUTORS_SYMBOL || LA337_0 == CPU_SYMBOL || LA337_0 == CUBE_SYMBOL || LA337_0 == CURRENT_SYMBOL || LA337_0 == CURSOR_NAME_SYMBOL || ((LA337_0 >= DATAFILE_SYMBOL) && (LA337_0 <= DATETIME_SYMBOL)) || LA337_0 == DATE_SYMBOL || ((LA337_0 >= DAY_SYMBOL) && (LA337_0 <= DEALLOCATE_SYMBOL)) || LA337_0 == DEFAULT_AUTH_SYMBOL || LA337_0 == DEFINER_SYMBOL || LA337_0 == DELAY_KEY_WRITE_SYMBOL || LA337_0 == DES_KEY_FILE_SYMBOL || LA337_0 == DIAGNOSTICS_SYMBOL || ((LA337_0 >= DIRECTORY_SYMBOL) && (LA337_0 <= DISK_SYMBOL)) || LA337_0 == DO_SYMBOL || ((LA337_0 >= DUMPFILE_SYMBOL) && (LA337_0 <= DYNAMIC_SYMBOL)) || LA337_0 == ENABLE_SYMBOL || LA337_0 == ENDS_SYMBOL || ((LA337_0 >= END_SYMBOL) && (LA337_0 <= ENUM_SYMBOL)) || ((LA337_0 >= ERRORS_SYMBOL) && (LA337_0 <= ERROR_SYMBOL)) || ((LA337_0 >= ESCAPE_SYMBOL) && (LA337_0 <= EVERY_SYMBOL)) || LA337_0 == EXECUTE_SYMBOL || LA337_0 == EXPANSION_SYMBOL || LA337_0 == EXPORT_SYMBOL || ((LA337_0 >= EXTENDED_SYMBOL) && (LA337_0 <= EXTENT_SIZE_SYMBOL)) || ((LA337_0 >= FAST_SYMBOL) && (LA337_0 <= FAULTS_SYMBOL)) || ((LA337_0 >= FILE_SYMBOL) && (LA337_0 <= FIXED_SYMBOL)) || LA337_0 == FLUSH_SYMBOL || LA337_0 == FORMAT_SYMBOL || LA337_0 == FOUND_SYMBOL || LA337_0 == FULL_SYMBOL || ((LA337_0 >= FUNCTION_SYMBOL) && (LA337_0 <= GET_FORMAT_SYMBOL)) || ((LA337_0 >= GLOBAL_SYMBOL) && (LA337_0 <= GRANTS_SYMBOL)) || ((LA337_0 >= HANDLER_SYMBOL) && (LA337_0 <= HASH_SYMBOL)) || LA337_0 == HELP_SYMBOL || ((LA337_0 >= HOSTS_SYMBOL) && (LA337_0 <= HOST_SYMBOL)) || ((LA337_0 >= HOUR_SYMBOL) && (LA337_0 <= IDENTIFIED_SYMBOL)) || LA337_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA337_0 >= IMPORT_SYMBOL) && (LA337_0 <= INDEXES_SYMBOL)) || LA337_0 == INITIAL_SIZE_SYMBOL || LA337_0 == INNODB_SYMBOL || LA337_0 == INSERT_METHOD_SYMBOL || LA337_0 == INSTALL_SYMBOL || LA337_0 == INVOKER_SYMBOL || LA337_0 == IO_SYMBOL || ((LA337_0 >= IPC_SYMBOL) && (LA337_0 <= ISSUER_SYMBOL)) || LA337_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA337_0 >= LANGUAGE_SYMBOL) && (LA337_0 <= LAST_SYMBOL)) || LA337_0 == LEAVES_SYMBOL || LA337_0 == LESS_SYMBOL || LA337_0 == LEVEL_SYMBOL || LA337_0 == LINESTRING_SYMBOL || LA337_0 == LIST_SYMBOL || LA337_0 == LOCAL_SYMBOL || LA337_0 == LOCKS_SYMBOL || LA337_0 == LOGFILE_SYMBOL || LA337_0 == LOGS_SYMBOL || LA337_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA337_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA337_0 <= MASTER_SSL_SYMBOL)) || ((LA337_0 >= MASTER_SYMBOL) && (LA337_0 <= MASTER_USER_SYMBOL)) || ((LA337_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA337_0 <= MAX_SIZE_SYMBOL)) || ((LA337_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA337_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA337_0 >= MEDIUM_SYMBOL) && (LA337_0 <= MICROSECOND_SYMBOL)) || LA337_0 == MIGRATE_SYMBOL || ((LA337_0 >= MINUTE_SYMBOL) && (LA337_0 <= MIN_ROWS_SYMBOL)) || LA337_0 == MODE_SYMBOL || LA337_0 == MODIFY_SYMBOL || ((LA337_0 >= MONTH_SYMBOL) && (LA337_0 <= MULTILINESTRING_SYMBOL)) || ((LA337_0 >= MULTIPOINT_SYMBOL) && (LA337_0 <= MULTIPOLYGON_SYMBOL)) || ((LA337_0 >= MUTEX_SYMBOL) && (LA337_0 <= NATIONAL_SYMBOL)) || LA337_0 == NCHAR_SYMBOL || LA337_0 == NDBCLUSTER_SYMBOL || ((LA337_0 >= NEW_SYMBOL) && (LA337_0 <= NONE_SYMBOL)) || ((LA337_0 >= NO_SYMBOL) && (LA337_0 <= NO_WAIT_SYMBOL)) || LA337_0 == NUMBER_SYMBOL || LA337_0 == NVARCHAR_SYMBOL || ((LA337_0 >= OFFSET_SYMBOL) && (LA337_0 <= ONE_SYMBOL)) || LA337_0 == OPEN_SYMBOL || LA337_0 == OPTIONS_SYMBOL || ((LA337_0 >= OWNER_SYMBOL) && (LA337_0 <= PAGE_SYMBOL)) || ((LA337_0 >= PARSER_SYMBOL) && (LA337_0 <= PARTITION_SYMBOL)) || ((LA337_0 >= PASSWORD_SYMBOL) && (LA337_0 <= PLUGIN_SYMBOL)) || ((LA337_0 >= POINT_SYMBOL) && (LA337_0 <= PORT_SYMBOL)) || ((LA337_0 >= PREPARE_SYMBOL) && (LA337_0 <= PREV_SYMBOL)) || LA337_0 == PRIVILEGES_SYMBOL || ((LA337_0 >= PROCESSLIST_SYMBOL) && (LA337_0 <= PROXY_SYMBOL)) || ((LA337_0 >= QUARTER_SYMBOL) && (LA337_0 <= QUICK_SYMBOL)) || LA337_0 == READ_ONLY_SYMBOL || ((LA337_0 >= REBUILD_SYMBOL) && (LA337_0 <= REDUNDANT_SYMBOL)) || ((LA337_0 >= RELAYLOG_SYMBOL) && (LA337_0 <= RELAY_THREAD_SYMBOL)) || ((LA337_0 >= RELOAD_SYMBOL) && (LA337_0 <= REMOVE_SYMBOL)) || ((LA337_0 >= REORGANIZE_SYMBOL) && (LA337_0 <= REPEATABLE_SYMBOL)) || LA337_0 == REPLICATION_SYMBOL || LA337_0 == RESET_SYMBOL || LA337_0 == RESTORE_SYMBOL || ((LA337_0 >= RESUME_SYMBOL) && (LA337_0 <= RETURNS_SYMBOL)) || LA337_0 == REVERSE_SYMBOL || ((LA337_0 >= ROLLBACK_SYMBOL) && (LA337_0 <= SCHEDULE_SYMBOL)) || LA337_0 == SCHEMA_NAME_SYMBOL || ((LA337_0 >= SECOND_SYMBOL) && (LA337_0 <= SECURITY_SYMBOL)) || ((LA337_0 >= SERIALIZABLE_SYMBOL) && (LA337_0 <= SERIAL_SYMBOL)) || ((LA337_0 >= SERVER_SYMBOL) && (LA337_0 <= SESSION_SYMBOL)) || LA337_0 == SHARE_SYMBOL || LA337_0 == SHUTDOWN_SYMBOL || ((LA337_0 >= SIGNED_SYMBOL) && (LA337_0 <= SIMPLE_SYMBOL)) || ((LA337_0 >= SLAVE_SYMBOL) && (LA337_0 <= SLOW_SYMBOL)) || ((LA337_0 >= SNAPSHOT_SYMBOL) && (LA337_0 <= SOURCE_SYMBOL)) || ((LA337_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA337_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA337_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA337_0 <= SQL_CACHE_SYMBOL)) || LA337_0 == SQL_NO_CACHE_SYMBOL || LA337_0 == SQL_THREAD_SYMBOL || ((LA337_0 >= STARTS_SYMBOL) && (LA337_0 <= STATUS_SYMBOL)) || ((LA337_0 >= STOP_SYMBOL) && (LA337_0 <= STORAGE_SYMBOL)) || ((LA337_0 >= STRING_SYMBOL) && (LA337_0 <= SUBPARTITION_SYMBOL)) || ((LA337_0 >= SUPER_SYMBOL) && (LA337_0 <= SWITCHES_SYMBOL)) || ((LA337_0 >= TABLESPACE_SYMBOL) && (LA337_0 <= TABLE_NAME_SYMBOL)) || ((LA337_0 >= TEMPORARY_SYMBOL) && (LA337_0 <= TEMPTABLE_SYMBOL)) || ((LA337_0 >= TEXT_SYMBOL) && (LA337_0 <= THAN_SYMBOL)) || ((LA337_0 >= TIMESTAMP_ADD_SYMBOL) && (LA337_0 <= TIME_SYMBOL)) || ((LA337_0 >= TRANSACTION_SYMBOL) && (LA337_0 <= TRIGGERS_SYMBOL)) || ((LA337_0 >= TRUNCATE_SYMBOL) && (LA337_0 <= UDF_RETURNS_SYMBOL)) || ((LA337_0 >= UNCOMMITTED_SYMBOL) && (LA337_0 <= UNDEFINED_SYMBOL)) || ((LA337_0 >= UNDOFILE_SYMBOL) && (LA337_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA337_0 >= UNICODE_SYMBOL) && (LA337_0 <= UNINSTALL_SYMBOL)) || LA337_0 == UNKNOWN_SYMBOL || LA337_0 == UNTIL_SYMBOL || LA337_0 == UPGRADE_SYMBOL || ((LA337_0 >= USER_RESOURCES_SYMBOL) && (LA337_0 <= USE_FRM_SYMBOL)) || LA337_0 == VALUE_SYMBOL || LA337_0 == VARIABLES_SYMBOL || ((LA337_0 >= VIEW_SYMBOL) && (LA337_0 <= WEIGHT_STRING_SYMBOL)) || ((LA337_0 >= WORK_SYMBOL) && (LA337_0 <= WRAPPER_SYMBOL)) || LA337_0 == X509_SYMBOL || ((LA337_0 >= XA_SYMBOL) && (LA337_0 <= XML_SYMBOL)) || LA337_0 == YEAR_SYMBOL))
                {
                    alt337=1;
                }
                else if ( (LA337_0 == PRIMARY_SYMBOL))
                {
                    alt337=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 337;
                    EXCEPTION->state        = 0;


                    goto ruleindex_list_elementEx;

                }
            }
            switch (alt337)
            {
        	case 1:
        	    // MySQL.g:980:2: identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_identifier_in_index_list_element5090);
        	        identifier984=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_list_elementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier984.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:981:4: PRIMARY_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PRIMARY_SYMBOL985 = (pANTLR3_COMMON_TOKEN) MATCHT(PRIMARY_SYMBOL, &FOLLOW_PRIMARY_SYMBOL_in_index_list_element5095);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_list_elementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PRIMARY_SYMBOL985_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PRIMARY_SYMBOL985));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PRIMARY_SYMBOL985_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleindex_list_elementEx; /* Prevent compiler warnings */
    ruleindex_list_elementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end index_list_element */

/**
 * $ANTLR start update_statement
 * MySQL.g:986:1: update_statement : UPDATE_SYMBOL ( LOW_PRIORITY_SYMBOL )? ( IGNORE_SYMBOL )? table_references SET_SYMBOL column_assignment_list_with_default ( where_clause )? ( order_by_clause )? ( limit_clause )? ;
 */
static MySQLParser_update_statement_return
update_statement(pMySQLParser ctx)
{
    MySQLParser_update_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    UPDATE_SYMBOL986;
    pANTLR3_COMMON_TOKEN    LOW_PRIORITY_SYMBOL987;
    pANTLR3_COMMON_TOKEN    IGNORE_SYMBOL988;
    pANTLR3_COMMON_TOKEN    SET_SYMBOL990;
    MySQLParser_table_references_return table_references989;
    #undef	RETURN_TYPE_table_references989
    #define	RETURN_TYPE_table_references989 MySQLParser_table_references_return

    MySQLParser_column_assignment_list_with_default_return column_assignment_list_with_default991;
    #undef	RETURN_TYPE_column_assignment_list_with_default991
    #define	RETURN_TYPE_column_assignment_list_with_default991 MySQLParser_column_assignment_list_with_default_return

    MySQLParser_where_clause_return where_clause992;
    #undef	RETURN_TYPE_where_clause992
    #define	RETURN_TYPE_where_clause992 MySQLParser_where_clause_return

    MySQLParser_order_by_clause_return order_by_clause993;
    #undef	RETURN_TYPE_order_by_clause993
    #define	RETURN_TYPE_order_by_clause993 MySQLParser_order_by_clause_return

    MySQLParser_limit_clause_return limit_clause994;
    #undef	RETURN_TYPE_limit_clause994
    #define	RETURN_TYPE_limit_clause994 MySQLParser_limit_clause_return

    pANTLR3_BASE_TREE UPDATE_SYMBOL986_tree;
    pANTLR3_BASE_TREE LOW_PRIORITY_SYMBOL987_tree;
    pANTLR3_BASE_TREE IGNORE_SYMBOL988_tree;
    pANTLR3_BASE_TREE SET_SYMBOL990_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    UPDATE_SYMBOL986       = NULL;
    LOW_PRIORITY_SYMBOL987       = NULL;
    IGNORE_SYMBOL988       = NULL;
    SET_SYMBOL990       = NULL;
    table_references989.tree = NULL;

    column_assignment_list_with_default991.tree = NULL;

    where_clause992.tree = NULL;

    order_by_clause993.tree = NULL;

    limit_clause994.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    UPDATE_SYMBOL986_tree   = NULL;
    LOW_PRIORITY_SYMBOL987_tree   = NULL;
    IGNORE_SYMBOL988_tree   = NULL;
    SET_SYMBOL990_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:986:17: ( UPDATE_SYMBOL ( LOW_PRIORITY_SYMBOL )? ( IGNORE_SYMBOL )? table_references SET_SYMBOL column_assignment_list_with_default ( where_clause )? ( order_by_clause )? ( limit_clause )? )
        // MySQL.g:987:2: UPDATE_SYMBOL ( LOW_PRIORITY_SYMBOL )? ( IGNORE_SYMBOL )? table_references SET_SYMBOL column_assignment_list_with_default ( where_clause )? ( order_by_clause )? ( limit_clause )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            UPDATE_SYMBOL986 = (pANTLR3_COMMON_TOKEN) MATCHT(UPDATE_SYMBOL, &FOLLOW_UPDATE_SYMBOL_in_update_statement5106);
            if  (HASEXCEPTION())
            {
                goto ruleupdate_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            UPDATE_SYMBOL986_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UPDATE_SYMBOL986));
            ADAPTOR->addChild(ADAPTOR, root_0, UPDATE_SYMBOL986_tree);
            }

            // MySQL.g:987:16: ( LOW_PRIORITY_SYMBOL )?
            {
                int alt338=2;
                switch ( LA(1) )
                {
                    case LOW_PRIORITY_SYMBOL:
                    	{
                    		alt338=1;
                    	}
                        break;
                }

                switch (alt338)
                {
            	case 1:
            	    // MySQL.g:987:16: LOW_PRIORITY_SYMBOL
            	    {
            	        LOW_PRIORITY_SYMBOL987 = (pANTLR3_COMMON_TOKEN) MATCHT(LOW_PRIORITY_SYMBOL, &FOLLOW_LOW_PRIORITY_SYMBOL_in_update_statement5108);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleupdate_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        LOW_PRIORITY_SYMBOL987_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOW_PRIORITY_SYMBOL987));
            	        ADAPTOR->addChild(ADAPTOR, root_0, LOW_PRIORITY_SYMBOL987_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:987:37: ( IGNORE_SYMBOL )?
            {
                int alt339=2;
                switch ( LA(1) )
                {
                    case IGNORE_SYMBOL:
                    	{
                    		alt339=1;
                    	}
                        break;
                }

                switch (alt339)
                {
            	case 1:
            	    // MySQL.g:987:37: IGNORE_SYMBOL
            	    {
            	        IGNORE_SYMBOL988 = (pANTLR3_COMMON_TOKEN) MATCHT(IGNORE_SYMBOL, &FOLLOW_IGNORE_SYMBOL_in_update_statement5111);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleupdate_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        IGNORE_SYMBOL988_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IGNORE_SYMBOL988));
            	        ADAPTOR->addChild(ADAPTOR, root_0, IGNORE_SYMBOL988_tree);
            	        }

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_table_references_in_update_statement5114);
            table_references989=table_references(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleupdate_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_references989.tree);

            SET_SYMBOL990 = (pANTLR3_COMMON_TOKEN) MATCHT(SET_SYMBOL, &FOLLOW_SET_SYMBOL_in_update_statement5118);
            if  (HASEXCEPTION())
            {
                goto ruleupdate_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SET_SYMBOL990_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SET_SYMBOL990));
            ADAPTOR->addChild(ADAPTOR, root_0, SET_SYMBOL990_tree);
            }

            FOLLOWPUSH(FOLLOW_column_assignment_list_with_default_in_update_statement5120);
            column_assignment_list_with_default991=column_assignment_list_with_default(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleupdate_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, column_assignment_list_with_default991.tree);

            // MySQL.g:988:50: ( where_clause )?
            {
                int alt340=2;
                switch ( LA(1) )
                {
                    case WHERE_SYMBOL:
                    	{
                    		alt340=1;
                    	}
                        break;
                }

                switch (alt340)
                {
            	case 1:
            	    // MySQL.g:988:50: where_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_where_clause_in_update_statement5122);
            	        where_clause992=where_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleupdate_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, where_clause992.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:988:64: ( order_by_clause )?
            {
                int alt341=2;
                switch ( LA(1) )
                {
                    case ORDER_SYMBOL:
                    	{
                    		alt341=1;
                    	}
                        break;
                }

                switch (alt341)
                {
            	case 1:
            	    // MySQL.g:988:64: order_by_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_order_by_clause_in_update_statement5125);
            	        order_by_clause993=order_by_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleupdate_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, order_by_clause993.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:988:81: ( limit_clause )?
            {
                int alt342=2;
                switch ( LA(1) )
                {
                    case LIMIT_SYMBOL:
                    	{
                    		alt342=1;
                    	}
                        break;
                }

                switch (alt342)
                {
            	case 1:
            	    // MySQL.g:988:81: limit_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_limit_clause_in_update_statement5128);
            	        limit_clause994=limit_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleupdate_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_clause994.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleupdate_statementEx; /* Prevent compiler warnings */
    ruleupdate_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end update_statement */

/**
 * $ANTLR start transaction_or_locking_statement
 * MySQL.g:993:1: transaction_or_locking_statement : ( transaction_statement | savepoint_statement | lock_statement | xa_statement );
 */
static MySQLParser_transaction_or_locking_statement_return
transaction_or_locking_statement(pMySQLParser ctx)
{
    MySQLParser_transaction_or_locking_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_transaction_statement_return transaction_statement995;
    #undef	RETURN_TYPE_transaction_statement995
    #define	RETURN_TYPE_transaction_statement995 MySQLParser_transaction_statement_return

    MySQLParser_savepoint_statement_return savepoint_statement996;
    #undef	RETURN_TYPE_savepoint_statement996
    #define	RETURN_TYPE_savepoint_statement996 MySQLParser_savepoint_statement_return

    MySQLParser_lock_statement_return lock_statement997;
    #undef	RETURN_TYPE_lock_statement997
    #define	RETURN_TYPE_lock_statement997 MySQLParser_lock_statement_return

    MySQLParser_xa_statement_return xa_statement998;
    #undef	RETURN_TYPE_xa_statement998
    #define	RETURN_TYPE_xa_statement998 MySQLParser_xa_statement_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    transaction_statement995.tree = NULL;

    savepoint_statement996.tree = NULL;

    lock_statement997.tree = NULL;

    xa_statement998.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:993:33: ( transaction_statement | savepoint_statement | lock_statement | xa_statement )

            ANTLR3_UINT32 alt343;

            alt343=4;

            switch ( LA(1) )
            {
            case BEGIN_SYMBOL:
            case COMMIT_SYMBOL:
            case ROLLBACK_SYMBOL:
            case START_SYMBOL:
            	{
            		alt343=1;
            	}
                break;
            case RELEASE_SYMBOL:
            case SAVEPOINT_SYMBOL:
            	{
            		alt343=2;
            	}
                break;
            case LOCK_SYMBOL:
            case UNLOCK_SYMBOL:
            	{
            		alt343=3;
            	}
                break;
            case XA_SYMBOL:
            	{
            		alt343=4;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 343;
                EXCEPTION->state        = 0;


                goto ruletransaction_or_locking_statementEx;

            }

            switch (alt343)
            {
        	case 1:
        	    // MySQL.g:994:2: transaction_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_transaction_statement_in_transaction_or_locking_statement5140);
        	        transaction_statement995=transaction_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletransaction_or_locking_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, transaction_statement995.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:995:4: savepoint_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_savepoint_statement_in_transaction_or_locking_statement5145);
        	        savepoint_statement996=savepoint_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletransaction_or_locking_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, savepoint_statement996.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:996:4: lock_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_lock_statement_in_transaction_or_locking_statement5150);
        	        lock_statement997=lock_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletransaction_or_locking_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, lock_statement997.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:997:4: xa_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_xa_statement_in_transaction_or_locking_statement5155);
        	        xa_statement998=xa_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletransaction_or_locking_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, xa_statement998.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruletransaction_or_locking_statementEx; /* Prevent compiler warnings */
    ruletransaction_or_locking_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end transaction_or_locking_statement */

/**
 * $ANTLR start transaction_statement
 * MySQL.g:1000:1: transaction_statement : ( START_SYMBOL TRANSACTION_SYMBOL ( transaction_characteristic )* | BEGIN_SYMBOL ( WORK_SYMBOL )? | COMMIT_SYMBOL ( WORK_SYMBOL )? ( AND_SYMBOL ( NO_SYMBOL )? CHAIN_SYMBOL )? ( ( NO_SYMBOL )? RELEASE_SYMBOL )? | ROLLBACK_SYMBOL ( WORK_SYMBOL )? ( ( AND_SYMBOL ( NO_SYMBOL )? CHAIN_SYMBOL )? ( ( NO_SYMBOL )? RELEASE_SYMBOL )? | TO_SYMBOL ( SAVEPOINT_SYMBOL )? pure_identifier ) );
 */
static MySQLParser_transaction_statement_return
transaction_statement(pMySQLParser ctx)
{
    MySQLParser_transaction_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    START_SYMBOL999;
    pANTLR3_COMMON_TOKEN    TRANSACTION_SYMBOL1000;
    pANTLR3_COMMON_TOKEN    BEGIN_SYMBOL1002;
    pANTLR3_COMMON_TOKEN    WORK_SYMBOL1003;
    pANTLR3_COMMON_TOKEN    COMMIT_SYMBOL1004;
    pANTLR3_COMMON_TOKEN    WORK_SYMBOL1005;
    pANTLR3_COMMON_TOKEN    AND_SYMBOL1006;
    pANTLR3_COMMON_TOKEN    NO_SYMBOL1007;
    pANTLR3_COMMON_TOKEN    CHAIN_SYMBOL1008;
    pANTLR3_COMMON_TOKEN    NO_SYMBOL1009;
    pANTLR3_COMMON_TOKEN    RELEASE_SYMBOL1010;
    pANTLR3_COMMON_TOKEN    ROLLBACK_SYMBOL1011;
    pANTLR3_COMMON_TOKEN    WORK_SYMBOL1012;
    pANTLR3_COMMON_TOKEN    AND_SYMBOL1013;
    pANTLR3_COMMON_TOKEN    NO_SYMBOL1014;
    pANTLR3_COMMON_TOKEN    CHAIN_SYMBOL1015;
    pANTLR3_COMMON_TOKEN    NO_SYMBOL1016;
    pANTLR3_COMMON_TOKEN    RELEASE_SYMBOL1017;
    pANTLR3_COMMON_TOKEN    TO_SYMBOL1018;
    pANTLR3_COMMON_TOKEN    SAVEPOINT_SYMBOL1019;
    MySQLParser_transaction_characteristic_return transaction_characteristic1001;
    #undef	RETURN_TYPE_transaction_characteristic1001
    #define	RETURN_TYPE_transaction_characteristic1001 MySQLParser_transaction_characteristic_return

    MySQLParser_pure_identifier_return pure_identifier1020;
    #undef	RETURN_TYPE_pure_identifier1020
    #define	RETURN_TYPE_pure_identifier1020 MySQLParser_pure_identifier_return

    pANTLR3_BASE_TREE START_SYMBOL999_tree;
    pANTLR3_BASE_TREE TRANSACTION_SYMBOL1000_tree;
    pANTLR3_BASE_TREE BEGIN_SYMBOL1002_tree;
    pANTLR3_BASE_TREE WORK_SYMBOL1003_tree;
    pANTLR3_BASE_TREE COMMIT_SYMBOL1004_tree;
    pANTLR3_BASE_TREE WORK_SYMBOL1005_tree;
    pANTLR3_BASE_TREE AND_SYMBOL1006_tree;
    pANTLR3_BASE_TREE NO_SYMBOL1007_tree;
    pANTLR3_BASE_TREE CHAIN_SYMBOL1008_tree;
    pANTLR3_BASE_TREE NO_SYMBOL1009_tree;
    pANTLR3_BASE_TREE RELEASE_SYMBOL1010_tree;
    pANTLR3_BASE_TREE ROLLBACK_SYMBOL1011_tree;
    pANTLR3_BASE_TREE WORK_SYMBOL1012_tree;
    pANTLR3_BASE_TREE AND_SYMBOL1013_tree;
    pANTLR3_BASE_TREE NO_SYMBOL1014_tree;
    pANTLR3_BASE_TREE CHAIN_SYMBOL1015_tree;
    pANTLR3_BASE_TREE NO_SYMBOL1016_tree;
    pANTLR3_BASE_TREE RELEASE_SYMBOL1017_tree;
    pANTLR3_BASE_TREE TO_SYMBOL1018_tree;
    pANTLR3_BASE_TREE SAVEPOINT_SYMBOL1019_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    START_SYMBOL999       = NULL;
    TRANSACTION_SYMBOL1000       = NULL;
    BEGIN_SYMBOL1002       = NULL;
    WORK_SYMBOL1003       = NULL;
    COMMIT_SYMBOL1004       = NULL;
    WORK_SYMBOL1005       = NULL;
    AND_SYMBOL1006       = NULL;
    NO_SYMBOL1007       = NULL;
    CHAIN_SYMBOL1008       = NULL;
    NO_SYMBOL1009       = NULL;
    RELEASE_SYMBOL1010       = NULL;
    ROLLBACK_SYMBOL1011       = NULL;
    WORK_SYMBOL1012       = NULL;
    AND_SYMBOL1013       = NULL;
    NO_SYMBOL1014       = NULL;
    CHAIN_SYMBOL1015       = NULL;
    NO_SYMBOL1016       = NULL;
    RELEASE_SYMBOL1017       = NULL;
    TO_SYMBOL1018       = NULL;
    SAVEPOINT_SYMBOL1019       = NULL;
    transaction_characteristic1001.tree = NULL;

    pure_identifier1020.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    START_SYMBOL999_tree   = NULL;
    TRANSACTION_SYMBOL1000_tree   = NULL;
    BEGIN_SYMBOL1002_tree   = NULL;
    WORK_SYMBOL1003_tree   = NULL;
    COMMIT_SYMBOL1004_tree   = NULL;
    WORK_SYMBOL1005_tree   = NULL;
    AND_SYMBOL1006_tree   = NULL;
    NO_SYMBOL1007_tree   = NULL;
    CHAIN_SYMBOL1008_tree   = NULL;
    NO_SYMBOL1009_tree   = NULL;
    RELEASE_SYMBOL1010_tree   = NULL;
    ROLLBACK_SYMBOL1011_tree   = NULL;
    WORK_SYMBOL1012_tree   = NULL;
    AND_SYMBOL1013_tree   = NULL;
    NO_SYMBOL1014_tree   = NULL;
    CHAIN_SYMBOL1015_tree   = NULL;
    NO_SYMBOL1016_tree   = NULL;
    RELEASE_SYMBOL1017_tree   = NULL;
    TO_SYMBOL1018_tree   = NULL;
    SAVEPOINT_SYMBOL1019_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1000:22: ( START_SYMBOL TRANSACTION_SYMBOL ( transaction_characteristic )* | BEGIN_SYMBOL ( WORK_SYMBOL )? | COMMIT_SYMBOL ( WORK_SYMBOL )? ( AND_SYMBOL ( NO_SYMBOL )? CHAIN_SYMBOL )? ( ( NO_SYMBOL )? RELEASE_SYMBOL )? | ROLLBACK_SYMBOL ( WORK_SYMBOL )? ( ( AND_SYMBOL ( NO_SYMBOL )? CHAIN_SYMBOL )? ( ( NO_SYMBOL )? RELEASE_SYMBOL )? | TO_SYMBOL ( SAVEPOINT_SYMBOL )? pure_identifier ) )

            ANTLR3_UINT32 alt358;

            alt358=4;

            switch ( LA(1) )
            {
            case START_SYMBOL:
            	{
            		alt358=1;
            	}
                break;
            case BEGIN_SYMBOL:
            	{
            		alt358=2;
            	}
                break;
            case COMMIT_SYMBOL:
            	{
            		alt358=3;
            	}
                break;
            case ROLLBACK_SYMBOL:
            	{
            		alt358=4;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 358;
                EXCEPTION->state        = 0;


                goto ruletransaction_statementEx;

            }

            switch (alt358)
            {
        	case 1:
        	    // MySQL.g:1001:2: START_SYMBOL TRANSACTION_SYMBOL ( transaction_characteristic )*
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        START_SYMBOL999 = (pANTLR3_COMMON_TOKEN) MATCHT(START_SYMBOL, &FOLLOW_START_SYMBOL_in_transaction_statement5164);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletransaction_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        START_SYMBOL999_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, START_SYMBOL999));
        	        ADAPTOR->addChild(ADAPTOR, root_0, START_SYMBOL999_tree);
        	        }

        	        TRANSACTION_SYMBOL1000 = (pANTLR3_COMMON_TOKEN) MATCHT(TRANSACTION_SYMBOL, &FOLLOW_TRANSACTION_SYMBOL_in_transaction_statement5166);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletransaction_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TRANSACTION_SYMBOL1000_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TRANSACTION_SYMBOL1000));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TRANSACTION_SYMBOL1000_tree);
        	        }

        	        // MySQL.g:1001:34: ( transaction_characteristic )*

        	        for (;;)
        	        {
        	            int alt344=2;
        	            {
        	               /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
        	                */
        	                int LA344_0 = LA(1);
        	                if ( (LA344_0 == WITH_SYMBOL))
        	                {
        	                    alt344=1;
        	                }
        	                else if ( ((SERVER_VERSION >= 50605)) && (LA344_0 == READ_SYMBOL))
        	                {
        	                    alt344=1;
        	                }

        	            }
        	            switch (alt344)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1001:34: transaction_characteristic
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_transaction_characteristic_in_transaction_statement5168);
        	        	        transaction_characteristic1001=transaction_characteristic(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletransaction_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, transaction_characteristic1001.tree);

        	        	    }
        	        	    break;

        	        	default:
        	        	    goto loop344;	/* break out of the loop */
        	        	    break;
        	            }
        	        }
        	        loop344: ; /* Jump out to here if this rule does not match */


        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1002:4: BEGIN_SYMBOL ( WORK_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BEGIN_SYMBOL1002 = (pANTLR3_COMMON_TOKEN) MATCHT(BEGIN_SYMBOL, &FOLLOW_BEGIN_SYMBOL_in_transaction_statement5174);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletransaction_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BEGIN_SYMBOL1002_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BEGIN_SYMBOL1002));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BEGIN_SYMBOL1002_tree);
        	        }

        	        // MySQL.g:1002:17: ( WORK_SYMBOL )?
        	        {
        	            int alt345=2;
        	            switch ( LA(1) )
        	            {
        	                case WORK_SYMBOL:
        	                	{
        	                		alt345=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt345)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1002:17: WORK_SYMBOL
        	        	    {
        	        	        WORK_SYMBOL1003 = (pANTLR3_COMMON_TOKEN) MATCHT(WORK_SYMBOL, &FOLLOW_WORK_SYMBOL_in_transaction_statement5176);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletransaction_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        WORK_SYMBOL1003_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WORK_SYMBOL1003));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, WORK_SYMBOL1003_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1003:4: COMMIT_SYMBOL ( WORK_SYMBOL )? ( AND_SYMBOL ( NO_SYMBOL )? CHAIN_SYMBOL )? ( ( NO_SYMBOL )? RELEASE_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        COMMIT_SYMBOL1004 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMIT_SYMBOL, &FOLLOW_COMMIT_SYMBOL_in_transaction_statement5182);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletransaction_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMIT_SYMBOL1004_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMIT_SYMBOL1004));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMIT_SYMBOL1004_tree);
        	        }

        	        // MySQL.g:1003:18: ( WORK_SYMBOL )?
        	        {
        	            int alt346=2;
        	            switch ( LA(1) )
        	            {
        	                case WORK_SYMBOL:
        	                	{
        	                		alt346=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt346)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1003:18: WORK_SYMBOL
        	        	    {
        	        	        WORK_SYMBOL1005 = (pANTLR3_COMMON_TOKEN) MATCHT(WORK_SYMBOL, &FOLLOW_WORK_SYMBOL_in_transaction_statement5184);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletransaction_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        WORK_SYMBOL1005_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WORK_SYMBOL1005));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, WORK_SYMBOL1005_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:1003:31: ( AND_SYMBOL ( NO_SYMBOL )? CHAIN_SYMBOL )?
        	        {
        	            int alt348=2;
        	            switch ( LA(1) )
        	            {
        	                case AND_SYMBOL:
        	                	{
        	                		alt348=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt348)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1003:32: AND_SYMBOL ( NO_SYMBOL )? CHAIN_SYMBOL
        	        	    {
        	        	        AND_SYMBOL1006 = (pANTLR3_COMMON_TOKEN) MATCHT(AND_SYMBOL, &FOLLOW_AND_SYMBOL_in_transaction_statement5188);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletransaction_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        AND_SYMBOL1006_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AND_SYMBOL1006));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, AND_SYMBOL1006_tree);
        	        	        }

        	        	        // MySQL.g:1003:43: ( NO_SYMBOL )?
        	        	        {
        	        	            int alt347=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case NO_SYMBOL:
        	        	                	{
        	        	                		alt347=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt347)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:1003:43: NO_SYMBOL
        	        	        	    {
        	        	        	        NO_SYMBOL1007 = (pANTLR3_COMMON_TOKEN) MATCHT(NO_SYMBOL, &FOLLOW_NO_SYMBOL_in_transaction_statement5190);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruletransaction_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        NO_SYMBOL1007_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NO_SYMBOL1007));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, NO_SYMBOL1007_tree);
        	        	        	        }

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        CHAIN_SYMBOL1008 = (pANTLR3_COMMON_TOKEN) MATCHT(CHAIN_SYMBOL, &FOLLOW_CHAIN_SYMBOL_in_transaction_statement5193);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletransaction_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        CHAIN_SYMBOL1008_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHAIN_SYMBOL1008));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, CHAIN_SYMBOL1008_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:1003:69: ( ( NO_SYMBOL )? RELEASE_SYMBOL )?
        	        {
        	            int alt350=2;
        	            switch ( LA(1) )
        	            {
        	                case NO_SYMBOL:
        	                case RELEASE_SYMBOL:
        	                	{
        	                		alt350=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt350)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1003:70: ( NO_SYMBOL )? RELEASE_SYMBOL
        	        	    {
        	        	        // MySQL.g:1003:70: ( NO_SYMBOL )?
        	        	        {
        	        	            int alt349=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case NO_SYMBOL:
        	        	                	{
        	        	                		alt349=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt349)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:1003:70: NO_SYMBOL
        	        	        	    {
        	        	        	        NO_SYMBOL1009 = (pANTLR3_COMMON_TOKEN) MATCHT(NO_SYMBOL, &FOLLOW_NO_SYMBOL_in_transaction_statement5198);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruletransaction_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        NO_SYMBOL1009_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NO_SYMBOL1009));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, NO_SYMBOL1009_tree);
        	        	        	        }

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        RELEASE_SYMBOL1010 = (pANTLR3_COMMON_TOKEN) MATCHT(RELEASE_SYMBOL, &FOLLOW_RELEASE_SYMBOL_in_transaction_statement5201);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletransaction_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        RELEASE_SYMBOL1010_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RELEASE_SYMBOL1010));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, RELEASE_SYMBOL1010_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1004:4: ROLLBACK_SYMBOL ( WORK_SYMBOL )? ( ( AND_SYMBOL ( NO_SYMBOL )? CHAIN_SYMBOL )? ( ( NO_SYMBOL )? RELEASE_SYMBOL )? | TO_SYMBOL ( SAVEPOINT_SYMBOL )? pure_identifier )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ROLLBACK_SYMBOL1011 = (pANTLR3_COMMON_TOKEN) MATCHT(ROLLBACK_SYMBOL, &FOLLOW_ROLLBACK_SYMBOL_in_transaction_statement5208);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletransaction_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ROLLBACK_SYMBOL1011_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ROLLBACK_SYMBOL1011));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ROLLBACK_SYMBOL1011_tree);
        	        }

        	        // MySQL.g:1004:20: ( WORK_SYMBOL )?
        	        {
        	            int alt351=2;
        	            switch ( LA(1) )
        	            {
        	                case WORK_SYMBOL:
        	                	{
        	                		alt351=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt351)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1004:20: WORK_SYMBOL
        	        	    {
        	        	        WORK_SYMBOL1012 = (pANTLR3_COMMON_TOKEN) MATCHT(WORK_SYMBOL, &FOLLOW_WORK_SYMBOL_in_transaction_statement5210);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletransaction_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        WORK_SYMBOL1012_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WORK_SYMBOL1012));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, WORK_SYMBOL1012_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:1005:3: ( ( AND_SYMBOL ( NO_SYMBOL )? CHAIN_SYMBOL )? ( ( NO_SYMBOL )? RELEASE_SYMBOL )? | TO_SYMBOL ( SAVEPOINT_SYMBOL )? pure_identifier )
        	        {
        	            int alt357=2;
        	            switch ( LA(1) )
        	            {
        	            case EOF:
        	            case AND_SYMBOL:
        	            case NO_SYMBOL:
        	            case RELEASE_SYMBOL:
        	            case SEMICOLON_SYMBOL:
        	            	{
        	            		alt357=1;
        	            	}
        	                break;
        	            case TO_SYMBOL:
        	            	{
        	            		alt357=2;
        	            	}
        	                break;

        	            default:
        	                if (BACKTRACKING>0)
        	                {
        	                    FAILEDFLAG = ANTLR3_TRUE;
        	                    return retval;
        	                }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                EXCEPTION->message      = (void *)"";
        	                EXCEPTION->decisionNum  = 357;
        	                EXCEPTION->state        = 0;


        	                goto ruletransaction_statementEx;

        	            }

        	            switch (alt357)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1006:4: ( AND_SYMBOL ( NO_SYMBOL )? CHAIN_SYMBOL )? ( ( NO_SYMBOL )? RELEASE_SYMBOL )?
        	        	    {
        	        	        // MySQL.g:1006:4: ( AND_SYMBOL ( NO_SYMBOL )? CHAIN_SYMBOL )?
        	        	        {
        	        	            int alt353=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case AND_SYMBOL:
        	        	                	{
        	        	                		alt353=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt353)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:1006:5: AND_SYMBOL ( NO_SYMBOL )? CHAIN_SYMBOL
        	        	        	    {
        	        	        	        AND_SYMBOL1013 = (pANTLR3_COMMON_TOKEN) MATCHT(AND_SYMBOL, &FOLLOW_AND_SYMBOL_in_transaction_statement5221);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruletransaction_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        AND_SYMBOL1013_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AND_SYMBOL1013));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, AND_SYMBOL1013_tree);
        	        	        	        }

        	        	        	        // MySQL.g:1006:16: ( NO_SYMBOL )?
        	        	        	        {
        	        	        	            int alt352=2;
        	        	        	            switch ( LA(1) )
        	        	        	            {
        	        	        	                case NO_SYMBOL:
        	        	        	                	{
        	        	        	                		alt352=1;
        	        	        	                	}
        	        	        	                    break;
        	        	        	            }

        	        	        	            switch (alt352)
        	        	        	            {
        	        	        	        	case 1:
        	        	        	        	    // MySQL.g:1006:16: NO_SYMBOL
        	        	        	        	    {
        	        	        	        	        NO_SYMBOL1014 = (pANTLR3_COMMON_TOKEN) MATCHT(NO_SYMBOL, &FOLLOW_NO_SYMBOL_in_transaction_statement5223);
        	        	        	        	        if  (HASEXCEPTION())
        	        	        	        	        {
        	        	        	        	            goto ruletransaction_statementEx;
        	        	        	        	        }
        	        	        	        	        if (HASFAILED())
        	        	        	        	        {
        	        	        	        	            return retval;
        	        	        	        	        }

        	        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        	        NO_SYMBOL1014_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NO_SYMBOL1014));
        	        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, NO_SYMBOL1014_tree);
        	        	        	        	        }

        	        	        	        	    }
        	        	        	        	    break;

        	        	        	            }
        	        	        	        }

        	        	        	        CHAIN_SYMBOL1015 = (pANTLR3_COMMON_TOKEN) MATCHT(CHAIN_SYMBOL, &FOLLOW_CHAIN_SYMBOL_in_transaction_statement5226);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruletransaction_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        CHAIN_SYMBOL1015_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHAIN_SYMBOL1015));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, CHAIN_SYMBOL1015_tree);
        	        	        	        }

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        // MySQL.g:1006:42: ( ( NO_SYMBOL )? RELEASE_SYMBOL )?
        	        	        {
        	        	            int alt355=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case NO_SYMBOL:
        	        	                case RELEASE_SYMBOL:
        	        	                	{
        	        	                		alt355=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt355)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:1006:43: ( NO_SYMBOL )? RELEASE_SYMBOL
        	        	        	    {
        	        	        	        // MySQL.g:1006:43: ( NO_SYMBOL )?
        	        	        	        {
        	        	        	            int alt354=2;
        	        	        	            switch ( LA(1) )
        	        	        	            {
        	        	        	                case NO_SYMBOL:
        	        	        	                	{
        	        	        	                		alt354=1;
        	        	        	                	}
        	        	        	                    break;
        	        	        	            }

        	        	        	            switch (alt354)
        	        	        	            {
        	        	        	        	case 1:
        	        	        	        	    // MySQL.g:1006:43: NO_SYMBOL
        	        	        	        	    {
        	        	        	        	        NO_SYMBOL1016 = (pANTLR3_COMMON_TOKEN) MATCHT(NO_SYMBOL, &FOLLOW_NO_SYMBOL_in_transaction_statement5231);
        	        	        	        	        if  (HASEXCEPTION())
        	        	        	        	        {
        	        	        	        	            goto ruletransaction_statementEx;
        	        	        	        	        }
        	        	        	        	        if (HASFAILED())
        	        	        	        	        {
        	        	        	        	            return retval;
        	        	        	        	        }

        	        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        	        NO_SYMBOL1016_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NO_SYMBOL1016));
        	        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, NO_SYMBOL1016_tree);
        	        	        	        	        }

        	        	        	        	    }
        	        	        	        	    break;

        	        	        	            }
        	        	        	        }

        	        	        	        RELEASE_SYMBOL1017 = (pANTLR3_COMMON_TOKEN) MATCHT(RELEASE_SYMBOL, &FOLLOW_RELEASE_SYMBOL_in_transaction_statement5234);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruletransaction_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        RELEASE_SYMBOL1017_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RELEASE_SYMBOL1017));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, RELEASE_SYMBOL1017_tree);
        	        	        	        }

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:1007:6: TO_SYMBOL ( SAVEPOINT_SYMBOL )? pure_identifier
        	        	    {
        	        	        TO_SYMBOL1018 = (pANTLR3_COMMON_TOKEN) MATCHT(TO_SYMBOL, &FOLLOW_TO_SYMBOL_in_transaction_statement5243);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletransaction_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        TO_SYMBOL1018_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TO_SYMBOL1018));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, TO_SYMBOL1018_tree);
        	        	        }

        	        	        // MySQL.g:1007:16: ( SAVEPOINT_SYMBOL )?
        	        	        {
        	        	            int alt356=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case SAVEPOINT_SYMBOL:
        	        	                	{
        	        	                		alt356=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt356)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:1007:16: SAVEPOINT_SYMBOL
        	        	        	    {
        	        	        	        SAVEPOINT_SYMBOL1019 = (pANTLR3_COMMON_TOKEN) MATCHT(SAVEPOINT_SYMBOL, &FOLLOW_SAVEPOINT_SYMBOL_in_transaction_statement5245);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruletransaction_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        SAVEPOINT_SYMBOL1019_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SAVEPOINT_SYMBOL1019));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, SAVEPOINT_SYMBOL1019_tree);
        	        	        	        }

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_pure_identifier_in_transaction_statement5248);
        	        	        pure_identifier1020=pure_identifier(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletransaction_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier1020.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruletransaction_statementEx; /* Prevent compiler warnings */
    ruletransaction_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end transaction_statement */

/**
 * $ANTLR start transaction_characteristic
 * MySQL.g:1014:1: transaction_characteristic : ( WITH_SYMBOL CONSISTENT_SYMBOL SNAPSHOT_SYMBOL |{...}? => READ_SYMBOL ( WRITE_SYMBOL | ONLY_SYMBOL ) );
 */
static MySQLParser_transaction_characteristic_return
transaction_characteristic(pMySQLParser ctx)
{
    MySQLParser_transaction_characteristic_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    WITH_SYMBOL1021;
    pANTLR3_COMMON_TOKEN    CONSISTENT_SYMBOL1022;
    pANTLR3_COMMON_TOKEN    SNAPSHOT_SYMBOL1023;
    pANTLR3_COMMON_TOKEN    READ_SYMBOL1024;
    pANTLR3_COMMON_TOKEN    set1025;

    pANTLR3_BASE_TREE WITH_SYMBOL1021_tree;
    pANTLR3_BASE_TREE CONSISTENT_SYMBOL1022_tree;
    pANTLR3_BASE_TREE SNAPSHOT_SYMBOL1023_tree;
    pANTLR3_BASE_TREE READ_SYMBOL1024_tree;
    pANTLR3_BASE_TREE set1025_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    WITH_SYMBOL1021       = NULL;
    CONSISTENT_SYMBOL1022       = NULL;
    SNAPSHOT_SYMBOL1023       = NULL;
    READ_SYMBOL1024       = NULL;
    set1025       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    WITH_SYMBOL1021_tree   = NULL;
    CONSISTENT_SYMBOL1022_tree   = NULL;
    SNAPSHOT_SYMBOL1023_tree   = NULL;
    READ_SYMBOL1024_tree   = NULL;
    set1025_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1014:27: ( WITH_SYMBOL CONSISTENT_SYMBOL SNAPSHOT_SYMBOL |{...}? => READ_SYMBOL ( WRITE_SYMBOL | ONLY_SYMBOL ) )

            ANTLR3_UINT32 alt359;

            alt359=2;

            {
                int LA359_0 = LA(1);
                if ( (LA359_0 == WITH_SYMBOL))
                {
                    alt359=1;
                }
                else if ( ((SERVER_VERSION >= 50605)) && (LA359_0 == READ_SYMBOL))
                {
                    alt359=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 359;
                    EXCEPTION->state        = 0;


                    goto ruletransaction_characteristicEx;

                }
            }
            switch (alt359)
            {
        	case 1:
        	    // MySQL.g:1015:2: WITH_SYMBOL CONSISTENT_SYMBOL SNAPSHOT_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        WITH_SYMBOL1021 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_transaction_characteristic5268);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletransaction_characteristicEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        WITH_SYMBOL1021_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WITH_SYMBOL1021));
        	        ADAPTOR->addChild(ADAPTOR, root_0, WITH_SYMBOL1021_tree);
        	        }

        	        CONSISTENT_SYMBOL1022 = (pANTLR3_COMMON_TOKEN) MATCHT(CONSISTENT_SYMBOL, &FOLLOW_CONSISTENT_SYMBOL_in_transaction_characteristic5270);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletransaction_characteristicEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CONSISTENT_SYMBOL1022_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CONSISTENT_SYMBOL1022));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CONSISTENT_SYMBOL1022_tree);
        	        }

        	        SNAPSHOT_SYMBOL1023 = (pANTLR3_COMMON_TOKEN) MATCHT(SNAPSHOT_SYMBOL, &FOLLOW_SNAPSHOT_SYMBOL_in_transaction_characteristic5272);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletransaction_characteristicEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SNAPSHOT_SYMBOL1023_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SNAPSHOT_SYMBOL1023));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SNAPSHOT_SYMBOL1023_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1016:4: {...}? => READ_SYMBOL ( WRITE_SYMBOL | ONLY_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((SERVER_VERSION >= 50605)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50605";
        	                EXCEPTION->ruleName	 = (void *)"transaction_characteristic";


        	        }

        	        READ_SYMBOL1024 = (pANTLR3_COMMON_TOKEN) MATCHT(READ_SYMBOL, &FOLLOW_READ_SYMBOL_in_transaction_characteristic5281);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletransaction_characteristicEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        READ_SYMBOL1024_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, READ_SYMBOL1024));
        	        ADAPTOR->addChild(ADAPTOR, root_0, READ_SYMBOL1024_tree);
        	        }

        	        set1025=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == ONLY_SYMBOL || LA(1) == WRITE_SYMBOL )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1025))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	            CONSTRUCTEX();
        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
        	            EXCEPTION->expectingSet = NULL;

        	            goto ruletransaction_characteristicEx;
        	        }


        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruletransaction_characteristicEx; /* Prevent compiler warnings */
    ruletransaction_characteristicEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end transaction_characteristic */

/**
 * $ANTLR start set_transaction_characteristic
 * MySQL.g:1019:1: set_transaction_characteristic : ( ISOLATION_SYMBOL LEVEL_SYMBOL isolation_level |{...}? => READ_SYMBOL ( WRITE_SYMBOL | ONLY_SYMBOL ) );
 */
static MySQLParser_set_transaction_characteristic_return
set_transaction_characteristic(pMySQLParser ctx)
{
    MySQLParser_set_transaction_characteristic_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    ISOLATION_SYMBOL1026;
    pANTLR3_COMMON_TOKEN    LEVEL_SYMBOL1027;
    pANTLR3_COMMON_TOKEN    READ_SYMBOL1029;
    pANTLR3_COMMON_TOKEN    set1030;
    MySQLParser_isolation_level_return isolation_level1028;
    #undef	RETURN_TYPE_isolation_level1028
    #define	RETURN_TYPE_isolation_level1028 MySQLParser_isolation_level_return

    pANTLR3_BASE_TREE ISOLATION_SYMBOL1026_tree;
    pANTLR3_BASE_TREE LEVEL_SYMBOL1027_tree;
    pANTLR3_BASE_TREE READ_SYMBOL1029_tree;
    pANTLR3_BASE_TREE set1030_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ISOLATION_SYMBOL1026       = NULL;
    LEVEL_SYMBOL1027       = NULL;
    READ_SYMBOL1029       = NULL;
    set1030       = NULL;
    isolation_level1028.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ISOLATION_SYMBOL1026_tree   = NULL;
    LEVEL_SYMBOL1027_tree   = NULL;
    READ_SYMBOL1029_tree   = NULL;
    set1030_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1019:31: ( ISOLATION_SYMBOL LEVEL_SYMBOL isolation_level |{...}? => READ_SYMBOL ( WRITE_SYMBOL | ONLY_SYMBOL ) )

            ANTLR3_UINT32 alt360;

            alt360=2;

            {
                int LA360_0 = LA(1);
                if ( (LA360_0 == ISOLATION_SYMBOL))
                {
                    alt360=1;
                }
                else if ( ((SERVER_VERSION >= 50605)) && (LA360_0 == READ_SYMBOL))
                {
                    alt360=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 360;
                    EXCEPTION->state        = 0;


                    goto ruleset_transaction_characteristicEx;

                }
            }
            switch (alt360)
            {
        	case 1:
        	    // MySQL.g:1020:2: ISOLATION_SYMBOL LEVEL_SYMBOL isolation_level
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ISOLATION_SYMBOL1026 = (pANTLR3_COMMON_TOKEN) MATCHT(ISOLATION_SYMBOL, &FOLLOW_ISOLATION_SYMBOL_in_set_transaction_characteristic5298);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleset_transaction_characteristicEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ISOLATION_SYMBOL1026_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ISOLATION_SYMBOL1026));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ISOLATION_SYMBOL1026_tree);
        	        }

        	        LEVEL_SYMBOL1027 = (pANTLR3_COMMON_TOKEN) MATCHT(LEVEL_SYMBOL, &FOLLOW_LEVEL_SYMBOL_in_set_transaction_characteristic5300);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleset_transaction_characteristicEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LEVEL_SYMBOL1027_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LEVEL_SYMBOL1027));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LEVEL_SYMBOL1027_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_isolation_level_in_set_transaction_characteristic5302);
        	        isolation_level1028=isolation_level(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleset_transaction_characteristicEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, isolation_level1028.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1021:4: {...}? => READ_SYMBOL ( WRITE_SYMBOL | ONLY_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((SERVER_VERSION >= 50605)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50605";
        	                EXCEPTION->ruleName	 = (void *)"set_transaction_characteristic";


        	        }

        	        READ_SYMBOL1029 = (pANTLR3_COMMON_TOKEN) MATCHT(READ_SYMBOL, &FOLLOW_READ_SYMBOL_in_set_transaction_characteristic5311);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleset_transaction_characteristicEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        READ_SYMBOL1029_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, READ_SYMBOL1029));
        	        ADAPTOR->addChild(ADAPTOR, root_0, READ_SYMBOL1029_tree);
        	        }

        	        set1030=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == ONLY_SYMBOL || LA(1) == WRITE_SYMBOL )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1030))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	            CONSTRUCTEX();
        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
        	            EXCEPTION->expectingSet = NULL;

        	            goto ruleset_transaction_characteristicEx;
        	        }


        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleset_transaction_characteristicEx; /* Prevent compiler warnings */
    ruleset_transaction_characteristicEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end set_transaction_characteristic */

/**
 * $ANTLR start isolation_level
 * MySQL.g:1024:1: isolation_level : ( REPEATABLE_SYMBOL READ_SYMBOL | READ_SYMBOL ( COMMITTED_SYMBOL | UNCOMMITTED_SYMBOL ) | SERIALIZABLE_SYMBOL );
 */
static MySQLParser_isolation_level_return
isolation_level(pMySQLParser ctx)
{
    MySQLParser_isolation_level_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    REPEATABLE_SYMBOL1031;
    pANTLR3_COMMON_TOKEN    READ_SYMBOL1032;
    pANTLR3_COMMON_TOKEN    READ_SYMBOL1033;
    pANTLR3_COMMON_TOKEN    set1034;
    pANTLR3_COMMON_TOKEN    SERIALIZABLE_SYMBOL1035;

    pANTLR3_BASE_TREE REPEATABLE_SYMBOL1031_tree;
    pANTLR3_BASE_TREE READ_SYMBOL1032_tree;
    pANTLR3_BASE_TREE READ_SYMBOL1033_tree;
    pANTLR3_BASE_TREE set1034_tree;
    pANTLR3_BASE_TREE SERIALIZABLE_SYMBOL1035_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    REPEATABLE_SYMBOL1031       = NULL;
    READ_SYMBOL1032       = NULL;
    READ_SYMBOL1033       = NULL;
    set1034       = NULL;
    SERIALIZABLE_SYMBOL1035       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    REPEATABLE_SYMBOL1031_tree   = NULL;
    READ_SYMBOL1032_tree   = NULL;
    READ_SYMBOL1033_tree   = NULL;
    set1034_tree   = NULL;
    SERIALIZABLE_SYMBOL1035_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1024:16: ( REPEATABLE_SYMBOL READ_SYMBOL | READ_SYMBOL ( COMMITTED_SYMBOL | UNCOMMITTED_SYMBOL ) | SERIALIZABLE_SYMBOL )

            ANTLR3_UINT32 alt361;

            alt361=3;

            switch ( LA(1) )
            {
            case REPEATABLE_SYMBOL:
            	{
            		alt361=1;
            	}
                break;
            case READ_SYMBOL:
            	{
            		alt361=2;
            	}
                break;
            case SERIALIZABLE_SYMBOL:
            	{
            		alt361=3;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 361;
                EXCEPTION->state        = 0;


                goto ruleisolation_levelEx;

            }

            switch (alt361)
            {
        	case 1:
        	    // MySQL.g:1025:2: REPEATABLE_SYMBOL READ_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        REPEATABLE_SYMBOL1031 = (pANTLR3_COMMON_TOKEN) MATCHT(REPEATABLE_SYMBOL, &FOLLOW_REPEATABLE_SYMBOL_in_isolation_level5328);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleisolation_levelEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REPEATABLE_SYMBOL1031_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPEATABLE_SYMBOL1031));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REPEATABLE_SYMBOL1031_tree);
        	        }

        	        READ_SYMBOL1032 = (pANTLR3_COMMON_TOKEN) MATCHT(READ_SYMBOL, &FOLLOW_READ_SYMBOL_in_isolation_level5330);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleisolation_levelEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        READ_SYMBOL1032_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, READ_SYMBOL1032));
        	        ADAPTOR->addChild(ADAPTOR, root_0, READ_SYMBOL1032_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1026:4: READ_SYMBOL ( COMMITTED_SYMBOL | UNCOMMITTED_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        READ_SYMBOL1033 = (pANTLR3_COMMON_TOKEN) MATCHT(READ_SYMBOL, &FOLLOW_READ_SYMBOL_in_isolation_level5335);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleisolation_levelEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        READ_SYMBOL1033_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, READ_SYMBOL1033));
        	        ADAPTOR->addChild(ADAPTOR, root_0, READ_SYMBOL1033_tree);
        	        }

        	        set1034=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == COMMITTED_SYMBOL || LA(1) == UNCOMMITTED_SYMBOL )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1034))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	            CONSTRUCTEX();
        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
        	            EXCEPTION->expectingSet = NULL;

        	            goto ruleisolation_levelEx;
        	        }


        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1027:4: SERIALIZABLE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SERIALIZABLE_SYMBOL1035 = (pANTLR3_COMMON_TOKEN) MATCHT(SERIALIZABLE_SYMBOL, &FOLLOW_SERIALIZABLE_SYMBOL_in_isolation_level5348);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleisolation_levelEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SERIALIZABLE_SYMBOL1035_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SERIALIZABLE_SYMBOL1035));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SERIALIZABLE_SYMBOL1035_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleisolation_levelEx; /* Prevent compiler warnings */
    ruleisolation_levelEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end isolation_level */

/**
 * $ANTLR start savepoint_statement
 * MySQL.g:1030:1: savepoint_statement : ( SAVEPOINT_SYMBOL pure_identifier | RELEASE_SYMBOL SAVEPOINT_SYMBOL pure_identifier );
 */
static MySQLParser_savepoint_statement_return
savepoint_statement(pMySQLParser ctx)
{
    MySQLParser_savepoint_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    SAVEPOINT_SYMBOL1036;
    pANTLR3_COMMON_TOKEN    RELEASE_SYMBOL1038;
    pANTLR3_COMMON_TOKEN    SAVEPOINT_SYMBOL1039;
    MySQLParser_pure_identifier_return pure_identifier1037;
    #undef	RETURN_TYPE_pure_identifier1037
    #define	RETURN_TYPE_pure_identifier1037 MySQLParser_pure_identifier_return

    MySQLParser_pure_identifier_return pure_identifier1040;
    #undef	RETURN_TYPE_pure_identifier1040
    #define	RETURN_TYPE_pure_identifier1040 MySQLParser_pure_identifier_return

    pANTLR3_BASE_TREE SAVEPOINT_SYMBOL1036_tree;
    pANTLR3_BASE_TREE RELEASE_SYMBOL1038_tree;
    pANTLR3_BASE_TREE SAVEPOINT_SYMBOL1039_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SAVEPOINT_SYMBOL1036       = NULL;
    RELEASE_SYMBOL1038       = NULL;
    SAVEPOINT_SYMBOL1039       = NULL;
    pure_identifier1037.tree = NULL;

    pure_identifier1040.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SAVEPOINT_SYMBOL1036_tree   = NULL;
    RELEASE_SYMBOL1038_tree   = NULL;
    SAVEPOINT_SYMBOL1039_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1030:20: ( SAVEPOINT_SYMBOL pure_identifier | RELEASE_SYMBOL SAVEPOINT_SYMBOL pure_identifier )

            ANTLR3_UINT32 alt362;

            alt362=2;

            switch ( LA(1) )
            {
            case SAVEPOINT_SYMBOL:
            	{
            		alt362=1;
            	}
                break;
            case RELEASE_SYMBOL:
            	{
            		alt362=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 362;
                EXCEPTION->state        = 0;


                goto rulesavepoint_statementEx;

            }

            switch (alt362)
            {
        	case 1:
        	    // MySQL.g:1031:2: SAVEPOINT_SYMBOL pure_identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SAVEPOINT_SYMBOL1036 = (pANTLR3_COMMON_TOKEN) MATCHT(SAVEPOINT_SYMBOL, &FOLLOW_SAVEPOINT_SYMBOL_in_savepoint_statement5357);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulesavepoint_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SAVEPOINT_SYMBOL1036_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SAVEPOINT_SYMBOL1036));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SAVEPOINT_SYMBOL1036_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_pure_identifier_in_savepoint_statement5359);
        	        pure_identifier1037=pure_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulesavepoint_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier1037.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1032:4: RELEASE_SYMBOL SAVEPOINT_SYMBOL pure_identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        RELEASE_SYMBOL1038 = (pANTLR3_COMMON_TOKEN) MATCHT(RELEASE_SYMBOL, &FOLLOW_RELEASE_SYMBOL_in_savepoint_statement5364);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulesavepoint_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        RELEASE_SYMBOL1038_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RELEASE_SYMBOL1038));
        	        ADAPTOR->addChild(ADAPTOR, root_0, RELEASE_SYMBOL1038_tree);
        	        }

        	        SAVEPOINT_SYMBOL1039 = (pANTLR3_COMMON_TOKEN) MATCHT(SAVEPOINT_SYMBOL, &FOLLOW_SAVEPOINT_SYMBOL_in_savepoint_statement5366);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulesavepoint_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SAVEPOINT_SYMBOL1039_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SAVEPOINT_SYMBOL1039));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SAVEPOINT_SYMBOL1039_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_pure_identifier_in_savepoint_statement5368);
        	        pure_identifier1040=pure_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulesavepoint_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier1040.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulesavepoint_statementEx; /* Prevent compiler warnings */
    rulesavepoint_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end savepoint_statement */

/**
 * $ANTLR start lock_statement
 * MySQL.g:1035:1: lock_statement : ( LOCK_SYMBOL ( TABLES_SYMBOL | TABLE_SYMBOL ) lock_item ( COMMA_SYMBOL lock_item )* | UNLOCK_SYMBOL ( TABLES_SYMBOL | TABLE_SYMBOL ) );
 */
static MySQLParser_lock_statement_return
lock_statement(pMySQLParser ctx)
{
    MySQLParser_lock_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    LOCK_SYMBOL1041;
    pANTLR3_COMMON_TOKEN    set1042;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1044;
    pANTLR3_COMMON_TOKEN    UNLOCK_SYMBOL1046;
    pANTLR3_COMMON_TOKEN    set1047;
    MySQLParser_lock_item_return lock_item1043;
    #undef	RETURN_TYPE_lock_item1043
    #define	RETURN_TYPE_lock_item1043 MySQLParser_lock_item_return

    MySQLParser_lock_item_return lock_item1045;
    #undef	RETURN_TYPE_lock_item1045
    #define	RETURN_TYPE_lock_item1045 MySQLParser_lock_item_return

    pANTLR3_BASE_TREE LOCK_SYMBOL1041_tree;
    pANTLR3_BASE_TREE set1042_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1044_tree;
    pANTLR3_BASE_TREE UNLOCK_SYMBOL1046_tree;
    pANTLR3_BASE_TREE set1047_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    LOCK_SYMBOL1041       = NULL;
    set1042       = NULL;
    COMMA_SYMBOL1044       = NULL;
    UNLOCK_SYMBOL1046       = NULL;
    set1047       = NULL;
    lock_item1043.tree = NULL;

    lock_item1045.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    LOCK_SYMBOL1041_tree   = NULL;
    set1042_tree   = NULL;
    COMMA_SYMBOL1044_tree   = NULL;
    UNLOCK_SYMBOL1046_tree   = NULL;
    set1047_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1035:15: ( LOCK_SYMBOL ( TABLES_SYMBOL | TABLE_SYMBOL ) lock_item ( COMMA_SYMBOL lock_item )* | UNLOCK_SYMBOL ( TABLES_SYMBOL | TABLE_SYMBOL ) )

            ANTLR3_UINT32 alt364;

            alt364=2;

            switch ( LA(1) )
            {
            case LOCK_SYMBOL:
            	{
            		alt364=1;
            	}
                break;
            case UNLOCK_SYMBOL:
            	{
            		alt364=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 364;
                EXCEPTION->state        = 0;


                goto rulelock_statementEx;

            }

            switch (alt364)
            {
        	case 1:
        	    // MySQL.g:1036:2: LOCK_SYMBOL ( TABLES_SYMBOL | TABLE_SYMBOL ) lock_item ( COMMA_SYMBOL lock_item )*
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        LOCK_SYMBOL1041 = (pANTLR3_COMMON_TOKEN) MATCHT(LOCK_SYMBOL, &FOLLOW_LOCK_SYMBOL_in_lock_statement5377);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelock_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LOCK_SYMBOL1041_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOCK_SYMBOL1041));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LOCK_SYMBOL1041_tree);
        	        }

        	        set1042=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == TABLES_SYMBOL || LA(1) == TABLE_SYMBOL )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1042))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	            CONSTRUCTEX();
        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
        	            EXCEPTION->expectingSet = NULL;

        	            goto rulelock_statementEx;
        	        }


        	        FOLLOWPUSH(FOLLOW_lock_item_in_lock_statement5387);
        	        lock_item1043=lock_item(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelock_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, lock_item1043.tree);

        	        // MySQL.g:1036:55: ( COMMA_SYMBOL lock_item )*

        	        for (;;)
        	        {
        	            int alt363=2;
        	            switch ( LA(1) )
        	            {
        	            case COMMA_SYMBOL:
        	            	{
        	            		alt363=1;
        	            	}
        	                break;

        	            }

        	            switch (alt363)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1036:56: COMMA_SYMBOL lock_item
        	        	    {
        	        	        COMMA_SYMBOL1044 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_lock_statement5390);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulelock_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COMMA_SYMBOL1044_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1044));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1044_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_lock_item_in_lock_statement5392);
        	        	        lock_item1045=lock_item(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulelock_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, lock_item1045.tree);

        	        	    }
        	        	    break;

        	        	default:
        	        	    goto loop363;	/* break out of the loop */
        	        	    break;
        	            }
        	        }
        	        loop363: ; /* Jump out to here if this rule does not match */


        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1037:4: UNLOCK_SYMBOL ( TABLES_SYMBOL | TABLE_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        UNLOCK_SYMBOL1046 = (pANTLR3_COMMON_TOKEN) MATCHT(UNLOCK_SYMBOL, &FOLLOW_UNLOCK_SYMBOL_in_lock_statement5399);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelock_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UNLOCK_SYMBOL1046_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNLOCK_SYMBOL1046));
        	        ADAPTOR->addChild(ADAPTOR, root_0, UNLOCK_SYMBOL1046_tree);
        	        }

        	        set1047=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == TABLES_SYMBOL || LA(1) == TABLE_SYMBOL )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1047))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	            CONSTRUCTEX();
        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
        	            EXCEPTION->expectingSet = NULL;

        	            goto rulelock_statementEx;
        	        }


        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulelock_statementEx; /* Prevent compiler warnings */
    rulelock_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end lock_statement */

/**
 * $ANTLR start lock_item
 * MySQL.g:1040:1: lock_item : table_identifier ( table_alias )? lock_type ;
 */
static MySQLParser_lock_item_return
lock_item(pMySQLParser ctx)
{
    MySQLParser_lock_item_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_table_identifier_return table_identifier1048;
    #undef	RETURN_TYPE_table_identifier1048
    #define	RETURN_TYPE_table_identifier1048 MySQLParser_table_identifier_return

    MySQLParser_table_alias_return table_alias1049;
    #undef	RETURN_TYPE_table_alias1049
    #define	RETURN_TYPE_table_alias1049 MySQLParser_table_alias_return

    MySQLParser_lock_type_return lock_type1050;
    #undef	RETURN_TYPE_lock_type1050
    #define	RETURN_TYPE_lock_type1050 MySQLParser_lock_type_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    table_identifier1048.tree = NULL;

    table_alias1049.tree = NULL;

    lock_type1050.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:1040:10: ( table_identifier ( table_alias )? lock_type )
        // MySQL.g:1041:2: table_identifier ( table_alias )? lock_type
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_table_identifier_in_lock_item5416);
            table_identifier1048=table_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulelock_itemEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_identifier1048.tree);

            // MySQL.g:1041:19: ( table_alias )?
            {
                int alt365=2;
                {
                    int LA365_0 = LA(1);
                    if ( (LA365_0 == AS_SYMBOL || LA365_0 == BACK_TICK_QUOTED_ID || LA365_0 == EQUAL_OPERATOR || LA365_0 == IDENTIFIER))
                    {
                        alt365=1;
                    }
                    else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA365_0 == DOUBLE_QUOTED_TEXT))
                    {
                        alt365=1;
                    }
                    else if ( (((LA365_0 >= ACTION_SYMBOL) && (LA365_0 <= ADDDATE_SYMBOL)) || ((LA365_0 >= AFTER_SYMBOL) && (LA365_0 <= ALGORITHM_SYMBOL)) || LA365_0 == ANALYZE_SYMBOL || ((LA365_0 >= ANY_SYMBOL) && (LA365_0 <= ASCII_SYMBOL)) || ((LA365_0 >= AT_SYMBOL) && (LA365_0 <= BACKUP_SYMBOL)) || LA365_0 == BEGIN_SYMBOL || LA365_0 == BINLOG_SYMBOL || LA365_0 == BIT_SYMBOL || ((LA365_0 >= BLOCK_SYMBOL) && (LA365_0 <= BOOL_SYMBOL)) || ((LA365_0 >= BTREE_SYMBOL) && (LA365_0 <= BYTE_SYMBOL)) || LA365_0 == CACHE_SYMBOL || LA365_0 == CASCADED_SYMBOL || ((LA365_0 >= CATALOG_NAME_SYMBOL) && (LA365_0 <= CHANGED_SYMBOL)) || LA365_0 == CHARSET_SYMBOL || LA365_0 == CHECKSUM_SYMBOL || ((LA365_0 >= CIPHER_SYMBOL) && (LA365_0 <= CLIENT_SYMBOL)) || ((LA365_0 >= CLOSE_SYMBOL) && (LA365_0 <= CODE_SYMBOL)) || LA365_0 == COLLATION_SYMBOL || ((LA365_0 >= COLUMNS_SYMBOL) && (LA365_0 <= COLUMN_NAME_SYMBOL)) || ((LA365_0 >= COMMENT_SYMBOL) && (LA365_0 <= COMPRESSED_SYMBOL)) || LA365_0 == CONCURRENT_SYMBOL || ((LA365_0 >= CONNECTION_SYMBOL) && (LA365_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA365_0 >= CONTAINS_SYMBOL) && (LA365_0 <= CONTEXT_SYMBOL)) || LA365_0 == CONTRIBUTORS_SYMBOL || LA365_0 == CPU_SYMBOL || LA365_0 == CUBE_SYMBOL || LA365_0 == CURRENT_SYMBOL || LA365_0 == CURSOR_NAME_SYMBOL || ((LA365_0 >= DATAFILE_SYMBOL) && (LA365_0 <= DATETIME_SYMBOL)) || LA365_0 == DATE_SYMBOL || ((LA365_0 >= DAY_SYMBOL) && (LA365_0 <= DEALLOCATE_SYMBOL)) || LA365_0 == DEFAULT_AUTH_SYMBOL || LA365_0 == DEFINER_SYMBOL || LA365_0 == DELAY_KEY_WRITE_SYMBOL || LA365_0 == DES_KEY_FILE_SYMBOL || LA365_0 == DIAGNOSTICS_SYMBOL || ((LA365_0 >= DIRECTORY_SYMBOL) && (LA365_0 <= DISK_SYMBOL)) || LA365_0 == DO_SYMBOL || ((LA365_0 >= DUMPFILE_SYMBOL) && (LA365_0 <= DYNAMIC_SYMBOL)) || LA365_0 == ENABLE_SYMBOL || LA365_0 == ENDS_SYMBOL || ((LA365_0 >= END_SYMBOL) && (LA365_0 <= ENUM_SYMBOL)) || ((LA365_0 >= ERRORS_SYMBOL) && (LA365_0 <= ERROR_SYMBOL)) || ((LA365_0 >= ESCAPE_SYMBOL) && (LA365_0 <= EVERY_SYMBOL)) || LA365_0 == EXECUTE_SYMBOL || LA365_0 == EXPANSION_SYMBOL || LA365_0 == EXPORT_SYMBOL || ((LA365_0 >= EXTENDED_SYMBOL) && (LA365_0 <= EXTENT_SIZE_SYMBOL)) || ((LA365_0 >= FAST_SYMBOL) && (LA365_0 <= FAULTS_SYMBOL)) || ((LA365_0 >= FILE_SYMBOL) && (LA365_0 <= FIXED_SYMBOL)) || LA365_0 == FLUSH_SYMBOL || LA365_0 == FORMAT_SYMBOL || LA365_0 == FOUND_SYMBOL || LA365_0 == FULL_SYMBOL || ((LA365_0 >= FUNCTION_SYMBOL) && (LA365_0 <= GET_FORMAT_SYMBOL)) || ((LA365_0 >= GLOBAL_SYMBOL) && (LA365_0 <= GRANTS_SYMBOL)) || ((LA365_0 >= HANDLER_SYMBOL) && (LA365_0 <= HASH_SYMBOL)) || LA365_0 == HELP_SYMBOL || ((LA365_0 >= HOSTS_SYMBOL) && (LA365_0 <= HOST_SYMBOL)) || ((LA365_0 >= HOUR_SYMBOL) && (LA365_0 <= IDENTIFIED_SYMBOL)) || LA365_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA365_0 >= IMPORT_SYMBOL) && (LA365_0 <= INDEXES_SYMBOL)) || LA365_0 == INITIAL_SIZE_SYMBOL || LA365_0 == INNODB_SYMBOL || LA365_0 == INSERT_METHOD_SYMBOL || LA365_0 == INSTALL_SYMBOL || LA365_0 == INVOKER_SYMBOL || LA365_0 == IO_SYMBOL || ((LA365_0 >= IPC_SYMBOL) && (LA365_0 <= ISSUER_SYMBOL)) || LA365_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA365_0 >= LANGUAGE_SYMBOL) && (LA365_0 <= LAST_SYMBOL)) || LA365_0 == LEAVES_SYMBOL || LA365_0 == LESS_SYMBOL || LA365_0 == LEVEL_SYMBOL || LA365_0 == LINESTRING_SYMBOL || LA365_0 == LIST_SYMBOL || LA365_0 == LOCAL_SYMBOL || LA365_0 == LOCKS_SYMBOL || LA365_0 == LOGFILE_SYMBOL || LA365_0 == LOGS_SYMBOL || LA365_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA365_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA365_0 <= MASTER_SSL_SYMBOL)) || ((LA365_0 >= MASTER_SYMBOL) && (LA365_0 <= MASTER_USER_SYMBOL)) || ((LA365_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA365_0 <= MAX_SIZE_SYMBOL)) || ((LA365_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA365_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA365_0 >= MEDIUM_SYMBOL) && (LA365_0 <= MICROSECOND_SYMBOL)) || LA365_0 == MIGRATE_SYMBOL || ((LA365_0 >= MINUTE_SYMBOL) && (LA365_0 <= MIN_ROWS_SYMBOL)) || LA365_0 == MODE_SYMBOL || LA365_0 == MODIFY_SYMBOL || ((LA365_0 >= MONTH_SYMBOL) && (LA365_0 <= MULTILINESTRING_SYMBOL)) || ((LA365_0 >= MULTIPOINT_SYMBOL) && (LA365_0 <= MULTIPOLYGON_SYMBOL)) || ((LA365_0 >= MUTEX_SYMBOL) && (LA365_0 <= NATIONAL_SYMBOL)) || LA365_0 == NCHAR_SYMBOL || LA365_0 == NDBCLUSTER_SYMBOL || ((LA365_0 >= NEW_SYMBOL) && (LA365_0 <= NONE_SYMBOL)) || ((LA365_0 >= NO_SYMBOL) && (LA365_0 <= NO_WAIT_SYMBOL)) || LA365_0 == NUMBER_SYMBOL || LA365_0 == NVARCHAR_SYMBOL || ((LA365_0 >= OFFSET_SYMBOL) && (LA365_0 <= ONE_SYMBOL)) || LA365_0 == OPEN_SYMBOL || LA365_0 == OPTIONS_SYMBOL || ((LA365_0 >= OWNER_SYMBOL) && (LA365_0 <= PAGE_SYMBOL)) || ((LA365_0 >= PARSER_SYMBOL) && (LA365_0 <= PARTITION_SYMBOL)) || ((LA365_0 >= PASSWORD_SYMBOL) && (LA365_0 <= PLUGIN_SYMBOL)) || ((LA365_0 >= POINT_SYMBOL) && (LA365_0 <= PORT_SYMBOL)) || ((LA365_0 >= PREPARE_SYMBOL) && (LA365_0 <= PREV_SYMBOL)) || LA365_0 == PRIVILEGES_SYMBOL || ((LA365_0 >= PROCESSLIST_SYMBOL) && (LA365_0 <= PROXY_SYMBOL)) || ((LA365_0 >= QUARTER_SYMBOL) && (LA365_0 <= QUICK_SYMBOL)) || LA365_0 == READ_ONLY_SYMBOL || ((LA365_0 >= REBUILD_SYMBOL) && (LA365_0 <= REDUNDANT_SYMBOL)) || ((LA365_0 >= RELAYLOG_SYMBOL) && (LA365_0 <= RELAY_THREAD_SYMBOL)) || ((LA365_0 >= RELOAD_SYMBOL) && (LA365_0 <= REMOVE_SYMBOL)) || ((LA365_0 >= REORGANIZE_SYMBOL) && (LA365_0 <= REPEATABLE_SYMBOL)) || LA365_0 == REPLICATION_SYMBOL || LA365_0 == RESET_SYMBOL || LA365_0 == RESTORE_SYMBOL || ((LA365_0 >= RESUME_SYMBOL) && (LA365_0 <= RETURNS_SYMBOL)) || LA365_0 == REVERSE_SYMBOL || ((LA365_0 >= ROLLBACK_SYMBOL) && (LA365_0 <= SCHEDULE_SYMBOL)) || LA365_0 == SCHEMA_NAME_SYMBOL || ((LA365_0 >= SECOND_SYMBOL) && (LA365_0 <= SECURITY_SYMBOL)) || ((LA365_0 >= SERIALIZABLE_SYMBOL) && (LA365_0 <= SERIAL_SYMBOL)) || ((LA365_0 >= SERVER_SYMBOL) && (LA365_0 <= SESSION_SYMBOL)) || LA365_0 == SHARE_SYMBOL || LA365_0 == SHUTDOWN_SYMBOL || ((LA365_0 >= SIGNED_SYMBOL) && (LA365_0 <= SIMPLE_SYMBOL)) || ((LA365_0 >= SLAVE_SYMBOL) && (LA365_0 <= SLOW_SYMBOL)) || ((LA365_0 >= SNAPSHOT_SYMBOL) && (LA365_0 <= SOURCE_SYMBOL)) || ((LA365_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA365_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA365_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA365_0 <= SQL_CACHE_SYMBOL)) || LA365_0 == SQL_NO_CACHE_SYMBOL || LA365_0 == SQL_THREAD_SYMBOL || ((LA365_0 >= STARTS_SYMBOL) && (LA365_0 <= STATUS_SYMBOL)) || ((LA365_0 >= STOP_SYMBOL) && (LA365_0 <= STORAGE_SYMBOL)) || ((LA365_0 >= STRING_SYMBOL) && (LA365_0 <= SUBPARTITION_SYMBOL)) || ((LA365_0 >= SUPER_SYMBOL) && (LA365_0 <= SWITCHES_SYMBOL)) || ((LA365_0 >= TABLESPACE_SYMBOL) && (LA365_0 <= TABLE_NAME_SYMBOL)) || ((LA365_0 >= TEMPORARY_SYMBOL) && (LA365_0 <= TEMPTABLE_SYMBOL)) || ((LA365_0 >= TEXT_SYMBOL) && (LA365_0 <= THAN_SYMBOL)) || ((LA365_0 >= TIMESTAMP_ADD_SYMBOL) && (LA365_0 <= TIME_SYMBOL)) || ((LA365_0 >= TRANSACTION_SYMBOL) && (LA365_0 <= TRIGGERS_SYMBOL)) || ((LA365_0 >= TRUNCATE_SYMBOL) && (LA365_0 <= UDF_RETURNS_SYMBOL)) || ((LA365_0 >= UNCOMMITTED_SYMBOL) && (LA365_0 <= UNDEFINED_SYMBOL)) || ((LA365_0 >= UNDOFILE_SYMBOL) && (LA365_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA365_0 >= UNICODE_SYMBOL) && (LA365_0 <= UNINSTALL_SYMBOL)) || LA365_0 == UNKNOWN_SYMBOL || LA365_0 == UNTIL_SYMBOL || LA365_0 == UPGRADE_SYMBOL || ((LA365_0 >= USER_RESOURCES_SYMBOL) && (LA365_0 <= USE_FRM_SYMBOL)) || LA365_0 == VALUE_SYMBOL || LA365_0 == VARIABLES_SYMBOL || ((LA365_0 >= VIEW_SYMBOL) && (LA365_0 <= WEIGHT_STRING_SYMBOL)) || ((LA365_0 >= WORK_SYMBOL) && (LA365_0 <= WRAPPER_SYMBOL)) || LA365_0 == X509_SYMBOL || ((LA365_0 >= XA_SYMBOL) && (LA365_0 <= XML_SYMBOL)) || LA365_0 == YEAR_SYMBOL))
                    {
                        alt365=1;
                    }
                }
                switch (alt365)
                {
            	case 1:
            	    // MySQL.g:1041:19: table_alias
            	    {
            	        FOLLOWPUSH(FOLLOW_table_alias_in_lock_item5418);
            	        table_alias1049=table_alias(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulelock_itemEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_alias1049.tree);

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_lock_type_in_lock_item5421);
            lock_type1050=lock_type(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulelock_itemEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, lock_type1050.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto rulelock_itemEx; /* Prevent compiler warnings */
    rulelock_itemEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end lock_item */

/**
 * $ANTLR start lock_type
 * MySQL.g:1044:1: lock_type : ( READ_SYMBOL ( LOCAL_SYMBOL )? | ( LOW_PRIORITY_SYMBOL )? WRITE_SYMBOL );
 */
static MySQLParser_lock_type_return
lock_type(pMySQLParser ctx)
{
    MySQLParser_lock_type_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    READ_SYMBOL1051;
    pANTLR3_COMMON_TOKEN    LOCAL_SYMBOL1052;
    pANTLR3_COMMON_TOKEN    LOW_PRIORITY_SYMBOL1053;
    pANTLR3_COMMON_TOKEN    WRITE_SYMBOL1054;

    pANTLR3_BASE_TREE READ_SYMBOL1051_tree;
    pANTLR3_BASE_TREE LOCAL_SYMBOL1052_tree;
    pANTLR3_BASE_TREE LOW_PRIORITY_SYMBOL1053_tree;
    pANTLR3_BASE_TREE WRITE_SYMBOL1054_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    READ_SYMBOL1051       = NULL;
    LOCAL_SYMBOL1052       = NULL;
    LOW_PRIORITY_SYMBOL1053       = NULL;
    WRITE_SYMBOL1054       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    READ_SYMBOL1051_tree   = NULL;
    LOCAL_SYMBOL1052_tree   = NULL;
    LOW_PRIORITY_SYMBOL1053_tree   = NULL;
    WRITE_SYMBOL1054_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1044:10: ( READ_SYMBOL ( LOCAL_SYMBOL )? | ( LOW_PRIORITY_SYMBOL )? WRITE_SYMBOL )

            ANTLR3_UINT32 alt368;

            alt368=2;

            switch ( LA(1) )
            {
            case READ_SYMBOL:
            	{
            		alt368=1;
            	}
                break;
            case LOW_PRIORITY_SYMBOL:
            case WRITE_SYMBOL:
            	{
            		alt368=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 368;
                EXCEPTION->state        = 0;


                goto rulelock_typeEx;

            }

            switch (alt368)
            {
        	case 1:
        	    // MySQL.g:1045:2: READ_SYMBOL ( LOCAL_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        READ_SYMBOL1051 = (pANTLR3_COMMON_TOKEN) MATCHT(READ_SYMBOL, &FOLLOW_READ_SYMBOL_in_lock_type5430);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelock_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        READ_SYMBOL1051_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, READ_SYMBOL1051));
        	        ADAPTOR->addChild(ADAPTOR, root_0, READ_SYMBOL1051_tree);
        	        }

        	        // MySQL.g:1045:14: ( LOCAL_SYMBOL )?
        	        {
        	            int alt366=2;
        	            switch ( LA(1) )
        	            {
        	                case LOCAL_SYMBOL:
        	                	{
        	                		alt366=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt366)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1045:14: LOCAL_SYMBOL
        	        	    {
        	        	        LOCAL_SYMBOL1052 = (pANTLR3_COMMON_TOKEN) MATCHT(LOCAL_SYMBOL, &FOLLOW_LOCAL_SYMBOL_in_lock_type5432);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulelock_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        LOCAL_SYMBOL1052_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOCAL_SYMBOL1052));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, LOCAL_SYMBOL1052_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1046:4: ( LOW_PRIORITY_SYMBOL )? WRITE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:1046:4: ( LOW_PRIORITY_SYMBOL )?
        	        {
        	            int alt367=2;
        	            switch ( LA(1) )
        	            {
        	                case LOW_PRIORITY_SYMBOL:
        	                	{
        	                		alt367=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt367)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1046:4: LOW_PRIORITY_SYMBOL
        	        	    {
        	        	        LOW_PRIORITY_SYMBOL1053 = (pANTLR3_COMMON_TOKEN) MATCHT(LOW_PRIORITY_SYMBOL, &FOLLOW_LOW_PRIORITY_SYMBOL_in_lock_type5438);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulelock_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        LOW_PRIORITY_SYMBOL1053_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOW_PRIORITY_SYMBOL1053));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, LOW_PRIORITY_SYMBOL1053_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        WRITE_SYMBOL1054 = (pANTLR3_COMMON_TOKEN) MATCHT(WRITE_SYMBOL, &FOLLOW_WRITE_SYMBOL_in_lock_type5441);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelock_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        WRITE_SYMBOL1054_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WRITE_SYMBOL1054));
        	        ADAPTOR->addChild(ADAPTOR, root_0, WRITE_SYMBOL1054_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulelock_typeEx; /* Prevent compiler warnings */
    rulelock_typeEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end lock_type */

/**
 * $ANTLR start xa_statement
 * MySQL.g:1049:1: xa_statement : XA_SYMBOL ( ( START_SYMBOL | BEGIN_SYMBOL ) xid ( JOIN_SYMBOL | RESUME_SYMBOL )? | END_SYMBOL xid ( SUSPEND_SYMBOL ( FOR_SYMBOL MIGRATE_SYMBOL )? )? | PREPARE_SYMBOL xid | COMMIT_SYMBOL xid ( ONE_SYMBOL PHASE_SYMBOL )? | ROLLBACK_SYMBOL xid | RECOVER_SYMBOL ) ;
 */
static MySQLParser_xa_statement_return
xa_statement(pMySQLParser ctx)
{
    MySQLParser_xa_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    XA_SYMBOL1055;
    pANTLR3_COMMON_TOKEN    set1056;
    pANTLR3_COMMON_TOKEN    set1058;
    pANTLR3_COMMON_TOKEN    END_SYMBOL1059;
    pANTLR3_COMMON_TOKEN    SUSPEND_SYMBOL1061;
    pANTLR3_COMMON_TOKEN    FOR_SYMBOL1062;
    pANTLR3_COMMON_TOKEN    MIGRATE_SYMBOL1063;
    pANTLR3_COMMON_TOKEN    PREPARE_SYMBOL1064;
    pANTLR3_COMMON_TOKEN    COMMIT_SYMBOL1066;
    pANTLR3_COMMON_TOKEN    ONE_SYMBOL1068;
    pANTLR3_COMMON_TOKEN    PHASE_SYMBOL1069;
    pANTLR3_COMMON_TOKEN    ROLLBACK_SYMBOL1070;
    pANTLR3_COMMON_TOKEN    RECOVER_SYMBOL1072;
    MySQLParser_xid_return xid1057;
    #undef	RETURN_TYPE_xid1057
    #define	RETURN_TYPE_xid1057 MySQLParser_xid_return

    MySQLParser_xid_return xid1060;
    #undef	RETURN_TYPE_xid1060
    #define	RETURN_TYPE_xid1060 MySQLParser_xid_return

    MySQLParser_xid_return xid1065;
    #undef	RETURN_TYPE_xid1065
    #define	RETURN_TYPE_xid1065 MySQLParser_xid_return

    MySQLParser_xid_return xid1067;
    #undef	RETURN_TYPE_xid1067
    #define	RETURN_TYPE_xid1067 MySQLParser_xid_return

    MySQLParser_xid_return xid1071;
    #undef	RETURN_TYPE_xid1071
    #define	RETURN_TYPE_xid1071 MySQLParser_xid_return

    pANTLR3_BASE_TREE XA_SYMBOL1055_tree;
    pANTLR3_BASE_TREE set1056_tree;
    pANTLR3_BASE_TREE set1058_tree;
    pANTLR3_BASE_TREE END_SYMBOL1059_tree;
    pANTLR3_BASE_TREE SUSPEND_SYMBOL1061_tree;
    pANTLR3_BASE_TREE FOR_SYMBOL1062_tree;
    pANTLR3_BASE_TREE MIGRATE_SYMBOL1063_tree;
    pANTLR3_BASE_TREE PREPARE_SYMBOL1064_tree;
    pANTLR3_BASE_TREE COMMIT_SYMBOL1066_tree;
    pANTLR3_BASE_TREE ONE_SYMBOL1068_tree;
    pANTLR3_BASE_TREE PHASE_SYMBOL1069_tree;
    pANTLR3_BASE_TREE ROLLBACK_SYMBOL1070_tree;
    pANTLR3_BASE_TREE RECOVER_SYMBOL1072_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    XA_SYMBOL1055       = NULL;
    set1056       = NULL;
    set1058       = NULL;
    END_SYMBOL1059       = NULL;
    SUSPEND_SYMBOL1061       = NULL;
    FOR_SYMBOL1062       = NULL;
    MIGRATE_SYMBOL1063       = NULL;
    PREPARE_SYMBOL1064       = NULL;
    COMMIT_SYMBOL1066       = NULL;
    ONE_SYMBOL1068       = NULL;
    PHASE_SYMBOL1069       = NULL;
    ROLLBACK_SYMBOL1070       = NULL;
    RECOVER_SYMBOL1072       = NULL;
    xid1057.tree = NULL;

    xid1060.tree = NULL;

    xid1065.tree = NULL;

    xid1067.tree = NULL;

    xid1071.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    XA_SYMBOL1055_tree   = NULL;
    set1056_tree   = NULL;
    set1058_tree   = NULL;
    END_SYMBOL1059_tree   = NULL;
    SUSPEND_SYMBOL1061_tree   = NULL;
    FOR_SYMBOL1062_tree   = NULL;
    MIGRATE_SYMBOL1063_tree   = NULL;
    PREPARE_SYMBOL1064_tree   = NULL;
    COMMIT_SYMBOL1066_tree   = NULL;
    ONE_SYMBOL1068_tree   = NULL;
    PHASE_SYMBOL1069_tree   = NULL;
    ROLLBACK_SYMBOL1070_tree   = NULL;
    RECOVER_SYMBOL1072_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1049:13: ( XA_SYMBOL ( ( START_SYMBOL | BEGIN_SYMBOL ) xid ( JOIN_SYMBOL | RESUME_SYMBOL )? | END_SYMBOL xid ( SUSPEND_SYMBOL ( FOR_SYMBOL MIGRATE_SYMBOL )? )? | PREPARE_SYMBOL xid | COMMIT_SYMBOL xid ( ONE_SYMBOL PHASE_SYMBOL )? | ROLLBACK_SYMBOL xid | RECOVER_SYMBOL ) )
        // MySQL.g:1050:2: XA_SYMBOL ( ( START_SYMBOL | BEGIN_SYMBOL ) xid ( JOIN_SYMBOL | RESUME_SYMBOL )? | END_SYMBOL xid ( SUSPEND_SYMBOL ( FOR_SYMBOL MIGRATE_SYMBOL )? )? | PREPARE_SYMBOL xid | COMMIT_SYMBOL xid ( ONE_SYMBOL PHASE_SYMBOL )? | ROLLBACK_SYMBOL xid | RECOVER_SYMBOL )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            XA_SYMBOL1055 = (pANTLR3_COMMON_TOKEN) MATCHT(XA_SYMBOL, &FOLLOW_XA_SYMBOL_in_xa_statement5450);
            if  (HASEXCEPTION())
            {
                goto rulexa_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            XA_SYMBOL1055_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, XA_SYMBOL1055));
            ADAPTOR->addChild(ADAPTOR, root_0, XA_SYMBOL1055_tree);
            }

            // MySQL.g:1051:3: ( ( START_SYMBOL | BEGIN_SYMBOL ) xid ( JOIN_SYMBOL | RESUME_SYMBOL )? | END_SYMBOL xid ( SUSPEND_SYMBOL ( FOR_SYMBOL MIGRATE_SYMBOL )? )? | PREPARE_SYMBOL xid | COMMIT_SYMBOL xid ( ONE_SYMBOL PHASE_SYMBOL )? | ROLLBACK_SYMBOL xid | RECOVER_SYMBOL )
            {
                int alt373=6;
                switch ( LA(1) )
                {
                case BEGIN_SYMBOL:
                case START_SYMBOL:
                	{
                		alt373=1;
                	}
                    break;
                case END_SYMBOL:
                	{
                		alt373=2;
                	}
                    break;
                case PREPARE_SYMBOL:
                	{
                		alt373=3;
                	}
                    break;
                case COMMIT_SYMBOL:
                	{
                		alt373=4;
                	}
                    break;
                case ROLLBACK_SYMBOL:
                	{
                		alt373=5;
                	}
                    break;
                case RECOVER_SYMBOL:
                	{
                		alt373=6;
                	}
                    break;

                default:
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 373;
                    EXCEPTION->state        = 0;


                    goto rulexa_statementEx;

                }

                switch (alt373)
                {
            	case 1:
            	    // MySQL.g:1052:4: ( START_SYMBOL | BEGIN_SYMBOL ) xid ( JOIN_SYMBOL | RESUME_SYMBOL )?
            	    {
            	        set1056=(pANTLR3_COMMON_TOKEN)LT(1);

            	        if ( LA(1) == BEGIN_SYMBOL || LA(1) == START_SYMBOL )
            	        {
            	            CONSUME();
            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1056))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	            CONSTRUCTEX();
            	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	            EXCEPTION->expectingSet = NULL;

            	            goto rulexa_statementEx;
            	        }


            	        FOLLOWPUSH(FOLLOW_xid_in_xa_statement5467);
            	        xid1057=xid(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulexa_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, xid1057.tree);

            	        // MySQL.g:1052:38: ( JOIN_SYMBOL | RESUME_SYMBOL )?
            	        {
            	            int alt369=2;
            	            switch ( LA(1) )
            	            {
            	                case JOIN_SYMBOL:
            	                case RESUME_SYMBOL:
            	                	{
            	                		alt369=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt369)
            	            {
            	        	case 1:
            	        	    // MySQL.g:
            	        	    {
            	        	        set1058=(pANTLR3_COMMON_TOKEN)LT(1);

            	        	        if ( LA(1) == JOIN_SYMBOL || LA(1) == RESUME_SYMBOL )
            	        	        {
            	        	            CONSUME();
            	        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1058))
            	        	            );
            	        	            PERRORRECOVERY=ANTLR3_FALSE;
            	        	            FAILEDFLAG=ANTLR3_FALSE;

            	        	        }
            	        	        else
            	        	        {
            	        	            if (BACKTRACKING>0)
            	        	            {
            	        	                FAILEDFLAG = ANTLR3_TRUE;
            	        	                return retval;
            	        	            }

            	        	            CONSTRUCTEX();
            	        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	        	            EXCEPTION->expectingSet = NULL;

            	        	            goto rulexa_statementEx;
            	        	        }


            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1053:6: END_SYMBOL xid ( SUSPEND_SYMBOL ( FOR_SYMBOL MIGRATE_SYMBOL )? )?
            	    {
            	        END_SYMBOL1059 = (pANTLR3_COMMON_TOKEN) MATCHT(END_SYMBOL, &FOLLOW_END_SYMBOL_in_xa_statement5483);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulexa_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        END_SYMBOL1059_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, END_SYMBOL1059));
            	        ADAPTOR->addChild(ADAPTOR, root_0, END_SYMBOL1059_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_xid_in_xa_statement5485);
            	        xid1060=xid(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulexa_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, xid1060.tree);

            	        // MySQL.g:1053:21: ( SUSPEND_SYMBOL ( FOR_SYMBOL MIGRATE_SYMBOL )? )?
            	        {
            	            int alt371=2;
            	            switch ( LA(1) )
            	            {
            	                case SUSPEND_SYMBOL:
            	                	{
            	                		alt371=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt371)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1053:22: SUSPEND_SYMBOL ( FOR_SYMBOL MIGRATE_SYMBOL )?
            	        	    {
            	        	        SUSPEND_SYMBOL1061 = (pANTLR3_COMMON_TOKEN) MATCHT(SUSPEND_SYMBOL, &FOLLOW_SUSPEND_SYMBOL_in_xa_statement5488);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulexa_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        SUSPEND_SYMBOL1061_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SUSPEND_SYMBOL1061));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, SUSPEND_SYMBOL1061_tree);
            	        	        }

            	        	        // MySQL.g:1053:37: ( FOR_SYMBOL MIGRATE_SYMBOL )?
            	        	        {
            	        	            int alt370=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case FOR_SYMBOL:
            	        	                	{
            	        	                		alt370=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt370)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:1053:38: FOR_SYMBOL MIGRATE_SYMBOL
            	        	        	    {
            	        	        	        FOR_SYMBOL1062 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_xa_statement5491);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulexa_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        FOR_SYMBOL1062_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL1062));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL1062_tree);
            	        	        	        }

            	        	        	        MIGRATE_SYMBOL1063 = (pANTLR3_COMMON_TOKEN) MATCHT(MIGRATE_SYMBOL, &FOLLOW_MIGRATE_SYMBOL_in_xa_statement5493);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulexa_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        MIGRATE_SYMBOL1063_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MIGRATE_SYMBOL1063));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, MIGRATE_SYMBOL1063_tree);
            	        	        	        }

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:1054:6: PREPARE_SYMBOL xid
            	    {
            	        PREPARE_SYMBOL1064 = (pANTLR3_COMMON_TOKEN) MATCHT(PREPARE_SYMBOL, &FOLLOW_PREPARE_SYMBOL_in_xa_statement5504);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulexa_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PREPARE_SYMBOL1064_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PREPARE_SYMBOL1064));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PREPARE_SYMBOL1064_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_xid_in_xa_statement5506);
            	        xid1065=xid(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulexa_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, xid1065.tree);

            	    }
            	    break;
            	case 4:
            	    // MySQL.g:1055:6: COMMIT_SYMBOL xid ( ONE_SYMBOL PHASE_SYMBOL )?
            	    {
            	        COMMIT_SYMBOL1066 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMIT_SYMBOL, &FOLLOW_COMMIT_SYMBOL_in_xa_statement5513);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulexa_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMIT_SYMBOL1066_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMIT_SYMBOL1066));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMIT_SYMBOL1066_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_xid_in_xa_statement5515);
            	        xid1067=xid(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulexa_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, xid1067.tree);

            	        // MySQL.g:1055:24: ( ONE_SYMBOL PHASE_SYMBOL )?
            	        {
            	            int alt372=2;
            	            switch ( LA(1) )
            	            {
            	                case ONE_SYMBOL:
            	                	{
            	                		alt372=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt372)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1055:25: ONE_SYMBOL PHASE_SYMBOL
            	        	    {
            	        	        ONE_SYMBOL1068 = (pANTLR3_COMMON_TOKEN) MATCHT(ONE_SYMBOL, &FOLLOW_ONE_SYMBOL_in_xa_statement5518);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulexa_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        ONE_SYMBOL1068_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ONE_SYMBOL1068));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, ONE_SYMBOL1068_tree);
            	        	        }

            	        	        PHASE_SYMBOL1069 = (pANTLR3_COMMON_TOKEN) MATCHT(PHASE_SYMBOL, &FOLLOW_PHASE_SYMBOL_in_xa_statement5520);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulexa_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        PHASE_SYMBOL1069_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PHASE_SYMBOL1069));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, PHASE_SYMBOL1069_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 5:
            	    // MySQL.g:1056:6: ROLLBACK_SYMBOL xid
            	    {
            	        ROLLBACK_SYMBOL1070 = (pANTLR3_COMMON_TOKEN) MATCHT(ROLLBACK_SYMBOL, &FOLLOW_ROLLBACK_SYMBOL_in_xa_statement5529);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulexa_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ROLLBACK_SYMBOL1070_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ROLLBACK_SYMBOL1070));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ROLLBACK_SYMBOL1070_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_xid_in_xa_statement5531);
            	        xid1071=xid(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulexa_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, xid1071.tree);

            	    }
            	    break;
            	case 6:
            	    // MySQL.g:1057:6: RECOVER_SYMBOL
            	    {
            	        RECOVER_SYMBOL1072 = (pANTLR3_COMMON_TOKEN) MATCHT(RECOVER_SYMBOL, &FOLLOW_RECOVER_SYMBOL_in_xa_statement5538);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulexa_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        RECOVER_SYMBOL1072_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RECOVER_SYMBOL1072));
            	        ADAPTOR->addChild(ADAPTOR, root_0, RECOVER_SYMBOL1072_tree);
            	        }

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulexa_statementEx; /* Prevent compiler warnings */
    rulexa_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end xa_statement */

/**
 * $ANTLR start xid
 * MySQL.g:1061:1: xid : string_literal ( COMMA_SYMBOL string_literal ( COMMA_SYMBOL INTEGER )? )? -> ^( XA_ID string_literal ( COMMA_SYMBOL string_literal ( COMMA_SYMBOL INTEGER )? )? ) ;
 */
static MySQLParser_xid_return
xid(pMySQLParser ctx)
{
    MySQLParser_xid_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1074;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1076;
    pANTLR3_COMMON_TOKEN    INTEGER1077;
    MySQLParser_string_literal_return string_literal1073;
    #undef	RETURN_TYPE_string_literal1073
    #define	RETURN_TYPE_string_literal1073 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal1075;
    #undef	RETURN_TYPE_string_literal1075
    #define	RETURN_TYPE_string_literal1075 MySQLParser_string_literal_return

    pANTLR3_BASE_TREE COMMA_SYMBOL1074_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1076_tree;
    pANTLR3_BASE_TREE INTEGER1077_tree;
    pANTLR3_REWRITE_RULE_TOKEN_STREAM stream_INTEGER;
    pANTLR3_REWRITE_RULE_TOKEN_STREAM stream_COMMA_SYMBOL;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_string_literal;
    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL1074       = NULL;
    COMMA_SYMBOL1076       = NULL;
    INTEGER1077       = NULL;
    string_literal1073.tree = NULL;

    string_literal1075.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL1074_tree   = NULL;
    COMMA_SYMBOL1076_tree   = NULL;
    INTEGER1077_tree   = NULL;

    stream_INTEGER   = NULL;
    #define CREATE_stream_INTEGER  if (stream_INTEGER == NULL) {stream_INTEGER = antlr3RewriteRuleTOKENStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"token INTEGER"); } 
    stream_COMMA_SYMBOL   = NULL;
    #define CREATE_stream_COMMA_SYMBOL  if (stream_COMMA_SYMBOL == NULL) {stream_COMMA_SYMBOL = antlr3RewriteRuleTOKENStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"token COMMA_SYMBOL"); } 
    stream_string_literal   = NULL;
    #define CREATE_stream_string_literal  if (stream_string_literal == NULL) {stream_string_literal = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule string_literal"); }

    retval.tree  = NULL;

    {
        // MySQL.g:1061:4: ( string_literal ( COMMA_SYMBOL string_literal ( COMMA_SYMBOL INTEGER )? )? -> ^( XA_ID string_literal ( COMMA_SYMBOL string_literal ( COMMA_SYMBOL INTEGER )? )? ) )
        // MySQL.g:1062:2: string_literal ( COMMA_SYMBOL string_literal ( COMMA_SYMBOL INTEGER )? )?
        {
            FOLLOWPUSH(FOLLOW_string_literal_in_xid5551);
            string_literal1073=string_literal(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulexidEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_string_literal; stream_string_literal->add(stream_string_literal, string_literal1073.tree, NULL); }

            // MySQL.g:1062:17: ( COMMA_SYMBOL string_literal ( COMMA_SYMBOL INTEGER )? )?
            {
                int alt375=2;
                switch ( LA(1) )
                {
                    case COMMA_SYMBOL:
                    	{
                    		alt375=1;
                    	}
                        break;
                }

                switch (alt375)
                {
            	case 1:
            	    // MySQL.g:1062:18: COMMA_SYMBOL string_literal ( COMMA_SYMBOL INTEGER )?
            	    {
            	        COMMA_SYMBOL1074 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_xid5554);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulexidEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }
            	         
            	        if ( BACKTRACKING==0 ) { CREATE_stream_COMMA_SYMBOL; stream_COMMA_SYMBOL->add(stream_COMMA_SYMBOL, COMMA_SYMBOL1074, NULL); }


            	        FOLLOWPUSH(FOLLOW_string_literal_in_xid5556);
            	        string_literal1075=string_literal(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulexidEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) { CREATE_stream_string_literal; stream_string_literal->add(stream_string_literal, string_literal1075.tree, NULL); }

            	        // MySQL.g:1062:46: ( COMMA_SYMBOL INTEGER )?
            	        {
            	            int alt374=2;
            	            switch ( LA(1) )
            	            {
            	                case COMMA_SYMBOL:
            	                	{
            	                		alt374=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt374)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1062:47: COMMA_SYMBOL INTEGER
            	        	    {
            	        	        COMMA_SYMBOL1076 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_xid5559);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulexidEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }
            	        	         
            	        	        if ( BACKTRACKING==0 ) { CREATE_stream_COMMA_SYMBOL; stream_COMMA_SYMBOL->add(stream_COMMA_SYMBOL, COMMA_SYMBOL1076, NULL); }


            	        	        INTEGER1077 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_xid5561);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulexidEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }
            	        	         
            	        	        if ( BACKTRACKING==0 ) { CREATE_stream_INTEGER; stream_INTEGER->add(stream_INTEGER, INTEGER1077, NULL); }


            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

            /* AST REWRITE
             * elements          : string_literal, COMMA_SYMBOL, string_literal, COMMA_SYMBOL, INTEGER
             * token labels      : 
             * rule labels       : retval
             * token list labels : 
             * rule list labels  : 
             */
            if ( BACKTRACKING==0 ) 

            {
            	pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_retval;

            	stream_retval=antlr3RewriteRuleSubtreeStreamNewAEE(ADAPTOR,  RECOGNIZER, (pANTLR3_UINT8)"token retval", retval.tree != NULL ? retval.tree : NULL);

            	root_0			    = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
            	retval.tree    = root_0;
            	// 1063:3: -> ^( XA_ID string_literal ( COMMA_SYMBOL string_literal ( COMMA_SYMBOL INTEGER )? )? )
            	{
            	    // MySQL.g:1063:6: ^( XA_ID string_literal ( COMMA_SYMBOL string_literal ( COMMA_SYMBOL INTEGER )? )? )
            	    {
            	        pANTLR3_BASE_TREE root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
            	        root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, 
            	        (pANTLR3_BASE_TREE)ADAPTOR->createTypeText(ADAPTOR, XA_ID, (pANTLR3_UINT8)"XA_ID")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_string_literal == NULL ? NULL : stream_string_literal->nextTree(stream_string_literal));

            	        // MySQL.g:1063:29: ( COMMA_SYMBOL string_literal ( COMMA_SYMBOL INTEGER )? )?
            	        {
            	        	if ( (stream_string_literal != NULL && stream_string_literal->hasNext(stream_string_literal)) || (stream_COMMA_SYMBOL != NULL && stream_COMMA_SYMBOL->hasNext(stream_COMMA_SYMBOL)) || (stream_COMMA_SYMBOL != NULL && stream_COMMA_SYMBOL->hasNext(stream_COMMA_SYMBOL)) || (stream_INTEGER != NULL && stream_INTEGER->hasNext(stream_INTEGER))  )
            	        	{
            	        		ADAPTOR->addChild(ADAPTOR, root_1, 
            	        		stream_COMMA_SYMBOL == NULL ? NULL : stream_COMMA_SYMBOL->nextNode(stream_COMMA_SYMBOL)
            	        		);

            	        		ADAPTOR->addChild(ADAPTOR, root_1, stream_string_literal == NULL ? NULL : stream_string_literal->nextTree(stream_string_literal));

            	        		// MySQL.g:1063:58: ( COMMA_SYMBOL INTEGER )?
            	        		{
            	        			if ( (stream_COMMA_SYMBOL != NULL && stream_COMMA_SYMBOL->hasNext(stream_COMMA_SYMBOL)) || (stream_INTEGER != NULL && stream_INTEGER->hasNext(stream_INTEGER))  )
            	        			{
            	        				ADAPTOR->addChild(ADAPTOR, root_1, 
            	        				stream_COMMA_SYMBOL == NULL ? NULL : stream_COMMA_SYMBOL->nextNode(stream_COMMA_SYMBOL)
            	        				);

            	        				ADAPTOR->addChild(ADAPTOR, root_1, 
            	        				stream_INTEGER == NULL ? NULL : stream_INTEGER->nextNode(stream_INTEGER)
            	        				);

            	        			}
            	        			if ( stream_COMMA_SYMBOL != NULL) stream_COMMA_SYMBOL->reset(stream_COMMA_SYMBOL);
            	        			if ( stream_INTEGER != NULL) stream_INTEGER->reset(stream_INTEGER);

            	        		}

            	        	}
            	        	if ( stream_string_literal != NULL) stream_string_literal->reset(stream_string_literal);
            	        	if ( stream_COMMA_SYMBOL != NULL) stream_COMMA_SYMBOL->reset(stream_COMMA_SYMBOL);
            	        	if ( stream_COMMA_SYMBOL != NULL) stream_COMMA_SYMBOL->reset(stream_COMMA_SYMBOL);
            	        	if ( stream_INTEGER != NULL) stream_INTEGER->reset(stream_INTEGER);

            	        }

            	        ADAPTOR->addChild(ADAPTOR, root_0, root_1);
            	    }

            	}


            	retval.tree = root_0; // set result root
            	if (stream_retval != NULL) stream_retval->free(stream_retval);


            }
        }

    }

    // This is where rules clean up and exit
    //
    goto rulexidEx; /* Prevent compiler warnings */
    rulexidEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
        if (stream_INTEGER != NULL) stream_INTEGER->free(stream_INTEGER);
        if (stream_COMMA_SYMBOL != NULL) stream_COMMA_SYMBOL->free(stream_COMMA_SYMBOL);
        if (stream_string_literal != NULL) stream_string_literal->free(stream_string_literal);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end xid */

/**
 * $ANTLR start replication_statement
 * MySQL.g:1068:1: replication_statement : ( PURGE_SYMBOL ( BINARY_SYMBOL | MASTER_SYMBOL ) LOGS_SYMBOL ( TO_SYMBOL string_literal | BEFORE_SYMBOL expression ) | change_master | start_slave | stop_slave |{...}? =>{...}? replication_load );
 */
static MySQLParser_replication_statement_return
replication_statement(pMySQLParser ctx)
{
    MySQLParser_replication_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    PURGE_SYMBOL1078;
    pANTLR3_COMMON_TOKEN    set1079;
    pANTLR3_COMMON_TOKEN    LOGS_SYMBOL1080;
    pANTLR3_COMMON_TOKEN    TO_SYMBOL1081;
    pANTLR3_COMMON_TOKEN    BEFORE_SYMBOL1083;
    MySQLParser_string_literal_return string_literal1082;
    #undef	RETURN_TYPE_string_literal1082
    #define	RETURN_TYPE_string_literal1082 MySQLParser_string_literal_return

    MySQLParser_expression_return expression1084;
    #undef	RETURN_TYPE_expression1084
    #define	RETURN_TYPE_expression1084 MySQLParser_expression_return

    MySQLParser_change_master_return change_master1085;
    #undef	RETURN_TYPE_change_master1085
    #define	RETURN_TYPE_change_master1085 MySQLParser_change_master_return

    MySQLParser_start_slave_return start_slave1086;
    #undef	RETURN_TYPE_start_slave1086
    #define	RETURN_TYPE_start_slave1086 MySQLParser_start_slave_return

    MySQLParser_stop_slave_return stop_slave1087;
    #undef	RETURN_TYPE_stop_slave1087
    #define	RETURN_TYPE_stop_slave1087 MySQLParser_stop_slave_return

    MySQLParser_replication_load_return replication_load1088;
    #undef	RETURN_TYPE_replication_load1088
    #define	RETURN_TYPE_replication_load1088 MySQLParser_replication_load_return

    pANTLR3_BASE_TREE PURGE_SYMBOL1078_tree;
    pANTLR3_BASE_TREE set1079_tree;
    pANTLR3_BASE_TREE LOGS_SYMBOL1080_tree;
    pANTLR3_BASE_TREE TO_SYMBOL1081_tree;
    pANTLR3_BASE_TREE BEFORE_SYMBOL1083_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PURGE_SYMBOL1078       = NULL;
    set1079       = NULL;
    LOGS_SYMBOL1080       = NULL;
    TO_SYMBOL1081       = NULL;
    BEFORE_SYMBOL1083       = NULL;
    string_literal1082.tree = NULL;

    expression1084.tree = NULL;

    change_master1085.tree = NULL;

    start_slave1086.tree = NULL;

    stop_slave1087.tree = NULL;

    replication_load1088.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PURGE_SYMBOL1078_tree   = NULL;
    set1079_tree   = NULL;
    LOGS_SYMBOL1080_tree   = NULL;
    TO_SYMBOL1081_tree   = NULL;
    BEFORE_SYMBOL1083_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1068:22: ( PURGE_SYMBOL ( BINARY_SYMBOL | MASTER_SYMBOL ) LOGS_SYMBOL ( TO_SYMBOL string_literal | BEFORE_SYMBOL expression ) | change_master | start_slave | stop_slave |{...}? =>{...}? replication_load )

            ANTLR3_UINT32 alt377;

            alt377=5;

            {
                int LA377_0 = LA(1);
                if ( (LA377_0 == PURGE_SYMBOL))
                {
                    alt377=1;
                }
                else if ( (LA377_0 == CHANGE_SYMBOL))
                {
                    alt377=2;
                }
                else if ( (LA377_0 == START_SYMBOL))
                {
                    alt377=3;
                }
                else if ( (LA377_0 == STOP_SYMBOL))
                {
                    alt377=4;
                }
                else if ( ((SERVER_VERSION < 50500)) && (LA377_0 == LOAD_SYMBOL))
                {
                    alt377=5;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 377;
                    EXCEPTION->state        = 0;


                    goto rulereplication_statementEx;

                }
            }
            switch (alt377)
            {
        	case 1:
        	    // MySQL.g:1069:2: PURGE_SYMBOL ( BINARY_SYMBOL | MASTER_SYMBOL ) LOGS_SYMBOL ( TO_SYMBOL string_literal | BEFORE_SYMBOL expression )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PURGE_SYMBOL1078 = (pANTLR3_COMMON_TOKEN) MATCHT(PURGE_SYMBOL, &FOLLOW_PURGE_SYMBOL_in_replication_statement5600);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereplication_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PURGE_SYMBOL1078_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PURGE_SYMBOL1078));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PURGE_SYMBOL1078_tree);
        	        }

        	        set1079=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == BINARY_SYMBOL || LA(1) == MASTER_SYMBOL )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1079))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	            CONSTRUCTEX();
        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
        	            EXCEPTION->expectingSet = NULL;

        	            goto rulereplication_statementEx;
        	        }


        	        LOGS_SYMBOL1080 = (pANTLR3_COMMON_TOKEN) MATCHT(LOGS_SYMBOL, &FOLLOW_LOGS_SYMBOL_in_replication_statement5610);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereplication_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LOGS_SYMBOL1080_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOGS_SYMBOL1080));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LOGS_SYMBOL1080_tree);
        	        }

        	        // MySQL.g:1069:59: ( TO_SYMBOL string_literal | BEFORE_SYMBOL expression )
        	        {
        	            int alt376=2;
        	            switch ( LA(1) )
        	            {
        	            case TO_SYMBOL:
        	            	{
        	            		alt376=1;
        	            	}
        	                break;
        	            case BEFORE_SYMBOL:
        	            	{
        	            		alt376=2;
        	            	}
        	                break;

        	            default:
        	                if (BACKTRACKING>0)
        	                {
        	                    FAILEDFLAG = ANTLR3_TRUE;
        	                    return retval;
        	                }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                EXCEPTION->message      = (void *)"";
        	                EXCEPTION->decisionNum  = 376;
        	                EXCEPTION->state        = 0;


        	                goto rulereplication_statementEx;

        	            }

        	            switch (alt376)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1069:60: TO_SYMBOL string_literal
        	        	    {
        	        	        TO_SYMBOL1081 = (pANTLR3_COMMON_TOKEN) MATCHT(TO_SYMBOL, &FOLLOW_TO_SYMBOL_in_replication_statement5613);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulereplication_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        TO_SYMBOL1081_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TO_SYMBOL1081));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, TO_SYMBOL1081_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_string_literal_in_replication_statement5615);
        	        	        string_literal1082=string_literal(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulereplication_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1082.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:1069:87: BEFORE_SYMBOL expression
        	        	    {
        	        	        BEFORE_SYMBOL1083 = (pANTLR3_COMMON_TOKEN) MATCHT(BEFORE_SYMBOL, &FOLLOW_BEFORE_SYMBOL_in_replication_statement5619);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulereplication_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        BEFORE_SYMBOL1083_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BEFORE_SYMBOL1083));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, BEFORE_SYMBOL1083_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_expression_in_replication_statement5621);
        	        	        expression1084=expression(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulereplication_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1084.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1070:4: change_master
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_change_master_in_replication_statement5627);
        	        change_master1085=change_master(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereplication_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, change_master1085.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1075:4: start_slave
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_start_slave_in_replication_statement5635);
        	        start_slave1086=start_slave(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereplication_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, start_slave1086.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1076:4: stop_slave
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_stop_slave_in_replication_statement5640);
        	        stop_slave1087=stop_slave(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereplication_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, stop_slave1087.tree);

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1077:4: {...}? =>{...}? replication_load
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((SERVER_VERSION < 50500)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"SERVER_VERSION < 50500";
        	                EXCEPTION->ruleName	 = (void *)"replication_statement";


        	        }

        	        if ( !((LA(1) == LOAD_SYMBOL && (LA(2) == DATA_SYMBOL || LA(2) == TABLE_SYMBOL))) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"LA(1) == LOAD_SYMBOL && (LA(2) == DATA_SYMBOL || LA(2) == TABLE_SYMBOL)";
        	                EXCEPTION->ruleName	 = (void *)"replication_statement";


        	        }

        	        FOLLOWPUSH(FOLLOW_replication_load_in_replication_statement5651);
        	        replication_load1088=replication_load(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereplication_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, replication_load1088.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulereplication_statementEx; /* Prevent compiler warnings */
    rulereplication_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end replication_statement */

/**
 * $ANTLR start replication_load
 * MySQL.g:1080:1: replication_load : LOAD_SYMBOL ( DATA_SYMBOL | TABLE_SYMBOL table_identifier ) FROM_SYMBOL MASTER_SYMBOL ;
 */
static MySQLParser_replication_load_return
replication_load(pMySQLParser ctx)
{
    MySQLParser_replication_load_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    LOAD_SYMBOL1089;
    pANTLR3_COMMON_TOKEN    DATA_SYMBOL1090;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL1091;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL1093;
    pANTLR3_COMMON_TOKEN    MASTER_SYMBOL1094;
    MySQLParser_table_identifier_return table_identifier1092;
    #undef	RETURN_TYPE_table_identifier1092
    #define	RETURN_TYPE_table_identifier1092 MySQLParser_table_identifier_return

    pANTLR3_BASE_TREE LOAD_SYMBOL1089_tree;
    pANTLR3_BASE_TREE DATA_SYMBOL1090_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL1091_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL1093_tree;
    pANTLR3_BASE_TREE MASTER_SYMBOL1094_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    LOAD_SYMBOL1089       = NULL;
    DATA_SYMBOL1090       = NULL;
    TABLE_SYMBOL1091       = NULL;
    FROM_SYMBOL1093       = NULL;
    MASTER_SYMBOL1094       = NULL;
    table_identifier1092.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    LOAD_SYMBOL1089_tree   = NULL;
    DATA_SYMBOL1090_tree   = NULL;
    TABLE_SYMBOL1091_tree   = NULL;
    FROM_SYMBOL1093_tree   = NULL;
    MASTER_SYMBOL1094_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1080:17: ( LOAD_SYMBOL ( DATA_SYMBOL | TABLE_SYMBOL table_identifier ) FROM_SYMBOL MASTER_SYMBOL )
        // MySQL.g:1081:2: LOAD_SYMBOL ( DATA_SYMBOL | TABLE_SYMBOL table_identifier ) FROM_SYMBOL MASTER_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            LOAD_SYMBOL1089 = (pANTLR3_COMMON_TOKEN) MATCHT(LOAD_SYMBOL, &FOLLOW_LOAD_SYMBOL_in_replication_load5660);
            if  (HASEXCEPTION())
            {
                goto rulereplication_loadEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            LOAD_SYMBOL1089_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOAD_SYMBOL1089));
            ADAPTOR->addChild(ADAPTOR, root_0, LOAD_SYMBOL1089_tree);
            }

            // MySQL.g:1081:14: ( DATA_SYMBOL | TABLE_SYMBOL table_identifier )
            {
                int alt378=2;
                switch ( LA(1) )
                {
                case DATA_SYMBOL:
                	{
                		alt378=1;
                	}
                    break;
                case TABLE_SYMBOL:
                	{
                		alt378=2;
                	}
                    break;

                default:
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 378;
                    EXCEPTION->state        = 0;


                    goto rulereplication_loadEx;

                }

                switch (alt378)
                {
            	case 1:
            	    // MySQL.g:1081:15: DATA_SYMBOL
            	    {
            	        DATA_SYMBOL1090 = (pANTLR3_COMMON_TOKEN) MATCHT(DATA_SYMBOL, &FOLLOW_DATA_SYMBOL_in_replication_load5663);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereplication_loadEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DATA_SYMBOL1090_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATA_SYMBOL1090));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DATA_SYMBOL1090_tree);
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1081:29: TABLE_SYMBOL table_identifier
            	    {
            	        TABLE_SYMBOL1091 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_replication_load5667);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereplication_loadEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TABLE_SYMBOL1091_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL1091));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL1091_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_table_identifier_in_replication_load5669);
            	        table_identifier1092=table_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereplication_loadEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_identifier1092.tree);

            	    }
            	    break;

                }
            }

            FROM_SYMBOL1093 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_replication_load5672);
            if  (HASEXCEPTION())
            {
                goto rulereplication_loadEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            FROM_SYMBOL1093_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL1093));
            ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL1093_tree);
            }

            MASTER_SYMBOL1094 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_SYMBOL, &FOLLOW_MASTER_SYMBOL_in_replication_load5674);
            if  (HASEXCEPTION())
            {
                goto rulereplication_loadEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            MASTER_SYMBOL1094_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_SYMBOL1094));
            ADAPTOR->addChild(ADAPTOR, root_0, MASTER_SYMBOL1094_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulereplication_loadEx; /* Prevent compiler warnings */
    rulereplication_loadEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end replication_load */

/**
 * $ANTLR start change_master
 * MySQL.g:1084:1: change_master : CHANGE_SYMBOL MASTER_SYMBOL TO_SYMBOL master_option ( COMMA_SYMBOL master_option )* ;
 */
static MySQLParser_change_master_return
change_master(pMySQLParser ctx)
{
    MySQLParser_change_master_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    CHANGE_SYMBOL1095;
    pANTLR3_COMMON_TOKEN    MASTER_SYMBOL1096;
    pANTLR3_COMMON_TOKEN    TO_SYMBOL1097;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1099;
    MySQLParser_master_option_return master_option1098;
    #undef	RETURN_TYPE_master_option1098
    #define	RETURN_TYPE_master_option1098 MySQLParser_master_option_return

    MySQLParser_master_option_return master_option1100;
    #undef	RETURN_TYPE_master_option1100
    #define	RETURN_TYPE_master_option1100 MySQLParser_master_option_return

    pANTLR3_BASE_TREE CHANGE_SYMBOL1095_tree;
    pANTLR3_BASE_TREE MASTER_SYMBOL1096_tree;
    pANTLR3_BASE_TREE TO_SYMBOL1097_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1099_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CHANGE_SYMBOL1095       = NULL;
    MASTER_SYMBOL1096       = NULL;
    TO_SYMBOL1097       = NULL;
    COMMA_SYMBOL1099       = NULL;
    master_option1098.tree = NULL;

    master_option1100.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CHANGE_SYMBOL1095_tree   = NULL;
    MASTER_SYMBOL1096_tree   = NULL;
    TO_SYMBOL1097_tree   = NULL;
    COMMA_SYMBOL1099_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1084:14: ( CHANGE_SYMBOL MASTER_SYMBOL TO_SYMBOL master_option ( COMMA_SYMBOL master_option )* )
        // MySQL.g:1085:2: CHANGE_SYMBOL MASTER_SYMBOL TO_SYMBOL master_option ( COMMA_SYMBOL master_option )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            CHANGE_SYMBOL1095 = (pANTLR3_COMMON_TOKEN) MATCHT(CHANGE_SYMBOL, &FOLLOW_CHANGE_SYMBOL_in_change_master5683);
            if  (HASEXCEPTION())
            {
                goto rulechange_masterEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CHANGE_SYMBOL1095_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHANGE_SYMBOL1095));
            ADAPTOR->addChild(ADAPTOR, root_0, CHANGE_SYMBOL1095_tree);
            }

            MASTER_SYMBOL1096 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_SYMBOL, &FOLLOW_MASTER_SYMBOL_in_change_master5685);
            if  (HASEXCEPTION())
            {
                goto rulechange_masterEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            MASTER_SYMBOL1096_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_SYMBOL1096));
            ADAPTOR->addChild(ADAPTOR, root_0, MASTER_SYMBOL1096_tree);
            }

            TO_SYMBOL1097 = (pANTLR3_COMMON_TOKEN) MATCHT(TO_SYMBOL, &FOLLOW_TO_SYMBOL_in_change_master5687);
            if  (HASEXCEPTION())
            {
                goto rulechange_masterEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            TO_SYMBOL1097_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TO_SYMBOL1097));
            ADAPTOR->addChild(ADAPTOR, root_0, TO_SYMBOL1097_tree);
            }

            FOLLOWPUSH(FOLLOW_master_option_in_change_master5689);
            master_option1098=master_option(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulechange_masterEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, master_option1098.tree);

            // MySQL.g:1085:54: ( COMMA_SYMBOL master_option )*

            for (;;)
            {
                int alt379=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt379=1;
                	}
                    break;

                }

                switch (alt379)
                {
            	case 1:
            	    // MySQL.g:1085:55: COMMA_SYMBOL master_option
            	    {
            	        COMMA_SYMBOL1099 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_change_master5692);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulechange_masterEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL1099_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1099));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1099_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_master_option_in_change_master5694);
            	        master_option1100=master_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulechange_masterEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, master_option1100.tree);

            	    }
            	    break;

            	default:
            	    goto loop379;	/* break out of the loop */
            	    break;
                }
            }
            loop379: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto rulechange_masterEx; /* Prevent compiler warnings */
    rulechange_masterEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end change_master */

/**
 * $ANTLR start master_option
 * MySQL.g:1088:1: master_option : ( MASTER_BIND_SYMBOL EQUAL_OPERATOR string_literal | MASTER_HOST_SYMBOL EQUAL_OPERATOR string_literal | MASTER_USER_SYMBOL EQUAL_OPERATOR string_literal | MASTER_PASSWORD_SYMBOL EQUAL_OPERATOR string_literal | MASTER_PORT_SYMBOL EQUAL_OPERATOR INTEGER | MASTER_CONNECT_RETRY_SYMBOL EQUAL_OPERATOR INTEGER | MASTER_RETRY_COUNT_SYMBOL EQUAL_OPERATOR INTEGER | MASTER_DELAY_SYMBOL EQUAL_OPERATOR INTEGER | MASTER_HEARTBEAT_PERIOD_SYMBOL EQUAL_OPERATOR INTEGER | MASTER_LOG_FILE_SYMBOL EQUAL_OPERATOR string_literal | MASTER_LOG_POS_SYMBOL EQUAL_OPERATOR INTEGER | MASTER_AUTO_POSITION_SYMBOL EQUAL_OPERATOR INTEGER | RELAY_LOG_FILE_SYMBOL EQUAL_OPERATOR string_literal | RELAY_LOG_POS_SYMBOL EQUAL_OPERATOR INTEGER | MASTER_SSL_SYMBOL EQUAL_OPERATOR INTEGER | MASTER_SSL_CA_SYMBOL EQUAL_OPERATOR string_literal | MASTER_SSL_CAPATH_SYMBOL EQUAL_OPERATOR string_literal | MASTER_SSL_CERT_SYMBOL EQUAL_OPERATOR string_literal | MASTER_SSL_CRL_SYMBOL EQUAL_OPERATOR string_literal | MASTER_SSL_CRLPATH_SYMBOL EQUAL_OPERATOR string_literal | MASTER_SSL_KEY_SYMBOL EQUAL_OPERATOR string_literal | MASTER_SSL_CIPHER_SYMBOL EQUAL_OPERATOR string_literal | MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL EQUAL_OPERATOR INTEGER | IGNORE_SERVER_IDS_SYMBOL EQUAL_OPERATOR server_id_list );
 */
static MySQLParser_master_option_return
master_option(pMySQLParser ctx)
{
    MySQLParser_master_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    MASTER_BIND_SYMBOL1101;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1102;
    pANTLR3_COMMON_TOKEN    MASTER_HOST_SYMBOL1104;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1105;
    pANTLR3_COMMON_TOKEN    MASTER_USER_SYMBOL1107;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1108;
    pANTLR3_COMMON_TOKEN    MASTER_PASSWORD_SYMBOL1110;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1111;
    pANTLR3_COMMON_TOKEN    MASTER_PORT_SYMBOL1113;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1114;
    pANTLR3_COMMON_TOKEN    INTEGER1115;
    pANTLR3_COMMON_TOKEN    MASTER_CONNECT_RETRY_SYMBOL1116;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1117;
    pANTLR3_COMMON_TOKEN    INTEGER1118;
    pANTLR3_COMMON_TOKEN    MASTER_RETRY_COUNT_SYMBOL1119;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1120;
    pANTLR3_COMMON_TOKEN    INTEGER1121;
    pANTLR3_COMMON_TOKEN    MASTER_DELAY_SYMBOL1122;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1123;
    pANTLR3_COMMON_TOKEN    INTEGER1124;
    pANTLR3_COMMON_TOKEN    MASTER_HEARTBEAT_PERIOD_SYMBOL1125;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1126;
    pANTLR3_COMMON_TOKEN    INTEGER1127;
    pANTLR3_COMMON_TOKEN    MASTER_LOG_FILE_SYMBOL1128;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1129;
    pANTLR3_COMMON_TOKEN    MASTER_LOG_POS_SYMBOL1131;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1132;
    pANTLR3_COMMON_TOKEN    INTEGER1133;
    pANTLR3_COMMON_TOKEN    MASTER_AUTO_POSITION_SYMBOL1134;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1135;
    pANTLR3_COMMON_TOKEN    INTEGER1136;
    pANTLR3_COMMON_TOKEN    RELAY_LOG_FILE_SYMBOL1137;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1138;
    pANTLR3_COMMON_TOKEN    RELAY_LOG_POS_SYMBOL1140;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1141;
    pANTLR3_COMMON_TOKEN    INTEGER1142;
    pANTLR3_COMMON_TOKEN    MASTER_SSL_SYMBOL1143;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1144;
    pANTLR3_COMMON_TOKEN    INTEGER1145;
    pANTLR3_COMMON_TOKEN    MASTER_SSL_CA_SYMBOL1146;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1147;
    pANTLR3_COMMON_TOKEN    MASTER_SSL_CAPATH_SYMBOL1149;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1150;
    pANTLR3_COMMON_TOKEN    MASTER_SSL_CERT_SYMBOL1152;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1153;
    pANTLR3_COMMON_TOKEN    MASTER_SSL_CRL_SYMBOL1155;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1156;
    pANTLR3_COMMON_TOKEN    MASTER_SSL_CRLPATH_SYMBOL1158;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1159;
    pANTLR3_COMMON_TOKEN    MASTER_SSL_KEY_SYMBOL1161;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1162;
    pANTLR3_COMMON_TOKEN    MASTER_SSL_CIPHER_SYMBOL1164;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1165;
    pANTLR3_COMMON_TOKEN    MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL1167;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1168;
    pANTLR3_COMMON_TOKEN    INTEGER1169;
    pANTLR3_COMMON_TOKEN    IGNORE_SERVER_IDS_SYMBOL1170;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1171;
    MySQLParser_string_literal_return string_literal1103;
    #undef	RETURN_TYPE_string_literal1103
    #define	RETURN_TYPE_string_literal1103 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal1106;
    #undef	RETURN_TYPE_string_literal1106
    #define	RETURN_TYPE_string_literal1106 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal1109;
    #undef	RETURN_TYPE_string_literal1109
    #define	RETURN_TYPE_string_literal1109 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal1112;
    #undef	RETURN_TYPE_string_literal1112
    #define	RETURN_TYPE_string_literal1112 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal1130;
    #undef	RETURN_TYPE_string_literal1130
    #define	RETURN_TYPE_string_literal1130 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal1139;
    #undef	RETURN_TYPE_string_literal1139
    #define	RETURN_TYPE_string_literal1139 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal1148;
    #undef	RETURN_TYPE_string_literal1148
    #define	RETURN_TYPE_string_literal1148 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal1151;
    #undef	RETURN_TYPE_string_literal1151
    #define	RETURN_TYPE_string_literal1151 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal1154;
    #undef	RETURN_TYPE_string_literal1154
    #define	RETURN_TYPE_string_literal1154 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal1157;
    #undef	RETURN_TYPE_string_literal1157
    #define	RETURN_TYPE_string_literal1157 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal1160;
    #undef	RETURN_TYPE_string_literal1160
    #define	RETURN_TYPE_string_literal1160 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal1163;
    #undef	RETURN_TYPE_string_literal1163
    #define	RETURN_TYPE_string_literal1163 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal1166;
    #undef	RETURN_TYPE_string_literal1166
    #define	RETURN_TYPE_string_literal1166 MySQLParser_string_literal_return

    MySQLParser_server_id_list_return server_id_list1172;
    #undef	RETURN_TYPE_server_id_list1172
    #define	RETURN_TYPE_server_id_list1172 MySQLParser_server_id_list_return

    pANTLR3_BASE_TREE MASTER_BIND_SYMBOL1101_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1102_tree;
    pANTLR3_BASE_TREE MASTER_HOST_SYMBOL1104_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1105_tree;
    pANTLR3_BASE_TREE MASTER_USER_SYMBOL1107_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1108_tree;
    pANTLR3_BASE_TREE MASTER_PASSWORD_SYMBOL1110_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1111_tree;
    pANTLR3_BASE_TREE MASTER_PORT_SYMBOL1113_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1114_tree;
    pANTLR3_BASE_TREE INTEGER1115_tree;
    pANTLR3_BASE_TREE MASTER_CONNECT_RETRY_SYMBOL1116_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1117_tree;
    pANTLR3_BASE_TREE INTEGER1118_tree;
    pANTLR3_BASE_TREE MASTER_RETRY_COUNT_SYMBOL1119_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1120_tree;
    pANTLR3_BASE_TREE INTEGER1121_tree;
    pANTLR3_BASE_TREE MASTER_DELAY_SYMBOL1122_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1123_tree;
    pANTLR3_BASE_TREE INTEGER1124_tree;
    pANTLR3_BASE_TREE MASTER_HEARTBEAT_PERIOD_SYMBOL1125_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1126_tree;
    pANTLR3_BASE_TREE INTEGER1127_tree;
    pANTLR3_BASE_TREE MASTER_LOG_FILE_SYMBOL1128_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1129_tree;
    pANTLR3_BASE_TREE MASTER_LOG_POS_SYMBOL1131_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1132_tree;
    pANTLR3_BASE_TREE INTEGER1133_tree;
    pANTLR3_BASE_TREE MASTER_AUTO_POSITION_SYMBOL1134_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1135_tree;
    pANTLR3_BASE_TREE INTEGER1136_tree;
    pANTLR3_BASE_TREE RELAY_LOG_FILE_SYMBOL1137_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1138_tree;
    pANTLR3_BASE_TREE RELAY_LOG_POS_SYMBOL1140_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1141_tree;
    pANTLR3_BASE_TREE INTEGER1142_tree;
    pANTLR3_BASE_TREE MASTER_SSL_SYMBOL1143_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1144_tree;
    pANTLR3_BASE_TREE INTEGER1145_tree;
    pANTLR3_BASE_TREE MASTER_SSL_CA_SYMBOL1146_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1147_tree;
    pANTLR3_BASE_TREE MASTER_SSL_CAPATH_SYMBOL1149_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1150_tree;
    pANTLR3_BASE_TREE MASTER_SSL_CERT_SYMBOL1152_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1153_tree;
    pANTLR3_BASE_TREE MASTER_SSL_CRL_SYMBOL1155_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1156_tree;
    pANTLR3_BASE_TREE MASTER_SSL_CRLPATH_SYMBOL1158_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1159_tree;
    pANTLR3_BASE_TREE MASTER_SSL_KEY_SYMBOL1161_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1162_tree;
    pANTLR3_BASE_TREE MASTER_SSL_CIPHER_SYMBOL1164_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1165_tree;
    pANTLR3_BASE_TREE MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL1167_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1168_tree;
    pANTLR3_BASE_TREE INTEGER1169_tree;
    pANTLR3_BASE_TREE IGNORE_SERVER_IDS_SYMBOL1170_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1171_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    MASTER_BIND_SYMBOL1101       = NULL;
    EQUAL_OPERATOR1102       = NULL;
    MASTER_HOST_SYMBOL1104       = NULL;
    EQUAL_OPERATOR1105       = NULL;
    MASTER_USER_SYMBOL1107       = NULL;
    EQUAL_OPERATOR1108       = NULL;
    MASTER_PASSWORD_SYMBOL1110       = NULL;
    EQUAL_OPERATOR1111       = NULL;
    MASTER_PORT_SYMBOL1113       = NULL;
    EQUAL_OPERATOR1114       = NULL;
    INTEGER1115       = NULL;
    MASTER_CONNECT_RETRY_SYMBOL1116       = NULL;
    EQUAL_OPERATOR1117       = NULL;
    INTEGER1118       = NULL;
    MASTER_RETRY_COUNT_SYMBOL1119       = NULL;
    EQUAL_OPERATOR1120       = NULL;
    INTEGER1121       = NULL;
    MASTER_DELAY_SYMBOL1122       = NULL;
    EQUAL_OPERATOR1123       = NULL;
    INTEGER1124       = NULL;
    MASTER_HEARTBEAT_PERIOD_SYMBOL1125       = NULL;
    EQUAL_OPERATOR1126       = NULL;
    INTEGER1127       = NULL;
    MASTER_LOG_FILE_SYMBOL1128       = NULL;
    EQUAL_OPERATOR1129       = NULL;
    MASTER_LOG_POS_SYMBOL1131       = NULL;
    EQUAL_OPERATOR1132       = NULL;
    INTEGER1133       = NULL;
    MASTER_AUTO_POSITION_SYMBOL1134       = NULL;
    EQUAL_OPERATOR1135       = NULL;
    INTEGER1136       = NULL;
    RELAY_LOG_FILE_SYMBOL1137       = NULL;
    EQUAL_OPERATOR1138       = NULL;
    RELAY_LOG_POS_SYMBOL1140       = NULL;
    EQUAL_OPERATOR1141       = NULL;
    INTEGER1142       = NULL;
    MASTER_SSL_SYMBOL1143       = NULL;
    EQUAL_OPERATOR1144       = NULL;
    INTEGER1145       = NULL;
    MASTER_SSL_CA_SYMBOL1146       = NULL;
    EQUAL_OPERATOR1147       = NULL;
    MASTER_SSL_CAPATH_SYMBOL1149       = NULL;
    EQUAL_OPERATOR1150       = NULL;
    MASTER_SSL_CERT_SYMBOL1152       = NULL;
    EQUAL_OPERATOR1153       = NULL;
    MASTER_SSL_CRL_SYMBOL1155       = NULL;
    EQUAL_OPERATOR1156       = NULL;
    MASTER_SSL_CRLPATH_SYMBOL1158       = NULL;
    EQUAL_OPERATOR1159       = NULL;
    MASTER_SSL_KEY_SYMBOL1161       = NULL;
    EQUAL_OPERATOR1162       = NULL;
    MASTER_SSL_CIPHER_SYMBOL1164       = NULL;
    EQUAL_OPERATOR1165       = NULL;
    MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL1167       = NULL;
    EQUAL_OPERATOR1168       = NULL;
    INTEGER1169       = NULL;
    IGNORE_SERVER_IDS_SYMBOL1170       = NULL;
    EQUAL_OPERATOR1171       = NULL;
    string_literal1103.tree = NULL;

    string_literal1106.tree = NULL;

    string_literal1109.tree = NULL;

    string_literal1112.tree = NULL;

    string_literal1130.tree = NULL;

    string_literal1139.tree = NULL;

    string_literal1148.tree = NULL;

    string_literal1151.tree = NULL;

    string_literal1154.tree = NULL;

    string_literal1157.tree = NULL;

    string_literal1160.tree = NULL;

    string_literal1163.tree = NULL;

    string_literal1166.tree = NULL;

    server_id_list1172.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    MASTER_BIND_SYMBOL1101_tree   = NULL;
    EQUAL_OPERATOR1102_tree   = NULL;
    MASTER_HOST_SYMBOL1104_tree   = NULL;
    EQUAL_OPERATOR1105_tree   = NULL;
    MASTER_USER_SYMBOL1107_tree   = NULL;
    EQUAL_OPERATOR1108_tree   = NULL;
    MASTER_PASSWORD_SYMBOL1110_tree   = NULL;
    EQUAL_OPERATOR1111_tree   = NULL;
    MASTER_PORT_SYMBOL1113_tree   = NULL;
    EQUAL_OPERATOR1114_tree   = NULL;
    INTEGER1115_tree   = NULL;
    MASTER_CONNECT_RETRY_SYMBOL1116_tree   = NULL;
    EQUAL_OPERATOR1117_tree   = NULL;
    INTEGER1118_tree   = NULL;
    MASTER_RETRY_COUNT_SYMBOL1119_tree   = NULL;
    EQUAL_OPERATOR1120_tree   = NULL;
    INTEGER1121_tree   = NULL;
    MASTER_DELAY_SYMBOL1122_tree   = NULL;
    EQUAL_OPERATOR1123_tree   = NULL;
    INTEGER1124_tree   = NULL;
    MASTER_HEARTBEAT_PERIOD_SYMBOL1125_tree   = NULL;
    EQUAL_OPERATOR1126_tree   = NULL;
    INTEGER1127_tree   = NULL;
    MASTER_LOG_FILE_SYMBOL1128_tree   = NULL;
    EQUAL_OPERATOR1129_tree   = NULL;
    MASTER_LOG_POS_SYMBOL1131_tree   = NULL;
    EQUAL_OPERATOR1132_tree   = NULL;
    INTEGER1133_tree   = NULL;
    MASTER_AUTO_POSITION_SYMBOL1134_tree   = NULL;
    EQUAL_OPERATOR1135_tree   = NULL;
    INTEGER1136_tree   = NULL;
    RELAY_LOG_FILE_SYMBOL1137_tree   = NULL;
    EQUAL_OPERATOR1138_tree   = NULL;
    RELAY_LOG_POS_SYMBOL1140_tree   = NULL;
    EQUAL_OPERATOR1141_tree   = NULL;
    INTEGER1142_tree   = NULL;
    MASTER_SSL_SYMBOL1143_tree   = NULL;
    EQUAL_OPERATOR1144_tree   = NULL;
    INTEGER1145_tree   = NULL;
    MASTER_SSL_CA_SYMBOL1146_tree   = NULL;
    EQUAL_OPERATOR1147_tree   = NULL;
    MASTER_SSL_CAPATH_SYMBOL1149_tree   = NULL;
    EQUAL_OPERATOR1150_tree   = NULL;
    MASTER_SSL_CERT_SYMBOL1152_tree   = NULL;
    EQUAL_OPERATOR1153_tree   = NULL;
    MASTER_SSL_CRL_SYMBOL1155_tree   = NULL;
    EQUAL_OPERATOR1156_tree   = NULL;
    MASTER_SSL_CRLPATH_SYMBOL1158_tree   = NULL;
    EQUAL_OPERATOR1159_tree   = NULL;
    MASTER_SSL_KEY_SYMBOL1161_tree   = NULL;
    EQUAL_OPERATOR1162_tree   = NULL;
    MASTER_SSL_CIPHER_SYMBOL1164_tree   = NULL;
    EQUAL_OPERATOR1165_tree   = NULL;
    MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL1167_tree   = NULL;
    EQUAL_OPERATOR1168_tree   = NULL;
    INTEGER1169_tree   = NULL;
    IGNORE_SERVER_IDS_SYMBOL1170_tree   = NULL;
    EQUAL_OPERATOR1171_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1088:14: ( MASTER_BIND_SYMBOL EQUAL_OPERATOR string_literal | MASTER_HOST_SYMBOL EQUAL_OPERATOR string_literal | MASTER_USER_SYMBOL EQUAL_OPERATOR string_literal | MASTER_PASSWORD_SYMBOL EQUAL_OPERATOR string_literal | MASTER_PORT_SYMBOL EQUAL_OPERATOR INTEGER | MASTER_CONNECT_RETRY_SYMBOL EQUAL_OPERATOR INTEGER | MASTER_RETRY_COUNT_SYMBOL EQUAL_OPERATOR INTEGER | MASTER_DELAY_SYMBOL EQUAL_OPERATOR INTEGER | MASTER_HEARTBEAT_PERIOD_SYMBOL EQUAL_OPERATOR INTEGER | MASTER_LOG_FILE_SYMBOL EQUAL_OPERATOR string_literal | MASTER_LOG_POS_SYMBOL EQUAL_OPERATOR INTEGER | MASTER_AUTO_POSITION_SYMBOL EQUAL_OPERATOR INTEGER | RELAY_LOG_FILE_SYMBOL EQUAL_OPERATOR string_literal | RELAY_LOG_POS_SYMBOL EQUAL_OPERATOR INTEGER | MASTER_SSL_SYMBOL EQUAL_OPERATOR INTEGER | MASTER_SSL_CA_SYMBOL EQUAL_OPERATOR string_literal | MASTER_SSL_CAPATH_SYMBOL EQUAL_OPERATOR string_literal | MASTER_SSL_CERT_SYMBOL EQUAL_OPERATOR string_literal | MASTER_SSL_CRL_SYMBOL EQUAL_OPERATOR string_literal | MASTER_SSL_CRLPATH_SYMBOL EQUAL_OPERATOR string_literal | MASTER_SSL_KEY_SYMBOL EQUAL_OPERATOR string_literal | MASTER_SSL_CIPHER_SYMBOL EQUAL_OPERATOR string_literal | MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL EQUAL_OPERATOR INTEGER | IGNORE_SERVER_IDS_SYMBOL EQUAL_OPERATOR server_id_list )

            ANTLR3_UINT32 alt380;

            alt380=24;

            switch ( LA(1) )
            {
            case MASTER_BIND_SYMBOL:
            	{
            		alt380=1;
            	}
                break;
            case MASTER_HOST_SYMBOL:
            	{
            		alt380=2;
            	}
                break;
            case MASTER_USER_SYMBOL:
            	{
            		alt380=3;
            	}
                break;
            case MASTER_PASSWORD_SYMBOL:
            	{
            		alt380=4;
            	}
                break;
            case MASTER_PORT_SYMBOL:
            	{
            		alt380=5;
            	}
                break;
            case MASTER_CONNECT_RETRY_SYMBOL:
            	{
            		alt380=6;
            	}
                break;
            case MASTER_RETRY_COUNT_SYMBOL:
            	{
            		alt380=7;
            	}
                break;
            case MASTER_DELAY_SYMBOL:
            	{
            		alt380=8;
            	}
                break;
            case MASTER_HEARTBEAT_PERIOD_SYMBOL:
            	{
            		alt380=9;
            	}
                break;
            case MASTER_LOG_FILE_SYMBOL:
            	{
            		alt380=10;
            	}
                break;
            case MASTER_LOG_POS_SYMBOL:
            	{
            		alt380=11;
            	}
                break;
            case MASTER_AUTO_POSITION_SYMBOL:
            	{
            		alt380=12;
            	}
                break;
            case RELAY_LOG_FILE_SYMBOL:
            	{
            		alt380=13;
            	}
                break;
            case RELAY_LOG_POS_SYMBOL:
            	{
            		alt380=14;
            	}
                break;
            case MASTER_SSL_SYMBOL:
            	{
            		alt380=15;
            	}
                break;
            case MASTER_SSL_CA_SYMBOL:
            	{
            		alt380=16;
            	}
                break;
            case MASTER_SSL_CAPATH_SYMBOL:
            	{
            		alt380=17;
            	}
                break;
            case MASTER_SSL_CERT_SYMBOL:
            	{
            		alt380=18;
            	}
                break;
            case MASTER_SSL_CRL_SYMBOL:
            	{
            		alt380=19;
            	}
                break;
            case MASTER_SSL_CRLPATH_SYMBOL:
            	{
            		alt380=20;
            	}
                break;
            case MASTER_SSL_KEY_SYMBOL:
            	{
            		alt380=21;
            	}
                break;
            case MASTER_SSL_CIPHER_SYMBOL:
            	{
            		alt380=22;
            	}
                break;
            case MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL:
            	{
            		alt380=23;
            	}
                break;
            case IGNORE_SERVER_IDS_SYMBOL:
            	{
            		alt380=24;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 380;
                EXCEPTION->state        = 0;


                goto rulemaster_optionEx;

            }

            switch (alt380)
            {
        	case 1:
        	    // MySQL.g:1089:2: MASTER_BIND_SYMBOL EQUAL_OPERATOR string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_BIND_SYMBOL1101 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_BIND_SYMBOL, &FOLLOW_MASTER_BIND_SYMBOL_in_master_option5705);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_BIND_SYMBOL1101_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_BIND_SYMBOL1101));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_BIND_SYMBOL1101_tree);
        	        }

        	        EQUAL_OPERATOR1102 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option5707);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1102_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1102));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1102_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_master_option5709);
        	        string_literal1103=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1103.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1090:4: MASTER_HOST_SYMBOL EQUAL_OPERATOR string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_HOST_SYMBOL1104 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_HOST_SYMBOL, &FOLLOW_MASTER_HOST_SYMBOL_in_master_option5714);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_HOST_SYMBOL1104_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_HOST_SYMBOL1104));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_HOST_SYMBOL1104_tree);
        	        }

        	        EQUAL_OPERATOR1105 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option5716);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1105_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1105));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1105_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_master_option5718);
        	        string_literal1106=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1106.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1091:4: MASTER_USER_SYMBOL EQUAL_OPERATOR string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_USER_SYMBOL1107 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_USER_SYMBOL, &FOLLOW_MASTER_USER_SYMBOL_in_master_option5723);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_USER_SYMBOL1107_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_USER_SYMBOL1107));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_USER_SYMBOL1107_tree);
        	        }

        	        EQUAL_OPERATOR1108 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option5725);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1108_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1108));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1108_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_master_option5727);
        	        string_literal1109=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1109.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1092:4: MASTER_PASSWORD_SYMBOL EQUAL_OPERATOR string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_PASSWORD_SYMBOL1110 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_PASSWORD_SYMBOL, &FOLLOW_MASTER_PASSWORD_SYMBOL_in_master_option5732);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_PASSWORD_SYMBOL1110_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_PASSWORD_SYMBOL1110));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_PASSWORD_SYMBOL1110_tree);
        	        }

        	        EQUAL_OPERATOR1111 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option5734);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1111_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1111));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1111_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_master_option5736);
        	        string_literal1112=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1112.tree);

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1093:4: MASTER_PORT_SYMBOL EQUAL_OPERATOR INTEGER
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_PORT_SYMBOL1113 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_PORT_SYMBOL, &FOLLOW_MASTER_PORT_SYMBOL_in_master_option5741);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_PORT_SYMBOL1113_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_PORT_SYMBOL1113));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_PORT_SYMBOL1113_tree);
        	        }

        	        EQUAL_OPERATOR1114 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option5743);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1114_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1114));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1114_tree);
        	        }

        	        INTEGER1115 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_master_option5745);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INTEGER1115_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER1115));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER1115_tree);
        	        }

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:1094:4: MASTER_CONNECT_RETRY_SYMBOL EQUAL_OPERATOR INTEGER
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_CONNECT_RETRY_SYMBOL1116 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_CONNECT_RETRY_SYMBOL, &FOLLOW_MASTER_CONNECT_RETRY_SYMBOL_in_master_option5750);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_CONNECT_RETRY_SYMBOL1116_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_CONNECT_RETRY_SYMBOL1116));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_CONNECT_RETRY_SYMBOL1116_tree);
        	        }

        	        EQUAL_OPERATOR1117 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option5752);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1117_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1117));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1117_tree);
        	        }

        	        INTEGER1118 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_master_option5754);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INTEGER1118_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER1118));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER1118_tree);
        	        }

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:1095:4: MASTER_RETRY_COUNT_SYMBOL EQUAL_OPERATOR INTEGER
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_RETRY_COUNT_SYMBOL1119 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_RETRY_COUNT_SYMBOL, &FOLLOW_MASTER_RETRY_COUNT_SYMBOL_in_master_option5759);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_RETRY_COUNT_SYMBOL1119_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_RETRY_COUNT_SYMBOL1119));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_RETRY_COUNT_SYMBOL1119_tree);
        	        }

        	        EQUAL_OPERATOR1120 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option5761);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1120_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1120));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1120_tree);
        	        }

        	        INTEGER1121 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_master_option5763);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INTEGER1121_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER1121));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER1121_tree);
        	        }

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:1096:4: MASTER_DELAY_SYMBOL EQUAL_OPERATOR INTEGER
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_DELAY_SYMBOL1122 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_DELAY_SYMBOL, &FOLLOW_MASTER_DELAY_SYMBOL_in_master_option5768);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_DELAY_SYMBOL1122_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_DELAY_SYMBOL1122));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_DELAY_SYMBOL1122_tree);
        	        }

        	        EQUAL_OPERATOR1123 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option5770);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1123_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1123));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1123_tree);
        	        }

        	        INTEGER1124 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_master_option5772);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INTEGER1124_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER1124));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER1124_tree);
        	        }

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:1097:4: MASTER_HEARTBEAT_PERIOD_SYMBOL EQUAL_OPERATOR INTEGER
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_HEARTBEAT_PERIOD_SYMBOL1125 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_HEARTBEAT_PERIOD_SYMBOL, &FOLLOW_MASTER_HEARTBEAT_PERIOD_SYMBOL_in_master_option5777);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_HEARTBEAT_PERIOD_SYMBOL1125_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_HEARTBEAT_PERIOD_SYMBOL1125));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_HEARTBEAT_PERIOD_SYMBOL1125_tree);
        	        }

        	        EQUAL_OPERATOR1126 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option5779);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1126_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1126));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1126_tree);
        	        }

        	        INTEGER1127 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_master_option5781);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INTEGER1127_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER1127));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER1127_tree);
        	        }

        	    }
        	    break;
        	case 10:
        	    // MySQL.g:1098:4: MASTER_LOG_FILE_SYMBOL EQUAL_OPERATOR string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_LOG_FILE_SYMBOL1128 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_LOG_FILE_SYMBOL, &FOLLOW_MASTER_LOG_FILE_SYMBOL_in_master_option5786);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_LOG_FILE_SYMBOL1128_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_LOG_FILE_SYMBOL1128));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_LOG_FILE_SYMBOL1128_tree);
        	        }

        	        EQUAL_OPERATOR1129 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option5788);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1129_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1129));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1129_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_master_option5790);
        	        string_literal1130=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1130.tree);

        	    }
        	    break;
        	case 11:
        	    // MySQL.g:1099:4: MASTER_LOG_POS_SYMBOL EQUAL_OPERATOR INTEGER
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_LOG_POS_SYMBOL1131 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_LOG_POS_SYMBOL, &FOLLOW_MASTER_LOG_POS_SYMBOL_in_master_option5795);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_LOG_POS_SYMBOL1131_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_LOG_POS_SYMBOL1131));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_LOG_POS_SYMBOL1131_tree);
        	        }

        	        EQUAL_OPERATOR1132 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option5797);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1132_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1132));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1132_tree);
        	        }

        	        INTEGER1133 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_master_option5799);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INTEGER1133_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER1133));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER1133_tree);
        	        }

        	    }
        	    break;
        	case 12:
        	    // MySQL.g:1100:4: MASTER_AUTO_POSITION_SYMBOL EQUAL_OPERATOR INTEGER
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_AUTO_POSITION_SYMBOL1134 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_AUTO_POSITION_SYMBOL, &FOLLOW_MASTER_AUTO_POSITION_SYMBOL_in_master_option5804);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_AUTO_POSITION_SYMBOL1134_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_AUTO_POSITION_SYMBOL1134));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_AUTO_POSITION_SYMBOL1134_tree);
        	        }

        	        EQUAL_OPERATOR1135 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option5806);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1135_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1135));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1135_tree);
        	        }

        	        INTEGER1136 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_master_option5808);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INTEGER1136_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER1136));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER1136_tree);
        	        }

        	    }
        	    break;
        	case 13:
        	    // MySQL.g:1101:4: RELAY_LOG_FILE_SYMBOL EQUAL_OPERATOR string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        RELAY_LOG_FILE_SYMBOL1137 = (pANTLR3_COMMON_TOKEN) MATCHT(RELAY_LOG_FILE_SYMBOL, &FOLLOW_RELAY_LOG_FILE_SYMBOL_in_master_option5813);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        RELAY_LOG_FILE_SYMBOL1137_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RELAY_LOG_FILE_SYMBOL1137));
        	        ADAPTOR->addChild(ADAPTOR, root_0, RELAY_LOG_FILE_SYMBOL1137_tree);
        	        }

        	        EQUAL_OPERATOR1138 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option5815);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1138_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1138));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1138_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_master_option5817);
        	        string_literal1139=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1139.tree);

        	    }
        	    break;
        	case 14:
        	    // MySQL.g:1102:4: RELAY_LOG_POS_SYMBOL EQUAL_OPERATOR INTEGER
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        RELAY_LOG_POS_SYMBOL1140 = (pANTLR3_COMMON_TOKEN) MATCHT(RELAY_LOG_POS_SYMBOL, &FOLLOW_RELAY_LOG_POS_SYMBOL_in_master_option5822);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        RELAY_LOG_POS_SYMBOL1140_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RELAY_LOG_POS_SYMBOL1140));
        	        ADAPTOR->addChild(ADAPTOR, root_0, RELAY_LOG_POS_SYMBOL1140_tree);
        	        }

        	        EQUAL_OPERATOR1141 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option5824);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1141_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1141));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1141_tree);
        	        }

        	        INTEGER1142 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_master_option5826);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INTEGER1142_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER1142));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER1142_tree);
        	        }

        	    }
        	    break;
        	case 15:
        	    // MySQL.g:1103:4: MASTER_SSL_SYMBOL EQUAL_OPERATOR INTEGER
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_SSL_SYMBOL1143 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_SSL_SYMBOL, &FOLLOW_MASTER_SSL_SYMBOL_in_master_option5831);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_SSL_SYMBOL1143_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_SSL_SYMBOL1143));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_SSL_SYMBOL1143_tree);
        	        }

        	        EQUAL_OPERATOR1144 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option5833);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1144_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1144));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1144_tree);
        	        }

        	        INTEGER1145 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_master_option5835);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INTEGER1145_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER1145));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER1145_tree);
        	        }

        	    }
        	    break;
        	case 16:
        	    // MySQL.g:1104:4: MASTER_SSL_CA_SYMBOL EQUAL_OPERATOR string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_SSL_CA_SYMBOL1146 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_SSL_CA_SYMBOL, &FOLLOW_MASTER_SSL_CA_SYMBOL_in_master_option5840);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_SSL_CA_SYMBOL1146_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_SSL_CA_SYMBOL1146));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_SSL_CA_SYMBOL1146_tree);
        	        }

        	        EQUAL_OPERATOR1147 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option5842);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1147_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1147));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1147_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_master_option5844);
        	        string_literal1148=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1148.tree);

        	    }
        	    break;
        	case 17:
        	    // MySQL.g:1105:4: MASTER_SSL_CAPATH_SYMBOL EQUAL_OPERATOR string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_SSL_CAPATH_SYMBOL1149 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_SSL_CAPATH_SYMBOL, &FOLLOW_MASTER_SSL_CAPATH_SYMBOL_in_master_option5849);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_SSL_CAPATH_SYMBOL1149_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_SSL_CAPATH_SYMBOL1149));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_SSL_CAPATH_SYMBOL1149_tree);
        	        }

        	        EQUAL_OPERATOR1150 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option5851);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1150_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1150));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1150_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_master_option5853);
        	        string_literal1151=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1151.tree);

        	    }
        	    break;
        	case 18:
        	    // MySQL.g:1106:4: MASTER_SSL_CERT_SYMBOL EQUAL_OPERATOR string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_SSL_CERT_SYMBOL1152 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_SSL_CERT_SYMBOL, &FOLLOW_MASTER_SSL_CERT_SYMBOL_in_master_option5858);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_SSL_CERT_SYMBOL1152_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_SSL_CERT_SYMBOL1152));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_SSL_CERT_SYMBOL1152_tree);
        	        }

        	        EQUAL_OPERATOR1153 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option5860);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1153_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1153));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1153_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_master_option5862);
        	        string_literal1154=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1154.tree);

        	    }
        	    break;
        	case 19:
        	    // MySQL.g:1107:4: MASTER_SSL_CRL_SYMBOL EQUAL_OPERATOR string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_SSL_CRL_SYMBOL1155 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_SSL_CRL_SYMBOL, &FOLLOW_MASTER_SSL_CRL_SYMBOL_in_master_option5867);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_SSL_CRL_SYMBOL1155_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_SSL_CRL_SYMBOL1155));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_SSL_CRL_SYMBOL1155_tree);
        	        }

        	        EQUAL_OPERATOR1156 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option5869);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1156_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1156));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1156_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_master_option5871);
        	        string_literal1157=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1157.tree);

        	    }
        	    break;
        	case 20:
        	    // MySQL.g:1108:4: MASTER_SSL_CRLPATH_SYMBOL EQUAL_OPERATOR string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_SSL_CRLPATH_SYMBOL1158 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_SSL_CRLPATH_SYMBOL, &FOLLOW_MASTER_SSL_CRLPATH_SYMBOL_in_master_option5876);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_SSL_CRLPATH_SYMBOL1158_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_SSL_CRLPATH_SYMBOL1158));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_SSL_CRLPATH_SYMBOL1158_tree);
        	        }

        	        EQUAL_OPERATOR1159 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option5878);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1159_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1159));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1159_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_master_option5880);
        	        string_literal1160=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1160.tree);

        	    }
        	    break;
        	case 21:
        	    // MySQL.g:1109:4: MASTER_SSL_KEY_SYMBOL EQUAL_OPERATOR string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_SSL_KEY_SYMBOL1161 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_SSL_KEY_SYMBOL, &FOLLOW_MASTER_SSL_KEY_SYMBOL_in_master_option5885);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_SSL_KEY_SYMBOL1161_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_SSL_KEY_SYMBOL1161));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_SSL_KEY_SYMBOL1161_tree);
        	        }

        	        EQUAL_OPERATOR1162 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option5887);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1162_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1162));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1162_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_master_option5889);
        	        string_literal1163=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1163.tree);

        	    }
        	    break;
        	case 22:
        	    // MySQL.g:1110:4: MASTER_SSL_CIPHER_SYMBOL EQUAL_OPERATOR string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_SSL_CIPHER_SYMBOL1164 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_SSL_CIPHER_SYMBOL, &FOLLOW_MASTER_SSL_CIPHER_SYMBOL_in_master_option5894);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_SSL_CIPHER_SYMBOL1164_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_SSL_CIPHER_SYMBOL1164));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_SSL_CIPHER_SYMBOL1164_tree);
        	        }

        	        EQUAL_OPERATOR1165 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option5896);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1165_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1165));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1165_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_master_option5898);
        	        string_literal1166=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1166.tree);

        	    }
        	    break;
        	case 23:
        	    // MySQL.g:1111:4: MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL EQUAL_OPERATOR INTEGER
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL1167 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL, &FOLLOW_MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL_in_master_option5903);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL1167_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL1167));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL1167_tree);
        	        }

        	        EQUAL_OPERATOR1168 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option5905);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1168_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1168));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1168_tree);
        	        }

        	        INTEGER1169 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_master_option5907);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INTEGER1169_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER1169));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER1169_tree);
        	        }

        	    }
        	    break;
        	case 24:
        	    // MySQL.g:1112:4: IGNORE_SERVER_IDS_SYMBOL EQUAL_OPERATOR server_id_list
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        IGNORE_SERVER_IDS_SYMBOL1170 = (pANTLR3_COMMON_TOKEN) MATCHT(IGNORE_SERVER_IDS_SYMBOL, &FOLLOW_IGNORE_SERVER_IDS_SYMBOL_in_master_option5912);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        IGNORE_SERVER_IDS_SYMBOL1170_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IGNORE_SERVER_IDS_SYMBOL1170));
        	        ADAPTOR->addChild(ADAPTOR, root_0, IGNORE_SERVER_IDS_SYMBOL1170_tree);
        	        }

        	        EQUAL_OPERATOR1171 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option5914);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1171_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1171));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1171_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_server_id_list_in_master_option5916);
        	        server_id_list1172=server_id_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, server_id_list1172.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulemaster_optionEx; /* Prevent compiler warnings */
    rulemaster_optionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end master_option */

/**
 * $ANTLR start server_id_list
 * MySQL.g:1115:1: server_id_list : OPEN_PAR_SYMBOL ( identifier_list )? CLOSE_PAR_SYMBOL ;
 */
static MySQLParser_server_id_list_return
server_id_list(pMySQLParser ctx)
{
    MySQLParser_server_id_list_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1173;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1175;
    MySQLParser_identifier_list_return identifier_list1174;
    #undef	RETURN_TYPE_identifier_list1174
    #define	RETURN_TYPE_identifier_list1174 MySQLParser_identifier_list_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1173_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1175_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL1173       = NULL;
    CLOSE_PAR_SYMBOL1175       = NULL;
    identifier_list1174.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL1173_tree   = NULL;
    CLOSE_PAR_SYMBOL1175_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1115:15: ( OPEN_PAR_SYMBOL ( identifier_list )? CLOSE_PAR_SYMBOL )
        // MySQL.g:1116:2: OPEN_PAR_SYMBOL ( identifier_list )? CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPEN_PAR_SYMBOL1173 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_server_id_list5925);
            if  (HASEXCEPTION())
            {
                goto ruleserver_id_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL1173_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1173));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1173_tree);
            }

            // MySQL.g:1116:18: ( identifier_list )?
            {
                int alt381=2;
                {
                    int LA381_0 = LA(1);
                    if ( (LA381_0 == BACK_TICK_QUOTED_ID || LA381_0 == IDENTIFIER))
                    {
                        alt381=1;
                    }
                    else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA381_0 == DOUBLE_QUOTED_TEXT))
                    {
                        alt381=1;
                    }
                    else if ( (((LA381_0 >= ACTION_SYMBOL) && (LA381_0 <= ADDDATE_SYMBOL)) || ((LA381_0 >= AFTER_SYMBOL) && (LA381_0 <= ALGORITHM_SYMBOL)) || LA381_0 == ANALYZE_SYMBOL || ((LA381_0 >= ANY_SYMBOL) && (LA381_0 <= ASCII_SYMBOL)) || ((LA381_0 >= AT_SYMBOL) && (LA381_0 <= BACKUP_SYMBOL)) || LA381_0 == BEGIN_SYMBOL || LA381_0 == BINLOG_SYMBOL || LA381_0 == BIT_SYMBOL || ((LA381_0 >= BLOCK_SYMBOL) && (LA381_0 <= BOOL_SYMBOL)) || ((LA381_0 >= BTREE_SYMBOL) && (LA381_0 <= BYTE_SYMBOL)) || LA381_0 == CACHE_SYMBOL || LA381_0 == CASCADED_SYMBOL || ((LA381_0 >= CATALOG_NAME_SYMBOL) && (LA381_0 <= CHANGED_SYMBOL)) || LA381_0 == CHARSET_SYMBOL || LA381_0 == CHECKSUM_SYMBOL || ((LA381_0 >= CIPHER_SYMBOL) && (LA381_0 <= CLIENT_SYMBOL)) || ((LA381_0 >= CLOSE_SYMBOL) && (LA381_0 <= CODE_SYMBOL)) || LA381_0 == COLLATION_SYMBOL || ((LA381_0 >= COLUMNS_SYMBOL) && (LA381_0 <= COLUMN_NAME_SYMBOL)) || ((LA381_0 >= COMMENT_SYMBOL) && (LA381_0 <= COMPRESSED_SYMBOL)) || LA381_0 == CONCURRENT_SYMBOL || ((LA381_0 >= CONNECTION_SYMBOL) && (LA381_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA381_0 >= CONTAINS_SYMBOL) && (LA381_0 <= CONTEXT_SYMBOL)) || LA381_0 == CONTRIBUTORS_SYMBOL || LA381_0 == CPU_SYMBOL || LA381_0 == CUBE_SYMBOL || LA381_0 == CURRENT_SYMBOL || LA381_0 == CURSOR_NAME_SYMBOL || ((LA381_0 >= DATAFILE_SYMBOL) && (LA381_0 <= DATETIME_SYMBOL)) || LA381_0 == DATE_SYMBOL || ((LA381_0 >= DAY_SYMBOL) && (LA381_0 <= DEALLOCATE_SYMBOL)) || LA381_0 == DEFAULT_AUTH_SYMBOL || LA381_0 == DEFINER_SYMBOL || LA381_0 == DELAY_KEY_WRITE_SYMBOL || LA381_0 == DES_KEY_FILE_SYMBOL || LA381_0 == DIAGNOSTICS_SYMBOL || ((LA381_0 >= DIRECTORY_SYMBOL) && (LA381_0 <= DISK_SYMBOL)) || LA381_0 == DO_SYMBOL || ((LA381_0 >= DUMPFILE_SYMBOL) && (LA381_0 <= DYNAMIC_SYMBOL)) || LA381_0 == ENABLE_SYMBOL || LA381_0 == ENDS_SYMBOL || ((LA381_0 >= END_SYMBOL) && (LA381_0 <= ENUM_SYMBOL)) || ((LA381_0 >= ERRORS_SYMBOL) && (LA381_0 <= ERROR_SYMBOL)) || ((LA381_0 >= ESCAPE_SYMBOL) && (LA381_0 <= EVERY_SYMBOL)) || LA381_0 == EXECUTE_SYMBOL || LA381_0 == EXPANSION_SYMBOL || LA381_0 == EXPORT_SYMBOL || ((LA381_0 >= EXTENDED_SYMBOL) && (LA381_0 <= EXTENT_SIZE_SYMBOL)) || ((LA381_0 >= FAST_SYMBOL) && (LA381_0 <= FAULTS_SYMBOL)) || ((LA381_0 >= FILE_SYMBOL) && (LA381_0 <= FIXED_SYMBOL)) || LA381_0 == FLUSH_SYMBOL || LA381_0 == FORMAT_SYMBOL || LA381_0 == FOUND_SYMBOL || LA381_0 == FULL_SYMBOL || ((LA381_0 >= FUNCTION_SYMBOL) && (LA381_0 <= GET_FORMAT_SYMBOL)) || ((LA381_0 >= GLOBAL_SYMBOL) && (LA381_0 <= GRANTS_SYMBOL)) || ((LA381_0 >= HANDLER_SYMBOL) && (LA381_0 <= HASH_SYMBOL)) || LA381_0 == HELP_SYMBOL || ((LA381_0 >= HOSTS_SYMBOL) && (LA381_0 <= HOST_SYMBOL)) || ((LA381_0 >= HOUR_SYMBOL) && (LA381_0 <= IDENTIFIED_SYMBOL)) || LA381_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA381_0 >= IMPORT_SYMBOL) && (LA381_0 <= INDEXES_SYMBOL)) || LA381_0 == INITIAL_SIZE_SYMBOL || LA381_0 == INNODB_SYMBOL || LA381_0 == INSERT_METHOD_SYMBOL || LA381_0 == INSTALL_SYMBOL || LA381_0 == INVOKER_SYMBOL || LA381_0 == IO_SYMBOL || ((LA381_0 >= IPC_SYMBOL) && (LA381_0 <= ISSUER_SYMBOL)) || LA381_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA381_0 >= LANGUAGE_SYMBOL) && (LA381_0 <= LAST_SYMBOL)) || LA381_0 == LEAVES_SYMBOL || LA381_0 == LESS_SYMBOL || LA381_0 == LEVEL_SYMBOL || LA381_0 == LINESTRING_SYMBOL || LA381_0 == LIST_SYMBOL || LA381_0 == LOCAL_SYMBOL || LA381_0 == LOCKS_SYMBOL || LA381_0 == LOGFILE_SYMBOL || LA381_0 == LOGS_SYMBOL || LA381_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA381_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA381_0 <= MASTER_SSL_SYMBOL)) || ((LA381_0 >= MASTER_SYMBOL) && (LA381_0 <= MASTER_USER_SYMBOL)) || ((LA381_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA381_0 <= MAX_SIZE_SYMBOL)) || ((LA381_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA381_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA381_0 >= MEDIUM_SYMBOL) && (LA381_0 <= MICROSECOND_SYMBOL)) || LA381_0 == MIGRATE_SYMBOL || ((LA381_0 >= MINUTE_SYMBOL) && (LA381_0 <= MIN_ROWS_SYMBOL)) || LA381_0 == MODE_SYMBOL || LA381_0 == MODIFY_SYMBOL || ((LA381_0 >= MONTH_SYMBOL) && (LA381_0 <= MULTILINESTRING_SYMBOL)) || ((LA381_0 >= MULTIPOINT_SYMBOL) && (LA381_0 <= MULTIPOLYGON_SYMBOL)) || ((LA381_0 >= MUTEX_SYMBOL) && (LA381_0 <= NATIONAL_SYMBOL)) || LA381_0 == NCHAR_SYMBOL || LA381_0 == NDBCLUSTER_SYMBOL || ((LA381_0 >= NEW_SYMBOL) && (LA381_0 <= NONE_SYMBOL)) || ((LA381_0 >= NO_SYMBOL) && (LA381_0 <= NO_WAIT_SYMBOL)) || LA381_0 == NUMBER_SYMBOL || LA381_0 == NVARCHAR_SYMBOL || ((LA381_0 >= OFFSET_SYMBOL) && (LA381_0 <= ONE_SYMBOL)) || LA381_0 == OPEN_SYMBOL || LA381_0 == OPTIONS_SYMBOL || ((LA381_0 >= OWNER_SYMBOL) && (LA381_0 <= PAGE_SYMBOL)) || ((LA381_0 >= PARSER_SYMBOL) && (LA381_0 <= PARTITION_SYMBOL)) || ((LA381_0 >= PASSWORD_SYMBOL) && (LA381_0 <= PLUGIN_SYMBOL)) || ((LA381_0 >= POINT_SYMBOL) && (LA381_0 <= PORT_SYMBOL)) || ((LA381_0 >= PREPARE_SYMBOL) && (LA381_0 <= PREV_SYMBOL)) || LA381_0 == PRIVILEGES_SYMBOL || ((LA381_0 >= PROCESSLIST_SYMBOL) && (LA381_0 <= PROXY_SYMBOL)) || ((LA381_0 >= QUARTER_SYMBOL) && (LA381_0 <= QUICK_SYMBOL)) || LA381_0 == READ_ONLY_SYMBOL || ((LA381_0 >= REBUILD_SYMBOL) && (LA381_0 <= REDUNDANT_SYMBOL)) || ((LA381_0 >= RELAYLOG_SYMBOL) && (LA381_0 <= RELAY_THREAD_SYMBOL)) || ((LA381_0 >= RELOAD_SYMBOL) && (LA381_0 <= REMOVE_SYMBOL)) || ((LA381_0 >= REORGANIZE_SYMBOL) && (LA381_0 <= REPEATABLE_SYMBOL)) || LA381_0 == REPLICATION_SYMBOL || LA381_0 == RESET_SYMBOL || LA381_0 == RESTORE_SYMBOL || ((LA381_0 >= RESUME_SYMBOL) && (LA381_0 <= RETURNS_SYMBOL)) || LA381_0 == REVERSE_SYMBOL || ((LA381_0 >= ROLLBACK_SYMBOL) && (LA381_0 <= SCHEDULE_SYMBOL)) || LA381_0 == SCHEMA_NAME_SYMBOL || ((LA381_0 >= SECOND_SYMBOL) && (LA381_0 <= SECURITY_SYMBOL)) || ((LA381_0 >= SERIALIZABLE_SYMBOL) && (LA381_0 <= SERIAL_SYMBOL)) || ((LA381_0 >= SERVER_SYMBOL) && (LA381_0 <= SESSION_SYMBOL)) || LA381_0 == SHARE_SYMBOL || LA381_0 == SHUTDOWN_SYMBOL || ((LA381_0 >= SIGNED_SYMBOL) && (LA381_0 <= SIMPLE_SYMBOL)) || ((LA381_0 >= SLAVE_SYMBOL) && (LA381_0 <= SLOW_SYMBOL)) || ((LA381_0 >= SNAPSHOT_SYMBOL) && (LA381_0 <= SOURCE_SYMBOL)) || ((LA381_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA381_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA381_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA381_0 <= SQL_CACHE_SYMBOL)) || LA381_0 == SQL_NO_CACHE_SYMBOL || LA381_0 == SQL_THREAD_SYMBOL || ((LA381_0 >= STARTS_SYMBOL) && (LA381_0 <= STATUS_SYMBOL)) || ((LA381_0 >= STOP_SYMBOL) && (LA381_0 <= STORAGE_SYMBOL)) || ((LA381_0 >= STRING_SYMBOL) && (LA381_0 <= SUBPARTITION_SYMBOL)) || ((LA381_0 >= SUPER_SYMBOL) && (LA381_0 <= SWITCHES_SYMBOL)) || ((LA381_0 >= TABLESPACE_SYMBOL) && (LA381_0 <= TABLE_NAME_SYMBOL)) || ((LA381_0 >= TEMPORARY_SYMBOL) && (LA381_0 <= TEMPTABLE_SYMBOL)) || ((LA381_0 >= TEXT_SYMBOL) && (LA381_0 <= THAN_SYMBOL)) || ((LA381_0 >= TIMESTAMP_ADD_SYMBOL) && (LA381_0 <= TIME_SYMBOL)) || ((LA381_0 >= TRANSACTION_SYMBOL) && (LA381_0 <= TRIGGERS_SYMBOL)) || ((LA381_0 >= TRUNCATE_SYMBOL) && (LA381_0 <= UDF_RETURNS_SYMBOL)) || ((LA381_0 >= UNCOMMITTED_SYMBOL) && (LA381_0 <= UNDEFINED_SYMBOL)) || ((LA381_0 >= UNDOFILE_SYMBOL) && (LA381_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA381_0 >= UNICODE_SYMBOL) && (LA381_0 <= UNINSTALL_SYMBOL)) || LA381_0 == UNKNOWN_SYMBOL || LA381_0 == UNTIL_SYMBOL || LA381_0 == UPGRADE_SYMBOL || ((LA381_0 >= USER_RESOURCES_SYMBOL) && (LA381_0 <= USE_FRM_SYMBOL)) || LA381_0 == VALUE_SYMBOL || LA381_0 == VARIABLES_SYMBOL || ((LA381_0 >= VIEW_SYMBOL) && (LA381_0 <= WEIGHT_STRING_SYMBOL)) || ((LA381_0 >= WORK_SYMBOL) && (LA381_0 <= WRAPPER_SYMBOL)) || LA381_0 == X509_SYMBOL || ((LA381_0 >= XA_SYMBOL) && (LA381_0 <= XML_SYMBOL)) || LA381_0 == YEAR_SYMBOL))
                    {
                        alt381=1;
                    }
                }
                switch (alt381)
                {
            	case 1:
            	    // MySQL.g:1116:18: identifier_list
            	    {
            	        FOLLOWPUSH(FOLLOW_identifier_list_in_server_id_list5927);
            	        identifier_list1174=identifier_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleserver_id_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list1174.tree);

            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL1175 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_server_id_list5930);
            if  (HASEXCEPTION())
            {
                goto ruleserver_id_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL1175_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1175));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1175_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleserver_id_listEx; /* Prevent compiler warnings */
    ruleserver_id_listEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end server_id_list */

/**
 * $ANTLR start start_slave
 * MySQL.g:1119:1: start_slave : START_SYMBOL SLAVE_SYMBOL ( ( thread_types )? | ( SQL_BEFORE_GTIDS_SYMBOL | SQL_AFTER_GTIDS_SYMBOL ) EQUAL_OPERATOR gtid_set |{...}? ( SQL_THREAD_SYMBOL )? UNTIL_SYMBOL ( MASTER_LOG_FILE_SYMBOL EQUAL_OPERATOR string_literal COMMA_SYMBOL MASTER_LOG_POS_SYMBOL EQUAL_OPERATOR INTEGER | RELAY_LOG_FILE_SYMBOL EQUAL_OPERATOR string_literal COMMA_SYMBOL RELAY_LOG_POS_SYMBOL EQUAL_OPERATOR INTEGER |{...}? => SQL_AFTER_MTS_GAPS_SYMBOL ) |{...}? => USER_SYMBOL EQUAL_OPERATOR string_literal PASSWORD_SYMBOL EQUAL_OPERATOR string_literal DEFAULT_AUTH_SYMBOL EQUAL_OPERATOR string_literal PLUGIN_DIR_SYMBOL EQUAL_OPERATOR string_literal ) ;
 */
static MySQLParser_start_slave_return
start_slave(pMySQLParser ctx)
{
    MySQLParser_start_slave_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    START_SYMBOL1176;
    pANTLR3_COMMON_TOKEN    SLAVE_SYMBOL1177;
    pANTLR3_COMMON_TOKEN    set1179;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1180;
    pANTLR3_COMMON_TOKEN    SQL_THREAD_SYMBOL1182;
    pANTLR3_COMMON_TOKEN    UNTIL_SYMBOL1183;
    pANTLR3_COMMON_TOKEN    MASTER_LOG_FILE_SYMBOL1184;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1185;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1187;
    pANTLR3_COMMON_TOKEN    MASTER_LOG_POS_SYMBOL1188;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1189;
    pANTLR3_COMMON_TOKEN    INTEGER1190;
    pANTLR3_COMMON_TOKEN    RELAY_LOG_FILE_SYMBOL1191;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1192;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1194;
    pANTLR3_COMMON_TOKEN    RELAY_LOG_POS_SYMBOL1195;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1196;
    pANTLR3_COMMON_TOKEN    INTEGER1197;
    pANTLR3_COMMON_TOKEN    SQL_AFTER_MTS_GAPS_SYMBOL1198;
    pANTLR3_COMMON_TOKEN    USER_SYMBOL1199;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1200;
    pANTLR3_COMMON_TOKEN    PASSWORD_SYMBOL1202;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1203;
    pANTLR3_COMMON_TOKEN    DEFAULT_AUTH_SYMBOL1205;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1206;
    pANTLR3_COMMON_TOKEN    PLUGIN_DIR_SYMBOL1208;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1209;
    MySQLParser_thread_types_return thread_types1178;
    #undef	RETURN_TYPE_thread_types1178
    #define	RETURN_TYPE_thread_types1178 MySQLParser_thread_types_return

    MySQLParser_gtid_set_return gtid_set1181;
    #undef	RETURN_TYPE_gtid_set1181
    #define	RETURN_TYPE_gtid_set1181 MySQLParser_gtid_set_return

    MySQLParser_string_literal_return string_literal1186;
    #undef	RETURN_TYPE_string_literal1186
    #define	RETURN_TYPE_string_literal1186 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal1193;
    #undef	RETURN_TYPE_string_literal1193
    #define	RETURN_TYPE_string_literal1193 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal1201;
    #undef	RETURN_TYPE_string_literal1201
    #define	RETURN_TYPE_string_literal1201 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal1204;
    #undef	RETURN_TYPE_string_literal1204
    #define	RETURN_TYPE_string_literal1204 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal1207;
    #undef	RETURN_TYPE_string_literal1207
    #define	RETURN_TYPE_string_literal1207 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal1210;
    #undef	RETURN_TYPE_string_literal1210
    #define	RETURN_TYPE_string_literal1210 MySQLParser_string_literal_return

    pANTLR3_BASE_TREE START_SYMBOL1176_tree;
    pANTLR3_BASE_TREE SLAVE_SYMBOL1177_tree;
    pANTLR3_BASE_TREE set1179_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1180_tree;
    pANTLR3_BASE_TREE SQL_THREAD_SYMBOL1182_tree;
    pANTLR3_BASE_TREE UNTIL_SYMBOL1183_tree;
    pANTLR3_BASE_TREE MASTER_LOG_FILE_SYMBOL1184_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1185_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1187_tree;
    pANTLR3_BASE_TREE MASTER_LOG_POS_SYMBOL1188_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1189_tree;
    pANTLR3_BASE_TREE INTEGER1190_tree;
    pANTLR3_BASE_TREE RELAY_LOG_FILE_SYMBOL1191_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1192_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1194_tree;
    pANTLR3_BASE_TREE RELAY_LOG_POS_SYMBOL1195_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1196_tree;
    pANTLR3_BASE_TREE INTEGER1197_tree;
    pANTLR3_BASE_TREE SQL_AFTER_MTS_GAPS_SYMBOL1198_tree;
    pANTLR3_BASE_TREE USER_SYMBOL1199_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1200_tree;
    pANTLR3_BASE_TREE PASSWORD_SYMBOL1202_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1203_tree;
    pANTLR3_BASE_TREE DEFAULT_AUTH_SYMBOL1205_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1206_tree;
    pANTLR3_BASE_TREE PLUGIN_DIR_SYMBOL1208_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1209_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    START_SYMBOL1176       = NULL;
    SLAVE_SYMBOL1177       = NULL;
    set1179       = NULL;
    EQUAL_OPERATOR1180       = NULL;
    SQL_THREAD_SYMBOL1182       = NULL;
    UNTIL_SYMBOL1183       = NULL;
    MASTER_LOG_FILE_SYMBOL1184       = NULL;
    EQUAL_OPERATOR1185       = NULL;
    COMMA_SYMBOL1187       = NULL;
    MASTER_LOG_POS_SYMBOL1188       = NULL;
    EQUAL_OPERATOR1189       = NULL;
    INTEGER1190       = NULL;
    RELAY_LOG_FILE_SYMBOL1191       = NULL;
    EQUAL_OPERATOR1192       = NULL;
    COMMA_SYMBOL1194       = NULL;
    RELAY_LOG_POS_SYMBOL1195       = NULL;
    EQUAL_OPERATOR1196       = NULL;
    INTEGER1197       = NULL;
    SQL_AFTER_MTS_GAPS_SYMBOL1198       = NULL;
    USER_SYMBOL1199       = NULL;
    EQUAL_OPERATOR1200       = NULL;
    PASSWORD_SYMBOL1202       = NULL;
    EQUAL_OPERATOR1203       = NULL;
    DEFAULT_AUTH_SYMBOL1205       = NULL;
    EQUAL_OPERATOR1206       = NULL;
    PLUGIN_DIR_SYMBOL1208       = NULL;
    EQUAL_OPERATOR1209       = NULL;
    thread_types1178.tree = NULL;

    gtid_set1181.tree = NULL;

    string_literal1186.tree = NULL;

    string_literal1193.tree = NULL;

    string_literal1201.tree = NULL;

    string_literal1204.tree = NULL;

    string_literal1207.tree = NULL;

    string_literal1210.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    START_SYMBOL1176_tree   = NULL;
    SLAVE_SYMBOL1177_tree   = NULL;
    set1179_tree   = NULL;
    EQUAL_OPERATOR1180_tree   = NULL;
    SQL_THREAD_SYMBOL1182_tree   = NULL;
    UNTIL_SYMBOL1183_tree   = NULL;
    MASTER_LOG_FILE_SYMBOL1184_tree   = NULL;
    EQUAL_OPERATOR1185_tree   = NULL;
    COMMA_SYMBOL1187_tree   = NULL;
    MASTER_LOG_POS_SYMBOL1188_tree   = NULL;
    EQUAL_OPERATOR1189_tree   = NULL;
    INTEGER1190_tree   = NULL;
    RELAY_LOG_FILE_SYMBOL1191_tree   = NULL;
    EQUAL_OPERATOR1192_tree   = NULL;
    COMMA_SYMBOL1194_tree   = NULL;
    RELAY_LOG_POS_SYMBOL1195_tree   = NULL;
    EQUAL_OPERATOR1196_tree   = NULL;
    INTEGER1197_tree   = NULL;
    SQL_AFTER_MTS_GAPS_SYMBOL1198_tree   = NULL;
    USER_SYMBOL1199_tree   = NULL;
    EQUAL_OPERATOR1200_tree   = NULL;
    PASSWORD_SYMBOL1202_tree   = NULL;
    EQUAL_OPERATOR1203_tree   = NULL;
    DEFAULT_AUTH_SYMBOL1205_tree   = NULL;
    EQUAL_OPERATOR1206_tree   = NULL;
    PLUGIN_DIR_SYMBOL1208_tree   = NULL;
    EQUAL_OPERATOR1209_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1119:12: ( START_SYMBOL SLAVE_SYMBOL ( ( thread_types )? | ( SQL_BEFORE_GTIDS_SYMBOL | SQL_AFTER_GTIDS_SYMBOL ) EQUAL_OPERATOR gtid_set |{...}? ( SQL_THREAD_SYMBOL )? UNTIL_SYMBOL ( MASTER_LOG_FILE_SYMBOL EQUAL_OPERATOR string_literal COMMA_SYMBOL MASTER_LOG_POS_SYMBOL EQUAL_OPERATOR INTEGER | RELAY_LOG_FILE_SYMBOL EQUAL_OPERATOR string_literal COMMA_SYMBOL RELAY_LOG_POS_SYMBOL EQUAL_OPERATOR INTEGER |{...}? => SQL_AFTER_MTS_GAPS_SYMBOL ) |{...}? => USER_SYMBOL EQUAL_OPERATOR string_literal PASSWORD_SYMBOL EQUAL_OPERATOR string_literal DEFAULT_AUTH_SYMBOL EQUAL_OPERATOR string_literal PLUGIN_DIR_SYMBOL EQUAL_OPERATOR string_literal ) )
        // MySQL.g:1120:2: START_SYMBOL SLAVE_SYMBOL ( ( thread_types )? | ( SQL_BEFORE_GTIDS_SYMBOL | SQL_AFTER_GTIDS_SYMBOL ) EQUAL_OPERATOR gtid_set |{...}? ( SQL_THREAD_SYMBOL )? UNTIL_SYMBOL ( MASTER_LOG_FILE_SYMBOL EQUAL_OPERATOR string_literal COMMA_SYMBOL MASTER_LOG_POS_SYMBOL EQUAL_OPERATOR INTEGER | RELAY_LOG_FILE_SYMBOL EQUAL_OPERATOR string_literal COMMA_SYMBOL RELAY_LOG_POS_SYMBOL EQUAL_OPERATOR INTEGER |{...}? => SQL_AFTER_MTS_GAPS_SYMBOL ) |{...}? => USER_SYMBOL EQUAL_OPERATOR string_literal PASSWORD_SYMBOL EQUAL_OPERATOR string_literal DEFAULT_AUTH_SYMBOL EQUAL_OPERATOR string_literal PLUGIN_DIR_SYMBOL EQUAL_OPERATOR string_literal )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            START_SYMBOL1176 = (pANTLR3_COMMON_TOKEN) MATCHT(START_SYMBOL, &FOLLOW_START_SYMBOL_in_start_slave5939);
            if  (HASEXCEPTION())
            {
                goto rulestart_slaveEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            START_SYMBOL1176_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, START_SYMBOL1176));
            ADAPTOR->addChild(ADAPTOR, root_0, START_SYMBOL1176_tree);
            }

            SLAVE_SYMBOL1177 = (pANTLR3_COMMON_TOKEN) MATCHT(SLAVE_SYMBOL, &FOLLOW_SLAVE_SYMBOL_in_start_slave5941);
            if  (HASEXCEPTION())
            {
                goto rulestart_slaveEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SLAVE_SYMBOL1177_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SLAVE_SYMBOL1177));
            ADAPTOR->addChild(ADAPTOR, root_0, SLAVE_SYMBOL1177_tree);
            }

            // MySQL.g:1121:2: ( ( thread_types )? | ( SQL_BEFORE_GTIDS_SYMBOL | SQL_AFTER_GTIDS_SYMBOL ) EQUAL_OPERATOR gtid_set |{...}? ( SQL_THREAD_SYMBOL )? UNTIL_SYMBOL ( MASTER_LOG_FILE_SYMBOL EQUAL_OPERATOR string_literal COMMA_SYMBOL MASTER_LOG_POS_SYMBOL EQUAL_OPERATOR INTEGER | RELAY_LOG_FILE_SYMBOL EQUAL_OPERATOR string_literal COMMA_SYMBOL RELAY_LOG_POS_SYMBOL EQUAL_OPERATOR INTEGER |{...}? => SQL_AFTER_MTS_GAPS_SYMBOL ) |{...}? => USER_SYMBOL EQUAL_OPERATOR string_literal PASSWORD_SYMBOL EQUAL_OPERATOR string_literal DEFAULT_AUTH_SYMBOL EQUAL_OPERATOR string_literal PLUGIN_DIR_SYMBOL EQUAL_OPERATOR string_literal )
            {
                int alt385=4;
                {
                    int LA385_0 = LA(1);
                    if ( (LA385_0 == SQL_THREAD_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case EOF:
                        case COMMA_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        	{
                        		alt385=1;
                        	}
                            break;
                        case UNTIL_SYMBOL:
                        	{
                        		alt385=3;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 385;
                            EXCEPTION->state        = 1;


                            goto rulestart_slaveEx;

                        }

                    }
                    else if ( (LA385_0 == EOF || LA385_0 == RELAY_THREAD_SYMBOL || LA385_0 == SEMICOLON_SYMBOL))
                    {
                        alt385=1;
                    }
                    else if ( (LA385_0 == SQL_AFTER_GTIDS_SYMBOL || LA385_0 == SQL_BEFORE_GTIDS_SYMBOL))
                    {
                        alt385=2;
                    }
                    else if ( (LA385_0 == UNTIL_SYMBOL))
                    {
                        alt385=3;
                    }
                    else if ( ((SERVER_VERSION < 50604)) && (LA385_0 == USER_SYMBOL))
                    {
                        alt385=4;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 385;
                        EXCEPTION->state        = 0;


                        goto rulestart_slaveEx;

                    }
                }
                switch (alt385)
                {
            	case 1:
            	    // MySQL.g:1122:3: ( thread_types )?
            	    {
            	        // MySQL.g:1122:3: ( thread_types )?
            	        {
            	            int alt382=2;
            	            switch ( LA(1) )
            	            {
            	                case RELAY_THREAD_SYMBOL:
            	                case SQL_THREAD_SYMBOL:
            	                	{
            	                		alt382=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt382)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1122:3: thread_types
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_thread_types_in_start_slave5948);
            	        	        thread_types1178=thread_types(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulestart_slaveEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, thread_types1178.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1123:5: ( SQL_BEFORE_GTIDS_SYMBOL | SQL_AFTER_GTIDS_SYMBOL ) EQUAL_OPERATOR gtid_set
            	    {
            	        set1179=(pANTLR3_COMMON_TOKEN)LT(1);

            	        if ( LA(1) == SQL_AFTER_GTIDS_SYMBOL || LA(1) == SQL_BEFORE_GTIDS_SYMBOL )
            	        {
            	            CONSUME();
            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1179))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	            CONSTRUCTEX();
            	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	            EXCEPTION->expectingSet = NULL;

            	            goto rulestart_slaveEx;
            	        }


            	        EQUAL_OPERATOR1180 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_start_slave5963);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulestart_slaveEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        EQUAL_OPERATOR1180_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1180));
            	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1180_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_gtid_set_in_start_slave5965);
            	        gtid_set1181=gtid_set(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulestart_slaveEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, gtid_set1181.tree);

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:1124:5: {...}? ( SQL_THREAD_SYMBOL )? UNTIL_SYMBOL ( MASTER_LOG_FILE_SYMBOL EQUAL_OPERATOR string_literal COMMA_SYMBOL MASTER_LOG_POS_SYMBOL EQUAL_OPERATOR INTEGER | RELAY_LOG_FILE_SYMBOL EQUAL_OPERATOR string_literal COMMA_SYMBOL RELAY_LOG_POS_SYMBOL EQUAL_OPERATOR INTEGER |{...}? => SQL_AFTER_MTS_GAPS_SYMBOL )
            	    {
            	        if ( !((LA(1) == UNTIL_SYMBOL || LA(2) == UNTIL_SYMBOL)) )
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
            	                EXCEPTION->message      = (void *)"LA(1) == UNTIL_SYMBOL || LA(2) == UNTIL_SYMBOL";
            	                EXCEPTION->ruleName	 = (void *)"start_slave";


            	        }

            	        // MySQL.g:1124:55: ( SQL_THREAD_SYMBOL )?
            	        {
            	            int alt383=2;
            	            switch ( LA(1) )
            	            {
            	                case SQL_THREAD_SYMBOL:
            	                	{
            	                		alt383=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt383)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1124:55: SQL_THREAD_SYMBOL
            	        	    {
            	        	        SQL_THREAD_SYMBOL1182 = (pANTLR3_COMMON_TOKEN) MATCHT(SQL_THREAD_SYMBOL, &FOLLOW_SQL_THREAD_SYMBOL_in_start_slave5973);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulestart_slaveEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        SQL_THREAD_SYMBOL1182_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SQL_THREAD_SYMBOL1182));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, SQL_THREAD_SYMBOL1182_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        UNTIL_SYMBOL1183 = (pANTLR3_COMMON_TOKEN) MATCHT(UNTIL_SYMBOL, &FOLLOW_UNTIL_SYMBOL_in_start_slave5976);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulestart_slaveEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        UNTIL_SYMBOL1183_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNTIL_SYMBOL1183));
            	        ADAPTOR->addChild(ADAPTOR, root_0, UNTIL_SYMBOL1183_tree);
            	        }

            	        // MySQL.g:1125:3: ( MASTER_LOG_FILE_SYMBOL EQUAL_OPERATOR string_literal COMMA_SYMBOL MASTER_LOG_POS_SYMBOL EQUAL_OPERATOR INTEGER | RELAY_LOG_FILE_SYMBOL EQUAL_OPERATOR string_literal COMMA_SYMBOL RELAY_LOG_POS_SYMBOL EQUAL_OPERATOR INTEGER |{...}? => SQL_AFTER_MTS_GAPS_SYMBOL )
            	        {
            	            int alt384=3;
            	            {
            	                int LA384_0 = LA(1);
            	                if ( (LA384_0 == MASTER_LOG_FILE_SYMBOL))
            	                {
            	                    alt384=1;
            	                }
            	                else if ( (LA384_0 == RELAY_LOG_FILE_SYMBOL))
            	                {
            	                    alt384=2;
            	                }
            	                else if ( ((SERVER_VERSION < 50606)) && (LA384_0 == SQL_AFTER_MTS_GAPS_SYMBOL))
            	                {
            	                    alt384=3;
            	                }
            	                else
            	                {
            	                    if (BACKTRACKING>0)
            	                    {
            	                        FAILEDFLAG = ANTLR3_TRUE;
            	                        return retval;
            	                    }


            	                    CONSTRUCTEX();
            	                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    EXCEPTION->message      = (void *)"";
            	                    EXCEPTION->decisionNum  = 384;
            	                    EXCEPTION->state        = 0;


            	                    goto rulestart_slaveEx;

            	                }
            	            }
            	            switch (alt384)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1126:4: MASTER_LOG_FILE_SYMBOL EQUAL_OPERATOR string_literal COMMA_SYMBOL MASTER_LOG_POS_SYMBOL EQUAL_OPERATOR INTEGER
            	        	    {
            	        	        MASTER_LOG_FILE_SYMBOL1184 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_LOG_FILE_SYMBOL, &FOLLOW_MASTER_LOG_FILE_SYMBOL_in_start_slave5985);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulestart_slaveEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        MASTER_LOG_FILE_SYMBOL1184_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_LOG_FILE_SYMBOL1184));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_LOG_FILE_SYMBOL1184_tree);
            	        	        }

            	        	        EQUAL_OPERATOR1185 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_start_slave5987);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulestart_slaveEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EQUAL_OPERATOR1185_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1185));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1185_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_string_literal_in_start_slave5989);
            	        	        string_literal1186=string_literal(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulestart_slaveEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1186.tree);

            	        	        COMMA_SYMBOL1187 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_start_slave5991);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulestart_slaveEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COMMA_SYMBOL1187_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1187));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1187_tree);
            	        	        }

            	        	        MASTER_LOG_POS_SYMBOL1188 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_LOG_POS_SYMBOL, &FOLLOW_MASTER_LOG_POS_SYMBOL_in_start_slave5993);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulestart_slaveEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        MASTER_LOG_POS_SYMBOL1188_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_LOG_POS_SYMBOL1188));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_LOG_POS_SYMBOL1188_tree);
            	        	        }

            	        	        EQUAL_OPERATOR1189 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_start_slave5995);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulestart_slaveEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EQUAL_OPERATOR1189_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1189));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1189_tree);
            	        	        }

            	        	        INTEGER1190 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_start_slave5997);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulestart_slaveEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        INTEGER1190_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER1190));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER1190_tree);
            	        	        }

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:1127:6: RELAY_LOG_FILE_SYMBOL EQUAL_OPERATOR string_literal COMMA_SYMBOL RELAY_LOG_POS_SYMBOL EQUAL_OPERATOR INTEGER
            	        	    {
            	        	        RELAY_LOG_FILE_SYMBOL1191 = (pANTLR3_COMMON_TOKEN) MATCHT(RELAY_LOG_FILE_SYMBOL, &FOLLOW_RELAY_LOG_FILE_SYMBOL_in_start_slave6004);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulestart_slaveEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        RELAY_LOG_FILE_SYMBOL1191_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RELAY_LOG_FILE_SYMBOL1191));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, RELAY_LOG_FILE_SYMBOL1191_tree);
            	        	        }

            	        	        EQUAL_OPERATOR1192 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_start_slave6006);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulestart_slaveEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EQUAL_OPERATOR1192_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1192));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1192_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_string_literal_in_start_slave6008);
            	        	        string_literal1193=string_literal(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulestart_slaveEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1193.tree);

            	        	        COMMA_SYMBOL1194 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_start_slave6010);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulestart_slaveEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COMMA_SYMBOL1194_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1194));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1194_tree);
            	        	        }

            	        	        RELAY_LOG_POS_SYMBOL1195 = (pANTLR3_COMMON_TOKEN) MATCHT(RELAY_LOG_POS_SYMBOL, &FOLLOW_RELAY_LOG_POS_SYMBOL_in_start_slave6012);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulestart_slaveEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        RELAY_LOG_POS_SYMBOL1195_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RELAY_LOG_POS_SYMBOL1195));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, RELAY_LOG_POS_SYMBOL1195_tree);
            	        	        }

            	        	        EQUAL_OPERATOR1196 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_start_slave6014);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulestart_slaveEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EQUAL_OPERATOR1196_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1196));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1196_tree);
            	        	        }

            	        	        INTEGER1197 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_start_slave6016);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulestart_slaveEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        INTEGER1197_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER1197));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER1197_tree);
            	        	        }

            	        	    }
            	        	    break;
            	        	case 3:
            	        	    // MySQL.g:1128:6: {...}? => SQL_AFTER_MTS_GAPS_SYMBOL
            	        	    {
            	        	        if ( !((SERVER_VERSION < 50606)) )
            	        	        {
            	        	            if (BACKTRACKING>0)
            	        	            {
            	        	                FAILEDFLAG = ANTLR3_TRUE;
            	        	                return retval;
            	        	            }

            	        	                CONSTRUCTEX();
            	        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
            	        	                EXCEPTION->message      = (void *)"SERVER_VERSION < 50606";
            	        	                EXCEPTION->ruleName	 = (void *)"start_slave";


            	        	        }

            	        	        SQL_AFTER_MTS_GAPS_SYMBOL1198 = (pANTLR3_COMMON_TOKEN) MATCHT(SQL_AFTER_MTS_GAPS_SYMBOL, &FOLLOW_SQL_AFTER_MTS_GAPS_SYMBOL_in_start_slave6027);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulestart_slaveEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        SQL_AFTER_MTS_GAPS_SYMBOL1198_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SQL_AFTER_MTS_GAPS_SYMBOL1198));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, SQL_AFTER_MTS_GAPS_SYMBOL1198_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 4:
            	    // MySQL.g:1130:5: {...}? => USER_SYMBOL EQUAL_OPERATOR string_literal PASSWORD_SYMBOL EQUAL_OPERATOR string_literal DEFAULT_AUTH_SYMBOL EQUAL_OPERATOR string_literal PLUGIN_DIR_SYMBOL EQUAL_OPERATOR string_literal
            	    {
            	        if ( !((SERVER_VERSION < 50604)) )
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
            	                EXCEPTION->message      = (void *)"SERVER_VERSION < 50604";
            	                EXCEPTION->ruleName	 = (void *)"start_slave";


            	        }

            	        USER_SYMBOL1199 = (pANTLR3_COMMON_TOKEN) MATCHT(USER_SYMBOL, &FOLLOW_USER_SYMBOL_in_start_slave6041);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulestart_slaveEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        USER_SYMBOL1199_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USER_SYMBOL1199));
            	        ADAPTOR->addChild(ADAPTOR, root_0, USER_SYMBOL1199_tree);
            	        }

            	        EQUAL_OPERATOR1200 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_start_slave6043);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulestart_slaveEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        EQUAL_OPERATOR1200_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1200));
            	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1200_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_string_literal_in_start_slave6045);
            	        string_literal1201=string_literal(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulestart_slaveEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1201.tree);

            	        PASSWORD_SYMBOL1202 = (pANTLR3_COMMON_TOKEN) MATCHT(PASSWORD_SYMBOL, &FOLLOW_PASSWORD_SYMBOL_in_start_slave6047);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulestart_slaveEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PASSWORD_SYMBOL1202_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PASSWORD_SYMBOL1202));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PASSWORD_SYMBOL1202_tree);
            	        }

            	        EQUAL_OPERATOR1203 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_start_slave6049);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulestart_slaveEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        EQUAL_OPERATOR1203_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1203));
            	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1203_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_string_literal_in_start_slave6051);
            	        string_literal1204=string_literal(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulestart_slaveEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1204.tree);

            	        DEFAULT_AUTH_SYMBOL1205 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_AUTH_SYMBOL, &FOLLOW_DEFAULT_AUTH_SYMBOL_in_start_slave6056);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulestart_slaveEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DEFAULT_AUTH_SYMBOL1205_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_AUTH_SYMBOL1205));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_AUTH_SYMBOL1205_tree);
            	        }

            	        EQUAL_OPERATOR1206 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_start_slave6058);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulestart_slaveEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        EQUAL_OPERATOR1206_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1206));
            	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1206_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_string_literal_in_start_slave6060);
            	        string_literal1207=string_literal(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulestart_slaveEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1207.tree);

            	        PLUGIN_DIR_SYMBOL1208 = (pANTLR3_COMMON_TOKEN) MATCHT(PLUGIN_DIR_SYMBOL, &FOLLOW_PLUGIN_DIR_SYMBOL_in_start_slave6062);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulestart_slaveEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PLUGIN_DIR_SYMBOL1208_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PLUGIN_DIR_SYMBOL1208));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PLUGIN_DIR_SYMBOL1208_tree);
            	        }

            	        EQUAL_OPERATOR1209 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_start_slave6064);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulestart_slaveEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        EQUAL_OPERATOR1209_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1209));
            	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1209_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_string_literal_in_start_slave6066);
            	        string_literal1210=string_literal(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulestart_slaveEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1210.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulestart_slaveEx; /* Prevent compiler warnings */
    rulestart_slaveEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end start_slave */

/**
 * $ANTLR start stop_slave
 * MySQL.g:1135:1: stop_slave : STOP_SYMBOL SLAVE_SYMBOL ( thread_types )? ;
 */
static MySQLParser_stop_slave_return
stop_slave(pMySQLParser ctx)
{
    MySQLParser_stop_slave_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    STOP_SYMBOL1211;
    pANTLR3_COMMON_TOKEN    SLAVE_SYMBOL1212;
    MySQLParser_thread_types_return thread_types1213;
    #undef	RETURN_TYPE_thread_types1213
    #define	RETURN_TYPE_thread_types1213 MySQLParser_thread_types_return

    pANTLR3_BASE_TREE STOP_SYMBOL1211_tree;
    pANTLR3_BASE_TREE SLAVE_SYMBOL1212_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    STOP_SYMBOL1211       = NULL;
    SLAVE_SYMBOL1212       = NULL;
    thread_types1213.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    STOP_SYMBOL1211_tree   = NULL;
    SLAVE_SYMBOL1212_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1135:11: ( STOP_SYMBOL SLAVE_SYMBOL ( thread_types )? )
        // MySQL.g:1136:2: STOP_SYMBOL SLAVE_SYMBOL ( thread_types )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            STOP_SYMBOL1211 = (pANTLR3_COMMON_TOKEN) MATCHT(STOP_SYMBOL, &FOLLOW_STOP_SYMBOL_in_stop_slave6078);
            if  (HASEXCEPTION())
            {
                goto rulestop_slaveEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            STOP_SYMBOL1211_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STOP_SYMBOL1211));
            ADAPTOR->addChild(ADAPTOR, root_0, STOP_SYMBOL1211_tree);
            }

            SLAVE_SYMBOL1212 = (pANTLR3_COMMON_TOKEN) MATCHT(SLAVE_SYMBOL, &FOLLOW_SLAVE_SYMBOL_in_stop_slave6080);
            if  (HASEXCEPTION())
            {
                goto rulestop_slaveEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SLAVE_SYMBOL1212_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SLAVE_SYMBOL1212));
            ADAPTOR->addChild(ADAPTOR, root_0, SLAVE_SYMBOL1212_tree);
            }

            // MySQL.g:1136:27: ( thread_types )?
            {
                int alt386=2;
                switch ( LA(1) )
                {
                    case RELAY_THREAD_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    	{
                    		alt386=1;
                    	}
                        break;
                }

                switch (alt386)
                {
            	case 1:
            	    // MySQL.g:1136:27: thread_types
            	    {
            	        FOLLOWPUSH(FOLLOW_thread_types_in_stop_slave6082);
            	        thread_types1213=thread_types(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulestop_slaveEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, thread_types1213.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulestop_slaveEx; /* Prevent compiler warnings */
    rulestop_slaveEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end stop_slave */

/**
 * $ANTLR start thread_types
 * MySQL.g:1139:1: thread_types : ( RELAY_THREAD_SYMBOL | SQL_THREAD_SYMBOL ) ( COMMA_SYMBOL ( RELAY_THREAD_SYMBOL | SQL_THREAD_SYMBOL ) )* ;
 */
static MySQLParser_thread_types_return
thread_types(pMySQLParser ctx)
{
    MySQLParser_thread_types_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set1214;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1215;
    pANTLR3_COMMON_TOKEN    set1216;

    pANTLR3_BASE_TREE set1214_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1215_tree;
    pANTLR3_BASE_TREE set1216_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1214       = NULL;
    COMMA_SYMBOL1215       = NULL;
    set1216       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1214_tree   = NULL;
    COMMA_SYMBOL1215_tree   = NULL;
    set1216_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1139:13: ( ( RELAY_THREAD_SYMBOL | SQL_THREAD_SYMBOL ) ( COMMA_SYMBOL ( RELAY_THREAD_SYMBOL | SQL_THREAD_SYMBOL ) )* )
        // MySQL.g:1140:2: ( RELAY_THREAD_SYMBOL | SQL_THREAD_SYMBOL ) ( COMMA_SYMBOL ( RELAY_THREAD_SYMBOL | SQL_THREAD_SYMBOL ) )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set1214=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == RELAY_THREAD_SYMBOL || LA(1) == SQL_THREAD_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1214))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto rulethread_typesEx;
            }


            // MySQL.g:1140:44: ( COMMA_SYMBOL ( RELAY_THREAD_SYMBOL | SQL_THREAD_SYMBOL ) )*

            for (;;)
            {
                int alt387=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt387=1;
                	}
                    break;

                }

                switch (alt387)
                {
            	case 1:
            	    // MySQL.g:1140:45: COMMA_SYMBOL ( RELAY_THREAD_SYMBOL | SQL_THREAD_SYMBOL )
            	    {
            	        COMMA_SYMBOL1215 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_thread_types6101);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulethread_typesEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL1215_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1215));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1215_tree);
            	        }

            	        set1216=(pANTLR3_COMMON_TOKEN)LT(1);

            	        if ( LA(1) == RELAY_THREAD_SYMBOL || LA(1) == SQL_THREAD_SYMBOL )
            	        {
            	            CONSUME();
            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1216))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	            CONSTRUCTEX();
            	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	            EXCEPTION->expectingSet = NULL;

            	            goto rulethread_typesEx;
            	        }


            	    }
            	    break;

            	default:
            	    goto loop387;	/* break out of the loop */
            	    break;
                }
            }
            loop387: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto rulethread_typesEx; /* Prevent compiler warnings */
    rulethread_typesEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end thread_types */

/**
 * $ANTLR start gtid_set
 * MySQL.g:1143:1: gtid_set : string_literal ;
 */
static MySQLParser_gtid_set_return
gtid_set(pMySQLParser ctx)
{
    MySQLParser_gtid_set_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_string_literal_return string_literal1217;
    #undef	RETURN_TYPE_string_literal1217
    #define	RETURN_TYPE_string_literal1217 MySQLParser_string_literal_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    string_literal1217.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:1143:9: ( string_literal )
        // MySQL.g:1144:2: string_literal
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_string_literal_in_gtid_set6120);
            string_literal1217=string_literal(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulegtid_setEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1217.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto rulegtid_setEx; /* Prevent compiler warnings */
    rulegtid_setEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end gtid_set */

/**
 * $ANTLR start prepared_statement
 * MySQL.g:1149:1: prepared_statement : ( PREPARE_SYMBOL pure_identifier FROM_SYMBOL ( string_literal | user_variable ) | execute_statement | ( DEALLOCATE_SYMBOL | DROP_SYMBOL ) PREPARE_SYMBOL pure_identifier );
 */
static MySQLParser_prepared_statement_return
prepared_statement(pMySQLParser ctx)
{
    MySQLParser_prepared_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    PREPARE_SYMBOL1218;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL1220;
    pANTLR3_COMMON_TOKEN    set1224;
    pANTLR3_COMMON_TOKEN    PREPARE_SYMBOL1225;
    MySQLParser_pure_identifier_return pure_identifier1219;
    #undef	RETURN_TYPE_pure_identifier1219
    #define	RETURN_TYPE_pure_identifier1219 MySQLParser_pure_identifier_return

    MySQLParser_string_literal_return string_literal1221;
    #undef	RETURN_TYPE_string_literal1221
    #define	RETURN_TYPE_string_literal1221 MySQLParser_string_literal_return

    MySQLParser_user_variable_return user_variable1222;
    #undef	RETURN_TYPE_user_variable1222
    #define	RETURN_TYPE_user_variable1222 MySQLParser_user_variable_return

    MySQLParser_execute_statement_return execute_statement1223;
    #undef	RETURN_TYPE_execute_statement1223
    #define	RETURN_TYPE_execute_statement1223 MySQLParser_execute_statement_return

    MySQLParser_pure_identifier_return pure_identifier1226;
    #undef	RETURN_TYPE_pure_identifier1226
    #define	RETURN_TYPE_pure_identifier1226 MySQLParser_pure_identifier_return

    pANTLR3_BASE_TREE PREPARE_SYMBOL1218_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL1220_tree;
    pANTLR3_BASE_TREE set1224_tree;
    pANTLR3_BASE_TREE PREPARE_SYMBOL1225_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PREPARE_SYMBOL1218       = NULL;
    FROM_SYMBOL1220       = NULL;
    set1224       = NULL;
    PREPARE_SYMBOL1225       = NULL;
    pure_identifier1219.tree = NULL;

    string_literal1221.tree = NULL;

    user_variable1222.tree = NULL;

    execute_statement1223.tree = NULL;

    pure_identifier1226.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PREPARE_SYMBOL1218_tree   = NULL;
    FROM_SYMBOL1220_tree   = NULL;
    set1224_tree   = NULL;
    PREPARE_SYMBOL1225_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1149:19: ( PREPARE_SYMBOL pure_identifier FROM_SYMBOL ( string_literal | user_variable ) | execute_statement | ( DEALLOCATE_SYMBOL | DROP_SYMBOL ) PREPARE_SYMBOL pure_identifier )

            ANTLR3_UINT32 alt389;

            alt389=3;

            switch ( LA(1) )
            {
            case PREPARE_SYMBOL:
            	{
            		alt389=1;
            	}
                break;
            case EXECUTE_SYMBOL:
            	{
            		alt389=2;
            	}
                break;
            case DEALLOCATE_SYMBOL:
            case DROP_SYMBOL:
            	{
            		alt389=3;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 389;
                EXCEPTION->state        = 0;


                goto ruleprepared_statementEx;

            }

            switch (alt389)
            {
        	case 1:
        	    // MySQL.g:1150:2: PREPARE_SYMBOL pure_identifier FROM_SYMBOL ( string_literal | user_variable )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PREPARE_SYMBOL1218 = (pANTLR3_COMMON_TOKEN) MATCHT(PREPARE_SYMBOL, &FOLLOW_PREPARE_SYMBOL_in_prepared_statement6132);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprepared_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PREPARE_SYMBOL1218_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PREPARE_SYMBOL1218));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PREPARE_SYMBOL1218_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_pure_identifier_in_prepared_statement6134);
        	        pure_identifier1219=pure_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprepared_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier1219.tree);

        	        FROM_SYMBOL1220 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_prepared_statement6136);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprepared_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FROM_SYMBOL1220_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL1220));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL1220_tree);
        	        }

        	        // MySQL.g:1150:45: ( string_literal | user_variable )
        	        {
        	            int alt388=2;
        	            {
        	                int LA388_0 = LA(1);
        	                if ( (LA388_0 == NCHAR_TEXT || LA388_0 == SINGLE_QUOTED_TEXT || LA388_0 == UNDERSCORE_CHARSET))
        	                {
        	                    alt388=1;
        	                }
        	                else if ( ((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA388_0 == DOUBLE_QUOTED_TEXT))
        	                {
        	                    alt388=1;
        	                }
        	                else if ( (LA388_0 == AT_SIGN_SYMBOL))
        	                {
        	                    alt388=2;
        	                }
        	                else
        	                {
        	                    if (BACKTRACKING>0)
        	                    {
        	                        FAILEDFLAG = ANTLR3_TRUE;
        	                        return retval;
        	                    }


        	                    CONSTRUCTEX();
        	                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    EXCEPTION->message      = (void *)"";
        	                    EXCEPTION->decisionNum  = 388;
        	                    EXCEPTION->state        = 0;


        	                    goto ruleprepared_statementEx;

        	                }
        	            }
        	            switch (alt388)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1150:46: string_literal
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_string_literal_in_prepared_statement6139);
        	        	        string_literal1221=string_literal(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprepared_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1221.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:1150:63: user_variable
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_user_variable_in_prepared_statement6143);
        	        	        user_variable1222=user_variable(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprepared_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user_variable1222.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1151:4: execute_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_execute_statement_in_prepared_statement6149);
        	        execute_statement1223=execute_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprepared_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, execute_statement1223.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1152:4: ( DEALLOCATE_SYMBOL | DROP_SYMBOL ) PREPARE_SYMBOL pure_identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set1224=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == DEALLOCATE_SYMBOL || LA(1) == DROP_SYMBOL )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1224))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	            CONSTRUCTEX();
        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
        	            EXCEPTION->expectingSet = NULL;

        	            goto ruleprepared_statementEx;
        	        }


        	        PREPARE_SYMBOL1225 = (pANTLR3_COMMON_TOKEN) MATCHT(PREPARE_SYMBOL, &FOLLOW_PREPARE_SYMBOL_in_prepared_statement6162);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprepared_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PREPARE_SYMBOL1225_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PREPARE_SYMBOL1225));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PREPARE_SYMBOL1225_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_pure_identifier_in_prepared_statement6164);
        	        pure_identifier1226=pure_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprepared_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier1226.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleprepared_statementEx; /* Prevent compiler warnings */
    ruleprepared_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end prepared_statement */

/**
 * $ANTLR start execute_statement
 * MySQL.g:1155:1: execute_statement : EXECUTE_SYMBOL pure_identifier USING_SYMBOL execute_var_list ;
 */
static MySQLParser_execute_statement_return
execute_statement(pMySQLParser ctx)
{
    MySQLParser_execute_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    EXECUTE_SYMBOL1227;
    pANTLR3_COMMON_TOKEN    USING_SYMBOL1229;
    MySQLParser_pure_identifier_return pure_identifier1228;
    #undef	RETURN_TYPE_pure_identifier1228
    #define	RETURN_TYPE_pure_identifier1228 MySQLParser_pure_identifier_return

    MySQLParser_execute_var_list_return execute_var_list1230;
    #undef	RETURN_TYPE_execute_var_list1230
    #define	RETURN_TYPE_execute_var_list1230 MySQLParser_execute_var_list_return

    pANTLR3_BASE_TREE EXECUTE_SYMBOL1227_tree;
    pANTLR3_BASE_TREE USING_SYMBOL1229_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    EXECUTE_SYMBOL1227       = NULL;
    USING_SYMBOL1229       = NULL;
    pure_identifier1228.tree = NULL;

    execute_var_list1230.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    EXECUTE_SYMBOL1227_tree   = NULL;
    USING_SYMBOL1229_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1155:18: ( EXECUTE_SYMBOL pure_identifier USING_SYMBOL execute_var_list )
        // MySQL.g:1156:2: EXECUTE_SYMBOL pure_identifier USING_SYMBOL execute_var_list
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            EXECUTE_SYMBOL1227 = (pANTLR3_COMMON_TOKEN) MATCHT(EXECUTE_SYMBOL, &FOLLOW_EXECUTE_SYMBOL_in_execute_statement6173);
            if  (HASEXCEPTION())
            {
                goto ruleexecute_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EXECUTE_SYMBOL1227_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXECUTE_SYMBOL1227));
            ADAPTOR->addChild(ADAPTOR, root_0, EXECUTE_SYMBOL1227_tree);
            }

            FOLLOWPUSH(FOLLOW_pure_identifier_in_execute_statement6175);
            pure_identifier1228=pure_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleexecute_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier1228.tree);

            USING_SYMBOL1229 = (pANTLR3_COMMON_TOKEN) MATCHT(USING_SYMBOL, &FOLLOW_USING_SYMBOL_in_execute_statement6177);
            if  (HASEXCEPTION())
            {
                goto ruleexecute_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            USING_SYMBOL1229_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USING_SYMBOL1229));
            ADAPTOR->addChild(ADAPTOR, root_0, USING_SYMBOL1229_tree);
            }

            FOLLOWPUSH(FOLLOW_execute_var_list_in_execute_statement6179);
            execute_var_list1230=execute_var_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleexecute_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, execute_var_list1230.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleexecute_statementEx; /* Prevent compiler warnings */
    ruleexecute_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end execute_statement */

/**
 * $ANTLR start execute_var_list
 * MySQL.g:1159:1: execute_var_list : user_variable ( COMMA_SYMBOL user_variable )* ;
 */
static MySQLParser_execute_var_list_return
execute_var_list(pMySQLParser ctx)
{
    MySQLParser_execute_var_list_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1232;
    MySQLParser_user_variable_return user_variable1231;
    #undef	RETURN_TYPE_user_variable1231
    #define	RETURN_TYPE_user_variable1231 MySQLParser_user_variable_return

    MySQLParser_user_variable_return user_variable1233;
    #undef	RETURN_TYPE_user_variable1233
    #define	RETURN_TYPE_user_variable1233 MySQLParser_user_variable_return

    pANTLR3_BASE_TREE COMMA_SYMBOL1232_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL1232       = NULL;
    user_variable1231.tree = NULL;

    user_variable1233.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL1232_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1159:17: ( user_variable ( COMMA_SYMBOL user_variable )* )
        // MySQL.g:1160:2: user_variable ( COMMA_SYMBOL user_variable )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_user_variable_in_execute_var_list6188);
            user_variable1231=user_variable(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleexecute_var_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user_variable1231.tree);

            // MySQL.g:1160:16: ( COMMA_SYMBOL user_variable )*

            for (;;)
            {
                int alt390=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt390=1;
                	}
                    break;

                }

                switch (alt390)
                {
            	case 1:
            	    // MySQL.g:1160:17: COMMA_SYMBOL user_variable
            	    {
            	        COMMA_SYMBOL1232 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_execute_var_list6191);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleexecute_var_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL1232_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1232));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1232_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_user_variable_in_execute_var_list6193);
            	        user_variable1233=user_variable(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleexecute_var_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user_variable1233.tree);

            	    }
            	    break;

            	default:
            	    goto loop390;	/* break out of the loop */
            	    break;
                }
            }
            loop390: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto ruleexecute_var_listEx; /* Prevent compiler warnings */
    ruleexecute_var_listEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end execute_var_list */

/**
 * $ANTLR start account_management_statement
 * MySQL.g:1165:1: account_management_statement : ({...}? => alter_user | create_user | drop_user |{...}? => grant_proxy | grant | rename_user | revoke_statement | set_password );
 */
static MySQLParser_account_management_statement_return
account_management_statement(pMySQLParser ctx)
{
    MySQLParser_account_management_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_alter_user_return alter_user1234;
    #undef	RETURN_TYPE_alter_user1234
    #define	RETURN_TYPE_alter_user1234 MySQLParser_alter_user_return

    MySQLParser_create_user_return create_user1235;
    #undef	RETURN_TYPE_create_user1235
    #define	RETURN_TYPE_create_user1235 MySQLParser_create_user_return

    MySQLParser_drop_user_return drop_user1236;
    #undef	RETURN_TYPE_drop_user1236
    #define	RETURN_TYPE_drop_user1236 MySQLParser_drop_user_return

    MySQLParser_grant_proxy_return grant_proxy1237;
    #undef	RETURN_TYPE_grant_proxy1237
    #define	RETURN_TYPE_grant_proxy1237 MySQLParser_grant_proxy_return

    MySQLParser_grant_return grant1238;
    #undef	RETURN_TYPE_grant1238
    #define	RETURN_TYPE_grant1238 MySQLParser_grant_return

    MySQLParser_rename_user_return rename_user1239;
    #undef	RETURN_TYPE_rename_user1239
    #define	RETURN_TYPE_rename_user1239 MySQLParser_rename_user_return

    MySQLParser_revoke_statement_return revoke_statement1240;
    #undef	RETURN_TYPE_revoke_statement1240
    #define	RETURN_TYPE_revoke_statement1240 MySQLParser_revoke_statement_return

    MySQLParser_set_password_return set_password1241;
    #undef	RETURN_TYPE_set_password1241
    #define	RETURN_TYPE_set_password1241 MySQLParser_set_password_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    alter_user1234.tree = NULL;

    create_user1235.tree = NULL;

    drop_user1236.tree = NULL;

    grant_proxy1237.tree = NULL;

    grant1238.tree = NULL;

    rename_user1239.tree = NULL;

    revoke_statement1240.tree = NULL;

    set_password1241.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1165:29: ({...}? => alter_user | create_user | drop_user |{...}? => grant_proxy | grant | rename_user | revoke_statement | set_password )

            ANTLR3_UINT32 alt391;

            alt391=8;

            {
                int LA391_0 = LA(1);
                if ( ((SERVER_VERSION >= 50606)) && (LA391_0 == ALTER_SYMBOL))
                {
                    alt391=1;
                }
                else if ( (LA391_0 == CREATE_SYMBOL))
                {
                    alt391=2;
                }
                else if ( (LA391_0 == DROP_SYMBOL))
                {
                    alt391=3;
                }
                else if ( (LA391_0 == GRANT_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case PROXY_SYMBOL:
                    	{
                    		{
                    		    int LA391_8 = LA(3);
                    		    if ( ((SERVER_VERSION >= 50500 && LA(1) == GRANT_SYMBOL && LA(2) == PROXY_SYMBOL)))
                    		    {
                    		        alt391=4;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt391=5;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 391;
                    		        EXCEPTION->state        = 8;


                    		        goto ruleaccount_management_statementEx;

                    		    }
                    		}
                    	}
                        break;
                    case ALL_SYMBOL:
                    case ALTER_SYMBOL:
                    case CREATE_SYMBOL:
                    case DELETE_SYMBOL:
                    case DROP_SYMBOL:
                    case EVENT_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case FILE_SYMBOL:
                    case GRANT_SYMBOL:
                    case INDEX_SYMBOL:
                    case INSERT_SYMBOL:
                    case LOCK_SYMBOL:
                    case PROCESS_SYMBOL:
                    case REFERENCES_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case SELECT_SYMBOL:
                    case SHOW_SYMBOL:
                    case SHUTDOWN_SYMBOL:
                    case SUPER_SYMBOL:
                    case TRIGGER_SYMBOL:
                    case UPDATE_SYMBOL:
                    case USAGE_SYMBOL:
                    	{
                    		alt391=5;
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 391;
                        EXCEPTION->state        = 4;


                        goto ruleaccount_management_statementEx;

                    }

                }
                else if ( (LA391_0 == RENAME_SYMBOL))
                {
                    alt391=6;
                }
                else if ( (LA391_0 == REVOKE_SYMBOL))
                {
                    alt391=7;
                }
                else if ( (LA391_0 == SET_SYMBOL))
                {
                    alt391=8;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 391;
                    EXCEPTION->state        = 0;


                    goto ruleaccount_management_statementEx;

                }
            }
            switch (alt391)
            {
        	case 1:
        	    // MySQL.g:1166:2: {...}? => alter_user
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((SERVER_VERSION >= 50606)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50606";
        	                EXCEPTION->ruleName	 = (void *)"account_management_statement";


        	        }

        	        FOLLOWPUSH(FOLLOW_alter_user_in_account_management_statement6210);
        	        alter_user1234=alter_user(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaccount_management_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, alter_user1234.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1167:4: create_user
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_create_user_in_account_management_statement6215);
        	        create_user1235=create_user(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaccount_management_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_user1235.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1168:4: drop_user
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_drop_user_in_account_management_statement6220);
        	        drop_user1236=drop_user(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaccount_management_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, drop_user1236.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1169:4: {...}? => grant_proxy
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((SERVER_VERSION >= 50500 && LA(1) == GRANT_SYMBOL && LA(2) == PROXY_SYMBOL)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50500 && LA(1) == GRANT_SYMBOL && LA(2) == PROXY_SYMBOL";
        	                EXCEPTION->ruleName	 = (void *)"account_management_statement";


        	        }

        	        FOLLOWPUSH(FOLLOW_grant_proxy_in_account_management_statement6229);
        	        grant_proxy1237=grant_proxy(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaccount_management_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, grant_proxy1237.tree);

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1170:4: grant
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_grant_in_account_management_statement6234);
        	        grant1238=grant(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaccount_management_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, grant1238.tree);

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:1171:4: rename_user
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_rename_user_in_account_management_statement6239);
        	        rename_user1239=rename_user(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaccount_management_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, rename_user1239.tree);

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:1172:4: revoke_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_revoke_statement_in_account_management_statement6244);
        	        revoke_statement1240=revoke_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaccount_management_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, revoke_statement1240.tree);

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:1173:4: set_password
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_set_password_in_account_management_statement6249);
        	        set_password1241=set_password(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaccount_management_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, set_password1241.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleaccount_management_statementEx; /* Prevent compiler warnings */
    ruleaccount_management_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end account_management_statement */

/**
 * $ANTLR start alter_user
 * MySQL.g:1176:1: alter_user : ALTER_SYMBOL USER_SYMBOL user PASSWORD_SYMBOL EXPIRE_SYMBOL ( COMMA_SYMBOL user PASSWORD_SYMBOL EXPIRE_SYMBOL )* ;
 */
static MySQLParser_alter_user_return
alter_user(pMySQLParser ctx)
{
    MySQLParser_alter_user_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    ALTER_SYMBOL1242;
    pANTLR3_COMMON_TOKEN    USER_SYMBOL1243;
    pANTLR3_COMMON_TOKEN    PASSWORD_SYMBOL1245;
    pANTLR3_COMMON_TOKEN    EXPIRE_SYMBOL1246;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1247;
    pANTLR3_COMMON_TOKEN    PASSWORD_SYMBOL1249;
    pANTLR3_COMMON_TOKEN    EXPIRE_SYMBOL1250;
    MySQLParser_user_return user1244;
    #undef	RETURN_TYPE_user1244
    #define	RETURN_TYPE_user1244 MySQLParser_user_return

    MySQLParser_user_return user1248;
    #undef	RETURN_TYPE_user1248
    #define	RETURN_TYPE_user1248 MySQLParser_user_return

    pANTLR3_BASE_TREE ALTER_SYMBOL1242_tree;
    pANTLR3_BASE_TREE USER_SYMBOL1243_tree;
    pANTLR3_BASE_TREE PASSWORD_SYMBOL1245_tree;
    pANTLR3_BASE_TREE EXPIRE_SYMBOL1246_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1247_tree;
    pANTLR3_BASE_TREE PASSWORD_SYMBOL1249_tree;
    pANTLR3_BASE_TREE EXPIRE_SYMBOL1250_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ALTER_SYMBOL1242       = NULL;
    USER_SYMBOL1243       = NULL;
    PASSWORD_SYMBOL1245       = NULL;
    EXPIRE_SYMBOL1246       = NULL;
    COMMA_SYMBOL1247       = NULL;
    PASSWORD_SYMBOL1249       = NULL;
    EXPIRE_SYMBOL1250       = NULL;
    user1244.tree = NULL;

    user1248.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ALTER_SYMBOL1242_tree   = NULL;
    USER_SYMBOL1243_tree   = NULL;
    PASSWORD_SYMBOL1245_tree   = NULL;
    EXPIRE_SYMBOL1246_tree   = NULL;
    COMMA_SYMBOL1247_tree   = NULL;
    PASSWORD_SYMBOL1249_tree   = NULL;
    EXPIRE_SYMBOL1250_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1176:11: ( ALTER_SYMBOL USER_SYMBOL user PASSWORD_SYMBOL EXPIRE_SYMBOL ( COMMA_SYMBOL user PASSWORD_SYMBOL EXPIRE_SYMBOL )* )
        // MySQL.g:1177:2: ALTER_SYMBOL USER_SYMBOL user PASSWORD_SYMBOL EXPIRE_SYMBOL ( COMMA_SYMBOL user PASSWORD_SYMBOL EXPIRE_SYMBOL )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            ALTER_SYMBOL1242 = (pANTLR3_COMMON_TOKEN) MATCHT(ALTER_SYMBOL, &FOLLOW_ALTER_SYMBOL_in_alter_user6258);
            if  (HASEXCEPTION())
            {
                goto rulealter_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ALTER_SYMBOL1242_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALTER_SYMBOL1242));
            ADAPTOR->addChild(ADAPTOR, root_0, ALTER_SYMBOL1242_tree);
            }

            USER_SYMBOL1243 = (pANTLR3_COMMON_TOKEN) MATCHT(USER_SYMBOL, &FOLLOW_USER_SYMBOL_in_alter_user6260);
            if  (HASEXCEPTION())
            {
                goto rulealter_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            USER_SYMBOL1243_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USER_SYMBOL1243));
            ADAPTOR->addChild(ADAPTOR, root_0, USER_SYMBOL1243_tree);
            }

            FOLLOWPUSH(FOLLOW_user_in_alter_user6262);
            user1244=user(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulealter_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user1244.tree);

            PASSWORD_SYMBOL1245 = (pANTLR3_COMMON_TOKEN) MATCHT(PASSWORD_SYMBOL, &FOLLOW_PASSWORD_SYMBOL_in_alter_user6264);
            if  (HASEXCEPTION())
            {
                goto rulealter_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            PASSWORD_SYMBOL1245_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PASSWORD_SYMBOL1245));
            ADAPTOR->addChild(ADAPTOR, root_0, PASSWORD_SYMBOL1245_tree);
            }

            EXPIRE_SYMBOL1246 = (pANTLR3_COMMON_TOKEN) MATCHT(EXPIRE_SYMBOL, &FOLLOW_EXPIRE_SYMBOL_in_alter_user6266);
            if  (HASEXCEPTION())
            {
                goto rulealter_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EXPIRE_SYMBOL1246_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXPIRE_SYMBOL1246));
            ADAPTOR->addChild(ADAPTOR, root_0, EXPIRE_SYMBOL1246_tree);
            }

            // MySQL.g:1177:62: ( COMMA_SYMBOL user PASSWORD_SYMBOL EXPIRE_SYMBOL )*

            for (;;)
            {
                int alt392=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt392=1;
                	}
                    break;

                }

                switch (alt392)
                {
            	case 1:
            	    // MySQL.g:1177:63: COMMA_SYMBOL user PASSWORD_SYMBOL EXPIRE_SYMBOL
            	    {
            	        COMMA_SYMBOL1247 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_alter_user6269);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_userEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL1247_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1247));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1247_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_user_in_alter_user6271);
            	        user1248=user(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_userEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user1248.tree);

            	        PASSWORD_SYMBOL1249 = (pANTLR3_COMMON_TOKEN) MATCHT(PASSWORD_SYMBOL, &FOLLOW_PASSWORD_SYMBOL_in_alter_user6273);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_userEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PASSWORD_SYMBOL1249_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PASSWORD_SYMBOL1249));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PASSWORD_SYMBOL1249_tree);
            	        }

            	        EXPIRE_SYMBOL1250 = (pANTLR3_COMMON_TOKEN) MATCHT(EXPIRE_SYMBOL, &FOLLOW_EXPIRE_SYMBOL_in_alter_user6275);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_userEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        EXPIRE_SYMBOL1250_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXPIRE_SYMBOL1250));
            	        ADAPTOR->addChild(ADAPTOR, root_0, EXPIRE_SYMBOL1250_tree);
            	        }

            	    }
            	    break;

            	default:
            	    goto loop392;	/* break out of the loop */
            	    break;
                }
            }
            loop392: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto rulealter_userEx; /* Prevent compiler warnings */
    rulealter_userEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end alter_user */

/**
 * $ANTLR start create_user
 * MySQL.g:1180:1: create_user : CREATE_SYMBOL USER_SYMBOL user_specification ;
 */
static MySQLParser_create_user_return
create_user(pMySQLParser ctx)
{
    MySQLParser_create_user_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    CREATE_SYMBOL1251;
    pANTLR3_COMMON_TOKEN    USER_SYMBOL1252;
    MySQLParser_user_specification_return user_specification1253;
    #undef	RETURN_TYPE_user_specification1253
    #define	RETURN_TYPE_user_specification1253 MySQLParser_user_specification_return

    pANTLR3_BASE_TREE CREATE_SYMBOL1251_tree;
    pANTLR3_BASE_TREE USER_SYMBOL1252_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CREATE_SYMBOL1251       = NULL;
    USER_SYMBOL1252       = NULL;
    user_specification1253.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CREATE_SYMBOL1251_tree   = NULL;
    USER_SYMBOL1252_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1180:12: ( CREATE_SYMBOL USER_SYMBOL user_specification )
        // MySQL.g:1181:2: CREATE_SYMBOL USER_SYMBOL user_specification
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            CREATE_SYMBOL1251 = (pANTLR3_COMMON_TOKEN) MATCHT(CREATE_SYMBOL, &FOLLOW_CREATE_SYMBOL_in_create_user6286);
            if  (HASEXCEPTION())
            {
                goto rulecreate_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CREATE_SYMBOL1251_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CREATE_SYMBOL1251));
            ADAPTOR->addChild(ADAPTOR, root_0, CREATE_SYMBOL1251_tree);
            }

            USER_SYMBOL1252 = (pANTLR3_COMMON_TOKEN) MATCHT(USER_SYMBOL, &FOLLOW_USER_SYMBOL_in_create_user6288);
            if  (HASEXCEPTION())
            {
                goto rulecreate_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            USER_SYMBOL1252_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USER_SYMBOL1252));
            ADAPTOR->addChild(ADAPTOR, root_0, USER_SYMBOL1252_tree);
            }

            FOLLOWPUSH(FOLLOW_user_specification_in_create_user6290);
            user_specification1253=user_specification(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user_specification1253.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto rulecreate_userEx; /* Prevent compiler warnings */
    rulecreate_userEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end create_user */

/**
 * $ANTLR start drop_user
 * MySQL.g:1184:1: drop_user : DROP_SYMBOL USER_SYMBOL user_list ;
 */
static MySQLParser_drop_user_return
drop_user(pMySQLParser ctx)
{
    MySQLParser_drop_user_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    DROP_SYMBOL1254;
    pANTLR3_COMMON_TOKEN    USER_SYMBOL1255;
    MySQLParser_user_list_return user_list1256;
    #undef	RETURN_TYPE_user_list1256
    #define	RETURN_TYPE_user_list1256 MySQLParser_user_list_return

    pANTLR3_BASE_TREE DROP_SYMBOL1254_tree;
    pANTLR3_BASE_TREE USER_SYMBOL1255_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DROP_SYMBOL1254       = NULL;
    USER_SYMBOL1255       = NULL;
    user_list1256.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DROP_SYMBOL1254_tree   = NULL;
    USER_SYMBOL1255_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1184:10: ( DROP_SYMBOL USER_SYMBOL user_list )
        // MySQL.g:1185:2: DROP_SYMBOL USER_SYMBOL user_list
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            DROP_SYMBOL1254 = (pANTLR3_COMMON_TOKEN) MATCHT(DROP_SYMBOL, &FOLLOW_DROP_SYMBOL_in_drop_user6299);
            if  (HASEXCEPTION())
            {
                goto ruledrop_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DROP_SYMBOL1254_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DROP_SYMBOL1254));
            ADAPTOR->addChild(ADAPTOR, root_0, DROP_SYMBOL1254_tree);
            }

            USER_SYMBOL1255 = (pANTLR3_COMMON_TOKEN) MATCHT(USER_SYMBOL, &FOLLOW_USER_SYMBOL_in_drop_user6301);
            if  (HASEXCEPTION())
            {
                goto ruledrop_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            USER_SYMBOL1255_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USER_SYMBOL1255));
            ADAPTOR->addChild(ADAPTOR, root_0, USER_SYMBOL1255_tree);
            }

            FOLLOWPUSH(FOLLOW_user_list_in_drop_user6303);
            user_list1256=user_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruledrop_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user_list1256.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto ruledrop_userEx; /* Prevent compiler warnings */
    ruledrop_userEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end drop_user */

/**
 * $ANTLR start grant
 * MySQL.g:1188:1: grant : GRANT_SYMBOL privilege_type ( identifier_list_with_parentheses )? ( COMMA_SYMBOL privilege_type ( identifier_list_with_parentheses )? )* ON_SYMBOL grant_object_type privilege_level TO_SYMBOL user_specification ( COMMA_SYMBOL user_specification )* ( REQUIRE_SYMBOL ( NONE_SYMBOL | ssl_option ( ( AND_SYMBOL )? ssl_option )* ) )? ( WITH_SYMBOL ( grant_option )+ )? ;
 */
static MySQLParser_grant_return
grant(pMySQLParser ctx)
{
    MySQLParser_grant_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    GRANT_SYMBOL1257;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1260;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL1263;
    pANTLR3_COMMON_TOKEN    TO_SYMBOL1266;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1268;
    pANTLR3_COMMON_TOKEN    REQUIRE_SYMBOL1270;
    pANTLR3_COMMON_TOKEN    NONE_SYMBOL1271;
    pANTLR3_COMMON_TOKEN    AND_SYMBOL1273;
    pANTLR3_COMMON_TOKEN    WITH_SYMBOL1275;
    MySQLParser_privilege_type_return privilege_type1258;
    #undef	RETURN_TYPE_privilege_type1258
    #define	RETURN_TYPE_privilege_type1258 MySQLParser_privilege_type_return

    MySQLParser_identifier_list_with_parentheses_return identifier_list_with_parentheses1259;
    #undef	RETURN_TYPE_identifier_list_with_parentheses1259
    #define	RETURN_TYPE_identifier_list_with_parentheses1259 MySQLParser_identifier_list_with_parentheses_return

    MySQLParser_privilege_type_return privilege_type1261;
    #undef	RETURN_TYPE_privilege_type1261
    #define	RETURN_TYPE_privilege_type1261 MySQLParser_privilege_type_return

    MySQLParser_identifier_list_with_parentheses_return identifier_list_with_parentheses1262;
    #undef	RETURN_TYPE_identifier_list_with_parentheses1262
    #define	RETURN_TYPE_identifier_list_with_parentheses1262 MySQLParser_identifier_list_with_parentheses_return

    MySQLParser_grant_object_type_return grant_object_type1264;
    #undef	RETURN_TYPE_grant_object_type1264
    #define	RETURN_TYPE_grant_object_type1264 MySQLParser_grant_object_type_return

    MySQLParser_privilege_level_return privilege_level1265;
    #undef	RETURN_TYPE_privilege_level1265
    #define	RETURN_TYPE_privilege_level1265 MySQLParser_privilege_level_return

    MySQLParser_user_specification_return user_specification1267;
    #undef	RETURN_TYPE_user_specification1267
    #define	RETURN_TYPE_user_specification1267 MySQLParser_user_specification_return

    MySQLParser_user_specification_return user_specification1269;
    #undef	RETURN_TYPE_user_specification1269
    #define	RETURN_TYPE_user_specification1269 MySQLParser_user_specification_return

    MySQLParser_ssl_option_return ssl_option1272;
    #undef	RETURN_TYPE_ssl_option1272
    #define	RETURN_TYPE_ssl_option1272 MySQLParser_ssl_option_return

    MySQLParser_ssl_option_return ssl_option1274;
    #undef	RETURN_TYPE_ssl_option1274
    #define	RETURN_TYPE_ssl_option1274 MySQLParser_ssl_option_return

    MySQLParser_grant_option_return grant_option1276;
    #undef	RETURN_TYPE_grant_option1276
    #define	RETURN_TYPE_grant_option1276 MySQLParser_grant_option_return

    pANTLR3_BASE_TREE GRANT_SYMBOL1257_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1260_tree;
    pANTLR3_BASE_TREE ON_SYMBOL1263_tree;
    pANTLR3_BASE_TREE TO_SYMBOL1266_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1268_tree;
    pANTLR3_BASE_TREE REQUIRE_SYMBOL1270_tree;
    pANTLR3_BASE_TREE NONE_SYMBOL1271_tree;
    pANTLR3_BASE_TREE AND_SYMBOL1273_tree;
    pANTLR3_BASE_TREE WITH_SYMBOL1275_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    GRANT_SYMBOL1257       = NULL;
    COMMA_SYMBOL1260       = NULL;
    ON_SYMBOL1263       = NULL;
    TO_SYMBOL1266       = NULL;
    COMMA_SYMBOL1268       = NULL;
    REQUIRE_SYMBOL1270       = NULL;
    NONE_SYMBOL1271       = NULL;
    AND_SYMBOL1273       = NULL;
    WITH_SYMBOL1275       = NULL;
    privilege_type1258.tree = NULL;

    identifier_list_with_parentheses1259.tree = NULL;

    privilege_type1261.tree = NULL;

    identifier_list_with_parentheses1262.tree = NULL;

    grant_object_type1264.tree = NULL;

    privilege_level1265.tree = NULL;

    user_specification1267.tree = NULL;

    user_specification1269.tree = NULL;

    ssl_option1272.tree = NULL;

    ssl_option1274.tree = NULL;

    grant_option1276.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    GRANT_SYMBOL1257_tree   = NULL;
    COMMA_SYMBOL1260_tree   = NULL;
    ON_SYMBOL1263_tree   = NULL;
    TO_SYMBOL1266_tree   = NULL;
    COMMA_SYMBOL1268_tree   = NULL;
    REQUIRE_SYMBOL1270_tree   = NULL;
    NONE_SYMBOL1271_tree   = NULL;
    AND_SYMBOL1273_tree   = NULL;
    WITH_SYMBOL1275_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1188:6: ( GRANT_SYMBOL privilege_type ( identifier_list_with_parentheses )? ( COMMA_SYMBOL privilege_type ( identifier_list_with_parentheses )? )* ON_SYMBOL grant_object_type privilege_level TO_SYMBOL user_specification ( COMMA_SYMBOL user_specification )* ( REQUIRE_SYMBOL ( NONE_SYMBOL | ssl_option ( ( AND_SYMBOL )? ssl_option )* ) )? ( WITH_SYMBOL ( grant_option )+ )? )
        // MySQL.g:1189:2: GRANT_SYMBOL privilege_type ( identifier_list_with_parentheses )? ( COMMA_SYMBOL privilege_type ( identifier_list_with_parentheses )? )* ON_SYMBOL grant_object_type privilege_level TO_SYMBOL user_specification ( COMMA_SYMBOL user_specification )* ( REQUIRE_SYMBOL ( NONE_SYMBOL | ssl_option ( ( AND_SYMBOL )? ssl_option )* ) )? ( WITH_SYMBOL ( grant_option )+ )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            GRANT_SYMBOL1257 = (pANTLR3_COMMON_TOKEN) MATCHT(GRANT_SYMBOL, &FOLLOW_GRANT_SYMBOL_in_grant6312);
            if  (HASEXCEPTION())
            {
                goto rulegrantEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            GRANT_SYMBOL1257_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GRANT_SYMBOL1257));
            ADAPTOR->addChild(ADAPTOR, root_0, GRANT_SYMBOL1257_tree);
            }

            FOLLOWPUSH(FOLLOW_privilege_type_in_grant6314);
            privilege_type1258=privilege_type(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulegrantEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, privilege_type1258.tree);

            // MySQL.g:1189:30: ( identifier_list_with_parentheses )?
            {
                int alt393=2;
                switch ( LA(1) )
                {
                    case OPEN_PAR_SYMBOL:
                    	{
                    		alt393=1;
                    	}
                        break;
                }

                switch (alt393)
                {
            	case 1:
            	    // MySQL.g:1189:30: identifier_list_with_parentheses
            	    {
            	        FOLLOWPUSH(FOLLOW_identifier_list_with_parentheses_in_grant6316);
            	        identifier_list_with_parentheses1259=identifier_list_with_parentheses(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulegrantEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list_with_parentheses1259.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1189:64: ( COMMA_SYMBOL privilege_type ( identifier_list_with_parentheses )? )*

            for (;;)
            {
                int alt395=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt395=1;
                	}
                    break;

                }

                switch (alt395)
                {
            	case 1:
            	    // MySQL.g:1189:65: COMMA_SYMBOL privilege_type ( identifier_list_with_parentheses )?
            	    {
            	        COMMA_SYMBOL1260 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_grant6320);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulegrantEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL1260_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1260));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1260_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_privilege_type_in_grant6322);
            	        privilege_type1261=privilege_type(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulegrantEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, privilege_type1261.tree);

            	        // MySQL.g:1189:93: ( identifier_list_with_parentheses )?
            	        {
            	            int alt394=2;
            	            switch ( LA(1) )
            	            {
            	                case OPEN_PAR_SYMBOL:
            	                	{
            	                		alt394=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt394)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1189:93: identifier_list_with_parentheses
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_identifier_list_with_parentheses_in_grant6324);
            	        	        identifier_list_with_parentheses1262=identifier_list_with_parentheses(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulegrantEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list_with_parentheses1262.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

            	default:
            	    goto loop395;	/* break out of the loop */
            	    break;
                }
            }
            loop395: ; /* Jump out to here if this rule does not match */


            ON_SYMBOL1263 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_grant6331);
            if  (HASEXCEPTION())
            {
                goto rulegrantEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ON_SYMBOL1263_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL1263));
            ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL1263_tree);
            }

            FOLLOWPUSH(FOLLOW_grant_object_type_in_grant6333);
            grant_object_type1264=grant_object_type(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulegrantEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, grant_object_type1264.tree);

            FOLLOWPUSH(FOLLOW_privilege_level_in_grant6335);
            privilege_level1265=privilege_level(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulegrantEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, privilege_level1265.tree);

            TO_SYMBOL1266 = (pANTLR3_COMMON_TOKEN) MATCHT(TO_SYMBOL, &FOLLOW_TO_SYMBOL_in_grant6339);
            if  (HASEXCEPTION())
            {
                goto rulegrantEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            TO_SYMBOL1266_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TO_SYMBOL1266));
            ADAPTOR->addChild(ADAPTOR, root_0, TO_SYMBOL1266_tree);
            }

            FOLLOWPUSH(FOLLOW_user_specification_in_grant6341);
            user_specification1267=user_specification(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulegrantEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user_specification1267.tree);

            // MySQL.g:1191:32: ( COMMA_SYMBOL user_specification )*

            for (;;)
            {
                int alt396=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt396=1;
                	}
                    break;

                }

                switch (alt396)
                {
            	case 1:
            	    // MySQL.g:1191:33: COMMA_SYMBOL user_specification
            	    {
            	        COMMA_SYMBOL1268 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_grant6344);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulegrantEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL1268_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1268));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1268_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_user_specification_in_grant6346);
            	        user_specification1269=user_specification(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulegrantEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user_specification1269.tree);

            	    }
            	    break;

            	default:
            	    goto loop396;	/* break out of the loop */
            	    break;
                }
            }
            loop396: ; /* Jump out to here if this rule does not match */


            // MySQL.g:1192:3: ( REQUIRE_SYMBOL ( NONE_SYMBOL | ssl_option ( ( AND_SYMBOL )? ssl_option )* ) )?
            {
                int alt400=2;
                switch ( LA(1) )
                {
                    case REQUIRE_SYMBOL:
                    	{
                    		alt400=1;
                    	}
                        break;
                }

                switch (alt400)
                {
            	case 1:
            	    // MySQL.g:1192:4: REQUIRE_SYMBOL ( NONE_SYMBOL | ssl_option ( ( AND_SYMBOL )? ssl_option )* )
            	    {
            	        REQUIRE_SYMBOL1270 = (pANTLR3_COMMON_TOKEN) MATCHT(REQUIRE_SYMBOL, &FOLLOW_REQUIRE_SYMBOL_in_grant6353);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulegrantEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        REQUIRE_SYMBOL1270_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REQUIRE_SYMBOL1270));
            	        ADAPTOR->addChild(ADAPTOR, root_0, REQUIRE_SYMBOL1270_tree);
            	        }

            	        // MySQL.g:1192:19: ( NONE_SYMBOL | ssl_option ( ( AND_SYMBOL )? ssl_option )* )
            	        {
            	            int alt399=2;
            	            switch ( LA(1) )
            	            {
            	            case NONE_SYMBOL:
            	            	{
            	            		alt399=1;
            	            	}
            	                break;
            	            case CIPHER_SYMBOL:
            	            case ISSUER_SYMBOL:
            	            case SSL_SYMBOL:
            	            case SUBJECT_SYMBOL:
            	            case X509_SYMBOL:
            	            	{
            	            		alt399=2;
            	            	}
            	                break;

            	            default:
            	                if (BACKTRACKING>0)
            	                {
            	                    FAILEDFLAG = ANTLR3_TRUE;
            	                    return retval;
            	                }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                EXCEPTION->message      = (void *)"";
            	                EXCEPTION->decisionNum  = 399;
            	                EXCEPTION->state        = 0;


            	                goto rulegrantEx;

            	            }

            	            switch (alt399)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1192:20: NONE_SYMBOL
            	        	    {
            	        	        NONE_SYMBOL1271 = (pANTLR3_COMMON_TOKEN) MATCHT(NONE_SYMBOL, &FOLLOW_NONE_SYMBOL_in_grant6356);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulegrantEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        NONE_SYMBOL1271_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NONE_SYMBOL1271));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, NONE_SYMBOL1271_tree);
            	        	        }

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:1192:34: ssl_option ( ( AND_SYMBOL )? ssl_option )*
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_ssl_option_in_grant6360);
            	        	        ssl_option1272=ssl_option(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulegrantEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ssl_option1272.tree);

            	        	        // MySQL.g:1192:45: ( ( AND_SYMBOL )? ssl_option )*

            	        	        for (;;)
            	        	        {
            	        	            int alt398=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	            case AND_SYMBOL:
            	        	            case CIPHER_SYMBOL:
            	        	            case ISSUER_SYMBOL:
            	        	            case SSL_SYMBOL:
            	        	            case SUBJECT_SYMBOL:
            	        	            case X509_SYMBOL:
            	        	            	{
            	        	            		alt398=1;
            	        	            	}
            	        	                break;

            	        	            }

            	        	            switch (alt398)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:1192:46: ( AND_SYMBOL )? ssl_option
            	        	        	    {
            	        	        	        // MySQL.g:1192:46: ( AND_SYMBOL )?
            	        	        	        {
            	        	        	            int alt397=2;
            	        	        	            switch ( LA(1) )
            	        	        	            {
            	        	        	                case AND_SYMBOL:
            	        	        	                	{
            	        	        	                		alt397=1;
            	        	        	                	}
            	        	        	                    break;
            	        	        	            }

            	        	        	            switch (alt397)
            	        	        	            {
            	        	        	        	case 1:
            	        	        	        	    // MySQL.g:1192:46: AND_SYMBOL
            	        	        	        	    {
            	        	        	        	        AND_SYMBOL1273 = (pANTLR3_COMMON_TOKEN) MATCHT(AND_SYMBOL, &FOLLOW_AND_SYMBOL_in_grant6363);
            	        	        	        	        if  (HASEXCEPTION())
            	        	        	        	        {
            	        	        	        	            goto rulegrantEx;
            	        	        	        	        }
            	        	        	        	        if (HASFAILED())
            	        	        	        	        {
            	        	        	        	            return retval;
            	        	        	        	        }

            	        	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        	        AND_SYMBOL1273_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AND_SYMBOL1273));
            	        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, AND_SYMBOL1273_tree);
            	        	        	        	        }

            	        	        	        	    }
            	        	        	        	    break;

            	        	        	            }
            	        	        	        }

            	        	        	        FOLLOWPUSH(FOLLOW_ssl_option_in_grant6366);
            	        	        	        ssl_option1274=ssl_option(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulegrantEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ssl_option1274.tree);

            	        	        	    }
            	        	        	    break;

            	        	        	default:
            	        	        	    goto loop398;	/* break out of the loop */
            	        	        	    break;
            	        	            }
            	        	        }
            	        	        loop398: ; /* Jump out to here if this rule does not match */


            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:1193:3: ( WITH_SYMBOL ( grant_option )+ )?
            {
                int alt402=2;
                switch ( LA(1) )
                {
                    case WITH_SYMBOL:
                    	{
                    		alt402=1;
                    	}
                        break;
                }

                switch (alt402)
                {
            	case 1:
            	    // MySQL.g:1193:4: WITH_SYMBOL ( grant_option )+
            	    {
            	        WITH_SYMBOL1275 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_grant6376);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulegrantEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        WITH_SYMBOL1275_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WITH_SYMBOL1275));
            	        ADAPTOR->addChild(ADAPTOR, root_0, WITH_SYMBOL1275_tree);
            	        }

            	        // MySQL.g:1193:16: ( grant_option )+
            	        {
            	            int cnt401=0;

            	            for (;;)
            	            {
            	                int alt401=2;
            	        	switch ( LA(1) )
            	        	{
            	        	case GRANT_SYMBOL:
            	        	case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
            	        	case MAX_QUERIES_PER_HOUR_SYMBOL:
            	        	case MAX_UPDATES_PER_HOUR_SYMBOL:
            	        	case MAX_USER_CONNECTIONS_SYMBOL:
            	        		{
            	        			alt401=1;
            	        		}
            	        	    break;

            	        	}

            	        	switch (alt401)
            	        	{
            	        	    case 1:
            	        	        // MySQL.g:1193:16: grant_option
            	        	        {
            	        	            FOLLOWPUSH(FOLLOW_grant_option_in_grant6378);
            	        	            grant_option1276=grant_option(ctx);

            	        	            FOLLOWPOP();
            	        	            if  (HASEXCEPTION())
            	        	            {
            	        	                goto rulegrantEx;
            	        	            }
            	        	            if (HASFAILED())
            	        	            {
            	        	                return retval;
            	        	            }

            	        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, grant_option1276.tree);

            	        	        }
            	        	        break;

            	        	    default:

            	        		if ( cnt401 >= 1 )
            	        		{
            	        		    goto loop401;
            	        		}
            	        		if (BACKTRACKING>0)
            	        		{
            	        		    FAILEDFLAG = ANTLR3_TRUE;
            	        		    return retval;
            	        		}

            	        		/* mismatchedSetEx()
            	        		 */
            	        		CONSTRUCTEX();
            	        		EXCEPTION->type = ANTLR3_EARLY_EXIT_EXCEPTION;
            	        		EXCEPTION->name = (void *)ANTLR3_EARLY_EXIT_NAME;


            	        		goto rulegrantEx;
            	        	}
            	        	cnt401++;
            	            }
            	            loop401: ;	/* Jump to here if this rule does not match */
            	        }

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulegrantEx; /* Prevent compiler warnings */
    rulegrantEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end grant */

/**
 * $ANTLR start grant_proxy
 * MySQL.g:1196:1: grant_proxy : GRANT_SYMBOL PROXY_SYMBOL ON_SYMBOL user_specification TO_SYMBOL user_specification ( COMMA_SYMBOL user_specification )* ( WITH_SYMBOL GRANT_SYMBOL OPTION_SYMBOL )? ;
 */
static MySQLParser_grant_proxy_return
grant_proxy(pMySQLParser ctx)
{
    MySQLParser_grant_proxy_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    GRANT_SYMBOL1277;
    pANTLR3_COMMON_TOKEN    PROXY_SYMBOL1278;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL1279;
    pANTLR3_COMMON_TOKEN    TO_SYMBOL1281;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1283;
    pANTLR3_COMMON_TOKEN    WITH_SYMBOL1285;
    pANTLR3_COMMON_TOKEN    GRANT_SYMBOL1286;
    pANTLR3_COMMON_TOKEN    OPTION_SYMBOL1287;
    MySQLParser_user_specification_return user_specification1280;
    #undef	RETURN_TYPE_user_specification1280
    #define	RETURN_TYPE_user_specification1280 MySQLParser_user_specification_return

    MySQLParser_user_specification_return user_specification1282;
    #undef	RETURN_TYPE_user_specification1282
    #define	RETURN_TYPE_user_specification1282 MySQLParser_user_specification_return

    MySQLParser_user_specification_return user_specification1284;
    #undef	RETURN_TYPE_user_specification1284
    #define	RETURN_TYPE_user_specification1284 MySQLParser_user_specification_return

    pANTLR3_BASE_TREE GRANT_SYMBOL1277_tree;
    pANTLR3_BASE_TREE PROXY_SYMBOL1278_tree;
    pANTLR3_BASE_TREE ON_SYMBOL1279_tree;
    pANTLR3_BASE_TREE TO_SYMBOL1281_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1283_tree;
    pANTLR3_BASE_TREE WITH_SYMBOL1285_tree;
    pANTLR3_BASE_TREE GRANT_SYMBOL1286_tree;
    pANTLR3_BASE_TREE OPTION_SYMBOL1287_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    GRANT_SYMBOL1277       = NULL;
    PROXY_SYMBOL1278       = NULL;
    ON_SYMBOL1279       = NULL;
    TO_SYMBOL1281       = NULL;
    COMMA_SYMBOL1283       = NULL;
    WITH_SYMBOL1285       = NULL;
    GRANT_SYMBOL1286       = NULL;
    OPTION_SYMBOL1287       = NULL;
    user_specification1280.tree = NULL;

    user_specification1282.tree = NULL;

    user_specification1284.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    GRANT_SYMBOL1277_tree   = NULL;
    PROXY_SYMBOL1278_tree   = NULL;
    ON_SYMBOL1279_tree   = NULL;
    TO_SYMBOL1281_tree   = NULL;
    COMMA_SYMBOL1283_tree   = NULL;
    WITH_SYMBOL1285_tree   = NULL;
    GRANT_SYMBOL1286_tree   = NULL;
    OPTION_SYMBOL1287_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1196:12: ( GRANT_SYMBOL PROXY_SYMBOL ON_SYMBOL user_specification TO_SYMBOL user_specification ( COMMA_SYMBOL user_specification )* ( WITH_SYMBOL GRANT_SYMBOL OPTION_SYMBOL )? )
        // MySQL.g:1197:2: GRANT_SYMBOL PROXY_SYMBOL ON_SYMBOL user_specification TO_SYMBOL user_specification ( COMMA_SYMBOL user_specification )* ( WITH_SYMBOL GRANT_SYMBOL OPTION_SYMBOL )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            GRANT_SYMBOL1277 = (pANTLR3_COMMON_TOKEN) MATCHT(GRANT_SYMBOL, &FOLLOW_GRANT_SYMBOL_in_grant_proxy6390);
            if  (HASEXCEPTION())
            {
                goto rulegrant_proxyEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            GRANT_SYMBOL1277_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GRANT_SYMBOL1277));
            ADAPTOR->addChild(ADAPTOR, root_0, GRANT_SYMBOL1277_tree);
            }

            PROXY_SYMBOL1278 = (pANTLR3_COMMON_TOKEN) MATCHT(PROXY_SYMBOL, &FOLLOW_PROXY_SYMBOL_in_grant_proxy6392);
            if  (HASEXCEPTION())
            {
                goto rulegrant_proxyEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            PROXY_SYMBOL1278_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PROXY_SYMBOL1278));
            ADAPTOR->addChild(ADAPTOR, root_0, PROXY_SYMBOL1278_tree);
            }

            ON_SYMBOL1279 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_grant_proxy6394);
            if  (HASEXCEPTION())
            {
                goto rulegrant_proxyEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ON_SYMBOL1279_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL1279));
            ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL1279_tree);
            }

            FOLLOWPUSH(FOLLOW_user_specification_in_grant_proxy6396);
            user_specification1280=user_specification(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulegrant_proxyEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user_specification1280.tree);

            TO_SYMBOL1281 = (pANTLR3_COMMON_TOKEN) MATCHT(TO_SYMBOL, &FOLLOW_TO_SYMBOL_in_grant_proxy6398);
            if  (HASEXCEPTION())
            {
                goto rulegrant_proxyEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            TO_SYMBOL1281_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TO_SYMBOL1281));
            ADAPTOR->addChild(ADAPTOR, root_0, TO_SYMBOL1281_tree);
            }

            FOLLOWPUSH(FOLLOW_user_specification_in_grant_proxy6400);
            user_specification1282=user_specification(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulegrant_proxyEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user_specification1282.tree);

            // MySQL.g:1197:86: ( COMMA_SYMBOL user_specification )*

            for (;;)
            {
                int alt403=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt403=1;
                	}
                    break;

                }

                switch (alt403)
                {
            	case 1:
            	    // MySQL.g:1197:87: COMMA_SYMBOL user_specification
            	    {
            	        COMMA_SYMBOL1283 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_grant_proxy6403);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulegrant_proxyEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL1283_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1283));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1283_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_user_specification_in_grant_proxy6405);
            	        user_specification1284=user_specification(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulegrant_proxyEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user_specification1284.tree);

            	    }
            	    break;

            	default:
            	    goto loop403;	/* break out of the loop */
            	    break;
                }
            }
            loop403: ; /* Jump out to here if this rule does not match */


            // MySQL.g:1198:3: ( WITH_SYMBOL GRANT_SYMBOL OPTION_SYMBOL )?
            {
                int alt404=2;
                switch ( LA(1) )
                {
                    case WITH_SYMBOL:
                    	{
                    		alt404=1;
                    	}
                        break;
                }

                switch (alt404)
                {
            	case 1:
            	    // MySQL.g:1198:4: WITH_SYMBOL GRANT_SYMBOL OPTION_SYMBOL
            	    {
            	        WITH_SYMBOL1285 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_grant_proxy6412);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulegrant_proxyEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        WITH_SYMBOL1285_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WITH_SYMBOL1285));
            	        ADAPTOR->addChild(ADAPTOR, root_0, WITH_SYMBOL1285_tree);
            	        }

            	        GRANT_SYMBOL1286 = (pANTLR3_COMMON_TOKEN) MATCHT(GRANT_SYMBOL, &FOLLOW_GRANT_SYMBOL_in_grant_proxy6414);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulegrant_proxyEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        GRANT_SYMBOL1286_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GRANT_SYMBOL1286));
            	        ADAPTOR->addChild(ADAPTOR, root_0, GRANT_SYMBOL1286_tree);
            	        }

            	        OPTION_SYMBOL1287 = (pANTLR3_COMMON_TOKEN) MATCHT(OPTION_SYMBOL, &FOLLOW_OPTION_SYMBOL_in_grant_proxy6416);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulegrant_proxyEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPTION_SYMBOL1287_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPTION_SYMBOL1287));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPTION_SYMBOL1287_tree);
            	        }

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulegrant_proxyEx; /* Prevent compiler warnings */
    rulegrant_proxyEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end grant_proxy */

/**
 * $ANTLR start rename_user
 * MySQL.g:1201:1: rename_user : RENAME_SYMBOL USER_SYMBOL user TO_SYMBOL user ( COMMA_SYMBOL user TO_SYMBOL user )* ;
 */
static MySQLParser_rename_user_return
rename_user(pMySQLParser ctx)
{
    MySQLParser_rename_user_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    RENAME_SYMBOL1288;
    pANTLR3_COMMON_TOKEN    USER_SYMBOL1289;
    pANTLR3_COMMON_TOKEN    TO_SYMBOL1291;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1293;
    pANTLR3_COMMON_TOKEN    TO_SYMBOL1295;
    MySQLParser_user_return user1290;
    #undef	RETURN_TYPE_user1290
    #define	RETURN_TYPE_user1290 MySQLParser_user_return

    MySQLParser_user_return user1292;
    #undef	RETURN_TYPE_user1292
    #define	RETURN_TYPE_user1292 MySQLParser_user_return

    MySQLParser_user_return user1294;
    #undef	RETURN_TYPE_user1294
    #define	RETURN_TYPE_user1294 MySQLParser_user_return

    MySQLParser_user_return user1296;
    #undef	RETURN_TYPE_user1296
    #define	RETURN_TYPE_user1296 MySQLParser_user_return

    pANTLR3_BASE_TREE RENAME_SYMBOL1288_tree;
    pANTLR3_BASE_TREE USER_SYMBOL1289_tree;
    pANTLR3_BASE_TREE TO_SYMBOL1291_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1293_tree;
    pANTLR3_BASE_TREE TO_SYMBOL1295_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    RENAME_SYMBOL1288       = NULL;
    USER_SYMBOL1289       = NULL;
    TO_SYMBOL1291       = NULL;
    COMMA_SYMBOL1293       = NULL;
    TO_SYMBOL1295       = NULL;
    user1290.tree = NULL;

    user1292.tree = NULL;

    user1294.tree = NULL;

    user1296.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    RENAME_SYMBOL1288_tree   = NULL;
    USER_SYMBOL1289_tree   = NULL;
    TO_SYMBOL1291_tree   = NULL;
    COMMA_SYMBOL1293_tree   = NULL;
    TO_SYMBOL1295_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1201:12: ( RENAME_SYMBOL USER_SYMBOL user TO_SYMBOL user ( COMMA_SYMBOL user TO_SYMBOL user )* )
        // MySQL.g:1202:2: RENAME_SYMBOL USER_SYMBOL user TO_SYMBOL user ( COMMA_SYMBOL user TO_SYMBOL user )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            RENAME_SYMBOL1288 = (pANTLR3_COMMON_TOKEN) MATCHT(RENAME_SYMBOL, &FOLLOW_RENAME_SYMBOL_in_rename_user6427);
            if  (HASEXCEPTION())
            {
                goto rulerename_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            RENAME_SYMBOL1288_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RENAME_SYMBOL1288));
            ADAPTOR->addChild(ADAPTOR, root_0, RENAME_SYMBOL1288_tree);
            }

            USER_SYMBOL1289 = (pANTLR3_COMMON_TOKEN) MATCHT(USER_SYMBOL, &FOLLOW_USER_SYMBOL_in_rename_user6429);
            if  (HASEXCEPTION())
            {
                goto rulerename_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            USER_SYMBOL1289_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USER_SYMBOL1289));
            ADAPTOR->addChild(ADAPTOR, root_0, USER_SYMBOL1289_tree);
            }

            FOLLOWPUSH(FOLLOW_user_in_rename_user6431);
            user1290=user(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulerename_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user1290.tree);

            TO_SYMBOL1291 = (pANTLR3_COMMON_TOKEN) MATCHT(TO_SYMBOL, &FOLLOW_TO_SYMBOL_in_rename_user6433);
            if  (HASEXCEPTION())
            {
                goto rulerename_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            TO_SYMBOL1291_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TO_SYMBOL1291));
            ADAPTOR->addChild(ADAPTOR, root_0, TO_SYMBOL1291_tree);
            }

            FOLLOWPUSH(FOLLOW_user_in_rename_user6435);
            user1292=user(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulerename_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user1292.tree);

            // MySQL.g:1202:48: ( COMMA_SYMBOL user TO_SYMBOL user )*

            for (;;)
            {
                int alt405=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt405=1;
                	}
                    break;

                }

                switch (alt405)
                {
            	case 1:
            	    // MySQL.g:1202:49: COMMA_SYMBOL user TO_SYMBOL user
            	    {
            	        COMMA_SYMBOL1293 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_rename_user6438);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerename_userEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL1293_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1293));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1293_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_user_in_rename_user6440);
            	        user1294=user(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerename_userEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user1294.tree);

            	        TO_SYMBOL1295 = (pANTLR3_COMMON_TOKEN) MATCHT(TO_SYMBOL, &FOLLOW_TO_SYMBOL_in_rename_user6442);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerename_userEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TO_SYMBOL1295_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TO_SYMBOL1295));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TO_SYMBOL1295_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_user_in_rename_user6444);
            	        user1296=user(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerename_userEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user1296.tree);

            	    }
            	    break;

            	default:
            	    goto loop405;	/* break out of the loop */
            	    break;
                }
            }
            loop405: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto rulerename_userEx; /* Prevent compiler warnings */
    rulerename_userEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end rename_user */

/**
 * $ANTLR start revoke_statement
 * MySQL.g:1205:1: revoke_statement : REVOKE_SYMBOL ( privilege_type ( identifier_list_with_parentheses )? ( COMMA_SYMBOL privilege_type ( identifier_list_with_parentheses )? )* ON_SYMBOL ( grant_object_type )? privilege_level FROM_SYMBOL user_list |{...}? => ALL_SYMBOL PRIVILEGES_SYMBOL COMMA_SYMBOL GRANT_SYMBOL OPTION_SYMBOL FROM_SYMBOL user_list |{...}? => PROXY_SYMBOL ON_SYMBOL user FROM_SYMBOL user_list ) ;
 */
static MySQLParser_revoke_statement_return
revoke_statement(pMySQLParser ctx)
{
    MySQLParser_revoke_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    REVOKE_SYMBOL1297;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1300;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL1303;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL1306;
    pANTLR3_COMMON_TOKEN    ALL_SYMBOL1308;
    pANTLR3_COMMON_TOKEN    PRIVILEGES_SYMBOL1309;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1310;
    pANTLR3_COMMON_TOKEN    GRANT_SYMBOL1311;
    pANTLR3_COMMON_TOKEN    OPTION_SYMBOL1312;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL1313;
    pANTLR3_COMMON_TOKEN    PROXY_SYMBOL1315;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL1316;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL1318;
    MySQLParser_privilege_type_return privilege_type1298;
    #undef	RETURN_TYPE_privilege_type1298
    #define	RETURN_TYPE_privilege_type1298 MySQLParser_privilege_type_return

    MySQLParser_identifier_list_with_parentheses_return identifier_list_with_parentheses1299;
    #undef	RETURN_TYPE_identifier_list_with_parentheses1299
    #define	RETURN_TYPE_identifier_list_with_parentheses1299 MySQLParser_identifier_list_with_parentheses_return

    MySQLParser_privilege_type_return privilege_type1301;
    #undef	RETURN_TYPE_privilege_type1301
    #define	RETURN_TYPE_privilege_type1301 MySQLParser_privilege_type_return

    MySQLParser_identifier_list_with_parentheses_return identifier_list_with_parentheses1302;
    #undef	RETURN_TYPE_identifier_list_with_parentheses1302
    #define	RETURN_TYPE_identifier_list_with_parentheses1302 MySQLParser_identifier_list_with_parentheses_return

    MySQLParser_grant_object_type_return grant_object_type1304;
    #undef	RETURN_TYPE_grant_object_type1304
    #define	RETURN_TYPE_grant_object_type1304 MySQLParser_grant_object_type_return

    MySQLParser_privilege_level_return privilege_level1305;
    #undef	RETURN_TYPE_privilege_level1305
    #define	RETURN_TYPE_privilege_level1305 MySQLParser_privilege_level_return

    MySQLParser_user_list_return user_list1307;
    #undef	RETURN_TYPE_user_list1307
    #define	RETURN_TYPE_user_list1307 MySQLParser_user_list_return

    MySQLParser_user_list_return user_list1314;
    #undef	RETURN_TYPE_user_list1314
    #define	RETURN_TYPE_user_list1314 MySQLParser_user_list_return

    MySQLParser_user_return user1317;
    #undef	RETURN_TYPE_user1317
    #define	RETURN_TYPE_user1317 MySQLParser_user_return

    MySQLParser_user_list_return user_list1319;
    #undef	RETURN_TYPE_user_list1319
    #define	RETURN_TYPE_user_list1319 MySQLParser_user_list_return

    pANTLR3_BASE_TREE REVOKE_SYMBOL1297_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1300_tree;
    pANTLR3_BASE_TREE ON_SYMBOL1303_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL1306_tree;
    pANTLR3_BASE_TREE ALL_SYMBOL1308_tree;
    pANTLR3_BASE_TREE PRIVILEGES_SYMBOL1309_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1310_tree;
    pANTLR3_BASE_TREE GRANT_SYMBOL1311_tree;
    pANTLR3_BASE_TREE OPTION_SYMBOL1312_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL1313_tree;
    pANTLR3_BASE_TREE PROXY_SYMBOL1315_tree;
    pANTLR3_BASE_TREE ON_SYMBOL1316_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL1318_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    REVOKE_SYMBOL1297       = NULL;
    COMMA_SYMBOL1300       = NULL;
    ON_SYMBOL1303       = NULL;
    FROM_SYMBOL1306       = NULL;
    ALL_SYMBOL1308       = NULL;
    PRIVILEGES_SYMBOL1309       = NULL;
    COMMA_SYMBOL1310       = NULL;
    GRANT_SYMBOL1311       = NULL;
    OPTION_SYMBOL1312       = NULL;
    FROM_SYMBOL1313       = NULL;
    PROXY_SYMBOL1315       = NULL;
    ON_SYMBOL1316       = NULL;
    FROM_SYMBOL1318       = NULL;
    privilege_type1298.tree = NULL;

    identifier_list_with_parentheses1299.tree = NULL;

    privilege_type1301.tree = NULL;

    identifier_list_with_parentheses1302.tree = NULL;

    grant_object_type1304.tree = NULL;

    privilege_level1305.tree = NULL;

    user_list1307.tree = NULL;

    user_list1314.tree = NULL;

    user1317.tree = NULL;

    user_list1319.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    REVOKE_SYMBOL1297_tree   = NULL;
    COMMA_SYMBOL1300_tree   = NULL;
    ON_SYMBOL1303_tree   = NULL;
    FROM_SYMBOL1306_tree   = NULL;
    ALL_SYMBOL1308_tree   = NULL;
    PRIVILEGES_SYMBOL1309_tree   = NULL;
    COMMA_SYMBOL1310_tree   = NULL;
    GRANT_SYMBOL1311_tree   = NULL;
    OPTION_SYMBOL1312_tree   = NULL;
    FROM_SYMBOL1313_tree   = NULL;
    PROXY_SYMBOL1315_tree   = NULL;
    ON_SYMBOL1316_tree   = NULL;
    FROM_SYMBOL1318_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1205:17: ( REVOKE_SYMBOL ( privilege_type ( identifier_list_with_parentheses )? ( COMMA_SYMBOL privilege_type ( identifier_list_with_parentheses )? )* ON_SYMBOL ( grant_object_type )? privilege_level FROM_SYMBOL user_list |{...}? => ALL_SYMBOL PRIVILEGES_SYMBOL COMMA_SYMBOL GRANT_SYMBOL OPTION_SYMBOL FROM_SYMBOL user_list |{...}? => PROXY_SYMBOL ON_SYMBOL user FROM_SYMBOL user_list ) )
        // MySQL.g:1206:2: REVOKE_SYMBOL ( privilege_type ( identifier_list_with_parentheses )? ( COMMA_SYMBOL privilege_type ( identifier_list_with_parentheses )? )* ON_SYMBOL ( grant_object_type )? privilege_level FROM_SYMBOL user_list |{...}? => ALL_SYMBOL PRIVILEGES_SYMBOL COMMA_SYMBOL GRANT_SYMBOL OPTION_SYMBOL FROM_SYMBOL user_list |{...}? => PROXY_SYMBOL ON_SYMBOL user FROM_SYMBOL user_list )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            REVOKE_SYMBOL1297 = (pANTLR3_COMMON_TOKEN) MATCHT(REVOKE_SYMBOL, &FOLLOW_REVOKE_SYMBOL_in_revoke_statement6455);
            if  (HASEXCEPTION())
            {
                goto rulerevoke_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            REVOKE_SYMBOL1297_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REVOKE_SYMBOL1297));
            ADAPTOR->addChild(ADAPTOR, root_0, REVOKE_SYMBOL1297_tree);
            }

            // MySQL.g:1207:2: ( privilege_type ( identifier_list_with_parentheses )? ( COMMA_SYMBOL privilege_type ( identifier_list_with_parentheses )? )* ON_SYMBOL ( grant_object_type )? privilege_level FROM_SYMBOL user_list |{...}? => ALL_SYMBOL PRIVILEGES_SYMBOL COMMA_SYMBOL GRANT_SYMBOL OPTION_SYMBOL FROM_SYMBOL user_list |{...}? => PROXY_SYMBOL ON_SYMBOL user FROM_SYMBOL user_list )
            {
                int alt410=3;
                switch ( LA(1) )
                {
                case ALL_SYMBOL:
                	{
                		switch ( LA(2) )
                		{
                		case PRIVILEGES_SYMBOL:
                			{
                				{
                				    int LA410_25 = LA(3);
                				    if ( (!( ((LA(1) == ALL_SYMBOL && LA(2) == PRIVILEGES_SYMBOL)) )))
                				    {
                				        alt410=1;
                				    }
                				    else if ( ((LA(1) == ALL_SYMBOL && LA(2) == PRIVILEGES_SYMBOL)))
                				    {
                				        alt410=2;
                				    }
                				    else
                				    {
                				        if (BACKTRACKING>0)
                				        {
                				            FAILEDFLAG = ANTLR3_TRUE;
                				            return retval;
                				        }


                				        CONSTRUCTEX();
                				        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                				        EXCEPTION->message      = (void *)"";
                				        EXCEPTION->decisionNum  = 410;
                				        EXCEPTION->state        = 25;


                				        goto rulerevoke_statementEx;

                				    }
                				}
                			}
                		    break;
                		case COMMA_SYMBOL:
                		case ON_SYMBOL:
                		case OPEN_PAR_SYMBOL:
                			{
                				alt410=1;
                			}
                		    break;

                		default:
                		    if (BACKTRACKING>0)
                		    {
                		        FAILEDFLAG = ANTLR3_TRUE;
                		        return retval;
                		    }

                		    CONSTRUCTEX();
                		    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                		    EXCEPTION->message      = (void *)"";
                		    EXCEPTION->decisionNum  = 410;
                		    EXCEPTION->state        = 1;


                		    goto rulerevoke_statementEx;

                		}

                	}
                    break;
                case ALTER_SYMBOL:
                case CREATE_SYMBOL:
                case DELETE_SYMBOL:
                case DROP_SYMBOL:
                case EVENT_SYMBOL:
                case EXECUTE_SYMBOL:
                case FILE_SYMBOL:
                case GRANT_SYMBOL:
                case INDEX_SYMBOL:
                case INSERT_SYMBOL:
                case LOCK_SYMBOL:
                case PROCESS_SYMBOL:
                case REFERENCES_SYMBOL:
                case RELOAD_SYMBOL:
                case REPLICATION_SYMBOL:
                case SELECT_SYMBOL:
                case SHOW_SYMBOL:
                case SHUTDOWN_SYMBOL:
                case SUPER_SYMBOL:
                case TRIGGER_SYMBOL:
                case UPDATE_SYMBOL:
                case USAGE_SYMBOL:
                	{
                		alt410=1;
                	}
                    break;
                case PROXY_SYMBOL:
                	{
                		switch ( LA(2) )
                		{
                		case ON_SYMBOL:
                			{
                				{
                				    int LA410_29 = LA(3);
                				    if ( (!( ((SERVER_VERSION >= 50500 && LA(1) == PROXY_SYMBOL)) )))
                				    {
                				        alt410=1;
                				    }
                				    else if ( ((SERVER_VERSION >= 50500 && LA(1) == PROXY_SYMBOL)))
                				    {
                				        alt410=3;
                				    }
                				    else
                				    {
                				        if (BACKTRACKING>0)
                				        {
                				            FAILEDFLAG = ANTLR3_TRUE;
                				            return retval;
                				        }


                				        CONSTRUCTEX();
                				        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                				        EXCEPTION->message      = (void *)"";
                				        EXCEPTION->decisionNum  = 410;
                				        EXCEPTION->state        = 29;


                				        goto rulerevoke_statementEx;

                				    }
                				}
                			}
                		    break;
                		case COMMA_SYMBOL:
                		case OPEN_PAR_SYMBOL:
                			{
                				alt410=1;
                			}
                		    break;

                		default:
                		    if (BACKTRACKING>0)
                		    {
                		        FAILEDFLAG = ANTLR3_TRUE;
                		        return retval;
                		    }

                		    CONSTRUCTEX();
                		    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                		    EXCEPTION->message      = (void *)"";
                		    EXCEPTION->decisionNum  = 410;
                		    EXCEPTION->state        = 14;


                		    goto rulerevoke_statementEx;

                		}

                	}
                    break;

                default:
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 410;
                    EXCEPTION->state        = 0;


                    goto rulerevoke_statementEx;

                }

                switch (alt410)
                {
            	case 1:
            	    // MySQL.g:1208:3: privilege_type ( identifier_list_with_parentheses )? ( COMMA_SYMBOL privilege_type ( identifier_list_with_parentheses )? )* ON_SYMBOL ( grant_object_type )? privilege_level FROM_SYMBOL user_list
            	    {
            	        FOLLOWPUSH(FOLLOW_privilege_type_in_revoke_statement6462);
            	        privilege_type1298=privilege_type(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, privilege_type1298.tree);

            	        // MySQL.g:1208:18: ( identifier_list_with_parentheses )?
            	        {
            	            int alt406=2;
            	            switch ( LA(1) )
            	            {
            	                case OPEN_PAR_SYMBOL:
            	                	{
            	                		alt406=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt406)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1208:18: identifier_list_with_parentheses
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_identifier_list_with_parentheses_in_revoke_statement6464);
            	        	        identifier_list_with_parentheses1299=identifier_list_with_parentheses(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulerevoke_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list_with_parentheses1299.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1208:52: ( COMMA_SYMBOL privilege_type ( identifier_list_with_parentheses )? )*

            	        for (;;)
            	        {
            	            int alt408=2;
            	            switch ( LA(1) )
            	            {
            	            case COMMA_SYMBOL:
            	            	{
            	            		alt408=1;
            	            	}
            	                break;

            	            }

            	            switch (alt408)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1208:53: COMMA_SYMBOL privilege_type ( identifier_list_with_parentheses )?
            	        	    {
            	        	        COMMA_SYMBOL1300 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_revoke_statement6468);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulerevoke_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COMMA_SYMBOL1300_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1300));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1300_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_privilege_type_in_revoke_statement6470);
            	        	        privilege_type1301=privilege_type(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulerevoke_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, privilege_type1301.tree);

            	        	        // MySQL.g:1208:81: ( identifier_list_with_parentheses )?
            	        	        {
            	        	            int alt407=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case OPEN_PAR_SYMBOL:
            	        	                	{
            	        	                		alt407=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt407)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:1208:81: identifier_list_with_parentheses
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_identifier_list_with_parentheses_in_revoke_statement6472);
            	        	        	        identifier_list_with_parentheses1302=identifier_list_with_parentheses(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulerevoke_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list_with_parentheses1302.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	    }
            	        	    break;

            	        	default:
            	        	    goto loop408;	/* break out of the loop */
            	        	    break;
            	            }
            	        }
            	        loop408: ; /* Jump out to here if this rule does not match */


            	        ON_SYMBOL1303 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_revoke_statement6480);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ON_SYMBOL1303_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL1303));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL1303_tree);
            	        }

            	        // MySQL.g:1209:14: ( grant_object_type )?
            	        {
            	            int alt409=2;
            	            switch ( LA(1) )
            	            {
            	                case FUNCTION_SYMBOL:
            	                	{
            	                		switch ( LA(2) )
            	                		{
            	                		    case ACTION_SYMBOL:
            	                		    case ADDDATE_SYMBOL:
            	                		    case AFTER_SYMBOL:
            	                		    case AGAINST_SYMBOL:
            	                		    case AGGREGATE_SYMBOL:
            	                		    case ALGORITHM_SYMBOL:
            	                		    case ANALYZE_SYMBOL:
            	                		    case ANY_SYMBOL:
            	                		    case ASCII_SYMBOL:
            	                		    case AT_SYMBOL:
            	                		    case AUTHORS_SYMBOL:
            	                		    case AUTOEXTEND_SIZE_SYMBOL:
            	                		    case AUTO_INCREMENT_SYMBOL:
            	                		    case AVG_ROW_LENGTH_SYMBOL:
            	                		    case AVG_SYMBOL:
            	                		    case BACKUP_SYMBOL:
            	                		    case BACK_TICK_QUOTED_ID:
            	                		    case BEGIN_SYMBOL:
            	                		    case BINLOG_SYMBOL:
            	                		    case BIT_SYMBOL:
            	                		    case BLOCK_SYMBOL:
            	                		    case BOOLEAN_SYMBOL:
            	                		    case BOOL_SYMBOL:
            	                		    case BTREE_SYMBOL:
            	                		    case BYTE_SYMBOL:
            	                		    case CACHE_SYMBOL:
            	                		    case CASCADED_SYMBOL:
            	                		    case CATALOG_NAME_SYMBOL:
            	                		    case CHAIN_SYMBOL:
            	                		    case CHANGED_SYMBOL:
            	                		    case CHARSET_SYMBOL:
            	                		    case CHECKSUM_SYMBOL:
            	                		    case CIPHER_SYMBOL:
            	                		    case CLASS_ORIGIN_SYMBOL:
            	                		    case CLIENT_SYMBOL:
            	                		    case CLOSE_SYMBOL:
            	                		    case COALESCE_SYMBOL:
            	                		    case CODE_SYMBOL:
            	                		    case COLLATION_SYMBOL:
            	                		    case COLUMNS_SYMBOL:
            	                		    case COLUMN_FORMAT_SYMBOL:
            	                		    case COLUMN_NAME_SYMBOL:
            	                		    case COMMENT_SYMBOL:
            	                		    case COMMITTED_SYMBOL:
            	                		    case COMMIT_SYMBOL:
            	                		    case COMPACT_SYMBOL:
            	                		    case COMPLETION_SYMBOL:
            	                		    case COMPRESSED_SYMBOL:
            	                		    case CONCURRENT_SYMBOL:
            	                		    case CONNECTION_SYMBOL:
            	                		    case CONSISTENT_SYMBOL:
            	                		    case CONSTRAINT_CATALOG_SYMBOL:
            	                		    case CONSTRAINT_NAME_SYMBOL:
            	                		    case CONSTRAINT_SCHEMA_SYMBOL:
            	                		    case CONTAINS_SYMBOL:
            	                		    case CONTEXT_SYMBOL:
            	                		    case CONTRIBUTORS_SYMBOL:
            	                		    case CPU_SYMBOL:
            	                		    case CUBE_SYMBOL:
            	                		    case CURRENT_SYMBOL:
            	                		    case CURSOR_NAME_SYMBOL:
            	                		    case DATAFILE_SYMBOL:
            	                		    case DATA_SYMBOL:
            	                		    case DATETIME_SYMBOL:
            	                		    case DATE_SYMBOL:
            	                		    case DAY_SYMBOL:
            	                		    case DEALLOCATE_SYMBOL:
            	                		    case DEFAULT_AUTH_SYMBOL:
            	                		    case DEFINER_SYMBOL:
            	                		    case DELAY_KEY_WRITE_SYMBOL:
            	                		    case DES_KEY_FILE_SYMBOL:
            	                		    case DIAGNOSTICS_SYMBOL:
            	                		    case DIRECTORY_SYMBOL:
            	                		    case DISABLE_SYMBOL:
            	                		    case DISCARD_SYMBOL:
            	                		    case DISK_SYMBOL:
            	                		    case DOUBLE_QUOTED_TEXT:
            	                		    case DO_SYMBOL:
            	                		    case DUMPFILE_SYMBOL:
            	                		    case DUPLICATE_SYMBOL:
            	                		    case DYNAMIC_SYMBOL:
            	                		    case ENABLE_SYMBOL:
            	                		    case ENDS_SYMBOL:
            	                		    case END_SYMBOL:
            	                		    case ENGINES_SYMBOL:
            	                		    case ENGINE_SYMBOL:
            	                		    case ENUM_SYMBOL:
            	                		    case ERRORS_SYMBOL:
            	                		    case ERROR_SYMBOL:
            	                		    case ESCAPE_SYMBOL:
            	                		    case EVENTS_SYMBOL:
            	                		    case EVENT_SYMBOL:
            	                		    case EVERY_SYMBOL:
            	                		    case EXECUTE_SYMBOL:
            	                		    case EXPANSION_SYMBOL:
            	                		    case EXPORT_SYMBOL:
            	                		    case EXTENDED_SYMBOL:
            	                		    case EXTENT_SIZE_SYMBOL:
            	                		    case FAST_SYMBOL:
            	                		    case FAULTS_SYMBOL:
            	                		    case FILE_SYMBOL:
            	                		    case FIRST_SYMBOL:
            	                		    case FIXED_SYMBOL:
            	                		    case FLUSH_SYMBOL:
            	                		    case FORMAT_SYMBOL:
            	                		    case FOUND_SYMBOL:
            	                		    case FULL_SYMBOL:
            	                		    case FUNCTION_SYMBOL:
            	                		    case GENERAL_SYMBOL:
            	                		    case GEOMETRYCOLLECTION_SYMBOL:
            	                		    case GEOMETRY_SYMBOL:
            	                		    case GET_FORMAT_SYMBOL:
            	                		    case GLOBAL_SYMBOL:
            	                		    case GRANTS_SYMBOL:
            	                		    case HANDLER_SYMBOL:
            	                		    case HASH_SYMBOL:
            	                		    case HELP_SYMBOL:
            	                		    case HOSTS_SYMBOL:
            	                		    case HOST_SYMBOL:
            	                		    case HOUR_SYMBOL:
            	                		    case IDENTIFIED_SYMBOL:
            	                		    case IDENTIFIER:
            	                		    case IGNORE_SERVER_IDS_SYMBOL:
            	                		    case IMPORT_SYMBOL:
            	                		    case INDEXES_SYMBOL:
            	                		    case INITIAL_SIZE_SYMBOL:
            	                		    case INNODB_SYMBOL:
            	                		    case INSERT_METHOD_SYMBOL:
            	                		    case INSTALL_SYMBOL:
            	                		    case INVOKER_SYMBOL:
            	                		    case IO_SYMBOL:
            	                		    case IPC_SYMBOL:
            	                		    case ISOLATION_SYMBOL:
            	                		    case ISSUER_SYMBOL:
            	                		    case KEY_BLOCK_SIZE_SYMBOL:
            	                		    case LANGUAGE_SYMBOL:
            	                		    case LAST_SYMBOL:
            	                		    case LEAVES_SYMBOL:
            	                		    case LESS_SYMBOL:
            	                		    case LEVEL_SYMBOL:
            	                		    case LINESTRING_SYMBOL:
            	                		    case LIST_SYMBOL:
            	                		    case LOCAL_SYMBOL:
            	                		    case LOCKS_SYMBOL:
            	                		    case LOGFILE_SYMBOL:
            	                		    case LOGS_SYMBOL:
            	                		    case MASTER_AUTO_POSITION_SYMBOL:
            	                		    case MASTER_CONNECT_RETRY_SYMBOL:
            	                		    case MASTER_DELAY_SYMBOL:
            	                		    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
            	                		    case MASTER_HOST_SYMBOL:
            	                		    case MASTER_LOG_FILE_SYMBOL:
            	                		    case MASTER_LOG_POS_SYMBOL:
            	                		    case MASTER_PASSWORD_SYMBOL:
            	                		    case MASTER_PORT_SYMBOL:
            	                		    case MASTER_RETRY_COUNT_SYMBOL:
            	                		    case MASTER_SERVER_ID_SYMBOL:
            	                		    case MASTER_SSL_CAPATH_SYMBOL:
            	                		    case MASTER_SSL_CA_SYMBOL:
            	                		    case MASTER_SSL_CERT_SYMBOL:
            	                		    case MASTER_SSL_CIPHER_SYMBOL:
            	                		    case MASTER_SSL_CRLPATH_SYMBOL:
            	                		    case MASTER_SSL_CRL_SYMBOL:
            	                		    case MASTER_SSL_KEY_SYMBOL:
            	                		    case MASTER_SSL_SYMBOL:
            	                		    case MASTER_SYMBOL:
            	                		    case MASTER_USER_SYMBOL:
            	                		    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
            	                		    case MAX_QUERIES_PER_HOUR_SYMBOL:
            	                		    case MAX_ROWS_SYMBOL:
            	                		    case MAX_SIZE_SYMBOL:
            	                		    case MAX_UPDATES_PER_HOUR_SYMBOL:
            	                		    case MAX_USER_CONNECTIONS_SYMBOL:
            	                		    case MEDIUM_SYMBOL:
            	                		    case MEMORY_SYMBOL:
            	                		    case MERGE_SYMBOL:
            	                		    case MESSAGE_TEXT_SYMBOL:
            	                		    case MICROSECOND_SYMBOL:
            	                		    case MIGRATE_SYMBOL:
            	                		    case MINUTE_SYMBOL:
            	                		    case MIN_ROWS_SYMBOL:
            	                		    case MODE_SYMBOL:
            	                		    case MODIFY_SYMBOL:
            	                		    case MONTH_SYMBOL:
            	                		    case MULTILINESTRING_SYMBOL:
            	                		    case MULTIPOINT_SYMBOL:
            	                		    case MULTIPOLYGON_SYMBOL:
            	                		    case MULT_OPERATOR:
            	                		    case MUTEX_SYMBOL:
            	                		    case MYSQL_ERRNO_SYMBOL:
            	                		    case NAMES_SYMBOL:
            	                		    case NAME_SYMBOL:
            	                		    case NATIONAL_SYMBOL:
            	                		    case NCHAR_SYMBOL:
            	                		    case NDBCLUSTER_SYMBOL:
            	                		    case NEW_SYMBOL:
            	                		    case NEXT_SYMBOL:
            	                		    case NODEGROUP_SYMBOL:
            	                		    case NONE_SYMBOL:
            	                		    case NO_SYMBOL:
            	                		    case NO_WAIT_SYMBOL:
            	                		    case NUMBER_SYMBOL:
            	                		    case NVARCHAR_SYMBOL:
            	                		    case OFFSET_SYMBOL:
            	                		    case OLD_PASSWORD_SYMBOL:
            	                		    case ONE_SHOT_SYMBOL:
            	                		    case ONE_SYMBOL:
            	                		    case OPEN_SYMBOL:
            	                		    case OPTIONS_SYMBOL:
            	                		    case OWNER_SYMBOL:
            	                		    case PACK_KEYS_SYMBOL:
            	                		    case PAGE_SYMBOL:
            	                		    case PARSER_SYMBOL:
            	                		    case PARTIAL_SYMBOL:
            	                		    case PARTITIONING_SYMBOL:
            	                		    case PARTITIONS_SYMBOL:
            	                		    case PARTITION_SYMBOL:
            	                		    case PASSWORD_SYMBOL:
            	                		    case PHASE_SYMBOL:
            	                		    case PLUGINS_SYMBOL:
            	                		    case PLUGIN_DIR_SYMBOL:
            	                		    case PLUGIN_SYMBOL:
            	                		    case POINT_SYMBOL:
            	                		    case POLYGON_SYMBOL:
            	                		    case PORT_SYMBOL:
            	                		    case PREPARE_SYMBOL:
            	                		    case PRESERVE_SYMBOL:
            	                		    case PREV_SYMBOL:
            	                		    case PRIVILEGES_SYMBOL:
            	                		    case PROCESSLIST_SYMBOL:
            	                		    case PROCESS_SYMBOL:
            	                		    case PROFILES_SYMBOL:
            	                		    case PROFILE_SYMBOL:
            	                		    case PROXY_SYMBOL:
            	                		    case QUARTER_SYMBOL:
            	                		    case QUERY_SYMBOL:
            	                		    case QUICK_SYMBOL:
            	                		    case READ_ONLY_SYMBOL:
            	                		    case REBUILD_SYMBOL:
            	                		    case RECOVER_SYMBOL:
            	                		    case REDOFILE_SYMBOL:
            	                		    case REDO_BUFFER_SIZE_SYMBOL:
            	                		    case REDUNDANT_SYMBOL:
            	                		    case RELAYLOG_SYMBOL:
            	                		    case RELAY_LOG_FILE_SYMBOL:
            	                		    case RELAY_LOG_POS_SYMBOL:
            	                		    case RELAY_SYMBOL:
            	                		    case RELAY_THREAD_SYMBOL:
            	                		    case RELOAD_SYMBOL:
            	                		    case REMOVE_SYMBOL:
            	                		    case REORGANIZE_SYMBOL:
            	                		    case REPAIR_SYMBOL:
            	                		    case REPEATABLE_SYMBOL:
            	                		    case REPLICATION_SYMBOL:
            	                		    case RESET_SYMBOL:
            	                		    case RESTORE_SYMBOL:
            	                		    case RESUME_SYMBOL:
            	                		    case RETURNED_SQLSTATE_SYMBOL:
            	                		    case RETURNS_SYMBOL:
            	                		    case REVERSE_SYMBOL:
            	                		    case ROLLBACK_SYMBOL:
            	                		    case ROLLUP_SYMBOL:
            	                		    case ROUTINE_SYMBOL:
            	                		    case ROWS_SYMBOL:
            	                		    case ROW_COUNT_SYMBOL:
            	                		    case ROW_FORMAT_SYMBOL:
            	                		    case ROW_SYMBOL:
            	                		    case RTREE_SYMBOL:
            	                		    case SAVEPOINT_SYMBOL:
            	                		    case SCHEDULE_SYMBOL:
            	                		    case SCHEMA_NAME_SYMBOL:
            	                		    case SECOND_SYMBOL:
            	                		    case SECURITY_SYMBOL:
            	                		    case SERIALIZABLE_SYMBOL:
            	                		    case SERIAL_SYMBOL:
            	                		    case SERVER_SYMBOL:
            	                		    case SESSION_SYMBOL:
            	                		    case SHARE_SYMBOL:
            	                		    case SHUTDOWN_SYMBOL:
            	                		    case SIGNED_SYMBOL:
            	                		    case SIMPLE_SYMBOL:
            	                		    case SLAVE_SYMBOL:
            	                		    case SLOW_SYMBOL:
            	                		    case SNAPSHOT_SYMBOL:
            	                		    case SOCKET_SYMBOL:
            	                		    case SONAME_SYMBOL:
            	                		    case SOUNDS_SYMBOL:
            	                		    case SOURCE_SYMBOL:
            	                		    case SQL_AFTER_GTIDS_SYMBOL:
            	                		    case SQL_AFTER_MTS_GAPS_SYMBOL:
            	                		    case SQL_BEFORE_GTIDS_SYMBOL:
            	                		    case SQL_BUFFER_RESULT_SYMBOL:
            	                		    case SQL_CACHE_SYMBOL:
            	                		    case SQL_NO_CACHE_SYMBOL:
            	                		    case SQL_THREAD_SYMBOL:
            	                		    case STARTS_SYMBOL:
            	                		    case START_SYMBOL:
            	                		    case STATS_AUTO_RECALC_SYMBOL:
            	                		    case STATS_PERSISTENT_SYMBOL:
            	                		    case STATS_SAMPLE_PAGES_SYMBOL:
            	                		    case STATUS_SYMBOL:
            	                		    case STOP_SYMBOL:
            	                		    case STORAGE_SYMBOL:
            	                		    case STRING_SYMBOL:
            	                		    case SUBCLASS_ORIGIN_SYMBOL:
            	                		    case SUBDATE_SYMBOL:
            	                		    case SUBJECT_SYMBOL:
            	                		    case SUBPARTITIONS_SYMBOL:
            	                		    case SUBPARTITION_SYMBOL:
            	                		    case SUPER_SYMBOL:
            	                		    case SUSPEND_SYMBOL:
            	                		    case SWAPS_SYMBOL:
            	                		    case SWITCHES_SYMBOL:
            	                		    case TABLESPACE_SYMBOL:
            	                		    case TABLES_SYMBOL:
            	                		    case TABLE_CHECKSUM_SYMBOL:
            	                		    case TABLE_NAME_SYMBOL:
            	                		    case TEMPORARY_SYMBOL:
            	                		    case TEMPTABLE_SYMBOL:
            	                		    case TEXT_SYMBOL:
            	                		    case THAN_SYMBOL:
            	                		    case TIMESTAMP_ADD_SYMBOL:
            	                		    case TIMESTAMP_DIFF_SYMBOL:
            	                		    case TIMESTAMP_SYMBOL:
            	                		    case TIME_SYMBOL:
            	                		    case TRANSACTION_SYMBOL:
            	                		    case TRIGGERS_SYMBOL:
            	                		    case TRUNCATE_SYMBOL:
            	                		    case TYPES_SYMBOL:
            	                		    case TYPE_SYMBOL:
            	                		    case UDF_RETURNS_SYMBOL:
            	                		    case UNCOMMITTED_SYMBOL:
            	                		    case UNDEFINED_SYMBOL:
            	                		    case UNDOFILE_SYMBOL:
            	                		    case UNDO_BUFFER_SIZE_SYMBOL:
            	                		    case UNICODE_SYMBOL:
            	                		    case UNINSTALL_SYMBOL:
            	                		    case UNKNOWN_SYMBOL:
            	                		    case UNTIL_SYMBOL:
            	                		    case UPGRADE_SYMBOL:
            	                		    case USER_RESOURCES_SYMBOL:
            	                		    case USER_SYMBOL:
            	                		    case USE_FRM_SYMBOL:
            	                		    case VALUE_SYMBOL:
            	                		    case VARIABLES_SYMBOL:
            	                		    case VIEW_SYMBOL:
            	                		    case WAIT_SYMBOL:
            	                		    case WARNINGS_SYMBOL:
            	                		    case WEEK_SYMBOL:
            	                		    case WEIGHT_STRING_SYMBOL:
            	                		    case WORK_SYMBOL:
            	                		    case WRAPPER_SYMBOL:
            	                		    case X509_SYMBOL:
            	                		    case XA_SYMBOL:
            	                		    case XML_SYMBOL:
            	                		    case YEAR_SYMBOL:
            	                		    	{
            	                		    		alt409=1;
            	                		    	}
            	                		        break;
            	                		}

            	                	}
            	                    break;
            	                case PROCEDURE_SYMBOL:
            	                case TABLE_SYMBOL:
            	                	{
            	                		alt409=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt409)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1209:14: grant_object_type
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_grant_object_type_in_revoke_statement6482);
            	        	        grant_object_type1304=grant_object_type(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulerevoke_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, grant_object_type1304.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_privilege_level_in_revoke_statement6485);
            	        privilege_level1305=privilege_level(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, privilege_level1305.tree);

            	        FROM_SYMBOL1306 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_revoke_statement6487);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FROM_SYMBOL1306_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL1306));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL1306_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_user_list_in_revoke_statement6489);
            	        user_list1307=user_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user_list1307.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1210:5: {...}? => ALL_SYMBOL PRIVILEGES_SYMBOL COMMA_SYMBOL GRANT_SYMBOL OPTION_SYMBOL FROM_SYMBOL user_list
            	    {
            	        if ( !((LA(1) == ALL_SYMBOL && LA(2) == PRIVILEGES_SYMBOL)) )
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
            	                EXCEPTION->message      = (void *)"LA(1) == ALL_SYMBOL && LA(2) == PRIVILEGES_SYMBOL";
            	                EXCEPTION->ruleName	 = (void *)"revoke_statement";


            	        }

            	        ALL_SYMBOL1308 = (pANTLR3_COMMON_TOKEN) MATCHT(ALL_SYMBOL, &FOLLOW_ALL_SYMBOL_in_revoke_statement6499);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ALL_SYMBOL1308_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALL_SYMBOL1308));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ALL_SYMBOL1308_tree);
            	        }

            	        PRIVILEGES_SYMBOL1309 = (pANTLR3_COMMON_TOKEN) MATCHT(PRIVILEGES_SYMBOL, &FOLLOW_PRIVILEGES_SYMBOL_in_revoke_statement6501);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PRIVILEGES_SYMBOL1309_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PRIVILEGES_SYMBOL1309));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PRIVILEGES_SYMBOL1309_tree);
            	        }

            	        COMMA_SYMBOL1310 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_revoke_statement6503);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL1310_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1310));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1310_tree);
            	        }

            	        GRANT_SYMBOL1311 = (pANTLR3_COMMON_TOKEN) MATCHT(GRANT_SYMBOL, &FOLLOW_GRANT_SYMBOL_in_revoke_statement6505);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        GRANT_SYMBOL1311_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GRANT_SYMBOL1311));
            	        ADAPTOR->addChild(ADAPTOR, root_0, GRANT_SYMBOL1311_tree);
            	        }

            	        OPTION_SYMBOL1312 = (pANTLR3_COMMON_TOKEN) MATCHT(OPTION_SYMBOL, &FOLLOW_OPTION_SYMBOL_in_revoke_statement6507);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPTION_SYMBOL1312_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPTION_SYMBOL1312));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPTION_SYMBOL1312_tree);
            	        }

            	        FROM_SYMBOL1313 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_revoke_statement6512);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FROM_SYMBOL1313_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL1313));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL1313_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_user_list_in_revoke_statement6514);
            	        user_list1314=user_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user_list1314.tree);

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:1212:5: {...}? => PROXY_SYMBOL ON_SYMBOL user FROM_SYMBOL user_list
            	    {
            	        if ( !((SERVER_VERSION >= 50500 && LA(1) == PROXY_SYMBOL)) )
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
            	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50500 && LA(1) == PROXY_SYMBOL";
            	                EXCEPTION->ruleName	 = (void *)"revoke_statement";


            	        }

            	        PROXY_SYMBOL1315 = (pANTLR3_COMMON_TOKEN) MATCHT(PROXY_SYMBOL, &FOLLOW_PROXY_SYMBOL_in_revoke_statement6524);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PROXY_SYMBOL1315_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PROXY_SYMBOL1315));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PROXY_SYMBOL1315_tree);
            	        }

            	        ON_SYMBOL1316 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_revoke_statement6526);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ON_SYMBOL1316_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL1316));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL1316_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_user_in_revoke_statement6528);
            	        user1317=user(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user1317.tree);

            	        FROM_SYMBOL1318 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_revoke_statement6530);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FROM_SYMBOL1318_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL1318));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL1318_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_user_list_in_revoke_statement6532);
            	        user_list1319=user_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user_list1319.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulerevoke_statementEx; /* Prevent compiler warnings */
    rulerevoke_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end revoke_statement */

/**
 * $ANTLR start set_password
 * MySQL.g:1216:1: set_password : SET_SYMBOL PASSWORD_SYMBOL ( FOR_SYMBOL user )? equal ( PASSWORD_SYMBOL OPEN_PAR_SYMBOL string_literal CLOSE_PAR_SYMBOL | OLD_PASSWORD_SYMBOL OPEN_PAR_SYMBOL string_literal CLOSE_PAR_SYMBOL | string_literal ) ;
 */
static MySQLParser_set_password_return
set_password(pMySQLParser ctx)
{
    MySQLParser_set_password_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    SET_SYMBOL1320;
    pANTLR3_COMMON_TOKEN    PASSWORD_SYMBOL1321;
    pANTLR3_COMMON_TOKEN    FOR_SYMBOL1322;
    pANTLR3_COMMON_TOKEN    PASSWORD_SYMBOL1325;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1326;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1328;
    pANTLR3_COMMON_TOKEN    OLD_PASSWORD_SYMBOL1329;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1330;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1332;
    MySQLParser_user_return user1323;
    #undef	RETURN_TYPE_user1323
    #define	RETURN_TYPE_user1323 MySQLParser_user_return

    MySQLParser_equal_return equal1324;
    #undef	RETURN_TYPE_equal1324
    #define	RETURN_TYPE_equal1324 MySQLParser_equal_return

    MySQLParser_string_literal_return string_literal1327;
    #undef	RETURN_TYPE_string_literal1327
    #define	RETURN_TYPE_string_literal1327 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal1331;
    #undef	RETURN_TYPE_string_literal1331
    #define	RETURN_TYPE_string_literal1331 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal1333;
    #undef	RETURN_TYPE_string_literal1333
    #define	RETURN_TYPE_string_literal1333 MySQLParser_string_literal_return

    pANTLR3_BASE_TREE SET_SYMBOL1320_tree;
    pANTLR3_BASE_TREE PASSWORD_SYMBOL1321_tree;
    pANTLR3_BASE_TREE FOR_SYMBOL1322_tree;
    pANTLR3_BASE_TREE PASSWORD_SYMBOL1325_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1326_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1328_tree;
    pANTLR3_BASE_TREE OLD_PASSWORD_SYMBOL1329_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1330_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1332_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SET_SYMBOL1320       = NULL;
    PASSWORD_SYMBOL1321       = NULL;
    FOR_SYMBOL1322       = NULL;
    PASSWORD_SYMBOL1325       = NULL;
    OPEN_PAR_SYMBOL1326       = NULL;
    CLOSE_PAR_SYMBOL1328       = NULL;
    OLD_PASSWORD_SYMBOL1329       = NULL;
    OPEN_PAR_SYMBOL1330       = NULL;
    CLOSE_PAR_SYMBOL1332       = NULL;
    user1323.tree = NULL;

    equal1324.tree = NULL;

    string_literal1327.tree = NULL;

    string_literal1331.tree = NULL;

    string_literal1333.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SET_SYMBOL1320_tree   = NULL;
    PASSWORD_SYMBOL1321_tree   = NULL;
    FOR_SYMBOL1322_tree   = NULL;
    PASSWORD_SYMBOL1325_tree   = NULL;
    OPEN_PAR_SYMBOL1326_tree   = NULL;
    CLOSE_PAR_SYMBOL1328_tree   = NULL;
    OLD_PASSWORD_SYMBOL1329_tree   = NULL;
    OPEN_PAR_SYMBOL1330_tree   = NULL;
    CLOSE_PAR_SYMBOL1332_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1216:13: ( SET_SYMBOL PASSWORD_SYMBOL ( FOR_SYMBOL user )? equal ( PASSWORD_SYMBOL OPEN_PAR_SYMBOL string_literal CLOSE_PAR_SYMBOL | OLD_PASSWORD_SYMBOL OPEN_PAR_SYMBOL string_literal CLOSE_PAR_SYMBOL | string_literal ) )
        // MySQL.g:1217:2: SET_SYMBOL PASSWORD_SYMBOL ( FOR_SYMBOL user )? equal ( PASSWORD_SYMBOL OPEN_PAR_SYMBOL string_literal CLOSE_PAR_SYMBOL | OLD_PASSWORD_SYMBOL OPEN_PAR_SYMBOL string_literal CLOSE_PAR_SYMBOL | string_literal )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            SET_SYMBOL1320 = (pANTLR3_COMMON_TOKEN) MATCHT(SET_SYMBOL, &FOLLOW_SET_SYMBOL_in_set_password6544);
            if  (HASEXCEPTION())
            {
                goto ruleset_passwordEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SET_SYMBOL1320_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SET_SYMBOL1320));
            ADAPTOR->addChild(ADAPTOR, root_0, SET_SYMBOL1320_tree);
            }

            PASSWORD_SYMBOL1321 = (pANTLR3_COMMON_TOKEN) MATCHT(PASSWORD_SYMBOL, &FOLLOW_PASSWORD_SYMBOL_in_set_password6546);
            if  (HASEXCEPTION())
            {
                goto ruleset_passwordEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            PASSWORD_SYMBOL1321_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PASSWORD_SYMBOL1321));
            ADAPTOR->addChild(ADAPTOR, root_0, PASSWORD_SYMBOL1321_tree);
            }

            // MySQL.g:1217:29: ( FOR_SYMBOL user )?
            {
                int alt411=2;
                switch ( LA(1) )
                {
                    case FOR_SYMBOL:
                    	{
                    		alt411=1;
                    	}
                        break;
                }

                switch (alt411)
                {
            	case 1:
            	    // MySQL.g:1217:30: FOR_SYMBOL user
            	    {
            	        FOR_SYMBOL1322 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_set_password6549);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_passwordEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FOR_SYMBOL1322_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL1322));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL1322_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_user_in_set_password6551);
            	        user1323=user(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_passwordEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user1323.tree);

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_equal_in_set_password6555);
            equal1324=equal(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleset_passwordEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, equal1324.tree);

            // MySQL.g:1218:2: ( PASSWORD_SYMBOL OPEN_PAR_SYMBOL string_literal CLOSE_PAR_SYMBOL | OLD_PASSWORD_SYMBOL OPEN_PAR_SYMBOL string_literal CLOSE_PAR_SYMBOL | string_literal )
            {
                int alt412=3;
                {
                    int LA412_0 = LA(1);
                    if ( (LA412_0 == PASSWORD_SYMBOL))
                    {
                        alt412=1;
                    }
                    else if ( (LA412_0 == OLD_PASSWORD_SYMBOL))
                    {
                        alt412=2;
                    }
                    else if ( (LA412_0 == NCHAR_TEXT || LA412_0 == SINGLE_QUOTED_TEXT || LA412_0 == UNDERSCORE_CHARSET))
                    {
                        alt412=3;
                    }
                    else if ( ((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA412_0 == DOUBLE_QUOTED_TEXT))
                    {
                        alt412=3;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 412;
                        EXCEPTION->state        = 0;


                        goto ruleset_passwordEx;

                    }
                }
                switch (alt412)
                {
            	case 1:
            	    // MySQL.g:1219:3: PASSWORD_SYMBOL OPEN_PAR_SYMBOL string_literal CLOSE_PAR_SYMBOL
            	    {
            	        PASSWORD_SYMBOL1325 = (pANTLR3_COMMON_TOKEN) MATCHT(PASSWORD_SYMBOL, &FOLLOW_PASSWORD_SYMBOL_in_set_password6562);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_passwordEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PASSWORD_SYMBOL1325_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PASSWORD_SYMBOL1325));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PASSWORD_SYMBOL1325_tree);
            	        }

            	        OPEN_PAR_SYMBOL1326 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_set_password6564);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_passwordEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPEN_PAR_SYMBOL1326_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1326));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1326_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_string_literal_in_set_password6566);
            	        string_literal1327=string_literal(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_passwordEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1327.tree);

            	        CLOSE_PAR_SYMBOL1328 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_set_password6568);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_passwordEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CLOSE_PAR_SYMBOL1328_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1328));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1328_tree);
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1220:5: OLD_PASSWORD_SYMBOL OPEN_PAR_SYMBOL string_literal CLOSE_PAR_SYMBOL
            	    {
            	        OLD_PASSWORD_SYMBOL1329 = (pANTLR3_COMMON_TOKEN) MATCHT(OLD_PASSWORD_SYMBOL, &FOLLOW_OLD_PASSWORD_SYMBOL_in_set_password6574);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_passwordEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OLD_PASSWORD_SYMBOL1329_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OLD_PASSWORD_SYMBOL1329));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OLD_PASSWORD_SYMBOL1329_tree);
            	        }

            	        OPEN_PAR_SYMBOL1330 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_set_password6576);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_passwordEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPEN_PAR_SYMBOL1330_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1330));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1330_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_string_literal_in_set_password6578);
            	        string_literal1331=string_literal(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_passwordEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1331.tree);

            	        CLOSE_PAR_SYMBOL1332 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_set_password6580);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_passwordEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CLOSE_PAR_SYMBOL1332_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1332));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1332_tree);
            	        }

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:1221:5: string_literal
            	    {
            	        FOLLOWPUSH(FOLLOW_string_literal_in_set_password6586);
            	        string_literal1333=string_literal(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_passwordEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1333.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleset_passwordEx; /* Prevent compiler warnings */
    ruleset_passwordEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end set_password */

/**
 * $ANTLR start grant_object_type
 * MySQL.g:1225:1: grant_object_type : ( TABLE_SYMBOL | FUNCTION_SYMBOL | PROCEDURE_SYMBOL ) ;
 */
static MySQLParser_grant_object_type_return
grant_object_type(pMySQLParser ctx)
{
    MySQLParser_grant_object_type_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set1334;

    pANTLR3_BASE_TREE set1334_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1334       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1334_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1225:18: ( ( TABLE_SYMBOL | FUNCTION_SYMBOL | PROCEDURE_SYMBOL ) )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set1334=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == FUNCTION_SYMBOL || LA(1) == PROCEDURE_SYMBOL || LA(1) == TABLE_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1334))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto rulegrant_object_typeEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto rulegrant_object_typeEx; /* Prevent compiler warnings */
    rulegrant_object_typeEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end grant_object_type */

/**
 * $ANTLR start privilege_type
 * MySQL.g:1229:1: privilege_type : ( ALL_SYMBOL ( PRIVILEGES_SYMBOL )? | ALTER_SYMBOL ( ROUTINE_SYMBOL )? | CREATE_SYMBOL ( ROUTINE_SYMBOL | TABLESPACE_SYMBOL | TEMPORARY_SYMBOL TABLES_SYMBOL | USER_SYMBOL | VIEW_SYMBOL )? | DELETE_SYMBOL | DROP_SYMBOL | EVENT_SYMBOL | EXECUTE_SYMBOL | FILE_SYMBOL | GRANT_SYMBOL OPTION_SYMBOL | INDEX_SYMBOL | INSERT_SYMBOL | LOCK_SYMBOL TABLES_SYMBOL | PROCESS_SYMBOL | PROXY_SYMBOL | REFERENCES_SYMBOL | RELOAD_SYMBOL | REPLICATION_SYMBOL ( CLIENT_SYMBOL | SLAVE_SYMBOL ) | SELECT_SYMBOL | SHOW_SYMBOL DATABASES_SYMBOL | SHOW_SYMBOL VIEW_SYMBOL | SHUTDOWN_SYMBOL | SUPER_SYMBOL | TRIGGER_SYMBOL | UPDATE_SYMBOL | USAGE_SYMBOL );
 */
static MySQLParser_privilege_type_return
privilege_type(pMySQLParser ctx)
{
    MySQLParser_privilege_type_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    ALL_SYMBOL1335;
    pANTLR3_COMMON_TOKEN    PRIVILEGES_SYMBOL1336;
    pANTLR3_COMMON_TOKEN    ALTER_SYMBOL1337;
    pANTLR3_COMMON_TOKEN    ROUTINE_SYMBOL1338;
    pANTLR3_COMMON_TOKEN    CREATE_SYMBOL1339;
    pANTLR3_COMMON_TOKEN    ROUTINE_SYMBOL1340;
    pANTLR3_COMMON_TOKEN    TABLESPACE_SYMBOL1341;
    pANTLR3_COMMON_TOKEN    TEMPORARY_SYMBOL1342;
    pANTLR3_COMMON_TOKEN    TABLES_SYMBOL1343;
    pANTLR3_COMMON_TOKEN    USER_SYMBOL1344;
    pANTLR3_COMMON_TOKEN    VIEW_SYMBOL1345;
    pANTLR3_COMMON_TOKEN    DELETE_SYMBOL1346;
    pANTLR3_COMMON_TOKEN    DROP_SYMBOL1347;
    pANTLR3_COMMON_TOKEN    EVENT_SYMBOL1348;
    pANTLR3_COMMON_TOKEN    EXECUTE_SYMBOL1349;
    pANTLR3_COMMON_TOKEN    FILE_SYMBOL1350;
    pANTLR3_COMMON_TOKEN    GRANT_SYMBOL1351;
    pANTLR3_COMMON_TOKEN    OPTION_SYMBOL1352;
    pANTLR3_COMMON_TOKEN    INDEX_SYMBOL1353;
    pANTLR3_COMMON_TOKEN    INSERT_SYMBOL1354;
    pANTLR3_COMMON_TOKEN    LOCK_SYMBOL1355;
    pANTLR3_COMMON_TOKEN    TABLES_SYMBOL1356;
    pANTLR3_COMMON_TOKEN    PROCESS_SYMBOL1357;
    pANTLR3_COMMON_TOKEN    PROXY_SYMBOL1358;
    pANTLR3_COMMON_TOKEN    REFERENCES_SYMBOL1359;
    pANTLR3_COMMON_TOKEN    RELOAD_SYMBOL1360;
    pANTLR3_COMMON_TOKEN    REPLICATION_SYMBOL1361;
    pANTLR3_COMMON_TOKEN    set1362;
    pANTLR3_COMMON_TOKEN    SELECT_SYMBOL1363;
    pANTLR3_COMMON_TOKEN    SHOW_SYMBOL1364;
    pANTLR3_COMMON_TOKEN    DATABASES_SYMBOL1365;
    pANTLR3_COMMON_TOKEN    SHOW_SYMBOL1366;
    pANTLR3_COMMON_TOKEN    VIEW_SYMBOL1367;
    pANTLR3_COMMON_TOKEN    SHUTDOWN_SYMBOL1368;
    pANTLR3_COMMON_TOKEN    SUPER_SYMBOL1369;
    pANTLR3_COMMON_TOKEN    TRIGGER_SYMBOL1370;
    pANTLR3_COMMON_TOKEN    UPDATE_SYMBOL1371;
    pANTLR3_COMMON_TOKEN    USAGE_SYMBOL1372;

    pANTLR3_BASE_TREE ALL_SYMBOL1335_tree;
    pANTLR3_BASE_TREE PRIVILEGES_SYMBOL1336_tree;
    pANTLR3_BASE_TREE ALTER_SYMBOL1337_tree;
    pANTLR3_BASE_TREE ROUTINE_SYMBOL1338_tree;
    pANTLR3_BASE_TREE CREATE_SYMBOL1339_tree;
    pANTLR3_BASE_TREE ROUTINE_SYMBOL1340_tree;
    pANTLR3_BASE_TREE TABLESPACE_SYMBOL1341_tree;
    pANTLR3_BASE_TREE TEMPORARY_SYMBOL1342_tree;
    pANTLR3_BASE_TREE TABLES_SYMBOL1343_tree;
    pANTLR3_BASE_TREE USER_SYMBOL1344_tree;
    pANTLR3_BASE_TREE VIEW_SYMBOL1345_tree;
    pANTLR3_BASE_TREE DELETE_SYMBOL1346_tree;
    pANTLR3_BASE_TREE DROP_SYMBOL1347_tree;
    pANTLR3_BASE_TREE EVENT_SYMBOL1348_tree;
    pANTLR3_BASE_TREE EXECUTE_SYMBOL1349_tree;
    pANTLR3_BASE_TREE FILE_SYMBOL1350_tree;
    pANTLR3_BASE_TREE GRANT_SYMBOL1351_tree;
    pANTLR3_BASE_TREE OPTION_SYMBOL1352_tree;
    pANTLR3_BASE_TREE INDEX_SYMBOL1353_tree;
    pANTLR3_BASE_TREE INSERT_SYMBOL1354_tree;
    pANTLR3_BASE_TREE LOCK_SYMBOL1355_tree;
    pANTLR3_BASE_TREE TABLES_SYMBOL1356_tree;
    pANTLR3_BASE_TREE PROCESS_SYMBOL1357_tree;
    pANTLR3_BASE_TREE PROXY_SYMBOL1358_tree;
    pANTLR3_BASE_TREE REFERENCES_SYMBOL1359_tree;
    pANTLR3_BASE_TREE RELOAD_SYMBOL1360_tree;
    pANTLR3_BASE_TREE REPLICATION_SYMBOL1361_tree;
    pANTLR3_BASE_TREE set1362_tree;
    pANTLR3_BASE_TREE SELECT_SYMBOL1363_tree;
    pANTLR3_BASE_TREE SHOW_SYMBOL1364_tree;
    pANTLR3_BASE_TREE DATABASES_SYMBOL1365_tree;
    pANTLR3_BASE_TREE SHOW_SYMBOL1366_tree;
    pANTLR3_BASE_TREE VIEW_SYMBOL1367_tree;
    pANTLR3_BASE_TREE SHUTDOWN_SYMBOL1368_tree;
    pANTLR3_BASE_TREE SUPER_SYMBOL1369_tree;
    pANTLR3_BASE_TREE TRIGGER_SYMBOL1370_tree;
    pANTLR3_BASE_TREE UPDATE_SYMBOL1371_tree;
    pANTLR3_BASE_TREE USAGE_SYMBOL1372_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ALL_SYMBOL1335       = NULL;
    PRIVILEGES_SYMBOL1336       = NULL;
    ALTER_SYMBOL1337       = NULL;
    ROUTINE_SYMBOL1338       = NULL;
    CREATE_SYMBOL1339       = NULL;
    ROUTINE_SYMBOL1340       = NULL;
    TABLESPACE_SYMBOL1341       = NULL;
    TEMPORARY_SYMBOL1342       = NULL;
    TABLES_SYMBOL1343       = NULL;
    USER_SYMBOL1344       = NULL;
    VIEW_SYMBOL1345       = NULL;
    DELETE_SYMBOL1346       = NULL;
    DROP_SYMBOL1347       = NULL;
    EVENT_SYMBOL1348       = NULL;
    EXECUTE_SYMBOL1349       = NULL;
    FILE_SYMBOL1350       = NULL;
    GRANT_SYMBOL1351       = NULL;
    OPTION_SYMBOL1352       = NULL;
    INDEX_SYMBOL1353       = NULL;
    INSERT_SYMBOL1354       = NULL;
    LOCK_SYMBOL1355       = NULL;
    TABLES_SYMBOL1356       = NULL;
    PROCESS_SYMBOL1357       = NULL;
    PROXY_SYMBOL1358       = NULL;
    REFERENCES_SYMBOL1359       = NULL;
    RELOAD_SYMBOL1360       = NULL;
    REPLICATION_SYMBOL1361       = NULL;
    set1362       = NULL;
    SELECT_SYMBOL1363       = NULL;
    SHOW_SYMBOL1364       = NULL;
    DATABASES_SYMBOL1365       = NULL;
    SHOW_SYMBOL1366       = NULL;
    VIEW_SYMBOL1367       = NULL;
    SHUTDOWN_SYMBOL1368       = NULL;
    SUPER_SYMBOL1369       = NULL;
    TRIGGER_SYMBOL1370       = NULL;
    UPDATE_SYMBOL1371       = NULL;
    USAGE_SYMBOL1372       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ALL_SYMBOL1335_tree   = NULL;
    PRIVILEGES_SYMBOL1336_tree   = NULL;
    ALTER_SYMBOL1337_tree   = NULL;
    ROUTINE_SYMBOL1338_tree   = NULL;
    CREATE_SYMBOL1339_tree   = NULL;
    ROUTINE_SYMBOL1340_tree   = NULL;
    TABLESPACE_SYMBOL1341_tree   = NULL;
    TEMPORARY_SYMBOL1342_tree   = NULL;
    TABLES_SYMBOL1343_tree   = NULL;
    USER_SYMBOL1344_tree   = NULL;
    VIEW_SYMBOL1345_tree   = NULL;
    DELETE_SYMBOL1346_tree   = NULL;
    DROP_SYMBOL1347_tree   = NULL;
    EVENT_SYMBOL1348_tree   = NULL;
    EXECUTE_SYMBOL1349_tree   = NULL;
    FILE_SYMBOL1350_tree   = NULL;
    GRANT_SYMBOL1351_tree   = NULL;
    OPTION_SYMBOL1352_tree   = NULL;
    INDEX_SYMBOL1353_tree   = NULL;
    INSERT_SYMBOL1354_tree   = NULL;
    LOCK_SYMBOL1355_tree   = NULL;
    TABLES_SYMBOL1356_tree   = NULL;
    PROCESS_SYMBOL1357_tree   = NULL;
    PROXY_SYMBOL1358_tree   = NULL;
    REFERENCES_SYMBOL1359_tree   = NULL;
    RELOAD_SYMBOL1360_tree   = NULL;
    REPLICATION_SYMBOL1361_tree   = NULL;
    set1362_tree   = NULL;
    SELECT_SYMBOL1363_tree   = NULL;
    SHOW_SYMBOL1364_tree   = NULL;
    DATABASES_SYMBOL1365_tree   = NULL;
    SHOW_SYMBOL1366_tree   = NULL;
    VIEW_SYMBOL1367_tree   = NULL;
    SHUTDOWN_SYMBOL1368_tree   = NULL;
    SUPER_SYMBOL1369_tree   = NULL;
    TRIGGER_SYMBOL1370_tree   = NULL;
    UPDATE_SYMBOL1371_tree   = NULL;
    USAGE_SYMBOL1372_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1229:15: ( ALL_SYMBOL ( PRIVILEGES_SYMBOL )? | ALTER_SYMBOL ( ROUTINE_SYMBOL )? | CREATE_SYMBOL ( ROUTINE_SYMBOL | TABLESPACE_SYMBOL | TEMPORARY_SYMBOL TABLES_SYMBOL | USER_SYMBOL | VIEW_SYMBOL )? | DELETE_SYMBOL | DROP_SYMBOL | EVENT_SYMBOL | EXECUTE_SYMBOL | FILE_SYMBOL | GRANT_SYMBOL OPTION_SYMBOL | INDEX_SYMBOL | INSERT_SYMBOL | LOCK_SYMBOL TABLES_SYMBOL | PROCESS_SYMBOL | PROXY_SYMBOL | REFERENCES_SYMBOL | RELOAD_SYMBOL | REPLICATION_SYMBOL ( CLIENT_SYMBOL | SLAVE_SYMBOL ) | SELECT_SYMBOL | SHOW_SYMBOL DATABASES_SYMBOL | SHOW_SYMBOL VIEW_SYMBOL | SHUTDOWN_SYMBOL | SUPER_SYMBOL | TRIGGER_SYMBOL | UPDATE_SYMBOL | USAGE_SYMBOL )

            ANTLR3_UINT32 alt416;

            alt416=25;

            switch ( LA(1) )
            {
            case ALL_SYMBOL:
            	{
            		alt416=1;
            	}
                break;
            case ALTER_SYMBOL:
            	{
            		alt416=2;
            	}
                break;
            case CREATE_SYMBOL:
            	{
            		alt416=3;
            	}
                break;
            case DELETE_SYMBOL:
            	{
            		alt416=4;
            	}
                break;
            case DROP_SYMBOL:
            	{
            		alt416=5;
            	}
                break;
            case EVENT_SYMBOL:
            	{
            		alt416=6;
            	}
                break;
            case EXECUTE_SYMBOL:
            	{
            		alt416=7;
            	}
                break;
            case FILE_SYMBOL:
            	{
            		alt416=8;
            	}
                break;
            case GRANT_SYMBOL:
            	{
            		alt416=9;
            	}
                break;
            case INDEX_SYMBOL:
            	{
            		alt416=10;
            	}
                break;
            case INSERT_SYMBOL:
            	{
            		alt416=11;
            	}
                break;
            case LOCK_SYMBOL:
            	{
            		alt416=12;
            	}
                break;
            case PROCESS_SYMBOL:
            	{
            		alt416=13;
            	}
                break;
            case PROXY_SYMBOL:
            	{
            		alt416=14;
            	}
                break;
            case REFERENCES_SYMBOL:
            	{
            		alt416=15;
            	}
                break;
            case RELOAD_SYMBOL:
            	{
            		alt416=16;
            	}
                break;
            case REPLICATION_SYMBOL:
            	{
            		alt416=17;
            	}
                break;
            case SELECT_SYMBOL:
            	{
            		alt416=18;
            	}
                break;
            case SHOW_SYMBOL:
            	{
            		switch ( LA(2) )
            		{
            		case DATABASES_SYMBOL:
            			{
            				alt416=19;
            			}
            		    break;
            		case VIEW_SYMBOL:
            			{
            				alt416=20;
            			}
            		    break;

            		default:
            		    if (BACKTRACKING>0)
            		    {
            		        FAILEDFLAG = ANTLR3_TRUE;
            		        return retval;
            		    }

            		    CONSTRUCTEX();
            		    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            		    EXCEPTION->message      = (void *)"";
            		    EXCEPTION->decisionNum  = 416;
            		    EXCEPTION->state        = 19;


            		    goto ruleprivilege_typeEx;

            		}

            	}
                break;
            case SHUTDOWN_SYMBOL:
            	{
            		alt416=21;
            	}
                break;
            case SUPER_SYMBOL:
            	{
            		alt416=22;
            	}
                break;
            case TRIGGER_SYMBOL:
            	{
            		alt416=23;
            	}
                break;
            case UPDATE_SYMBOL:
            	{
            		alt416=24;
            	}
                break;
            case USAGE_SYMBOL:
            	{
            		alt416=25;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 416;
                EXCEPTION->state        = 0;


                goto ruleprivilege_typeEx;

            }

            switch (alt416)
            {
        	case 1:
        	    // MySQL.g:1230:2: ALL_SYMBOL ( PRIVILEGES_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ALL_SYMBOL1335 = (pANTLR3_COMMON_TOKEN) MATCHT(ALL_SYMBOL, &FOLLOW_ALL_SYMBOL_in_privilege_type6617);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ALL_SYMBOL1335_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALL_SYMBOL1335));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ALL_SYMBOL1335_tree);
        	        }

        	        // MySQL.g:1230:13: ( PRIVILEGES_SYMBOL )?
        	        {
        	            int alt413=2;
        	            switch ( LA(1) )
        	            {
        	                case PRIVILEGES_SYMBOL:
        	                	{
        	                		alt413=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt413)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1230:13: PRIVILEGES_SYMBOL
        	        	    {
        	        	        PRIVILEGES_SYMBOL1336 = (pANTLR3_COMMON_TOKEN) MATCHT(PRIVILEGES_SYMBOL, &FOLLOW_PRIVILEGES_SYMBOL_in_privilege_type6619);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprivilege_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        PRIVILEGES_SYMBOL1336_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PRIVILEGES_SYMBOL1336));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, PRIVILEGES_SYMBOL1336_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1231:4: ALTER_SYMBOL ( ROUTINE_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ALTER_SYMBOL1337 = (pANTLR3_COMMON_TOKEN) MATCHT(ALTER_SYMBOL, &FOLLOW_ALTER_SYMBOL_in_privilege_type6625);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ALTER_SYMBOL1337_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALTER_SYMBOL1337));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ALTER_SYMBOL1337_tree);
        	        }

        	        // MySQL.g:1231:17: ( ROUTINE_SYMBOL )?
        	        {
        	            int alt414=2;
        	            switch ( LA(1) )
        	            {
        	                case ROUTINE_SYMBOL:
        	                	{
        	                		alt414=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt414)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1231:17: ROUTINE_SYMBOL
        	        	    {
        	        	        ROUTINE_SYMBOL1338 = (pANTLR3_COMMON_TOKEN) MATCHT(ROUTINE_SYMBOL, &FOLLOW_ROUTINE_SYMBOL_in_privilege_type6627);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprivilege_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        ROUTINE_SYMBOL1338_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ROUTINE_SYMBOL1338));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, ROUTINE_SYMBOL1338_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1232:4: CREATE_SYMBOL ( ROUTINE_SYMBOL | TABLESPACE_SYMBOL | TEMPORARY_SYMBOL TABLES_SYMBOL | USER_SYMBOL | VIEW_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CREATE_SYMBOL1339 = (pANTLR3_COMMON_TOKEN) MATCHT(CREATE_SYMBOL, &FOLLOW_CREATE_SYMBOL_in_privilege_type6633);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CREATE_SYMBOL1339_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CREATE_SYMBOL1339));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CREATE_SYMBOL1339_tree);
        	        }

        	        // MySQL.g:1232:18: ( ROUTINE_SYMBOL | TABLESPACE_SYMBOL | TEMPORARY_SYMBOL TABLES_SYMBOL | USER_SYMBOL | VIEW_SYMBOL )?
        	        {
        	            int alt415=6;
        	            switch ( LA(1) )
        	            {
        	                case ROUTINE_SYMBOL:
        	                	{
        	                		alt415=1;
        	                	}
        	                    break;
        	                case TABLESPACE_SYMBOL:
        	                	{
        	                		alt415=2;
        	                	}
        	                    break;
        	                case TEMPORARY_SYMBOL:
        	                	{
        	                		alt415=3;
        	                	}
        	                    break;
        	                case USER_SYMBOL:
        	                	{
        	                		alt415=4;
        	                	}
        	                    break;
        	                case VIEW_SYMBOL:
        	                	{
        	                		alt415=5;
        	                	}
        	                    break;
        	            }

        	            switch (alt415)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1232:19: ROUTINE_SYMBOL
        	        	    {
        	        	        ROUTINE_SYMBOL1340 = (pANTLR3_COMMON_TOKEN) MATCHT(ROUTINE_SYMBOL, &FOLLOW_ROUTINE_SYMBOL_in_privilege_type6636);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprivilege_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        ROUTINE_SYMBOL1340_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ROUTINE_SYMBOL1340));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, ROUTINE_SYMBOL1340_tree);
        	        	        }

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:1232:36: TABLESPACE_SYMBOL
        	        	    {
        	        	        TABLESPACE_SYMBOL1341 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLESPACE_SYMBOL, &FOLLOW_TABLESPACE_SYMBOL_in_privilege_type6640);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprivilege_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        TABLESPACE_SYMBOL1341_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLESPACE_SYMBOL1341));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLESPACE_SYMBOL1341_tree);
        	        	        }

        	        	    }
        	        	    break;
        	        	case 3:
        	        	    // MySQL.g:1232:56: TEMPORARY_SYMBOL TABLES_SYMBOL
        	        	    {
        	        	        TEMPORARY_SYMBOL1342 = (pANTLR3_COMMON_TOKEN) MATCHT(TEMPORARY_SYMBOL, &FOLLOW_TEMPORARY_SYMBOL_in_privilege_type6644);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprivilege_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        TEMPORARY_SYMBOL1342_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TEMPORARY_SYMBOL1342));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, TEMPORARY_SYMBOL1342_tree);
        	        	        }

        	        	        TABLES_SYMBOL1343 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLES_SYMBOL, &FOLLOW_TABLES_SYMBOL_in_privilege_type6646);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprivilege_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        TABLES_SYMBOL1343_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLES_SYMBOL1343));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLES_SYMBOL1343_tree);
        	        	        }

        	        	    }
        	        	    break;
        	        	case 4:
        	        	    // MySQL.g:1232:89: USER_SYMBOL
        	        	    {
        	        	        USER_SYMBOL1344 = (pANTLR3_COMMON_TOKEN) MATCHT(USER_SYMBOL, &FOLLOW_USER_SYMBOL_in_privilege_type6650);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprivilege_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        USER_SYMBOL1344_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USER_SYMBOL1344));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, USER_SYMBOL1344_tree);
        	        	        }

        	        	    }
        	        	    break;
        	        	case 5:
        	        	    // MySQL.g:1232:103: VIEW_SYMBOL
        	        	    {
        	        	        VIEW_SYMBOL1345 = (pANTLR3_COMMON_TOKEN) MATCHT(VIEW_SYMBOL, &FOLLOW_VIEW_SYMBOL_in_privilege_type6654);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprivilege_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        VIEW_SYMBOL1345_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VIEW_SYMBOL1345));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, VIEW_SYMBOL1345_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1233:4: DELETE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DELETE_SYMBOL1346 = (pANTLR3_COMMON_TOKEN) MATCHT(DELETE_SYMBOL, &FOLLOW_DELETE_SYMBOL_in_privilege_type6661);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DELETE_SYMBOL1346_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DELETE_SYMBOL1346));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DELETE_SYMBOL1346_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1234:4: DROP_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DROP_SYMBOL1347 = (pANTLR3_COMMON_TOKEN) MATCHT(DROP_SYMBOL, &FOLLOW_DROP_SYMBOL_in_privilege_type6666);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DROP_SYMBOL1347_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DROP_SYMBOL1347));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DROP_SYMBOL1347_tree);
        	        }

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:1235:4: EVENT_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        EVENT_SYMBOL1348 = (pANTLR3_COMMON_TOKEN) MATCHT(EVENT_SYMBOL, &FOLLOW_EVENT_SYMBOL_in_privilege_type6671);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EVENT_SYMBOL1348_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EVENT_SYMBOL1348));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EVENT_SYMBOL1348_tree);
        	        }

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:1236:4: EXECUTE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        EXECUTE_SYMBOL1349 = (pANTLR3_COMMON_TOKEN) MATCHT(EXECUTE_SYMBOL, &FOLLOW_EXECUTE_SYMBOL_in_privilege_type6676);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EXECUTE_SYMBOL1349_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXECUTE_SYMBOL1349));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EXECUTE_SYMBOL1349_tree);
        	        }

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:1237:4: FILE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FILE_SYMBOL1350 = (pANTLR3_COMMON_TOKEN) MATCHT(FILE_SYMBOL, &FOLLOW_FILE_SYMBOL_in_privilege_type6681);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FILE_SYMBOL1350_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FILE_SYMBOL1350));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FILE_SYMBOL1350_tree);
        	        }

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:1238:4: GRANT_SYMBOL OPTION_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        GRANT_SYMBOL1351 = (pANTLR3_COMMON_TOKEN) MATCHT(GRANT_SYMBOL, &FOLLOW_GRANT_SYMBOL_in_privilege_type6686);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        GRANT_SYMBOL1351_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GRANT_SYMBOL1351));
        	        ADAPTOR->addChild(ADAPTOR, root_0, GRANT_SYMBOL1351_tree);
        	        }

        	        OPTION_SYMBOL1352 = (pANTLR3_COMMON_TOKEN) MATCHT(OPTION_SYMBOL, &FOLLOW_OPTION_SYMBOL_in_privilege_type6688);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPTION_SYMBOL1352_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPTION_SYMBOL1352));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPTION_SYMBOL1352_tree);
        	        }

        	    }
        	    break;
        	case 10:
        	    // MySQL.g:1239:4: INDEX_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        INDEX_SYMBOL1353 = (pANTLR3_COMMON_TOKEN) MATCHT(INDEX_SYMBOL, &FOLLOW_INDEX_SYMBOL_in_privilege_type6693);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INDEX_SYMBOL1353_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INDEX_SYMBOL1353));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INDEX_SYMBOL1353_tree);
        	        }

        	    }
        	    break;
        	case 11:
        	    // MySQL.g:1240:4: INSERT_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        INSERT_SYMBOL1354 = (pANTLR3_COMMON_TOKEN) MATCHT(INSERT_SYMBOL, &FOLLOW_INSERT_SYMBOL_in_privilege_type6698);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INSERT_SYMBOL1354_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INSERT_SYMBOL1354));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INSERT_SYMBOL1354_tree);
        	        }

        	    }
        	    break;
        	case 12:
        	    // MySQL.g:1241:4: LOCK_SYMBOL TABLES_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        LOCK_SYMBOL1355 = (pANTLR3_COMMON_TOKEN) MATCHT(LOCK_SYMBOL, &FOLLOW_LOCK_SYMBOL_in_privilege_type6703);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LOCK_SYMBOL1355_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOCK_SYMBOL1355));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LOCK_SYMBOL1355_tree);
        	        }

        	        TABLES_SYMBOL1356 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLES_SYMBOL, &FOLLOW_TABLES_SYMBOL_in_privilege_type6705);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TABLES_SYMBOL1356_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLES_SYMBOL1356));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLES_SYMBOL1356_tree);
        	        }

        	    }
        	    break;
        	case 13:
        	    // MySQL.g:1242:4: PROCESS_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PROCESS_SYMBOL1357 = (pANTLR3_COMMON_TOKEN) MATCHT(PROCESS_SYMBOL, &FOLLOW_PROCESS_SYMBOL_in_privilege_type6710);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PROCESS_SYMBOL1357_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PROCESS_SYMBOL1357));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PROCESS_SYMBOL1357_tree);
        	        }

        	    }
        	    break;
        	case 14:
        	    // MySQL.g:1243:4: PROXY_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PROXY_SYMBOL1358 = (pANTLR3_COMMON_TOKEN) MATCHT(PROXY_SYMBOL, &FOLLOW_PROXY_SYMBOL_in_privilege_type6715);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PROXY_SYMBOL1358_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PROXY_SYMBOL1358));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PROXY_SYMBOL1358_tree);
        	        }

        	    }
        	    break;
        	case 15:
        	    // MySQL.g:1244:4: REFERENCES_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        REFERENCES_SYMBOL1359 = (pANTLR3_COMMON_TOKEN) MATCHT(REFERENCES_SYMBOL, &FOLLOW_REFERENCES_SYMBOL_in_privilege_type6720);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REFERENCES_SYMBOL1359_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REFERENCES_SYMBOL1359));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REFERENCES_SYMBOL1359_tree);
        	        }

        	    }
        	    break;
        	case 16:
        	    // MySQL.g:1245:4: RELOAD_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        RELOAD_SYMBOL1360 = (pANTLR3_COMMON_TOKEN) MATCHT(RELOAD_SYMBOL, &FOLLOW_RELOAD_SYMBOL_in_privilege_type6725);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        RELOAD_SYMBOL1360_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RELOAD_SYMBOL1360));
        	        ADAPTOR->addChild(ADAPTOR, root_0, RELOAD_SYMBOL1360_tree);
        	        }

        	    }
        	    break;
        	case 17:
        	    // MySQL.g:1246:4: REPLICATION_SYMBOL ( CLIENT_SYMBOL | SLAVE_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        REPLICATION_SYMBOL1361 = (pANTLR3_COMMON_TOKEN) MATCHT(REPLICATION_SYMBOL, &FOLLOW_REPLICATION_SYMBOL_in_privilege_type6730);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REPLICATION_SYMBOL1361_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPLICATION_SYMBOL1361));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REPLICATION_SYMBOL1361_tree);
        	        }

        	        set1362=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == CLIENT_SYMBOL || LA(1) == SLAVE_SYMBOL )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1362))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	            CONSTRUCTEX();
        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
        	            EXCEPTION->expectingSet = NULL;

        	            goto ruleprivilege_typeEx;
        	        }


        	    }
        	    break;
        	case 18:
        	    // MySQL.g:1247:4: SELECT_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SELECT_SYMBOL1363 = (pANTLR3_COMMON_TOKEN) MATCHT(SELECT_SYMBOL, &FOLLOW_SELECT_SYMBOL_in_privilege_type6743);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SELECT_SYMBOL1363_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SELECT_SYMBOL1363));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SELECT_SYMBOL1363_tree);
        	        }

        	    }
        	    break;
        	case 19:
        	    // MySQL.g:1248:4: SHOW_SYMBOL DATABASES_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SHOW_SYMBOL1364 = (pANTLR3_COMMON_TOKEN) MATCHT(SHOW_SYMBOL, &FOLLOW_SHOW_SYMBOL_in_privilege_type6748);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SHOW_SYMBOL1364_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SHOW_SYMBOL1364));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SHOW_SYMBOL1364_tree);
        	        }

        	        DATABASES_SYMBOL1365 = (pANTLR3_COMMON_TOKEN) MATCHT(DATABASES_SYMBOL, &FOLLOW_DATABASES_SYMBOL_in_privilege_type6750);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DATABASES_SYMBOL1365_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATABASES_SYMBOL1365));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DATABASES_SYMBOL1365_tree);
        	        }

        	    }
        	    break;
        	case 20:
        	    // MySQL.g:1249:4: SHOW_SYMBOL VIEW_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SHOW_SYMBOL1366 = (pANTLR3_COMMON_TOKEN) MATCHT(SHOW_SYMBOL, &FOLLOW_SHOW_SYMBOL_in_privilege_type6755);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SHOW_SYMBOL1366_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SHOW_SYMBOL1366));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SHOW_SYMBOL1366_tree);
        	        }

        	        VIEW_SYMBOL1367 = (pANTLR3_COMMON_TOKEN) MATCHT(VIEW_SYMBOL, &FOLLOW_VIEW_SYMBOL_in_privilege_type6757);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        VIEW_SYMBOL1367_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VIEW_SYMBOL1367));
        	        ADAPTOR->addChild(ADAPTOR, root_0, VIEW_SYMBOL1367_tree);
        	        }

        	    }
        	    break;
        	case 21:
        	    // MySQL.g:1250:4: SHUTDOWN_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SHUTDOWN_SYMBOL1368 = (pANTLR3_COMMON_TOKEN) MATCHT(SHUTDOWN_SYMBOL, &FOLLOW_SHUTDOWN_SYMBOL_in_privilege_type6762);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SHUTDOWN_SYMBOL1368_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SHUTDOWN_SYMBOL1368));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SHUTDOWN_SYMBOL1368_tree);
        	        }

        	    }
        	    break;
        	case 22:
        	    // MySQL.g:1251:4: SUPER_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SUPER_SYMBOL1369 = (pANTLR3_COMMON_TOKEN) MATCHT(SUPER_SYMBOL, &FOLLOW_SUPER_SYMBOL_in_privilege_type6767);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SUPER_SYMBOL1369_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SUPER_SYMBOL1369));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SUPER_SYMBOL1369_tree);
        	        }

        	    }
        	    break;
        	case 23:
        	    // MySQL.g:1252:4: TRIGGER_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TRIGGER_SYMBOL1370 = (pANTLR3_COMMON_TOKEN) MATCHT(TRIGGER_SYMBOL, &FOLLOW_TRIGGER_SYMBOL_in_privilege_type6772);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TRIGGER_SYMBOL1370_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TRIGGER_SYMBOL1370));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TRIGGER_SYMBOL1370_tree);
        	        }

        	    }
        	    break;
        	case 24:
        	    // MySQL.g:1253:4: UPDATE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        UPDATE_SYMBOL1371 = (pANTLR3_COMMON_TOKEN) MATCHT(UPDATE_SYMBOL, &FOLLOW_UPDATE_SYMBOL_in_privilege_type6777);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UPDATE_SYMBOL1371_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UPDATE_SYMBOL1371));
        	        ADAPTOR->addChild(ADAPTOR, root_0, UPDATE_SYMBOL1371_tree);
        	        }

        	    }
        	    break;
        	case 25:
        	    // MySQL.g:1254:4: USAGE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        USAGE_SYMBOL1372 = (pANTLR3_COMMON_TOKEN) MATCHT(USAGE_SYMBOL, &FOLLOW_USAGE_SYMBOL_in_privilege_type6782);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        USAGE_SYMBOL1372_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USAGE_SYMBOL1372));
        	        ADAPTOR->addChild(ADAPTOR, root_0, USAGE_SYMBOL1372_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleprivilege_typeEx; /* Prevent compiler warnings */
    ruleprivilege_typeEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end privilege_type */

/**
 * $ANTLR start privilege_level
 * MySQL.g:1257:1: privilege_level : ( MULT_OPERATOR ( DOT_SYMBOL MULT_OPERATOR )? | qualified_identifier_with_wildcard );
 */
static MySQLParser_privilege_level_return
privilege_level(pMySQLParser ctx)
{
    MySQLParser_privilege_level_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    MULT_OPERATOR1373;
    pANTLR3_COMMON_TOKEN    DOT_SYMBOL1374;
    pANTLR3_COMMON_TOKEN    MULT_OPERATOR1375;
    MySQLParser_qualified_identifier_with_wildcard_return qualified_identifier_with_wildcard1376;
    #undef	RETURN_TYPE_qualified_identifier_with_wildcard1376
    #define	RETURN_TYPE_qualified_identifier_with_wildcard1376 MySQLParser_qualified_identifier_with_wildcard_return

    pANTLR3_BASE_TREE MULT_OPERATOR1373_tree;
    pANTLR3_BASE_TREE DOT_SYMBOL1374_tree;
    pANTLR3_BASE_TREE MULT_OPERATOR1375_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    MULT_OPERATOR1373       = NULL;
    DOT_SYMBOL1374       = NULL;
    MULT_OPERATOR1375       = NULL;
    qualified_identifier_with_wildcard1376.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    MULT_OPERATOR1373_tree   = NULL;
    DOT_SYMBOL1374_tree   = NULL;
    MULT_OPERATOR1375_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1257:16: ( MULT_OPERATOR ( DOT_SYMBOL MULT_OPERATOR )? | qualified_identifier_with_wildcard )

            ANTLR3_UINT32 alt418;

            alt418=2;

            {
                int LA418_0 = LA(1);
                if ( (LA418_0 == MULT_OPERATOR))
                {
                    alt418=1;
                }
                else if ( (LA418_0 == BACK_TICK_QUOTED_ID || LA418_0 == IDENTIFIER))
                {
                    alt418=2;
                }
                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA418_0 == DOUBLE_QUOTED_TEXT))
                {
                    alt418=2;
                }
                else if ( (((LA418_0 >= ACTION_SYMBOL) && (LA418_0 <= ADDDATE_SYMBOL)) || ((LA418_0 >= AFTER_SYMBOL) && (LA418_0 <= ALGORITHM_SYMBOL)) || LA418_0 == ANALYZE_SYMBOL || ((LA418_0 >= ANY_SYMBOL) && (LA418_0 <= ASCII_SYMBOL)) || ((LA418_0 >= AT_SYMBOL) && (LA418_0 <= BACKUP_SYMBOL)) || LA418_0 == BEGIN_SYMBOL || LA418_0 == BINLOG_SYMBOL || LA418_0 == BIT_SYMBOL || ((LA418_0 >= BLOCK_SYMBOL) && (LA418_0 <= BOOL_SYMBOL)) || ((LA418_0 >= BTREE_SYMBOL) && (LA418_0 <= BYTE_SYMBOL)) || LA418_0 == CACHE_SYMBOL || LA418_0 == CASCADED_SYMBOL || ((LA418_0 >= CATALOG_NAME_SYMBOL) && (LA418_0 <= CHANGED_SYMBOL)) || LA418_0 == CHARSET_SYMBOL || LA418_0 == CHECKSUM_SYMBOL || ((LA418_0 >= CIPHER_SYMBOL) && (LA418_0 <= CLIENT_SYMBOL)) || ((LA418_0 >= CLOSE_SYMBOL) && (LA418_0 <= CODE_SYMBOL)) || LA418_0 == COLLATION_SYMBOL || ((LA418_0 >= COLUMNS_SYMBOL) && (LA418_0 <= COLUMN_NAME_SYMBOL)) || ((LA418_0 >= COMMENT_SYMBOL) && (LA418_0 <= COMPRESSED_SYMBOL)) || LA418_0 == CONCURRENT_SYMBOL || ((LA418_0 >= CONNECTION_SYMBOL) && (LA418_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA418_0 >= CONTAINS_SYMBOL) && (LA418_0 <= CONTEXT_SYMBOL)) || LA418_0 == CONTRIBUTORS_SYMBOL || LA418_0 == CPU_SYMBOL || LA418_0 == CUBE_SYMBOL || LA418_0 == CURRENT_SYMBOL || LA418_0 == CURSOR_NAME_SYMBOL || ((LA418_0 >= DATAFILE_SYMBOL) && (LA418_0 <= DATETIME_SYMBOL)) || LA418_0 == DATE_SYMBOL || ((LA418_0 >= DAY_SYMBOL) && (LA418_0 <= DEALLOCATE_SYMBOL)) || LA418_0 == DEFAULT_AUTH_SYMBOL || LA418_0 == DEFINER_SYMBOL || LA418_0 == DELAY_KEY_WRITE_SYMBOL || LA418_0 == DES_KEY_FILE_SYMBOL || LA418_0 == DIAGNOSTICS_SYMBOL || ((LA418_0 >= DIRECTORY_SYMBOL) && (LA418_0 <= DISK_SYMBOL)) || LA418_0 == DO_SYMBOL || ((LA418_0 >= DUMPFILE_SYMBOL) && (LA418_0 <= DYNAMIC_SYMBOL)) || LA418_0 == ENABLE_SYMBOL || LA418_0 == ENDS_SYMBOL || ((LA418_0 >= END_SYMBOL) && (LA418_0 <= ENUM_SYMBOL)) || ((LA418_0 >= ERRORS_SYMBOL) && (LA418_0 <= ERROR_SYMBOL)) || ((LA418_0 >= ESCAPE_SYMBOL) && (LA418_0 <= EVERY_SYMBOL)) || LA418_0 == EXECUTE_SYMBOL || LA418_0 == EXPANSION_SYMBOL || LA418_0 == EXPORT_SYMBOL || ((LA418_0 >= EXTENDED_SYMBOL) && (LA418_0 <= EXTENT_SIZE_SYMBOL)) || ((LA418_0 >= FAST_SYMBOL) && (LA418_0 <= FAULTS_SYMBOL)) || ((LA418_0 >= FILE_SYMBOL) && (LA418_0 <= FIXED_SYMBOL)) || LA418_0 == FLUSH_SYMBOL || LA418_0 == FORMAT_SYMBOL || LA418_0 == FOUND_SYMBOL || LA418_0 == FULL_SYMBOL || ((LA418_0 >= FUNCTION_SYMBOL) && (LA418_0 <= GET_FORMAT_SYMBOL)) || ((LA418_0 >= GLOBAL_SYMBOL) && (LA418_0 <= GRANTS_SYMBOL)) || ((LA418_0 >= HANDLER_SYMBOL) && (LA418_0 <= HASH_SYMBOL)) || LA418_0 == HELP_SYMBOL || ((LA418_0 >= HOSTS_SYMBOL) && (LA418_0 <= HOST_SYMBOL)) || ((LA418_0 >= HOUR_SYMBOL) && (LA418_0 <= IDENTIFIED_SYMBOL)) || LA418_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA418_0 >= IMPORT_SYMBOL) && (LA418_0 <= INDEXES_SYMBOL)) || LA418_0 == INITIAL_SIZE_SYMBOL || LA418_0 == INNODB_SYMBOL || LA418_0 == INSERT_METHOD_SYMBOL || LA418_0 == INSTALL_SYMBOL || LA418_0 == INVOKER_SYMBOL || LA418_0 == IO_SYMBOL || ((LA418_0 >= IPC_SYMBOL) && (LA418_0 <= ISSUER_SYMBOL)) || LA418_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA418_0 >= LANGUAGE_SYMBOL) && (LA418_0 <= LAST_SYMBOL)) || LA418_0 == LEAVES_SYMBOL || LA418_0 == LESS_SYMBOL || LA418_0 == LEVEL_SYMBOL || LA418_0 == LINESTRING_SYMBOL || LA418_0 == LIST_SYMBOL || LA418_0 == LOCAL_SYMBOL || LA418_0 == LOCKS_SYMBOL || LA418_0 == LOGFILE_SYMBOL || LA418_0 == LOGS_SYMBOL || LA418_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA418_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA418_0 <= MASTER_SSL_SYMBOL)) || ((LA418_0 >= MASTER_SYMBOL) && (LA418_0 <= MASTER_USER_SYMBOL)) || ((LA418_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA418_0 <= MAX_SIZE_SYMBOL)) || ((LA418_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA418_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA418_0 >= MEDIUM_SYMBOL) && (LA418_0 <= MICROSECOND_SYMBOL)) || LA418_0 == MIGRATE_SYMBOL || ((LA418_0 >= MINUTE_SYMBOL) && (LA418_0 <= MIN_ROWS_SYMBOL)) || LA418_0 == MODE_SYMBOL || LA418_0 == MODIFY_SYMBOL || ((LA418_0 >= MONTH_SYMBOL) && (LA418_0 <= MULTILINESTRING_SYMBOL)) || ((LA418_0 >= MULTIPOINT_SYMBOL) && (LA418_0 <= MULTIPOLYGON_SYMBOL)) || ((LA418_0 >= MUTEX_SYMBOL) && (LA418_0 <= NATIONAL_SYMBOL)) || LA418_0 == NCHAR_SYMBOL || LA418_0 == NDBCLUSTER_SYMBOL || ((LA418_0 >= NEW_SYMBOL) && (LA418_0 <= NONE_SYMBOL)) || ((LA418_0 >= NO_SYMBOL) && (LA418_0 <= NO_WAIT_SYMBOL)) || LA418_0 == NUMBER_SYMBOL || LA418_0 == NVARCHAR_SYMBOL || ((LA418_0 >= OFFSET_SYMBOL) && (LA418_0 <= ONE_SYMBOL)) || LA418_0 == OPEN_SYMBOL || LA418_0 == OPTIONS_SYMBOL || ((LA418_0 >= OWNER_SYMBOL) && (LA418_0 <= PAGE_SYMBOL)) || ((LA418_0 >= PARSER_SYMBOL) && (LA418_0 <= PARTITION_SYMBOL)) || ((LA418_0 >= PASSWORD_SYMBOL) && (LA418_0 <= PLUGIN_SYMBOL)) || ((LA418_0 >= POINT_SYMBOL) && (LA418_0 <= PORT_SYMBOL)) || ((LA418_0 >= PREPARE_SYMBOL) && (LA418_0 <= PREV_SYMBOL)) || LA418_0 == PRIVILEGES_SYMBOL || ((LA418_0 >= PROCESSLIST_SYMBOL) && (LA418_0 <= PROXY_SYMBOL)) || ((LA418_0 >= QUARTER_SYMBOL) && (LA418_0 <= QUICK_SYMBOL)) || LA418_0 == READ_ONLY_SYMBOL || ((LA418_0 >= REBUILD_SYMBOL) && (LA418_0 <= REDUNDANT_SYMBOL)) || ((LA418_0 >= RELAYLOG_SYMBOL) && (LA418_0 <= RELAY_THREAD_SYMBOL)) || ((LA418_0 >= RELOAD_SYMBOL) && (LA418_0 <= REMOVE_SYMBOL)) || ((LA418_0 >= REORGANIZE_SYMBOL) && (LA418_0 <= REPEATABLE_SYMBOL)) || LA418_0 == REPLICATION_SYMBOL || LA418_0 == RESET_SYMBOL || LA418_0 == RESTORE_SYMBOL || ((LA418_0 >= RESUME_SYMBOL) && (LA418_0 <= RETURNS_SYMBOL)) || LA418_0 == REVERSE_SYMBOL || ((LA418_0 >= ROLLBACK_SYMBOL) && (LA418_0 <= SCHEDULE_SYMBOL)) || LA418_0 == SCHEMA_NAME_SYMBOL || ((LA418_0 >= SECOND_SYMBOL) && (LA418_0 <= SECURITY_SYMBOL)) || ((LA418_0 >= SERIALIZABLE_SYMBOL) && (LA418_0 <= SERIAL_SYMBOL)) || ((LA418_0 >= SERVER_SYMBOL) && (LA418_0 <= SESSION_SYMBOL)) || LA418_0 == SHARE_SYMBOL || LA418_0 == SHUTDOWN_SYMBOL || ((LA418_0 >= SIGNED_SYMBOL) && (LA418_0 <= SIMPLE_SYMBOL)) || ((LA418_0 >= SLAVE_SYMBOL) && (LA418_0 <= SLOW_SYMBOL)) || ((LA418_0 >= SNAPSHOT_SYMBOL) && (LA418_0 <= SOURCE_SYMBOL)) || ((LA418_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA418_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA418_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA418_0 <= SQL_CACHE_SYMBOL)) || LA418_0 == SQL_NO_CACHE_SYMBOL || LA418_0 == SQL_THREAD_SYMBOL || ((LA418_0 >= STARTS_SYMBOL) && (LA418_0 <= STATUS_SYMBOL)) || ((LA418_0 >= STOP_SYMBOL) && (LA418_0 <= STORAGE_SYMBOL)) || ((LA418_0 >= STRING_SYMBOL) && (LA418_0 <= SUBPARTITION_SYMBOL)) || ((LA418_0 >= SUPER_SYMBOL) && (LA418_0 <= SWITCHES_SYMBOL)) || ((LA418_0 >= TABLESPACE_SYMBOL) && (LA418_0 <= TABLE_NAME_SYMBOL)) || ((LA418_0 >= TEMPORARY_SYMBOL) && (LA418_0 <= TEMPTABLE_SYMBOL)) || ((LA418_0 >= TEXT_SYMBOL) && (LA418_0 <= THAN_SYMBOL)) || ((LA418_0 >= TIMESTAMP_ADD_SYMBOL) && (LA418_0 <= TIME_SYMBOL)) || ((LA418_0 >= TRANSACTION_SYMBOL) && (LA418_0 <= TRIGGERS_SYMBOL)) || ((LA418_0 >= TRUNCATE_SYMBOL) && (LA418_0 <= UDF_RETURNS_SYMBOL)) || ((LA418_0 >= UNCOMMITTED_SYMBOL) && (LA418_0 <= UNDEFINED_SYMBOL)) || ((LA418_0 >= UNDOFILE_SYMBOL) && (LA418_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA418_0 >= UNICODE_SYMBOL) && (LA418_0 <= UNINSTALL_SYMBOL)) || LA418_0 == UNKNOWN_SYMBOL || LA418_0 == UNTIL_SYMBOL || LA418_0 == UPGRADE_SYMBOL || ((LA418_0 >= USER_RESOURCES_SYMBOL) && (LA418_0 <= USE_FRM_SYMBOL)) || LA418_0 == VALUE_SYMBOL || LA418_0 == VARIABLES_SYMBOL || ((LA418_0 >= VIEW_SYMBOL) && (LA418_0 <= WEIGHT_STRING_SYMBOL)) || ((LA418_0 >= WORK_SYMBOL) && (LA418_0 <= WRAPPER_SYMBOL)) || LA418_0 == X509_SYMBOL || ((LA418_0 >= XA_SYMBOL) && (LA418_0 <= XML_SYMBOL)) || LA418_0 == YEAR_SYMBOL))
                {
                    alt418=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 418;
                    EXCEPTION->state        = 0;


                    goto ruleprivilege_levelEx;

                }
            }
            switch (alt418)
            {
        	case 1:
        	    // MySQL.g:1258:2: MULT_OPERATOR ( DOT_SYMBOL MULT_OPERATOR )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MULT_OPERATOR1373 = (pANTLR3_COMMON_TOKEN) MATCHT(MULT_OPERATOR, &FOLLOW_MULT_OPERATOR_in_privilege_level6791);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_levelEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MULT_OPERATOR1373_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MULT_OPERATOR1373));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MULT_OPERATOR1373_tree);
        	        }

        	        // MySQL.g:1258:16: ( DOT_SYMBOL MULT_OPERATOR )?
        	        {
        	            int alt417=2;
        	            switch ( LA(1) )
        	            {
        	                case DOT_SYMBOL:
        	                	{
        	                		alt417=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt417)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1258:17: DOT_SYMBOL MULT_OPERATOR
        	        	    {
        	        	        DOT_SYMBOL1374 = (pANTLR3_COMMON_TOKEN) MATCHT(DOT_SYMBOL, &FOLLOW_DOT_SYMBOL_in_privilege_level6794);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprivilege_levelEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DOT_SYMBOL1374_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOT_SYMBOL1374));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DOT_SYMBOL1374_tree);
        	        	        }

        	        	        MULT_OPERATOR1375 = (pANTLR3_COMMON_TOKEN) MATCHT(MULT_OPERATOR, &FOLLOW_MULT_OPERATOR_in_privilege_level6796);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprivilege_levelEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        MULT_OPERATOR1375_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MULT_OPERATOR1375));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, MULT_OPERATOR1375_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1259:4: qualified_identifier_with_wildcard
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_qualified_identifier_with_wildcard_in_privilege_level6803);
        	        qualified_identifier_with_wildcard1376=qualified_identifier_with_wildcard(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_levelEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, qualified_identifier_with_wildcard1376.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleprivilege_levelEx; /* Prevent compiler warnings */
    ruleprivilege_levelEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end privilege_level */

/**
 * $ANTLR start ssl_option
 * MySQL.g:1262:1: ssl_option : ( SSL_SYMBOL | X509_SYMBOL | CIPHER_SYMBOL string_literal | ISSUER_SYMBOL string_literal | SUBJECT_SYMBOL string_literal );
 */
static MySQLParser_ssl_option_return
ssl_option(pMySQLParser ctx)
{
    MySQLParser_ssl_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    SSL_SYMBOL1377;
    pANTLR3_COMMON_TOKEN    X509_SYMBOL1378;
    pANTLR3_COMMON_TOKEN    CIPHER_SYMBOL1379;
    pANTLR3_COMMON_TOKEN    ISSUER_SYMBOL1381;
    pANTLR3_COMMON_TOKEN    SUBJECT_SYMBOL1383;
    MySQLParser_string_literal_return string_literal1380;
    #undef	RETURN_TYPE_string_literal1380
    #define	RETURN_TYPE_string_literal1380 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal1382;
    #undef	RETURN_TYPE_string_literal1382
    #define	RETURN_TYPE_string_literal1382 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal1384;
    #undef	RETURN_TYPE_string_literal1384
    #define	RETURN_TYPE_string_literal1384 MySQLParser_string_literal_return

    pANTLR3_BASE_TREE SSL_SYMBOL1377_tree;
    pANTLR3_BASE_TREE X509_SYMBOL1378_tree;
    pANTLR3_BASE_TREE CIPHER_SYMBOL1379_tree;
    pANTLR3_BASE_TREE ISSUER_SYMBOL1381_tree;
    pANTLR3_BASE_TREE SUBJECT_SYMBOL1383_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SSL_SYMBOL1377       = NULL;
    X509_SYMBOL1378       = NULL;
    CIPHER_SYMBOL1379       = NULL;
    ISSUER_SYMBOL1381       = NULL;
    SUBJECT_SYMBOL1383       = NULL;
    string_literal1380.tree = NULL;

    string_literal1382.tree = NULL;

    string_literal1384.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SSL_SYMBOL1377_tree   = NULL;
    X509_SYMBOL1378_tree   = NULL;
    CIPHER_SYMBOL1379_tree   = NULL;
    ISSUER_SYMBOL1381_tree   = NULL;
    SUBJECT_SYMBOL1383_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1262:11: ( SSL_SYMBOL | X509_SYMBOL | CIPHER_SYMBOL string_literal | ISSUER_SYMBOL string_literal | SUBJECT_SYMBOL string_literal )

            ANTLR3_UINT32 alt419;

            alt419=5;

            switch ( LA(1) )
            {
            case SSL_SYMBOL:
            	{
            		alt419=1;
            	}
                break;
            case X509_SYMBOL:
            	{
            		alt419=2;
            	}
                break;
            case CIPHER_SYMBOL:
            	{
            		alt419=3;
            	}
                break;
            case ISSUER_SYMBOL:
            	{
            		alt419=4;
            	}
                break;
            case SUBJECT_SYMBOL:
            	{
            		alt419=5;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 419;
                EXCEPTION->state        = 0;


                goto rulessl_optionEx;

            }

            switch (alt419)
            {
        	case 1:
        	    // MySQL.g:1263:2: SSL_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SSL_SYMBOL1377 = (pANTLR3_COMMON_TOKEN) MATCHT(SSL_SYMBOL, &FOLLOW_SSL_SYMBOL_in_ssl_option6812);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulessl_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SSL_SYMBOL1377_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SSL_SYMBOL1377));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SSL_SYMBOL1377_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1264:4: X509_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        X509_SYMBOL1378 = (pANTLR3_COMMON_TOKEN) MATCHT(X509_SYMBOL, &FOLLOW_X509_SYMBOL_in_ssl_option6817);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulessl_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        X509_SYMBOL1378_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, X509_SYMBOL1378));
        	        ADAPTOR->addChild(ADAPTOR, root_0, X509_SYMBOL1378_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1265:4: CIPHER_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CIPHER_SYMBOL1379 = (pANTLR3_COMMON_TOKEN) MATCHT(CIPHER_SYMBOL, &FOLLOW_CIPHER_SYMBOL_in_ssl_option6822);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulessl_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CIPHER_SYMBOL1379_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CIPHER_SYMBOL1379));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CIPHER_SYMBOL1379_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_ssl_option6824);
        	        string_literal1380=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulessl_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1380.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1266:4: ISSUER_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ISSUER_SYMBOL1381 = (pANTLR3_COMMON_TOKEN) MATCHT(ISSUER_SYMBOL, &FOLLOW_ISSUER_SYMBOL_in_ssl_option6829);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulessl_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ISSUER_SYMBOL1381_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ISSUER_SYMBOL1381));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ISSUER_SYMBOL1381_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_ssl_option6831);
        	        string_literal1382=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulessl_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1382.tree);

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1267:4: SUBJECT_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SUBJECT_SYMBOL1383 = (pANTLR3_COMMON_TOKEN) MATCHT(SUBJECT_SYMBOL, &FOLLOW_SUBJECT_SYMBOL_in_ssl_option6836);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulessl_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SUBJECT_SYMBOL1383_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SUBJECT_SYMBOL1383));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SUBJECT_SYMBOL1383_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_ssl_option6838);
        	        string_literal1384=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulessl_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1384.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulessl_optionEx; /* Prevent compiler warnings */
    rulessl_optionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end ssl_option */

/**
 * $ANTLR start grant_option
 * MySQL.g:1270:1: grant_option : ( GRANT_SYMBOL OPTION_SYMBOL | MAX_QUERIES_PER_HOUR_SYMBOL INTEGER | MAX_UPDATES_PER_HOUR_SYMBOL INTEGER | MAX_CONNECTIONS_PER_HOUR_SYMBOL INTEGER | MAX_USER_CONNECTIONS_SYMBOL INTEGER );
 */
static MySQLParser_grant_option_return
grant_option(pMySQLParser ctx)
{
    MySQLParser_grant_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    GRANT_SYMBOL1385;
    pANTLR3_COMMON_TOKEN    OPTION_SYMBOL1386;
    pANTLR3_COMMON_TOKEN    MAX_QUERIES_PER_HOUR_SYMBOL1387;
    pANTLR3_COMMON_TOKEN    INTEGER1388;
    pANTLR3_COMMON_TOKEN    MAX_UPDATES_PER_HOUR_SYMBOL1389;
    pANTLR3_COMMON_TOKEN    INTEGER1390;
    pANTLR3_COMMON_TOKEN    MAX_CONNECTIONS_PER_HOUR_SYMBOL1391;
    pANTLR3_COMMON_TOKEN    INTEGER1392;
    pANTLR3_COMMON_TOKEN    MAX_USER_CONNECTIONS_SYMBOL1393;
    pANTLR3_COMMON_TOKEN    INTEGER1394;

    pANTLR3_BASE_TREE GRANT_SYMBOL1385_tree;
    pANTLR3_BASE_TREE OPTION_SYMBOL1386_tree;
    pANTLR3_BASE_TREE MAX_QUERIES_PER_HOUR_SYMBOL1387_tree;
    pANTLR3_BASE_TREE INTEGER1388_tree;
    pANTLR3_BASE_TREE MAX_UPDATES_PER_HOUR_SYMBOL1389_tree;
    pANTLR3_BASE_TREE INTEGER1390_tree;
    pANTLR3_BASE_TREE MAX_CONNECTIONS_PER_HOUR_SYMBOL1391_tree;
    pANTLR3_BASE_TREE INTEGER1392_tree;
    pANTLR3_BASE_TREE MAX_USER_CONNECTIONS_SYMBOL1393_tree;
    pANTLR3_BASE_TREE INTEGER1394_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    GRANT_SYMBOL1385       = NULL;
    OPTION_SYMBOL1386       = NULL;
    MAX_QUERIES_PER_HOUR_SYMBOL1387       = NULL;
    INTEGER1388       = NULL;
    MAX_UPDATES_PER_HOUR_SYMBOL1389       = NULL;
    INTEGER1390       = NULL;
    MAX_CONNECTIONS_PER_HOUR_SYMBOL1391       = NULL;
    INTEGER1392       = NULL;
    MAX_USER_CONNECTIONS_SYMBOL1393       = NULL;
    INTEGER1394       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    GRANT_SYMBOL1385_tree   = NULL;
    OPTION_SYMBOL1386_tree   = NULL;
    MAX_QUERIES_PER_HOUR_SYMBOL1387_tree   = NULL;
    INTEGER1388_tree   = NULL;
    MAX_UPDATES_PER_HOUR_SYMBOL1389_tree   = NULL;
    INTEGER1390_tree   = NULL;
    MAX_CONNECTIONS_PER_HOUR_SYMBOL1391_tree   = NULL;
    INTEGER1392_tree   = NULL;
    MAX_USER_CONNECTIONS_SYMBOL1393_tree   = NULL;
    INTEGER1394_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1270:13: ( GRANT_SYMBOL OPTION_SYMBOL | MAX_QUERIES_PER_HOUR_SYMBOL INTEGER | MAX_UPDATES_PER_HOUR_SYMBOL INTEGER | MAX_CONNECTIONS_PER_HOUR_SYMBOL INTEGER | MAX_USER_CONNECTIONS_SYMBOL INTEGER )

            ANTLR3_UINT32 alt420;

            alt420=5;

            switch ( LA(1) )
            {
            case GRANT_SYMBOL:
            	{
            		alt420=1;
            	}
                break;
            case MAX_QUERIES_PER_HOUR_SYMBOL:
            	{
            		alt420=2;
            	}
                break;
            case MAX_UPDATES_PER_HOUR_SYMBOL:
            	{
            		alt420=3;
            	}
                break;
            case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
            	{
            		alt420=4;
            	}
                break;
            case MAX_USER_CONNECTIONS_SYMBOL:
            	{
            		alt420=5;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 420;
                EXCEPTION->state        = 0;


                goto rulegrant_optionEx;

            }

            switch (alt420)
            {
        	case 1:
        	    // MySQL.g:1271:2: GRANT_SYMBOL OPTION_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        GRANT_SYMBOL1385 = (pANTLR3_COMMON_TOKEN) MATCHT(GRANT_SYMBOL, &FOLLOW_GRANT_SYMBOL_in_grant_option6847);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegrant_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        GRANT_SYMBOL1385_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GRANT_SYMBOL1385));
        	        ADAPTOR->addChild(ADAPTOR, root_0, GRANT_SYMBOL1385_tree);
        	        }

        	        OPTION_SYMBOL1386 = (pANTLR3_COMMON_TOKEN) MATCHT(OPTION_SYMBOL, &FOLLOW_OPTION_SYMBOL_in_grant_option6849);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegrant_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPTION_SYMBOL1386_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPTION_SYMBOL1386));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPTION_SYMBOL1386_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1272:4: MAX_QUERIES_PER_HOUR_SYMBOL INTEGER
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MAX_QUERIES_PER_HOUR_SYMBOL1387 = (pANTLR3_COMMON_TOKEN) MATCHT(MAX_QUERIES_PER_HOUR_SYMBOL, &FOLLOW_MAX_QUERIES_PER_HOUR_SYMBOL_in_grant_option6854);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegrant_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MAX_QUERIES_PER_HOUR_SYMBOL1387_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAX_QUERIES_PER_HOUR_SYMBOL1387));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MAX_QUERIES_PER_HOUR_SYMBOL1387_tree);
        	        }

        	        INTEGER1388 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_grant_option6856);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegrant_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INTEGER1388_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER1388));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER1388_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1273:4: MAX_UPDATES_PER_HOUR_SYMBOL INTEGER
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MAX_UPDATES_PER_HOUR_SYMBOL1389 = (pANTLR3_COMMON_TOKEN) MATCHT(MAX_UPDATES_PER_HOUR_SYMBOL, &FOLLOW_MAX_UPDATES_PER_HOUR_SYMBOL_in_grant_option6861);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegrant_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MAX_UPDATES_PER_HOUR_SYMBOL1389_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAX_UPDATES_PER_HOUR_SYMBOL1389));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MAX_UPDATES_PER_HOUR_SYMBOL1389_tree);
        	        }

        	        INTEGER1390 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_grant_option6863);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegrant_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INTEGER1390_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER1390));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER1390_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1274:4: MAX_CONNECTIONS_PER_HOUR_SYMBOL INTEGER
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MAX_CONNECTIONS_PER_HOUR_SYMBOL1391 = (pANTLR3_COMMON_TOKEN) MATCHT(MAX_CONNECTIONS_PER_HOUR_SYMBOL, &FOLLOW_MAX_CONNECTIONS_PER_HOUR_SYMBOL_in_grant_option6868);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegrant_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MAX_CONNECTIONS_PER_HOUR_SYMBOL1391_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAX_CONNECTIONS_PER_HOUR_SYMBOL1391));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MAX_CONNECTIONS_PER_HOUR_SYMBOL1391_tree);
        	        }

        	        INTEGER1392 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_grant_option6870);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegrant_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INTEGER1392_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER1392));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER1392_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1275:4: MAX_USER_CONNECTIONS_SYMBOL INTEGER
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MAX_USER_CONNECTIONS_SYMBOL1393 = (pANTLR3_COMMON_TOKEN) MATCHT(MAX_USER_CONNECTIONS_SYMBOL, &FOLLOW_MAX_USER_CONNECTIONS_SYMBOL_in_grant_option6875);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegrant_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MAX_USER_CONNECTIONS_SYMBOL1393_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAX_USER_CONNECTIONS_SYMBOL1393));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MAX_USER_CONNECTIONS_SYMBOL1393_tree);
        	        }

        	        INTEGER1394 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_grant_option6877);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegrant_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INTEGER1394_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER1394));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER1394_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulegrant_optionEx; /* Prevent compiler warnings */
    rulegrant_optionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end grant_option */

/**
 * $ANTLR start table_administration_statement
 * MySQL.g:1280:1: table_administration_statement : ( ANALYZE_SYMBOL ( no_write_to_bin_log )? TABLE_SYMBOL qualified_identifier_list | CHECK_SYMBOL TABLE_SYMBOL qualified_identifier_list ( check_option )* | CHECKSUM_SYMBOL TABLE_SYMBOL qualified_identifier_list ( QUICK_SYMBOL | EXTENDED_SYMBOL )? | OPTIMIZE_SYMBOL ( no_write_to_bin_log )? TABLE_SYMBOL qualified_identifier_list | REPAIR_SYMBOL ( no_write_to_bin_log )? TABLE_SYMBOL qualified_identifier_list ( repair_option )* |{...}? => BACKUP_SYMBOL TABLE_SYMBOL table_identifier ( COMMA_SYMBOL table_identifier )* TO_SYMBOL string_literal |{...}? => RESTORE_SYMBOL TABLE_SYMBOL table_identifier ( COMMA_SYMBOL table_identifier )* FROM_SYMBOL string_literal );
 */
static MySQLParser_table_administration_statement_return
table_administration_statement(pMySQLParser ctx)
{
    MySQLParser_table_administration_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    ANALYZE_SYMBOL1395;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL1397;
    pANTLR3_COMMON_TOKEN    CHECK_SYMBOL1399;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL1400;
    pANTLR3_COMMON_TOKEN    CHECKSUM_SYMBOL1403;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL1404;
    pANTLR3_COMMON_TOKEN    set1406;
    pANTLR3_COMMON_TOKEN    OPTIMIZE_SYMBOL1407;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL1409;
    pANTLR3_COMMON_TOKEN    REPAIR_SYMBOL1411;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL1413;
    pANTLR3_COMMON_TOKEN    BACKUP_SYMBOL1416;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL1417;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1419;
    pANTLR3_COMMON_TOKEN    TO_SYMBOL1421;
    pANTLR3_COMMON_TOKEN    RESTORE_SYMBOL1423;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL1424;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1426;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL1428;
    MySQLParser_no_write_to_bin_log_return no_write_to_bin_log1396;
    #undef	RETURN_TYPE_no_write_to_bin_log1396
    #define	RETURN_TYPE_no_write_to_bin_log1396 MySQLParser_no_write_to_bin_log_return

    MySQLParser_qualified_identifier_list_return qualified_identifier_list1398;
    #undef	RETURN_TYPE_qualified_identifier_list1398
    #define	RETURN_TYPE_qualified_identifier_list1398 MySQLParser_qualified_identifier_list_return

    MySQLParser_qualified_identifier_list_return qualified_identifier_list1401;
    #undef	RETURN_TYPE_qualified_identifier_list1401
    #define	RETURN_TYPE_qualified_identifier_list1401 MySQLParser_qualified_identifier_list_return

    MySQLParser_check_option_return check_option1402;
    #undef	RETURN_TYPE_check_option1402
    #define	RETURN_TYPE_check_option1402 MySQLParser_check_option_return

    MySQLParser_qualified_identifier_list_return qualified_identifier_list1405;
    #undef	RETURN_TYPE_qualified_identifier_list1405
    #define	RETURN_TYPE_qualified_identifier_list1405 MySQLParser_qualified_identifier_list_return

    MySQLParser_no_write_to_bin_log_return no_write_to_bin_log1408;
    #undef	RETURN_TYPE_no_write_to_bin_log1408
    #define	RETURN_TYPE_no_write_to_bin_log1408 MySQLParser_no_write_to_bin_log_return

    MySQLParser_qualified_identifier_list_return qualified_identifier_list1410;
    #undef	RETURN_TYPE_qualified_identifier_list1410
    #define	RETURN_TYPE_qualified_identifier_list1410 MySQLParser_qualified_identifier_list_return

    MySQLParser_no_write_to_bin_log_return no_write_to_bin_log1412;
    #undef	RETURN_TYPE_no_write_to_bin_log1412
    #define	RETURN_TYPE_no_write_to_bin_log1412 MySQLParser_no_write_to_bin_log_return

    MySQLParser_qualified_identifier_list_return qualified_identifier_list1414;
    #undef	RETURN_TYPE_qualified_identifier_list1414
    #define	RETURN_TYPE_qualified_identifier_list1414 MySQLParser_qualified_identifier_list_return

    MySQLParser_repair_option_return repair_option1415;
    #undef	RETURN_TYPE_repair_option1415
    #define	RETURN_TYPE_repair_option1415 MySQLParser_repair_option_return

    MySQLParser_table_identifier_return table_identifier1418;
    #undef	RETURN_TYPE_table_identifier1418
    #define	RETURN_TYPE_table_identifier1418 MySQLParser_table_identifier_return

    MySQLParser_table_identifier_return table_identifier1420;
    #undef	RETURN_TYPE_table_identifier1420
    #define	RETURN_TYPE_table_identifier1420 MySQLParser_table_identifier_return

    MySQLParser_string_literal_return string_literal1422;
    #undef	RETURN_TYPE_string_literal1422
    #define	RETURN_TYPE_string_literal1422 MySQLParser_string_literal_return

    MySQLParser_table_identifier_return table_identifier1425;
    #undef	RETURN_TYPE_table_identifier1425
    #define	RETURN_TYPE_table_identifier1425 MySQLParser_table_identifier_return

    MySQLParser_table_identifier_return table_identifier1427;
    #undef	RETURN_TYPE_table_identifier1427
    #define	RETURN_TYPE_table_identifier1427 MySQLParser_table_identifier_return

    MySQLParser_string_literal_return string_literal1429;
    #undef	RETURN_TYPE_string_literal1429
    #define	RETURN_TYPE_string_literal1429 MySQLParser_string_literal_return

    pANTLR3_BASE_TREE ANALYZE_SYMBOL1395_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL1397_tree;
    pANTLR3_BASE_TREE CHECK_SYMBOL1399_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL1400_tree;
    pANTLR3_BASE_TREE CHECKSUM_SYMBOL1403_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL1404_tree;
    pANTLR3_BASE_TREE set1406_tree;
    pANTLR3_BASE_TREE OPTIMIZE_SYMBOL1407_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL1409_tree;
    pANTLR3_BASE_TREE REPAIR_SYMBOL1411_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL1413_tree;
    pANTLR3_BASE_TREE BACKUP_SYMBOL1416_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL1417_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1419_tree;
    pANTLR3_BASE_TREE TO_SYMBOL1421_tree;
    pANTLR3_BASE_TREE RESTORE_SYMBOL1423_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL1424_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1426_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL1428_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ANALYZE_SYMBOL1395       = NULL;
    TABLE_SYMBOL1397       = NULL;
    CHECK_SYMBOL1399       = NULL;
    TABLE_SYMBOL1400       = NULL;
    CHECKSUM_SYMBOL1403       = NULL;
    TABLE_SYMBOL1404       = NULL;
    set1406       = NULL;
    OPTIMIZE_SYMBOL1407       = NULL;
    TABLE_SYMBOL1409       = NULL;
    REPAIR_SYMBOL1411       = NULL;
    TABLE_SYMBOL1413       = NULL;
    BACKUP_SYMBOL1416       = NULL;
    TABLE_SYMBOL1417       = NULL;
    COMMA_SYMBOL1419       = NULL;
    TO_SYMBOL1421       = NULL;
    RESTORE_SYMBOL1423       = NULL;
    TABLE_SYMBOL1424       = NULL;
    COMMA_SYMBOL1426       = NULL;
    FROM_SYMBOL1428       = NULL;
    no_write_to_bin_log1396.tree = NULL;

    qualified_identifier_list1398.tree = NULL;

    qualified_identifier_list1401.tree = NULL;

    check_option1402.tree = NULL;

    qualified_identifier_list1405.tree = NULL;

    no_write_to_bin_log1408.tree = NULL;

    qualified_identifier_list1410.tree = NULL;

    no_write_to_bin_log1412.tree = NULL;

    qualified_identifier_list1414.tree = NULL;

    repair_option1415.tree = NULL;

    table_identifier1418.tree = NULL;

    table_identifier1420.tree = NULL;

    string_literal1422.tree = NULL;

    table_identifier1425.tree = NULL;

    table_identifier1427.tree = NULL;

    string_literal1429.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ANALYZE_SYMBOL1395_tree   = NULL;
    TABLE_SYMBOL1397_tree   = NULL;
    CHECK_SYMBOL1399_tree   = NULL;
    TABLE_SYMBOL1400_tree   = NULL;
    CHECKSUM_SYMBOL1403_tree   = NULL;
    TABLE_SYMBOL1404_tree   = NULL;
    set1406_tree   = NULL;
    OPTIMIZE_SYMBOL1407_tree   = NULL;
    TABLE_SYMBOL1409_tree   = NULL;
    REPAIR_SYMBOL1411_tree   = NULL;
    TABLE_SYMBOL1413_tree   = NULL;
    BACKUP_SYMBOL1416_tree   = NULL;
    TABLE_SYMBOL1417_tree   = NULL;
    COMMA_SYMBOL1419_tree   = NULL;
    TO_SYMBOL1421_tree   = NULL;
    RESTORE_SYMBOL1423_tree   = NULL;
    TABLE_SYMBOL1424_tree   = NULL;
    COMMA_SYMBOL1426_tree   = NULL;
    FROM_SYMBOL1428_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1280:31: ( ANALYZE_SYMBOL ( no_write_to_bin_log )? TABLE_SYMBOL qualified_identifier_list | CHECK_SYMBOL TABLE_SYMBOL qualified_identifier_list ( check_option )* | CHECKSUM_SYMBOL TABLE_SYMBOL qualified_identifier_list ( QUICK_SYMBOL | EXTENDED_SYMBOL )? | OPTIMIZE_SYMBOL ( no_write_to_bin_log )? TABLE_SYMBOL qualified_identifier_list | REPAIR_SYMBOL ( no_write_to_bin_log )? TABLE_SYMBOL qualified_identifier_list ( repair_option )* |{...}? => BACKUP_SYMBOL TABLE_SYMBOL table_identifier ( COMMA_SYMBOL table_identifier )* TO_SYMBOL string_literal |{...}? => RESTORE_SYMBOL TABLE_SYMBOL table_identifier ( COMMA_SYMBOL table_identifier )* FROM_SYMBOL string_literal )

            ANTLR3_UINT32 alt429;

            alt429=7;

            {
                int LA429_0 = LA(1);
                if ( (LA429_0 == ANALYZE_SYMBOL))
                {
                    alt429=1;
                }
                else if ( (LA429_0 == CHECK_SYMBOL))
                {
                    alt429=2;
                }
                else if ( (LA429_0 == CHECKSUM_SYMBOL))
                {
                    alt429=3;
                }
                else if ( (LA429_0 == OPTIMIZE_SYMBOL))
                {
                    alt429=4;
                }
                else if ( (LA429_0 == REPAIR_SYMBOL))
                {
                    alt429=5;
                }
                else if ( ((SERVER_VERSION < 50500)) && (LA429_0 == BACKUP_SYMBOL))
                {
                    alt429=6;
                }
                else if ( ((SERVER_VERSION < 50500)) && (LA429_0 == RESTORE_SYMBOL))
                {
                    alt429=7;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 429;
                    EXCEPTION->state        = 0;


                    goto ruletable_administration_statementEx;

                }
            }
            switch (alt429)
            {
        	case 1:
        	    // MySQL.g:1281:2: ANALYZE_SYMBOL ( no_write_to_bin_log )? TABLE_SYMBOL qualified_identifier_list
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ANALYZE_SYMBOL1395 = (pANTLR3_COMMON_TOKEN) MATCHT(ANALYZE_SYMBOL, &FOLLOW_ANALYZE_SYMBOL_in_table_administration_statement6888);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ANALYZE_SYMBOL1395_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ANALYZE_SYMBOL1395));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ANALYZE_SYMBOL1395_tree);
        	        }

        	        // MySQL.g:1281:17: ( no_write_to_bin_log )?
        	        {
        	            int alt421=2;
        	            switch ( LA(1) )
        	            {
        	                case LOCAL_SYMBOL:
        	                case NO_WRITE_TO_BINLOG_SYMBOL:
        	                	{
        	                		alt421=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt421)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1281:17: no_write_to_bin_log
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_no_write_to_bin_log_in_table_administration_statement6890);
        	        	        no_write_to_bin_log1396=no_write_to_bin_log(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletable_administration_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, no_write_to_bin_log1396.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        TABLE_SYMBOL1397 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_table_administration_statement6893);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TABLE_SYMBOL1397_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL1397));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL1397_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_qualified_identifier_list_in_table_administration_statement6895);
        	        qualified_identifier_list1398=qualified_identifier_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, qualified_identifier_list1398.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1282:4: CHECK_SYMBOL TABLE_SYMBOL qualified_identifier_list ( check_option )*
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CHECK_SYMBOL1399 = (pANTLR3_COMMON_TOKEN) MATCHT(CHECK_SYMBOL, &FOLLOW_CHECK_SYMBOL_in_table_administration_statement6900);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CHECK_SYMBOL1399_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHECK_SYMBOL1399));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CHECK_SYMBOL1399_tree);
        	        }

        	        TABLE_SYMBOL1400 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_table_administration_statement6902);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TABLE_SYMBOL1400_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL1400));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL1400_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_qualified_identifier_list_in_table_administration_statement6904);
        	        qualified_identifier_list1401=qualified_identifier_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, qualified_identifier_list1401.tree);

        	        // MySQL.g:1282:56: ( check_option )*

        	        for (;;)
        	        {
        	            int alt422=2;
        	            switch ( LA(1) )
        	            {
        	            case CHANGED_SYMBOL:
        	            case EXTENDED_SYMBOL:
        	            case FAST_SYMBOL:
        	            case FOR_SYMBOL:
        	            case MEDIUM_SYMBOL:
        	            case QUICK_SYMBOL:
        	            	{
        	            		alt422=1;
        	            	}
        	                break;

        	            }

        	            switch (alt422)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1282:56: check_option
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_check_option_in_table_administration_statement6906);
        	        	        check_option1402=check_option(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletable_administration_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, check_option1402.tree);

        	        	    }
        	        	    break;

        	        	default:
        	        	    goto loop422;	/* break out of the loop */
        	        	    break;
        	            }
        	        }
        	        loop422: ; /* Jump out to here if this rule does not match */


        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1283:4: CHECKSUM_SYMBOL TABLE_SYMBOL qualified_identifier_list ( QUICK_SYMBOL | EXTENDED_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CHECKSUM_SYMBOL1403 = (pANTLR3_COMMON_TOKEN) MATCHT(CHECKSUM_SYMBOL, &FOLLOW_CHECKSUM_SYMBOL_in_table_administration_statement6912);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CHECKSUM_SYMBOL1403_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHECKSUM_SYMBOL1403));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CHECKSUM_SYMBOL1403_tree);
        	        }

        	        TABLE_SYMBOL1404 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_table_administration_statement6914);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TABLE_SYMBOL1404_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL1404));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL1404_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_qualified_identifier_list_in_table_administration_statement6916);
        	        qualified_identifier_list1405=qualified_identifier_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, qualified_identifier_list1405.tree);

        	        // MySQL.g:1283:59: ( QUICK_SYMBOL | EXTENDED_SYMBOL )?
        	        {
        	            int alt423=2;
        	            switch ( LA(1) )
        	            {
        	                case EXTENDED_SYMBOL:
        	                case QUICK_SYMBOL:
        	                	{
        	                		alt423=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt423)
        	            {
        	        	case 1:
        	        	    // MySQL.g:
        	        	    {
        	        	        set1406=(pANTLR3_COMMON_TOKEN)LT(1);

        	        	        if ( LA(1) == EXTENDED_SYMBOL || LA(1) == QUICK_SYMBOL )
        	        	        {
        	        	            CONSUME();
        	        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1406))
        	        	            );
        	        	            PERRORRECOVERY=ANTLR3_FALSE;
        	        	            FAILEDFLAG=ANTLR3_FALSE;

        	        	        }
        	        	        else
        	        	        {
        	        	            if (BACKTRACKING>0)
        	        	            {
        	        	                FAILEDFLAG = ANTLR3_TRUE;
        	        	                return retval;
        	        	            }

        	        	            CONSTRUCTEX();
        	        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
        	        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
        	        	            EXCEPTION->expectingSet = NULL;

        	        	            goto ruletable_administration_statementEx;
        	        	        }


        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1284:4: OPTIMIZE_SYMBOL ( no_write_to_bin_log )? TABLE_SYMBOL qualified_identifier_list
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        OPTIMIZE_SYMBOL1407 = (pANTLR3_COMMON_TOKEN) MATCHT(OPTIMIZE_SYMBOL, &FOLLOW_OPTIMIZE_SYMBOL_in_table_administration_statement6930);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPTIMIZE_SYMBOL1407_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPTIMIZE_SYMBOL1407));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPTIMIZE_SYMBOL1407_tree);
        	        }

        	        // MySQL.g:1284:20: ( no_write_to_bin_log )?
        	        {
        	            int alt424=2;
        	            switch ( LA(1) )
        	            {
        	                case LOCAL_SYMBOL:
        	                case NO_WRITE_TO_BINLOG_SYMBOL:
        	                	{
        	                		alt424=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt424)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1284:20: no_write_to_bin_log
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_no_write_to_bin_log_in_table_administration_statement6932);
        	        	        no_write_to_bin_log1408=no_write_to_bin_log(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletable_administration_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, no_write_to_bin_log1408.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        TABLE_SYMBOL1409 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_table_administration_statement6935);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TABLE_SYMBOL1409_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL1409));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL1409_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_qualified_identifier_list_in_table_administration_statement6937);
        	        qualified_identifier_list1410=qualified_identifier_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, qualified_identifier_list1410.tree);

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1285:4: REPAIR_SYMBOL ( no_write_to_bin_log )? TABLE_SYMBOL qualified_identifier_list ( repair_option )*
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        REPAIR_SYMBOL1411 = (pANTLR3_COMMON_TOKEN) MATCHT(REPAIR_SYMBOL, &FOLLOW_REPAIR_SYMBOL_in_table_administration_statement6942);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REPAIR_SYMBOL1411_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPAIR_SYMBOL1411));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REPAIR_SYMBOL1411_tree);
        	        }

        	        // MySQL.g:1285:18: ( no_write_to_bin_log )?
        	        {
        	            int alt425=2;
        	            switch ( LA(1) )
        	            {
        	                case LOCAL_SYMBOL:
        	                case NO_WRITE_TO_BINLOG_SYMBOL:
        	                	{
        	                		alt425=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt425)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1285:18: no_write_to_bin_log
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_no_write_to_bin_log_in_table_administration_statement6944);
        	        	        no_write_to_bin_log1412=no_write_to_bin_log(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletable_administration_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, no_write_to_bin_log1412.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        TABLE_SYMBOL1413 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_table_administration_statement6947);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TABLE_SYMBOL1413_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL1413));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL1413_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_qualified_identifier_list_in_table_administration_statement6949);
        	        qualified_identifier_list1414=qualified_identifier_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, qualified_identifier_list1414.tree);

        	        // MySQL.g:1285:78: ( repair_option )*

        	        for (;;)
        	        {
        	            int alt426=2;
        	            switch ( LA(1) )
        	            {
        	            case EXTENDED_SYMBOL:
        	            case QUICK_SYMBOL:
        	            case USE_FRM_SYMBOL:
        	            	{
        	            		alt426=1;
        	            	}
        	                break;

        	            }

        	            switch (alt426)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1285:78: repair_option
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_repair_option_in_table_administration_statement6951);
        	        	        repair_option1415=repair_option(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletable_administration_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, repair_option1415.tree);

        	        	    }
        	        	    break;

        	        	default:
        	        	    goto loop426;	/* break out of the loop */
        	        	    break;
        	            }
        	        }
        	        loop426: ; /* Jump out to here if this rule does not match */


        	    }
        	    break;
        	case 6:
        	    // MySQL.g:1286:4: {...}? => BACKUP_SYMBOL TABLE_SYMBOL table_identifier ( COMMA_SYMBOL table_identifier )* TO_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((SERVER_VERSION < 50500)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"SERVER_VERSION < 50500";
        	                EXCEPTION->ruleName	 = (void *)"table_administration_statement";


        	        }

        	        BACKUP_SYMBOL1416 = (pANTLR3_COMMON_TOKEN) MATCHT(BACKUP_SYMBOL, &FOLLOW_BACKUP_SYMBOL_in_table_administration_statement6961);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BACKUP_SYMBOL1416_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BACKUP_SYMBOL1416));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BACKUP_SYMBOL1416_tree);
        	        }

        	        TABLE_SYMBOL1417 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_table_administration_statement6963);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TABLE_SYMBOL1417_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL1417));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL1417_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_table_identifier_in_table_administration_statement6965);
        	        table_identifier1418=table_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_identifier1418.tree);

        	        // MySQL.g:1286:77: ( COMMA_SYMBOL table_identifier )*

        	        for (;;)
        	        {
        	            int alt427=2;
        	            switch ( LA(1) )
        	            {
        	            case COMMA_SYMBOL:
        	            	{
        	            		alt427=1;
        	            	}
        	                break;

        	            }

        	            switch (alt427)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1286:78: COMMA_SYMBOL table_identifier
        	        	    {
        	        	        COMMA_SYMBOL1419 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_table_administration_statement6968);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletable_administration_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COMMA_SYMBOL1419_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1419));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1419_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_table_identifier_in_table_administration_statement6970);
        	        	        table_identifier1420=table_identifier(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletable_administration_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_identifier1420.tree);

        	        	    }
        	        	    break;

        	        	default:
        	        	    goto loop427;	/* break out of the loop */
        	        	    break;
        	            }
        	        }
        	        loop427: ; /* Jump out to here if this rule does not match */


        	        TO_SYMBOL1421 = (pANTLR3_COMMON_TOKEN) MATCHT(TO_SYMBOL, &FOLLOW_TO_SYMBOL_in_table_administration_statement6974);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TO_SYMBOL1421_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TO_SYMBOL1421));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TO_SYMBOL1421_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_table_administration_statement6976);
        	        string_literal1422=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1422.tree);

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:1287:4: {...}? => RESTORE_SYMBOL TABLE_SYMBOL table_identifier ( COMMA_SYMBOL table_identifier )* FROM_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((SERVER_VERSION < 50500)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"SERVER_VERSION < 50500";
        	                EXCEPTION->ruleName	 = (void *)"table_administration_statement";


        	        }

        	        RESTORE_SYMBOL1423 = (pANTLR3_COMMON_TOKEN) MATCHT(RESTORE_SYMBOL, &FOLLOW_RESTORE_SYMBOL_in_table_administration_statement6985);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        RESTORE_SYMBOL1423_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RESTORE_SYMBOL1423));
        	        ADAPTOR->addChild(ADAPTOR, root_0, RESTORE_SYMBOL1423_tree);
        	        }

        	        TABLE_SYMBOL1424 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_table_administration_statement6987);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TABLE_SYMBOL1424_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL1424));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL1424_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_table_identifier_in_table_administration_statement6989);
        	        table_identifier1425=table_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_identifier1425.tree);

        	        // MySQL.g:1287:78: ( COMMA_SYMBOL table_identifier )*

        	        for (;;)
        	        {
        	            int alt428=2;
        	            switch ( LA(1) )
        	            {
        	            case COMMA_SYMBOL:
        	            	{
        	            		alt428=1;
        	            	}
        	                break;

        	            }

        	            switch (alt428)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1287:79: COMMA_SYMBOL table_identifier
        	        	    {
        	        	        COMMA_SYMBOL1426 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_table_administration_statement6992);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletable_administration_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COMMA_SYMBOL1426_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1426));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1426_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_table_identifier_in_table_administration_statement6994);
        	        	        table_identifier1427=table_identifier(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletable_administration_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_identifier1427.tree);

        	        	    }
        	        	    break;

        	        	default:
        	        	    goto loop428;	/* break out of the loop */
        	        	    break;
        	            }
        	        }
        	        loop428: ; /* Jump out to here if this rule does not match */


        	        FROM_SYMBOL1428 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_table_administration_statement6998);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FROM_SYMBOL1428_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL1428));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL1428_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_table_administration_statement7000);
        	        string_literal1429=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1429.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruletable_administration_statementEx; /* Prevent compiler warnings */
    ruletable_administration_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end table_administration_statement */

/**
 * $ANTLR start check_option
 * MySQL.g:1290:1: check_option : ( FOR_SYMBOL UPGRADE_SYMBOL | QUICK_SYMBOL | FAST_SYMBOL | MEDIUM_SYMBOL | EXTENDED_SYMBOL | CHANGED_SYMBOL );
 */
static MySQLParser_check_option_return
check_option(pMySQLParser ctx)
{
    MySQLParser_check_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    FOR_SYMBOL1430;
    pANTLR3_COMMON_TOKEN    UPGRADE_SYMBOL1431;
    pANTLR3_COMMON_TOKEN    QUICK_SYMBOL1432;
    pANTLR3_COMMON_TOKEN    FAST_SYMBOL1433;
    pANTLR3_COMMON_TOKEN    MEDIUM_SYMBOL1434;
    pANTLR3_COMMON_TOKEN    EXTENDED_SYMBOL1435;
    pANTLR3_COMMON_TOKEN    CHANGED_SYMBOL1436;

    pANTLR3_BASE_TREE FOR_SYMBOL1430_tree;
    pANTLR3_BASE_TREE UPGRADE_SYMBOL1431_tree;
    pANTLR3_BASE_TREE QUICK_SYMBOL1432_tree;
    pANTLR3_BASE_TREE FAST_SYMBOL1433_tree;
    pANTLR3_BASE_TREE MEDIUM_SYMBOL1434_tree;
    pANTLR3_BASE_TREE EXTENDED_SYMBOL1435_tree;
    pANTLR3_BASE_TREE CHANGED_SYMBOL1436_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    FOR_SYMBOL1430       = NULL;
    UPGRADE_SYMBOL1431       = NULL;
    QUICK_SYMBOL1432       = NULL;
    FAST_SYMBOL1433       = NULL;
    MEDIUM_SYMBOL1434       = NULL;
    EXTENDED_SYMBOL1435       = NULL;
    CHANGED_SYMBOL1436       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    FOR_SYMBOL1430_tree   = NULL;
    UPGRADE_SYMBOL1431_tree   = NULL;
    QUICK_SYMBOL1432_tree   = NULL;
    FAST_SYMBOL1433_tree   = NULL;
    MEDIUM_SYMBOL1434_tree   = NULL;
    EXTENDED_SYMBOL1435_tree   = NULL;
    CHANGED_SYMBOL1436_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1290:13: ( FOR_SYMBOL UPGRADE_SYMBOL | QUICK_SYMBOL | FAST_SYMBOL | MEDIUM_SYMBOL | EXTENDED_SYMBOL | CHANGED_SYMBOL )

            ANTLR3_UINT32 alt430;

            alt430=6;

            switch ( LA(1) )
            {
            case FOR_SYMBOL:
            	{
            		alt430=1;
            	}
                break;
            case QUICK_SYMBOL:
            	{
            		alt430=2;
            	}
                break;
            case FAST_SYMBOL:
            	{
            		alt430=3;
            	}
                break;
            case MEDIUM_SYMBOL:
            	{
            		alt430=4;
            	}
                break;
            case EXTENDED_SYMBOL:
            	{
            		alt430=5;
            	}
                break;
            case CHANGED_SYMBOL:
            	{
            		alt430=6;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 430;
                EXCEPTION->state        = 0;


                goto rulecheck_optionEx;

            }

            switch (alt430)
            {
        	case 1:
        	    // MySQL.g:1291:2: FOR_SYMBOL UPGRADE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOR_SYMBOL1430 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_check_option7009);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecheck_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FOR_SYMBOL1430_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL1430));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL1430_tree);
        	        }

        	        UPGRADE_SYMBOL1431 = (pANTLR3_COMMON_TOKEN) MATCHT(UPGRADE_SYMBOL, &FOLLOW_UPGRADE_SYMBOL_in_check_option7011);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecheck_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UPGRADE_SYMBOL1431_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UPGRADE_SYMBOL1431));
        	        ADAPTOR->addChild(ADAPTOR, root_0, UPGRADE_SYMBOL1431_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1291:30: QUICK_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        QUICK_SYMBOL1432 = (pANTLR3_COMMON_TOKEN) MATCHT(QUICK_SYMBOL, &FOLLOW_QUICK_SYMBOL_in_check_option7015);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecheck_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        QUICK_SYMBOL1432_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, QUICK_SYMBOL1432));
        	        ADAPTOR->addChild(ADAPTOR, root_0, QUICK_SYMBOL1432_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1291:45: FAST_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FAST_SYMBOL1433 = (pANTLR3_COMMON_TOKEN) MATCHT(FAST_SYMBOL, &FOLLOW_FAST_SYMBOL_in_check_option7019);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecheck_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FAST_SYMBOL1433_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FAST_SYMBOL1433));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FAST_SYMBOL1433_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1291:59: MEDIUM_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MEDIUM_SYMBOL1434 = (pANTLR3_COMMON_TOKEN) MATCHT(MEDIUM_SYMBOL, &FOLLOW_MEDIUM_SYMBOL_in_check_option7023);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecheck_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MEDIUM_SYMBOL1434_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MEDIUM_SYMBOL1434));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MEDIUM_SYMBOL1434_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1291:75: EXTENDED_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        EXTENDED_SYMBOL1435 = (pANTLR3_COMMON_TOKEN) MATCHT(EXTENDED_SYMBOL, &FOLLOW_EXTENDED_SYMBOL_in_check_option7027);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecheck_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EXTENDED_SYMBOL1435_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXTENDED_SYMBOL1435));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EXTENDED_SYMBOL1435_tree);
        	        }

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:1291:93: CHANGED_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CHANGED_SYMBOL1436 = (pANTLR3_COMMON_TOKEN) MATCHT(CHANGED_SYMBOL, &FOLLOW_CHANGED_SYMBOL_in_check_option7031);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecheck_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CHANGED_SYMBOL1436_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHANGED_SYMBOL1436));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CHANGED_SYMBOL1436_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulecheck_optionEx; /* Prevent compiler warnings */
    rulecheck_optionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end check_option */

/**
 * $ANTLR start repair_option
 * MySQL.g:1294:1: repair_option : ( QUICK_SYMBOL | EXTENDED_SYMBOL | USE_FRM_SYMBOL );
 */
static MySQLParser_repair_option_return
repair_option(pMySQLParser ctx)
{
    MySQLParser_repair_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set1437;

    pANTLR3_BASE_TREE set1437_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1437       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1437_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1294:14: ( QUICK_SYMBOL | EXTENDED_SYMBOL | USE_FRM_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set1437=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == EXTENDED_SYMBOL || LA(1) == QUICK_SYMBOL || LA(1) == USE_FRM_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1437))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto rulerepair_optionEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto rulerepair_optionEx; /* Prevent compiler warnings */
    rulerepair_optionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end repair_option */

/**
 * $ANTLR start install_uninstall_statment
 * MySQL.g:1300:1: install_uninstall_statment : ( INSTALL_SYMBOL PLUGIN_SYMBOL pure_identifier SONAME_SYMBOL string_literal | UNINSTALL_SYMBOL PLUGIN_SYMBOL pure_identifier );
 */
static MySQLParser_install_uninstall_statment_return
install_uninstall_statment(pMySQLParser ctx)
{
    MySQLParser_install_uninstall_statment_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    INSTALL_SYMBOL1438;
    pANTLR3_COMMON_TOKEN    PLUGIN_SYMBOL1439;
    pANTLR3_COMMON_TOKEN    SONAME_SYMBOL1441;
    pANTLR3_COMMON_TOKEN    UNINSTALL_SYMBOL1443;
    pANTLR3_COMMON_TOKEN    PLUGIN_SYMBOL1444;
    MySQLParser_pure_identifier_return pure_identifier1440;
    #undef	RETURN_TYPE_pure_identifier1440
    #define	RETURN_TYPE_pure_identifier1440 MySQLParser_pure_identifier_return

    MySQLParser_string_literal_return string_literal1442;
    #undef	RETURN_TYPE_string_literal1442
    #define	RETURN_TYPE_string_literal1442 MySQLParser_string_literal_return

    MySQLParser_pure_identifier_return pure_identifier1445;
    #undef	RETURN_TYPE_pure_identifier1445
    #define	RETURN_TYPE_pure_identifier1445 MySQLParser_pure_identifier_return

    pANTLR3_BASE_TREE INSTALL_SYMBOL1438_tree;
    pANTLR3_BASE_TREE PLUGIN_SYMBOL1439_tree;
    pANTLR3_BASE_TREE SONAME_SYMBOL1441_tree;
    pANTLR3_BASE_TREE UNINSTALL_SYMBOL1443_tree;
    pANTLR3_BASE_TREE PLUGIN_SYMBOL1444_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    INSTALL_SYMBOL1438       = NULL;
    PLUGIN_SYMBOL1439       = NULL;
    SONAME_SYMBOL1441       = NULL;
    UNINSTALL_SYMBOL1443       = NULL;
    PLUGIN_SYMBOL1444       = NULL;
    pure_identifier1440.tree = NULL;

    string_literal1442.tree = NULL;

    pure_identifier1445.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    INSTALL_SYMBOL1438_tree   = NULL;
    PLUGIN_SYMBOL1439_tree   = NULL;
    SONAME_SYMBOL1441_tree   = NULL;
    UNINSTALL_SYMBOL1443_tree   = NULL;
    PLUGIN_SYMBOL1444_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1300:27: ( INSTALL_SYMBOL PLUGIN_SYMBOL pure_identifier SONAME_SYMBOL string_literal | UNINSTALL_SYMBOL PLUGIN_SYMBOL pure_identifier )

            ANTLR3_UINT32 alt431;

            alt431=2;

            switch ( LA(1) )
            {
            case INSTALL_SYMBOL:
            	{
            		alt431=1;
            	}
                break;
            case UNINSTALL_SYMBOL:
            	{
            		alt431=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 431;
                EXCEPTION->state        = 0;


                goto ruleinstall_uninstall_statmentEx;

            }

            switch (alt431)
            {
        	case 1:
        	    // MySQL.g:1301:2: INSTALL_SYMBOL PLUGIN_SYMBOL pure_identifier SONAME_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        INSTALL_SYMBOL1438 = (pANTLR3_COMMON_TOKEN) MATCHT(INSTALL_SYMBOL, &FOLLOW_INSTALL_SYMBOL_in_install_uninstall_statment7059);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinstall_uninstall_statmentEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INSTALL_SYMBOL1438_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INSTALL_SYMBOL1438));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INSTALL_SYMBOL1438_tree);
        	        }

        	        PLUGIN_SYMBOL1439 = (pANTLR3_COMMON_TOKEN) MATCHT(PLUGIN_SYMBOL, &FOLLOW_PLUGIN_SYMBOL_in_install_uninstall_statment7061);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinstall_uninstall_statmentEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PLUGIN_SYMBOL1439_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PLUGIN_SYMBOL1439));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PLUGIN_SYMBOL1439_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_pure_identifier_in_install_uninstall_statment7063);
        	        pure_identifier1440=pure_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinstall_uninstall_statmentEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier1440.tree);

        	        SONAME_SYMBOL1441 = (pANTLR3_COMMON_TOKEN) MATCHT(SONAME_SYMBOL, &FOLLOW_SONAME_SYMBOL_in_install_uninstall_statment7065);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinstall_uninstall_statmentEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SONAME_SYMBOL1441_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SONAME_SYMBOL1441));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SONAME_SYMBOL1441_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_install_uninstall_statment7067);
        	        string_literal1442=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinstall_uninstall_statmentEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1442.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1302:4: UNINSTALL_SYMBOL PLUGIN_SYMBOL pure_identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        UNINSTALL_SYMBOL1443 = (pANTLR3_COMMON_TOKEN) MATCHT(UNINSTALL_SYMBOL, &FOLLOW_UNINSTALL_SYMBOL_in_install_uninstall_statment7072);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinstall_uninstall_statmentEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UNINSTALL_SYMBOL1443_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNINSTALL_SYMBOL1443));
        	        ADAPTOR->addChild(ADAPTOR, root_0, UNINSTALL_SYMBOL1443_tree);
        	        }

        	        PLUGIN_SYMBOL1444 = (pANTLR3_COMMON_TOKEN) MATCHT(PLUGIN_SYMBOL, &FOLLOW_PLUGIN_SYMBOL_in_install_uninstall_statment7074);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinstall_uninstall_statmentEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PLUGIN_SYMBOL1444_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PLUGIN_SYMBOL1444));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PLUGIN_SYMBOL1444_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_pure_identifier_in_install_uninstall_statment7076);
        	        pure_identifier1445=pure_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinstall_uninstall_statmentEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier1445.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleinstall_uninstall_statmentEx; /* Prevent compiler warnings */
    ruleinstall_uninstall_statmentEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end install_uninstall_statment */

/**
 * $ANTLR start set_statement
 * MySQL.g:1307:1: set_statement : SET_SYMBOL ( option_type )? ( TRANSACTION_SYMBOL set_transaction_characteristic | ( ONE_SHOT_SYMBOL )? variable_assignment ( COMMA_SYMBOL option_value_list )? ) ;
 */
static MySQLParser_set_statement_return
set_statement(pMySQLParser ctx)
{
    MySQLParser_set_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    SET_SYMBOL1446;
    pANTLR3_COMMON_TOKEN    TRANSACTION_SYMBOL1448;
    pANTLR3_COMMON_TOKEN    ONE_SHOT_SYMBOL1450;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1452;
    MySQLParser_option_type_return option_type1447;
    #undef	RETURN_TYPE_option_type1447
    #define	RETURN_TYPE_option_type1447 MySQLParser_option_type_return

    MySQLParser_set_transaction_characteristic_return set_transaction_characteristic1449;
    #undef	RETURN_TYPE_set_transaction_characteristic1449
    #define	RETURN_TYPE_set_transaction_characteristic1449 MySQLParser_set_transaction_characteristic_return

    MySQLParser_variable_assignment_return variable_assignment1451;
    #undef	RETURN_TYPE_variable_assignment1451
    #define	RETURN_TYPE_variable_assignment1451 MySQLParser_variable_assignment_return

    MySQLParser_option_value_list_return option_value_list1453;
    #undef	RETURN_TYPE_option_value_list1453
    #define	RETURN_TYPE_option_value_list1453 MySQLParser_option_value_list_return

    pANTLR3_BASE_TREE SET_SYMBOL1446_tree;
    pANTLR3_BASE_TREE TRANSACTION_SYMBOL1448_tree;
    pANTLR3_BASE_TREE ONE_SHOT_SYMBOL1450_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1452_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SET_SYMBOL1446       = NULL;
    TRANSACTION_SYMBOL1448       = NULL;
    ONE_SHOT_SYMBOL1450       = NULL;
    COMMA_SYMBOL1452       = NULL;
    option_type1447.tree = NULL;

    set_transaction_characteristic1449.tree = NULL;

    variable_assignment1451.tree = NULL;

    option_value_list1453.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SET_SYMBOL1446_tree   = NULL;
    TRANSACTION_SYMBOL1448_tree   = NULL;
    ONE_SHOT_SYMBOL1450_tree   = NULL;
    COMMA_SYMBOL1452_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1307:14: ( SET_SYMBOL ( option_type )? ( TRANSACTION_SYMBOL set_transaction_characteristic | ( ONE_SHOT_SYMBOL )? variable_assignment ( COMMA_SYMBOL option_value_list )? ) )
        // MySQL.g:1308:2: SET_SYMBOL ( option_type )? ( TRANSACTION_SYMBOL set_transaction_characteristic | ( ONE_SHOT_SYMBOL )? variable_assignment ( COMMA_SYMBOL option_value_list )? )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            SET_SYMBOL1446 = (pANTLR3_COMMON_TOKEN) MATCHT(SET_SYMBOL, &FOLLOW_SET_SYMBOL_in_set_statement7087);
            if  (HASEXCEPTION())
            {
                goto ruleset_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SET_SYMBOL1446_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SET_SYMBOL1446));
            ADAPTOR->addChild(ADAPTOR, root_0, SET_SYMBOL1446_tree);
            }

            // MySQL.g:1308:13: ( option_type )?
            {
                int alt432=2;
                switch ( LA(1) )
                {
                    case GLOBAL_SYMBOL:
                    case LOCAL_SYMBOL:
                    case SESSION_SYMBOL:
                    	{
                    		switch ( LA(2) )
                    		{
                    		    case ACTION_SYMBOL:
                    		    case ADDDATE_SYMBOL:
                    		    case AFTER_SYMBOL:
                    		    case AGAINST_SYMBOL:
                    		    case AGGREGATE_SYMBOL:
                    		    case ALGORITHM_SYMBOL:
                    		    case ANALYZE_SYMBOL:
                    		    case ANY_SYMBOL:
                    		    case ASCII_SYMBOL:
                    		    case AT_AT_SIGN_SYMBOL:
                    		    case AT_SIGN_SYMBOL:
                    		    case AT_SYMBOL:
                    		    case AUTHORS_SYMBOL:
                    		    case AUTOEXTEND_SIZE_SYMBOL:
                    		    case AUTO_INCREMENT_SYMBOL:
                    		    case AVG_ROW_LENGTH_SYMBOL:
                    		    case AVG_SYMBOL:
                    		    case BACKUP_SYMBOL:
                    		    case BACK_TICK_QUOTED_ID:
                    		    case BEGIN_SYMBOL:
                    		    case BINLOG_SYMBOL:
                    		    case BIT_SYMBOL:
                    		    case BLOCK_SYMBOL:
                    		    case BOOLEAN_SYMBOL:
                    		    case BOOL_SYMBOL:
                    		    case BTREE_SYMBOL:
                    		    case BYTE_SYMBOL:
                    		    case CACHE_SYMBOL:
                    		    case CASCADED_SYMBOL:
                    		    case CATALOG_NAME_SYMBOL:
                    		    case CHAIN_SYMBOL:
                    		    case CHANGED_SYMBOL:
                    		    case CHARSET_SYMBOL:
                    		    case CHAR_SYMBOL:
                    		    case CHECKSUM_SYMBOL:
                    		    case CIPHER_SYMBOL:
                    		    case CLASS_ORIGIN_SYMBOL:
                    		    case CLIENT_SYMBOL:
                    		    case CLOSE_SYMBOL:
                    		    case COALESCE_SYMBOL:
                    		    case CODE_SYMBOL:
                    		    case COLLATION_SYMBOL:
                    		    case COLUMNS_SYMBOL:
                    		    case COLUMN_FORMAT_SYMBOL:
                    		    case COLUMN_NAME_SYMBOL:
                    		    case COMMENT_SYMBOL:
                    		    case COMMITTED_SYMBOL:
                    		    case COMMIT_SYMBOL:
                    		    case COMPACT_SYMBOL:
                    		    case COMPLETION_SYMBOL:
                    		    case COMPRESSED_SYMBOL:
                    		    case CONCURRENT_SYMBOL:
                    		    case CONNECTION_SYMBOL:
                    		    case CONSISTENT_SYMBOL:
                    		    case CONSTRAINT_CATALOG_SYMBOL:
                    		    case CONSTRAINT_NAME_SYMBOL:
                    		    case CONSTRAINT_SCHEMA_SYMBOL:
                    		    case CONTAINS_SYMBOL:
                    		    case CONTEXT_SYMBOL:
                    		    case CONTRIBUTORS_SYMBOL:
                    		    case CPU_SYMBOL:
                    		    case CUBE_SYMBOL:
                    		    case CURRENT_SYMBOL:
                    		    case CURSOR_NAME_SYMBOL:
                    		    case DATAFILE_SYMBOL:
                    		    case DATA_SYMBOL:
                    		    case DATETIME_SYMBOL:
                    		    case DATE_SYMBOL:
                    		    case DAY_SYMBOL:
                    		    case DEALLOCATE_SYMBOL:
                    		    case DEFAULT_AUTH_SYMBOL:
                    		    case DEFAULT_SYMBOL:
                    		    case DEFINER_SYMBOL:
                    		    case DELAY_KEY_WRITE_SYMBOL:
                    		    case DES_KEY_FILE_SYMBOL:
                    		    case DIAGNOSTICS_SYMBOL:
                    		    case DIRECTORY_SYMBOL:
                    		    case DISABLE_SYMBOL:
                    		    case DISCARD_SYMBOL:
                    		    case DISK_SYMBOL:
                    		    case DOUBLE_QUOTED_TEXT:
                    		    case DO_SYMBOL:
                    		    case DUMPFILE_SYMBOL:
                    		    case DUPLICATE_SYMBOL:
                    		    case DYNAMIC_SYMBOL:
                    		    case ENABLE_SYMBOL:
                    		    case ENDS_SYMBOL:
                    		    case END_SYMBOL:
                    		    case ENGINES_SYMBOL:
                    		    case ENGINE_SYMBOL:
                    		    case ENUM_SYMBOL:
                    		    case ERRORS_SYMBOL:
                    		    case ERROR_SYMBOL:
                    		    case ESCAPE_SYMBOL:
                    		    case EVENTS_SYMBOL:
                    		    case EVENT_SYMBOL:
                    		    case EVERY_SYMBOL:
                    		    case EXECUTE_SYMBOL:
                    		    case EXPANSION_SYMBOL:
                    		    case EXPORT_SYMBOL:
                    		    case EXTENDED_SYMBOL:
                    		    case EXTENT_SIZE_SYMBOL:
                    		    case FAST_SYMBOL:
                    		    case FAULTS_SYMBOL:
                    		    case FILE_SYMBOL:
                    		    case FIRST_SYMBOL:
                    		    case FIXED_SYMBOL:
                    		    case FLUSH_SYMBOL:
                    		    case FORMAT_SYMBOL:
                    		    case FOUND_SYMBOL:
                    		    case FULL_SYMBOL:
                    		    case FUNCTION_SYMBOL:
                    		    case GENERAL_SYMBOL:
                    		    case GEOMETRYCOLLECTION_SYMBOL:
                    		    case GEOMETRY_SYMBOL:
                    		    case GET_FORMAT_SYMBOL:
                    		    case GLOBAL_SYMBOL:
                    		    case GRANTS_SYMBOL:
                    		    case HANDLER_SYMBOL:
                    		    case HASH_SYMBOL:
                    		    case HELP_SYMBOL:
                    		    case HOSTS_SYMBOL:
                    		    case HOST_SYMBOL:
                    		    case HOUR_SYMBOL:
                    		    case IDENTIFIED_SYMBOL:
                    		    case IDENTIFIER:
                    		    case IGNORE_SERVER_IDS_SYMBOL:
                    		    case IMPORT_SYMBOL:
                    		    case INDEXES_SYMBOL:
                    		    case INITIAL_SIZE_SYMBOL:
                    		    case INNODB_SYMBOL:
                    		    case INSERT_METHOD_SYMBOL:
                    		    case INSTALL_SYMBOL:
                    		    case INVOKER_SYMBOL:
                    		    case IO_SYMBOL:
                    		    case IPC_SYMBOL:
                    		    case ISOLATION_SYMBOL:
                    		    case ISSUER_SYMBOL:
                    		    case KEY_BLOCK_SIZE_SYMBOL:
                    		    case LANGUAGE_SYMBOL:
                    		    case LAST_SYMBOL:
                    		    case LEAVES_SYMBOL:
                    		    case LESS_SYMBOL:
                    		    case LEVEL_SYMBOL:
                    		    case LINESTRING_SYMBOL:
                    		    case LIST_SYMBOL:
                    		    case LOCAL_SYMBOL:
                    		    case LOCKS_SYMBOL:
                    		    case LOGFILE_SYMBOL:
                    		    case LOGS_SYMBOL:
                    		    case MASTER_AUTO_POSITION_SYMBOL:
                    		    case MASTER_CONNECT_RETRY_SYMBOL:
                    		    case MASTER_DELAY_SYMBOL:
                    		    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    		    case MASTER_HOST_SYMBOL:
                    		    case MASTER_LOG_FILE_SYMBOL:
                    		    case MASTER_LOG_POS_SYMBOL:
                    		    case MASTER_PASSWORD_SYMBOL:
                    		    case MASTER_PORT_SYMBOL:
                    		    case MASTER_RETRY_COUNT_SYMBOL:
                    		    case MASTER_SERVER_ID_SYMBOL:
                    		    case MASTER_SSL_CAPATH_SYMBOL:
                    		    case MASTER_SSL_CA_SYMBOL:
                    		    case MASTER_SSL_CERT_SYMBOL:
                    		    case MASTER_SSL_CIPHER_SYMBOL:
                    		    case MASTER_SSL_CRLPATH_SYMBOL:
                    		    case MASTER_SSL_CRL_SYMBOL:
                    		    case MASTER_SSL_KEY_SYMBOL:
                    		    case MASTER_SSL_SYMBOL:
                    		    case MASTER_SYMBOL:
                    		    case MASTER_USER_SYMBOL:
                    		    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    		    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    		    case MAX_ROWS_SYMBOL:
                    		    case MAX_SIZE_SYMBOL:
                    		    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    		    case MAX_USER_CONNECTIONS_SYMBOL:
                    		    case MEDIUM_SYMBOL:
                    		    case MEMORY_SYMBOL:
                    		    case MERGE_SYMBOL:
                    		    case MESSAGE_TEXT_SYMBOL:
                    		    case MICROSECOND_SYMBOL:
                    		    case MIGRATE_SYMBOL:
                    		    case MINUTE_SYMBOL:
                    		    case MIN_ROWS_SYMBOL:
                    		    case MODE_SYMBOL:
                    		    case MODIFY_SYMBOL:
                    		    case MONTH_SYMBOL:
                    		    case MULTILINESTRING_SYMBOL:
                    		    case MULTIPOINT_SYMBOL:
                    		    case MULTIPOLYGON_SYMBOL:
                    		    case MUTEX_SYMBOL:
                    		    case MYSQL_ERRNO_SYMBOL:
                    		    case NAMES_SYMBOL:
                    		    case NAME_SYMBOL:
                    		    case NATIONAL_SYMBOL:
                    		    case NCHAR_SYMBOL:
                    		    case NDBCLUSTER_SYMBOL:
                    		    case NEW_SYMBOL:
                    		    case NEXT_SYMBOL:
                    		    case NODEGROUP_SYMBOL:
                    		    case NONE_SYMBOL:
                    		    case NO_SYMBOL:
                    		    case NO_WAIT_SYMBOL:
                    		    case NUMBER_SYMBOL:
                    		    case NVARCHAR_SYMBOL:
                    		    case OFFSET_SYMBOL:
                    		    case OLD_PASSWORD_SYMBOL:
                    		    case ONE_SHOT_SYMBOL:
                    		    case ONE_SYMBOL:
                    		    case OPEN_SYMBOL:
                    		    case OPTIONS_SYMBOL:
                    		    case OWNER_SYMBOL:
                    		    case PACK_KEYS_SYMBOL:
                    		    case PAGE_SYMBOL:
                    		    case PARSER_SYMBOL:
                    		    case PARTIAL_SYMBOL:
                    		    case PARTITIONING_SYMBOL:
                    		    case PARTITIONS_SYMBOL:
                    		    case PARTITION_SYMBOL:
                    		    case PASSWORD_SYMBOL:
                    		    case PHASE_SYMBOL:
                    		    case PLUGINS_SYMBOL:
                    		    case PLUGIN_DIR_SYMBOL:
                    		    case PLUGIN_SYMBOL:
                    		    case POINT_SYMBOL:
                    		    case POLYGON_SYMBOL:
                    		    case PORT_SYMBOL:
                    		    case PREPARE_SYMBOL:
                    		    case PRESERVE_SYMBOL:
                    		    case PREV_SYMBOL:
                    		    case PRIVILEGES_SYMBOL:
                    		    case PROCESSLIST_SYMBOL:
                    		    case PROCESS_SYMBOL:
                    		    case PROFILES_SYMBOL:
                    		    case PROFILE_SYMBOL:
                    		    case PROXY_SYMBOL:
                    		    case QUARTER_SYMBOL:
                    		    case QUERY_SYMBOL:
                    		    case QUICK_SYMBOL:
                    		    case READ_ONLY_SYMBOL:
                    		    case REBUILD_SYMBOL:
                    		    case RECOVER_SYMBOL:
                    		    case REDOFILE_SYMBOL:
                    		    case REDO_BUFFER_SIZE_SYMBOL:
                    		    case REDUNDANT_SYMBOL:
                    		    case RELAYLOG_SYMBOL:
                    		    case RELAY_LOG_FILE_SYMBOL:
                    		    case RELAY_LOG_POS_SYMBOL:
                    		    case RELAY_SYMBOL:
                    		    case RELAY_THREAD_SYMBOL:
                    		    case RELOAD_SYMBOL:
                    		    case REMOVE_SYMBOL:
                    		    case REORGANIZE_SYMBOL:
                    		    case REPAIR_SYMBOL:
                    		    case REPEATABLE_SYMBOL:
                    		    case REPLICATION_SYMBOL:
                    		    case RESET_SYMBOL:
                    		    case RESTORE_SYMBOL:
                    		    case RESUME_SYMBOL:
                    		    case RETURNED_SQLSTATE_SYMBOL:
                    		    case RETURNS_SYMBOL:
                    		    case REVERSE_SYMBOL:
                    		    case ROLLBACK_SYMBOL:
                    		    case ROLLUP_SYMBOL:
                    		    case ROUTINE_SYMBOL:
                    		    case ROWS_SYMBOL:
                    		    case ROW_COUNT_SYMBOL:
                    		    case ROW_FORMAT_SYMBOL:
                    		    case ROW_SYMBOL:
                    		    case RTREE_SYMBOL:
                    		    case SAVEPOINT_SYMBOL:
                    		    case SCHEDULE_SYMBOL:
                    		    case SCHEMA_NAME_SYMBOL:
                    		    case SECOND_SYMBOL:
                    		    case SECURITY_SYMBOL:
                    		    case SERIALIZABLE_SYMBOL:
                    		    case SERIAL_SYMBOL:
                    		    case SERVER_SYMBOL:
                    		    case SESSION_SYMBOL:
                    		    case SHARE_SYMBOL:
                    		    case SHUTDOWN_SYMBOL:
                    		    case SIGNED_SYMBOL:
                    		    case SIMPLE_SYMBOL:
                    		    case SLAVE_SYMBOL:
                    		    case SLOW_SYMBOL:
                    		    case SNAPSHOT_SYMBOL:
                    		    case SOCKET_SYMBOL:
                    		    case SONAME_SYMBOL:
                    		    case SOUNDS_SYMBOL:
                    		    case SOURCE_SYMBOL:
                    		    case SQL_AFTER_GTIDS_SYMBOL:
                    		    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    		    case SQL_BEFORE_GTIDS_SYMBOL:
                    		    case SQL_BUFFER_RESULT_SYMBOL:
                    		    case SQL_CACHE_SYMBOL:
                    		    case SQL_NO_CACHE_SYMBOL:
                    		    case SQL_THREAD_SYMBOL:
                    		    case STARTS_SYMBOL:
                    		    case START_SYMBOL:
                    		    case STATS_AUTO_RECALC_SYMBOL:
                    		    case STATS_PERSISTENT_SYMBOL:
                    		    case STATS_SAMPLE_PAGES_SYMBOL:
                    		    case STATUS_SYMBOL:
                    		    case STOP_SYMBOL:
                    		    case STORAGE_SYMBOL:
                    		    case STRING_SYMBOL:
                    		    case SUBCLASS_ORIGIN_SYMBOL:
                    		    case SUBDATE_SYMBOL:
                    		    case SUBJECT_SYMBOL:
                    		    case SUBPARTITIONS_SYMBOL:
                    		    case SUBPARTITION_SYMBOL:
                    		    case SUPER_SYMBOL:
                    		    case SUSPEND_SYMBOL:
                    		    case SWAPS_SYMBOL:
                    		    case SWITCHES_SYMBOL:
                    		    case TABLESPACE_SYMBOL:
                    		    case TABLES_SYMBOL:
                    		    case TABLE_CHECKSUM_SYMBOL:
                    		    case TABLE_NAME_SYMBOL:
                    		    case TEMPORARY_SYMBOL:
                    		    case TEMPTABLE_SYMBOL:
                    		    case TEXT_SYMBOL:
                    		    case THAN_SYMBOL:
                    		    case TIMESTAMP_ADD_SYMBOL:
                    		    case TIMESTAMP_DIFF_SYMBOL:
                    		    case TIMESTAMP_SYMBOL:
                    		    case TIME_SYMBOL:
                    		    case TRANSACTION_SYMBOL:
                    		    case TRIGGERS_SYMBOL:
                    		    case TRUNCATE_SYMBOL:
                    		    case TYPES_SYMBOL:
                    		    case TYPE_SYMBOL:
                    		    case UDF_RETURNS_SYMBOL:
                    		    case UNCOMMITTED_SYMBOL:
                    		    case UNDEFINED_SYMBOL:
                    		    case UNDOFILE_SYMBOL:
                    		    case UNDO_BUFFER_SIZE_SYMBOL:
                    		    case UNICODE_SYMBOL:
                    		    case UNINSTALL_SYMBOL:
                    		    case UNKNOWN_SYMBOL:
                    		    case UNTIL_SYMBOL:
                    		    case UPGRADE_SYMBOL:
                    		    case USER_RESOURCES_SYMBOL:
                    		    case USER_SYMBOL:
                    		    case USE_FRM_SYMBOL:
                    		    case VALUE_SYMBOL:
                    		    case VARIABLES_SYMBOL:
                    		    case VIEW_SYMBOL:
                    		    case WAIT_SYMBOL:
                    		    case WARNINGS_SYMBOL:
                    		    case WEEK_SYMBOL:
                    		    case WEIGHT_STRING_SYMBOL:
                    		    case WORK_SYMBOL:
                    		    case WRAPPER_SYMBOL:
                    		    case X509_SYMBOL:
                    		    case XA_SYMBOL:
                    		    case XML_SYMBOL:
                    		    case YEAR_SYMBOL:
                    		    	{
                    		    		alt432=1;
                    		    	}
                    		        break;
                    		}

                    	}
                        break;
                }

                switch (alt432)
                {
            	case 1:
            	    // MySQL.g:1308:13: option_type
            	    {
            	        FOLLOWPUSH(FOLLOW_option_type_in_set_statement7089);
            	        option_type1447=option_type(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, option_type1447.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1309:3: ( TRANSACTION_SYMBOL set_transaction_characteristic | ( ONE_SHOT_SYMBOL )? variable_assignment ( COMMA_SYMBOL option_value_list )? )
            {
                int alt435=2;
                {
                    int LA435_0 = LA(1);
                    if ( (LA435_0 == TRANSACTION_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case ISOLATION_SYMBOL:
                        case READ_SYMBOL:
                        	{
                        		alt435=1;
                        	}
                            break;
                        case ASSIGN_OPERATOR:
                        case DOT_SYMBOL:
                        case EQUAL_OPERATOR:
                        	{
                        		alt435=2;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 435;
                            EXCEPTION->state        = 1;


                            goto ruleset_statementEx;

                        }

                    }
                    else if ( (LA435_0 == BACK_TICK_QUOTED_ID || LA435_0 == IDENTIFIER || LA435_0 == NAMES_SYMBOL || LA435_0 == ONE_SHOT_SYMBOL))
                    {
                        alt435=2;
                    }
                    else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA435_0 == DOUBLE_QUOTED_TEXT))
                    {
                        alt435=2;
                    }
                    else if ( (((LA435_0 >= ACTION_SYMBOL) && (LA435_0 <= ADDDATE_SYMBOL)) || ((LA435_0 >= AFTER_SYMBOL) && (LA435_0 <= ALGORITHM_SYMBOL)) || LA435_0 == ANALYZE_SYMBOL || ((LA435_0 >= ANY_SYMBOL) && (LA435_0 <= ASCII_SYMBOL)) || ((LA435_0 >= AT_AT_SIGN_SYMBOL) && (LA435_0 <= BACKUP_SYMBOL)) || LA435_0 == BEGIN_SYMBOL || LA435_0 == BINLOG_SYMBOL || LA435_0 == BIT_SYMBOL || ((LA435_0 >= BLOCK_SYMBOL) && (LA435_0 <= BOOL_SYMBOL)) || ((LA435_0 >= BTREE_SYMBOL) && (LA435_0 <= BYTE_SYMBOL)) || LA435_0 == CACHE_SYMBOL || LA435_0 == CASCADED_SYMBOL || ((LA435_0 >= CATALOG_NAME_SYMBOL) && (LA435_0 <= CHANGED_SYMBOL)) || ((LA435_0 >= CHARSET_SYMBOL) && (LA435_0 <= CHECKSUM_SYMBOL)) || ((LA435_0 >= CIPHER_SYMBOL) && (LA435_0 <= CLIENT_SYMBOL)) || ((LA435_0 >= CLOSE_SYMBOL) && (LA435_0 <= CODE_SYMBOL)) || LA435_0 == COLLATION_SYMBOL || ((LA435_0 >= COLUMNS_SYMBOL) && (LA435_0 <= COLUMN_NAME_SYMBOL)) || ((LA435_0 >= COMMENT_SYMBOL) && (LA435_0 <= COMPRESSED_SYMBOL)) || LA435_0 == CONCURRENT_SYMBOL || ((LA435_0 >= CONNECTION_SYMBOL) && (LA435_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA435_0 >= CONTAINS_SYMBOL) && (LA435_0 <= CONTEXT_SYMBOL)) || LA435_0 == CONTRIBUTORS_SYMBOL || LA435_0 == CPU_SYMBOL || LA435_0 == CUBE_SYMBOL || LA435_0 == CURRENT_SYMBOL || LA435_0 == CURSOR_NAME_SYMBOL || ((LA435_0 >= DATAFILE_SYMBOL) && (LA435_0 <= DATETIME_SYMBOL)) || LA435_0 == DATE_SYMBOL || ((LA435_0 >= DAY_SYMBOL) && (LA435_0 <= DEALLOCATE_SYMBOL)) || ((LA435_0 >= DEFAULT_AUTH_SYMBOL) && (LA435_0 <= DEFINER_SYMBOL)) || LA435_0 == DELAY_KEY_WRITE_SYMBOL || LA435_0 == DES_KEY_FILE_SYMBOL || LA435_0 == DIAGNOSTICS_SYMBOL || ((LA435_0 >= DIRECTORY_SYMBOL) && (LA435_0 <= DISK_SYMBOL)) || LA435_0 == DO_SYMBOL || ((LA435_0 >= DUMPFILE_SYMBOL) && (LA435_0 <= DYNAMIC_SYMBOL)) || LA435_0 == ENABLE_SYMBOL || LA435_0 == ENDS_SYMBOL || ((LA435_0 >= END_SYMBOL) && (LA435_0 <= ENUM_SYMBOL)) || ((LA435_0 >= ERRORS_SYMBOL) && (LA435_0 <= ERROR_SYMBOL)) || ((LA435_0 >= ESCAPE_SYMBOL) && (LA435_0 <= EVERY_SYMBOL)) || LA435_0 == EXECUTE_SYMBOL || LA435_0 == EXPANSION_SYMBOL || LA435_0 == EXPORT_SYMBOL || ((LA435_0 >= EXTENDED_SYMBOL) && (LA435_0 <= EXTENT_SIZE_SYMBOL)) || ((LA435_0 >= FAST_SYMBOL) && (LA435_0 <= FAULTS_SYMBOL)) || ((LA435_0 >= FILE_SYMBOL) && (LA435_0 <= FIXED_SYMBOL)) || LA435_0 == FLUSH_SYMBOL || LA435_0 == FORMAT_SYMBOL || LA435_0 == FOUND_SYMBOL || LA435_0 == FULL_SYMBOL || ((LA435_0 >= FUNCTION_SYMBOL) && (LA435_0 <= GET_FORMAT_SYMBOL)) || ((LA435_0 >= GLOBAL_SYMBOL) && (LA435_0 <= GRANTS_SYMBOL)) || ((LA435_0 >= HANDLER_SYMBOL) && (LA435_0 <= HASH_SYMBOL)) || LA435_0 == HELP_SYMBOL || ((LA435_0 >= HOSTS_SYMBOL) && (LA435_0 <= HOST_SYMBOL)) || ((LA435_0 >= HOUR_SYMBOL) && (LA435_0 <= IDENTIFIED_SYMBOL)) || LA435_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA435_0 >= IMPORT_SYMBOL) && (LA435_0 <= INDEXES_SYMBOL)) || LA435_0 == INITIAL_SIZE_SYMBOL || LA435_0 == INNODB_SYMBOL || LA435_0 == INSERT_METHOD_SYMBOL || LA435_0 == INSTALL_SYMBOL || LA435_0 == INVOKER_SYMBOL || LA435_0 == IO_SYMBOL || ((LA435_0 >= IPC_SYMBOL) && (LA435_0 <= ISSUER_SYMBOL)) || LA435_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA435_0 >= LANGUAGE_SYMBOL) && (LA435_0 <= LAST_SYMBOL)) || LA435_0 == LEAVES_SYMBOL || LA435_0 == LESS_SYMBOL || LA435_0 == LEVEL_SYMBOL || LA435_0 == LINESTRING_SYMBOL || LA435_0 == LIST_SYMBOL || LA435_0 == LOCAL_SYMBOL || LA435_0 == LOCKS_SYMBOL || LA435_0 == LOGFILE_SYMBOL || LA435_0 == LOGS_SYMBOL || LA435_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA435_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA435_0 <= MASTER_SSL_SYMBOL)) || ((LA435_0 >= MASTER_SYMBOL) && (LA435_0 <= MASTER_USER_SYMBOL)) || ((LA435_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA435_0 <= MAX_SIZE_SYMBOL)) || ((LA435_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA435_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA435_0 >= MEDIUM_SYMBOL) && (LA435_0 <= MICROSECOND_SYMBOL)) || LA435_0 == MIGRATE_SYMBOL || ((LA435_0 >= MINUTE_SYMBOL) && (LA435_0 <= MIN_ROWS_SYMBOL)) || LA435_0 == MODE_SYMBOL || LA435_0 == MODIFY_SYMBOL || ((LA435_0 >= MONTH_SYMBOL) && (LA435_0 <= MULTILINESTRING_SYMBOL)) || ((LA435_0 >= MULTIPOINT_SYMBOL) && (LA435_0 <= MULTIPOLYGON_SYMBOL)) || ((LA435_0 >= MUTEX_SYMBOL) && (LA435_0 <= MYSQL_ERRNO_SYMBOL)) || ((LA435_0 >= NAME_SYMBOL) && (LA435_0 <= NATIONAL_SYMBOL)) || LA435_0 == NCHAR_SYMBOL || LA435_0 == NDBCLUSTER_SYMBOL || ((LA435_0 >= NEW_SYMBOL) && (LA435_0 <= NONE_SYMBOL)) || ((LA435_0 >= NO_SYMBOL) && (LA435_0 <= NO_WAIT_SYMBOL)) || LA435_0 == NUMBER_SYMBOL || LA435_0 == NVARCHAR_SYMBOL || ((LA435_0 >= OFFSET_SYMBOL) && (LA435_0 <= OLD_PASSWORD_SYMBOL)) || LA435_0 == ONE_SYMBOL || LA435_0 == OPEN_SYMBOL || LA435_0 == OPTIONS_SYMBOL || ((LA435_0 >= OWNER_SYMBOL) && (LA435_0 <= PAGE_SYMBOL)) || ((LA435_0 >= PARSER_SYMBOL) && (LA435_0 <= PARTITION_SYMBOL)) || ((LA435_0 >= PASSWORD_SYMBOL) && (LA435_0 <= PLUGIN_SYMBOL)) || ((LA435_0 >= POINT_SYMBOL) && (LA435_0 <= PORT_SYMBOL)) || ((LA435_0 >= PREPARE_SYMBOL) && (LA435_0 <= PREV_SYMBOL)) || LA435_0 == PRIVILEGES_SYMBOL || ((LA435_0 >= PROCESSLIST_SYMBOL) && (LA435_0 <= PROXY_SYMBOL)) || ((LA435_0 >= QUARTER_SYMBOL) && (LA435_0 <= QUICK_SYMBOL)) || LA435_0 == READ_ONLY_SYMBOL || ((LA435_0 >= REBUILD_SYMBOL) && (LA435_0 <= REDUNDANT_SYMBOL)) || ((LA435_0 >= RELAYLOG_SYMBOL) && (LA435_0 <= RELAY_THREAD_SYMBOL)) || ((LA435_0 >= RELOAD_SYMBOL) && (LA435_0 <= REMOVE_SYMBOL)) || ((LA435_0 >= REORGANIZE_SYMBOL) && (LA435_0 <= REPEATABLE_SYMBOL)) || LA435_0 == REPLICATION_SYMBOL || LA435_0 == RESET_SYMBOL || LA435_0 == RESTORE_SYMBOL || ((LA435_0 >= RESUME_SYMBOL) && (LA435_0 <= RETURNS_SYMBOL)) || LA435_0 == REVERSE_SYMBOL || ((LA435_0 >= ROLLBACK_SYMBOL) && (LA435_0 <= SCHEDULE_SYMBOL)) || LA435_0 == SCHEMA_NAME_SYMBOL || ((LA435_0 >= SECOND_SYMBOL) && (LA435_0 <= SECURITY_SYMBOL)) || ((LA435_0 >= SERIALIZABLE_SYMBOL) && (LA435_0 <= SERIAL_SYMBOL)) || ((LA435_0 >= SERVER_SYMBOL) && (LA435_0 <= SESSION_SYMBOL)) || LA435_0 == SHARE_SYMBOL || LA435_0 == SHUTDOWN_SYMBOL || ((LA435_0 >= SIGNED_SYMBOL) && (LA435_0 <= SIMPLE_SYMBOL)) || ((LA435_0 >= SLAVE_SYMBOL) && (LA435_0 <= SLOW_SYMBOL)) || ((LA435_0 >= SNAPSHOT_SYMBOL) && (LA435_0 <= SOURCE_SYMBOL)) || ((LA435_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA435_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA435_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA435_0 <= SQL_CACHE_SYMBOL)) || LA435_0 == SQL_NO_CACHE_SYMBOL || LA435_0 == SQL_THREAD_SYMBOL || ((LA435_0 >= STARTS_SYMBOL) && (LA435_0 <= STATUS_SYMBOL)) || ((LA435_0 >= STOP_SYMBOL) && (LA435_0 <= STORAGE_SYMBOL)) || ((LA435_0 >= STRING_SYMBOL) && (LA435_0 <= SUBPARTITION_SYMBOL)) || ((LA435_0 >= SUPER_SYMBOL) && (LA435_0 <= SWITCHES_SYMBOL)) || ((LA435_0 >= TABLESPACE_SYMBOL) && (LA435_0 <= TABLE_NAME_SYMBOL)) || ((LA435_0 >= TEMPORARY_SYMBOL) && (LA435_0 <= TEMPTABLE_SYMBOL)) || ((LA435_0 >= TEXT_SYMBOL) && (LA435_0 <= THAN_SYMBOL)) || ((LA435_0 >= TIMESTAMP_ADD_SYMBOL) && (LA435_0 <= TIME_SYMBOL)) || LA435_0 == TRIGGERS_SYMBOL || ((LA435_0 >= TRUNCATE_SYMBOL) && (LA435_0 <= UDF_RETURNS_SYMBOL)) || ((LA435_0 >= UNCOMMITTED_SYMBOL) && (LA435_0 <= UNDEFINED_SYMBOL)) || ((LA435_0 >= UNDOFILE_SYMBOL) && (LA435_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA435_0 >= UNICODE_SYMBOL) && (LA435_0 <= UNINSTALL_SYMBOL)) || LA435_0 == UNKNOWN_SYMBOL || LA435_0 == UNTIL_SYMBOL || LA435_0 == UPGRADE_SYMBOL || ((LA435_0 >= USER_RESOURCES_SYMBOL) && (LA435_0 <= USE_FRM_SYMBOL)) || LA435_0 == VALUE_SYMBOL || LA435_0 == VARIABLES_SYMBOL || ((LA435_0 >= VIEW_SYMBOL) && (LA435_0 <= WEIGHT_STRING_SYMBOL)) || ((LA435_0 >= WORK_SYMBOL) && (LA435_0 <= WRAPPER_SYMBOL)) || LA435_0 == X509_SYMBOL || ((LA435_0 >= XA_SYMBOL) && (LA435_0 <= XML_SYMBOL)) || LA435_0 == YEAR_SYMBOL))
                    {
                        alt435=2;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 435;
                        EXCEPTION->state        = 0;


                        goto ruleset_statementEx;

                    }
                }
                switch (alt435)
                {
            	case 1:
            	    // MySQL.g:1310:5: TRANSACTION_SYMBOL set_transaction_characteristic
            	    {
            	        TRANSACTION_SYMBOL1448 = (pANTLR3_COMMON_TOKEN) MATCHT(TRANSACTION_SYMBOL, &FOLLOW_TRANSACTION_SYMBOL_in_set_statement7100);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TRANSACTION_SYMBOL1448_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TRANSACTION_SYMBOL1448));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TRANSACTION_SYMBOL1448_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_set_transaction_characteristic_in_set_statement7102);
            	        set_transaction_characteristic1449=set_transaction_characteristic(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, set_transaction_characteristic1449.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1311:6: ( ONE_SHOT_SYMBOL )? variable_assignment ( COMMA_SYMBOL option_value_list )?
            	    {
            	        // MySQL.g:1311:6: ( ONE_SHOT_SYMBOL )?
            	        {
            	            int alt433=2;
            	            switch ( LA(1) )
            	            {
            	                case ONE_SHOT_SYMBOL:
            	                	{
            	                		switch ( LA(2) )
            	                		{
            	                		    case ACTION_SYMBOL:
            	                		    case ADDDATE_SYMBOL:
            	                		    case AFTER_SYMBOL:
            	                		    case AGAINST_SYMBOL:
            	                		    case AGGREGATE_SYMBOL:
            	                		    case ALGORITHM_SYMBOL:
            	                		    case ANALYZE_SYMBOL:
            	                		    case ANY_SYMBOL:
            	                		    case ASCII_SYMBOL:
            	                		    case AT_AT_SIGN_SYMBOL:
            	                		    case AT_SIGN_SYMBOL:
            	                		    case AT_SYMBOL:
            	                		    case AUTHORS_SYMBOL:
            	                		    case AUTOEXTEND_SIZE_SYMBOL:
            	                		    case AUTO_INCREMENT_SYMBOL:
            	                		    case AVG_ROW_LENGTH_SYMBOL:
            	                		    case AVG_SYMBOL:
            	                		    case BACKUP_SYMBOL:
            	                		    case BACK_TICK_QUOTED_ID:
            	                		    case BEGIN_SYMBOL:
            	                		    case BINLOG_SYMBOL:
            	                		    case BIT_SYMBOL:
            	                		    case BLOCK_SYMBOL:
            	                		    case BOOLEAN_SYMBOL:
            	                		    case BOOL_SYMBOL:
            	                		    case BTREE_SYMBOL:
            	                		    case BYTE_SYMBOL:
            	                		    case CACHE_SYMBOL:
            	                		    case CASCADED_SYMBOL:
            	                		    case CATALOG_NAME_SYMBOL:
            	                		    case CHAIN_SYMBOL:
            	                		    case CHANGED_SYMBOL:
            	                		    case CHARSET_SYMBOL:
            	                		    case CHAR_SYMBOL:
            	                		    case CHECKSUM_SYMBOL:
            	                		    case CIPHER_SYMBOL:
            	                		    case CLASS_ORIGIN_SYMBOL:
            	                		    case CLIENT_SYMBOL:
            	                		    case CLOSE_SYMBOL:
            	                		    case COALESCE_SYMBOL:
            	                		    case CODE_SYMBOL:
            	                		    case COLLATION_SYMBOL:
            	                		    case COLUMNS_SYMBOL:
            	                		    case COLUMN_FORMAT_SYMBOL:
            	                		    case COLUMN_NAME_SYMBOL:
            	                		    case COMMENT_SYMBOL:
            	                		    case COMMITTED_SYMBOL:
            	                		    case COMMIT_SYMBOL:
            	                		    case COMPACT_SYMBOL:
            	                		    case COMPLETION_SYMBOL:
            	                		    case COMPRESSED_SYMBOL:
            	                		    case CONCURRENT_SYMBOL:
            	                		    case CONNECTION_SYMBOL:
            	                		    case CONSISTENT_SYMBOL:
            	                		    case CONSTRAINT_CATALOG_SYMBOL:
            	                		    case CONSTRAINT_NAME_SYMBOL:
            	                		    case CONSTRAINT_SCHEMA_SYMBOL:
            	                		    case CONTAINS_SYMBOL:
            	                		    case CONTEXT_SYMBOL:
            	                		    case CONTRIBUTORS_SYMBOL:
            	                		    case CPU_SYMBOL:
            	                		    case CUBE_SYMBOL:
            	                		    case CURRENT_SYMBOL:
            	                		    case CURSOR_NAME_SYMBOL:
            	                		    case DATAFILE_SYMBOL:
            	                		    case DATA_SYMBOL:
            	                		    case DATETIME_SYMBOL:
            	                		    case DATE_SYMBOL:
            	                		    case DAY_SYMBOL:
            	                		    case DEALLOCATE_SYMBOL:
            	                		    case DEFAULT_AUTH_SYMBOL:
            	                		    case DEFAULT_SYMBOL:
            	                		    case DEFINER_SYMBOL:
            	                		    case DELAY_KEY_WRITE_SYMBOL:
            	                		    case DES_KEY_FILE_SYMBOL:
            	                		    case DIAGNOSTICS_SYMBOL:
            	                		    case DIRECTORY_SYMBOL:
            	                		    case DISABLE_SYMBOL:
            	                		    case DISCARD_SYMBOL:
            	                		    case DISK_SYMBOL:
            	                		    case DOUBLE_QUOTED_TEXT:
            	                		    case DO_SYMBOL:
            	                		    case DUMPFILE_SYMBOL:
            	                		    case DUPLICATE_SYMBOL:
            	                		    case DYNAMIC_SYMBOL:
            	                		    case ENABLE_SYMBOL:
            	                		    case ENDS_SYMBOL:
            	                		    case END_SYMBOL:
            	                		    case ENGINES_SYMBOL:
            	                		    case ENGINE_SYMBOL:
            	                		    case ENUM_SYMBOL:
            	                		    case ERRORS_SYMBOL:
            	                		    case ERROR_SYMBOL:
            	                		    case ESCAPE_SYMBOL:
            	                		    case EVENTS_SYMBOL:
            	                		    case EVENT_SYMBOL:
            	                		    case EVERY_SYMBOL:
            	                		    case EXECUTE_SYMBOL:
            	                		    case EXPANSION_SYMBOL:
            	                		    case EXPORT_SYMBOL:
            	                		    case EXTENDED_SYMBOL:
            	                		    case EXTENT_SIZE_SYMBOL:
            	                		    case FAST_SYMBOL:
            	                		    case FAULTS_SYMBOL:
            	                		    case FILE_SYMBOL:
            	                		    case FIRST_SYMBOL:
            	                		    case FIXED_SYMBOL:
            	                		    case FLUSH_SYMBOL:
            	                		    case FORMAT_SYMBOL:
            	                		    case FOUND_SYMBOL:
            	                		    case FULL_SYMBOL:
            	                		    case FUNCTION_SYMBOL:
            	                		    case GENERAL_SYMBOL:
            	                		    case GEOMETRYCOLLECTION_SYMBOL:
            	                		    case GEOMETRY_SYMBOL:
            	                		    case GET_FORMAT_SYMBOL:
            	                		    case GLOBAL_SYMBOL:
            	                		    case GRANTS_SYMBOL:
            	                		    case HANDLER_SYMBOL:
            	                		    case HASH_SYMBOL:
            	                		    case HELP_SYMBOL:
            	                		    case HOSTS_SYMBOL:
            	                		    case HOST_SYMBOL:
            	                		    case HOUR_SYMBOL:
            	                		    case IDENTIFIED_SYMBOL:
            	                		    case IDENTIFIER:
            	                		    case IGNORE_SERVER_IDS_SYMBOL:
            	                		    case IMPORT_SYMBOL:
            	                		    case INDEXES_SYMBOL:
            	                		    case INITIAL_SIZE_SYMBOL:
            	                		    case INNODB_SYMBOL:
            	                		    case INSERT_METHOD_SYMBOL:
            	                		    case INSTALL_SYMBOL:
            	                		    case INVOKER_SYMBOL:
            	                		    case IO_SYMBOL:
            	                		    case IPC_SYMBOL:
            	                		    case ISOLATION_SYMBOL:
            	                		    case ISSUER_SYMBOL:
            	                		    case KEY_BLOCK_SIZE_SYMBOL:
            	                		    case LANGUAGE_SYMBOL:
            	                		    case LAST_SYMBOL:
            	                		    case LEAVES_SYMBOL:
            	                		    case LESS_SYMBOL:
            	                		    case LEVEL_SYMBOL:
            	                		    case LINESTRING_SYMBOL:
            	                		    case LIST_SYMBOL:
            	                		    case LOCAL_SYMBOL:
            	                		    case LOCKS_SYMBOL:
            	                		    case LOGFILE_SYMBOL:
            	                		    case LOGS_SYMBOL:
            	                		    case MASTER_AUTO_POSITION_SYMBOL:
            	                		    case MASTER_CONNECT_RETRY_SYMBOL:
            	                		    case MASTER_DELAY_SYMBOL:
            	                		    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
            	                		    case MASTER_HOST_SYMBOL:
            	                		    case MASTER_LOG_FILE_SYMBOL:
            	                		    case MASTER_LOG_POS_SYMBOL:
            	                		    case MASTER_PASSWORD_SYMBOL:
            	                		    case MASTER_PORT_SYMBOL:
            	                		    case MASTER_RETRY_COUNT_SYMBOL:
            	                		    case MASTER_SERVER_ID_SYMBOL:
            	                		    case MASTER_SSL_CAPATH_SYMBOL:
            	                		    case MASTER_SSL_CA_SYMBOL:
            	                		    case MASTER_SSL_CERT_SYMBOL:
            	                		    case MASTER_SSL_CIPHER_SYMBOL:
            	                		    case MASTER_SSL_CRLPATH_SYMBOL:
            	                		    case MASTER_SSL_CRL_SYMBOL:
            	                		    case MASTER_SSL_KEY_SYMBOL:
            	                		    case MASTER_SSL_SYMBOL:
            	                		    case MASTER_SYMBOL:
            	                		    case MASTER_USER_SYMBOL:
            	                		    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
            	                		    case MAX_QUERIES_PER_HOUR_SYMBOL:
            	                		    case MAX_ROWS_SYMBOL:
            	                		    case MAX_SIZE_SYMBOL:
            	                		    case MAX_UPDATES_PER_HOUR_SYMBOL:
            	                		    case MAX_USER_CONNECTIONS_SYMBOL:
            	                		    case MEDIUM_SYMBOL:
            	                		    case MEMORY_SYMBOL:
            	                		    case MERGE_SYMBOL:
            	                		    case MESSAGE_TEXT_SYMBOL:
            	                		    case MICROSECOND_SYMBOL:
            	                		    case MIGRATE_SYMBOL:
            	                		    case MINUTE_SYMBOL:
            	                		    case MIN_ROWS_SYMBOL:
            	                		    case MODE_SYMBOL:
            	                		    case MODIFY_SYMBOL:
            	                		    case MONTH_SYMBOL:
            	                		    case MULTILINESTRING_SYMBOL:
            	                		    case MULTIPOINT_SYMBOL:
            	                		    case MULTIPOLYGON_SYMBOL:
            	                		    case MUTEX_SYMBOL:
            	                		    case MYSQL_ERRNO_SYMBOL:
            	                		    case NAMES_SYMBOL:
            	                		    case NAME_SYMBOL:
            	                		    case NATIONAL_SYMBOL:
            	                		    case NCHAR_SYMBOL:
            	                		    case NDBCLUSTER_SYMBOL:
            	                		    case NEW_SYMBOL:
            	                		    case NEXT_SYMBOL:
            	                		    case NODEGROUP_SYMBOL:
            	                		    case NONE_SYMBOL:
            	                		    case NO_SYMBOL:
            	                		    case NO_WAIT_SYMBOL:
            	                		    case NUMBER_SYMBOL:
            	                		    case NVARCHAR_SYMBOL:
            	                		    case OFFSET_SYMBOL:
            	                		    case OLD_PASSWORD_SYMBOL:
            	                		    case ONE_SHOT_SYMBOL:
            	                		    case ONE_SYMBOL:
            	                		    case OPEN_SYMBOL:
            	                		    case OPTIONS_SYMBOL:
            	                		    case OWNER_SYMBOL:
            	                		    case PACK_KEYS_SYMBOL:
            	                		    case PAGE_SYMBOL:
            	                		    case PARSER_SYMBOL:
            	                		    case PARTIAL_SYMBOL:
            	                		    case PARTITIONING_SYMBOL:
            	                		    case PARTITIONS_SYMBOL:
            	                		    case PARTITION_SYMBOL:
            	                		    case PASSWORD_SYMBOL:
            	                		    case PHASE_SYMBOL:
            	                		    case PLUGINS_SYMBOL:
            	                		    case PLUGIN_DIR_SYMBOL:
            	                		    case PLUGIN_SYMBOL:
            	                		    case POINT_SYMBOL:
            	                		    case POLYGON_SYMBOL:
            	                		    case PORT_SYMBOL:
            	                		    case PREPARE_SYMBOL:
            	                		    case PRESERVE_SYMBOL:
            	                		    case PREV_SYMBOL:
            	                		    case PRIVILEGES_SYMBOL:
            	                		    case PROCESSLIST_SYMBOL:
            	                		    case PROCESS_SYMBOL:
            	                		    case PROFILES_SYMBOL:
            	                		    case PROFILE_SYMBOL:
            	                		    case PROXY_SYMBOL:
            	                		    case QUARTER_SYMBOL:
            	                		    case QUERY_SYMBOL:
            	                		    case QUICK_SYMBOL:
            	                		    case READ_ONLY_SYMBOL:
            	                		    case REBUILD_SYMBOL:
            	                		    case RECOVER_SYMBOL:
            	                		    case REDOFILE_SYMBOL:
            	                		    case REDO_BUFFER_SIZE_SYMBOL:
            	                		    case REDUNDANT_SYMBOL:
            	                		    case RELAYLOG_SYMBOL:
            	                		    case RELAY_LOG_FILE_SYMBOL:
            	                		    case RELAY_LOG_POS_SYMBOL:
            	                		    case RELAY_SYMBOL:
            	                		    case RELAY_THREAD_SYMBOL:
            	                		    case RELOAD_SYMBOL:
            	                		    case REMOVE_SYMBOL:
            	                		    case REORGANIZE_SYMBOL:
            	                		    case REPAIR_SYMBOL:
            	                		    case REPEATABLE_SYMBOL:
            	                		    case REPLICATION_SYMBOL:
            	                		    case RESET_SYMBOL:
            	                		    case RESTORE_SYMBOL:
            	                		    case RESUME_SYMBOL:
            	                		    case RETURNED_SQLSTATE_SYMBOL:
            	                		    case RETURNS_SYMBOL:
            	                		    case REVERSE_SYMBOL:
            	                		    case ROLLBACK_SYMBOL:
            	                		    case ROLLUP_SYMBOL:
            	                		    case ROUTINE_SYMBOL:
            	                		    case ROWS_SYMBOL:
            	                		    case ROW_COUNT_SYMBOL:
            	                		    case ROW_FORMAT_SYMBOL:
            	                		    case ROW_SYMBOL:
            	                		    case RTREE_SYMBOL:
            	                		    case SAVEPOINT_SYMBOL:
            	                		    case SCHEDULE_SYMBOL:
            	                		    case SCHEMA_NAME_SYMBOL:
            	                		    case SECOND_SYMBOL:
            	                		    case SECURITY_SYMBOL:
            	                		    case SERIALIZABLE_SYMBOL:
            	                		    case SERIAL_SYMBOL:
            	                		    case SERVER_SYMBOL:
            	                		    case SESSION_SYMBOL:
            	                		    case SHARE_SYMBOL:
            	                		    case SHUTDOWN_SYMBOL:
            	                		    case SIGNED_SYMBOL:
            	                		    case SIMPLE_SYMBOL:
            	                		    case SLAVE_SYMBOL:
            	                		    case SLOW_SYMBOL:
            	                		    case SNAPSHOT_SYMBOL:
            	                		    case SOCKET_SYMBOL:
            	                		    case SONAME_SYMBOL:
            	                		    case SOUNDS_SYMBOL:
            	                		    case SOURCE_SYMBOL:
            	                		    case SQL_AFTER_GTIDS_SYMBOL:
            	                		    case SQL_AFTER_MTS_GAPS_SYMBOL:
            	                		    case SQL_BEFORE_GTIDS_SYMBOL:
            	                		    case SQL_BUFFER_RESULT_SYMBOL:
            	                		    case SQL_CACHE_SYMBOL:
            	                		    case SQL_NO_CACHE_SYMBOL:
            	                		    case SQL_THREAD_SYMBOL:
            	                		    case STARTS_SYMBOL:
            	                		    case START_SYMBOL:
            	                		    case STATS_AUTO_RECALC_SYMBOL:
            	                		    case STATS_PERSISTENT_SYMBOL:
            	                		    case STATS_SAMPLE_PAGES_SYMBOL:
            	                		    case STATUS_SYMBOL:
            	                		    case STOP_SYMBOL:
            	                		    case STORAGE_SYMBOL:
            	                		    case STRING_SYMBOL:
            	                		    case SUBCLASS_ORIGIN_SYMBOL:
            	                		    case SUBDATE_SYMBOL:
            	                		    case SUBJECT_SYMBOL:
            	                		    case SUBPARTITIONS_SYMBOL:
            	                		    case SUBPARTITION_SYMBOL:
            	                		    case SUPER_SYMBOL:
            	                		    case SUSPEND_SYMBOL:
            	                		    case SWAPS_SYMBOL:
            	                		    case SWITCHES_SYMBOL:
            	                		    case TABLESPACE_SYMBOL:
            	                		    case TABLES_SYMBOL:
            	                		    case TABLE_CHECKSUM_SYMBOL:
            	                		    case TABLE_NAME_SYMBOL:
            	                		    case TEMPORARY_SYMBOL:
            	                		    case TEMPTABLE_SYMBOL:
            	                		    case TEXT_SYMBOL:
            	                		    case THAN_SYMBOL:
            	                		    case TIMESTAMP_ADD_SYMBOL:
            	                		    case TIMESTAMP_DIFF_SYMBOL:
            	                		    case TIMESTAMP_SYMBOL:
            	                		    case TIME_SYMBOL:
            	                		    case TRANSACTION_SYMBOL:
            	                		    case TRIGGERS_SYMBOL:
            	                		    case TRUNCATE_SYMBOL:
            	                		    case TYPES_SYMBOL:
            	                		    case TYPE_SYMBOL:
            	                		    case UDF_RETURNS_SYMBOL:
            	                		    case UNCOMMITTED_SYMBOL:
            	                		    case UNDEFINED_SYMBOL:
            	                		    case UNDOFILE_SYMBOL:
            	                		    case UNDO_BUFFER_SIZE_SYMBOL:
            	                		    case UNICODE_SYMBOL:
            	                		    case UNINSTALL_SYMBOL:
            	                		    case UNKNOWN_SYMBOL:
            	                		    case UNTIL_SYMBOL:
            	                		    case UPGRADE_SYMBOL:
            	                		    case USER_RESOURCES_SYMBOL:
            	                		    case USER_SYMBOL:
            	                		    case USE_FRM_SYMBOL:
            	                		    case VALUE_SYMBOL:
            	                		    case VARIABLES_SYMBOL:
            	                		    case VIEW_SYMBOL:
            	                		    case WAIT_SYMBOL:
            	                		    case WARNINGS_SYMBOL:
            	                		    case WEEK_SYMBOL:
            	                		    case WEIGHT_STRING_SYMBOL:
            	                		    case WORK_SYMBOL:
            	                		    case WRAPPER_SYMBOL:
            	                		    case X509_SYMBOL:
            	                		    case XA_SYMBOL:
            	                		    case XML_SYMBOL:
            	                		    case YEAR_SYMBOL:
            	                		    	{
            	                		    		alt433=1;
            	                		    	}
            	                		        break;
            	                		}

            	                	}
            	                    break;
            	            }

            	            switch (alt433)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1311:6: ONE_SHOT_SYMBOL
            	        	    {
            	        	        ONE_SHOT_SYMBOL1450 = (pANTLR3_COMMON_TOKEN) MATCHT(ONE_SHOT_SYMBOL, &FOLLOW_ONE_SHOT_SYMBOL_in_set_statement7109);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleset_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        ONE_SHOT_SYMBOL1450_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ONE_SHOT_SYMBOL1450));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, ONE_SHOT_SYMBOL1450_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_variable_assignment_in_set_statement7112);
            	        variable_assignment1451=variable_assignment(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, variable_assignment1451.tree);

            	        // MySQL.g:1311:43: ( COMMA_SYMBOL option_value_list )?
            	        {
            	            int alt434=2;
            	            switch ( LA(1) )
            	            {
            	                case COMMA_SYMBOL:
            	                	{
            	                		alt434=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt434)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1311:44: COMMA_SYMBOL option_value_list
            	        	    {
            	        	        COMMA_SYMBOL1452 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_set_statement7115);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleset_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COMMA_SYMBOL1452_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1452));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1452_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_option_value_list_in_set_statement7117);
            	        	        option_value_list1453=option_value_list(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleset_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, option_value_list1453.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleset_statementEx; /* Prevent compiler warnings */
    ruleset_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end set_statement */

/**
 * $ANTLR start variable_assignment
 * MySQL.g:1316:1: variable_assignment : ({...}? NAMES_SYMBOL ( equal expression | charset_name_or_default ( COLLATE_SYMBOL collation_name_or_default )? ) | variable_name equal set_expression_or_default | user_variable equal expression | system_variable equal set_expression_or_default | charset_clause );
 */
static MySQLParser_variable_assignment_return
variable_assignment(pMySQLParser ctx)
{
    MySQLParser_variable_assignment_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    NAMES_SYMBOL1454;
    pANTLR3_COMMON_TOKEN    COLLATE_SYMBOL1458;
    MySQLParser_equal_return equal1455;
    #undef	RETURN_TYPE_equal1455
    #define	RETURN_TYPE_equal1455 MySQLParser_equal_return

    MySQLParser_expression_return expression1456;
    #undef	RETURN_TYPE_expression1456
    #define	RETURN_TYPE_expression1456 MySQLParser_expression_return

    MySQLParser_charset_name_or_default_return charset_name_or_default1457;
    #undef	RETURN_TYPE_charset_name_or_default1457
    #define	RETURN_TYPE_charset_name_or_default1457 MySQLParser_charset_name_or_default_return

    MySQLParser_collation_name_or_default_return collation_name_or_default1459;
    #undef	RETURN_TYPE_collation_name_or_default1459
    #define	RETURN_TYPE_collation_name_or_default1459 MySQLParser_collation_name_or_default_return

    MySQLParser_variable_name_return variable_name1460;
    #undef	RETURN_TYPE_variable_name1460
    #define	RETURN_TYPE_variable_name1460 MySQLParser_variable_name_return

    MySQLParser_equal_return equal1461;
    #undef	RETURN_TYPE_equal1461
    #define	RETURN_TYPE_equal1461 MySQLParser_equal_return

    MySQLParser_set_expression_or_default_return set_expression_or_default1462;
    #undef	RETURN_TYPE_set_expression_or_default1462
    #define	RETURN_TYPE_set_expression_or_default1462 MySQLParser_set_expression_or_default_return

    MySQLParser_user_variable_return user_variable1463;
    #undef	RETURN_TYPE_user_variable1463
    #define	RETURN_TYPE_user_variable1463 MySQLParser_user_variable_return

    MySQLParser_equal_return equal1464;
    #undef	RETURN_TYPE_equal1464
    #define	RETURN_TYPE_equal1464 MySQLParser_equal_return

    MySQLParser_expression_return expression1465;
    #undef	RETURN_TYPE_expression1465
    #define	RETURN_TYPE_expression1465 MySQLParser_expression_return

    MySQLParser_system_variable_return system_variable1466;
    #undef	RETURN_TYPE_system_variable1466
    #define	RETURN_TYPE_system_variable1466 MySQLParser_system_variable_return

    MySQLParser_equal_return equal1467;
    #undef	RETURN_TYPE_equal1467
    #define	RETURN_TYPE_equal1467 MySQLParser_equal_return

    MySQLParser_set_expression_or_default_return set_expression_or_default1468;
    #undef	RETURN_TYPE_set_expression_or_default1468
    #define	RETURN_TYPE_set_expression_or_default1468 MySQLParser_set_expression_or_default_return

    MySQLParser_charset_clause_return charset_clause1469;
    #undef	RETURN_TYPE_charset_clause1469
    #define	RETURN_TYPE_charset_clause1469 MySQLParser_charset_clause_return

    pANTLR3_BASE_TREE NAMES_SYMBOL1454_tree;
    pANTLR3_BASE_TREE COLLATE_SYMBOL1458_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    NAMES_SYMBOL1454       = NULL;
    COLLATE_SYMBOL1458       = NULL;
    equal1455.tree = NULL;

    expression1456.tree = NULL;

    charset_name_or_default1457.tree = NULL;

    collation_name_or_default1459.tree = NULL;

    variable_name1460.tree = NULL;

    equal1461.tree = NULL;

    set_expression_or_default1462.tree = NULL;

    user_variable1463.tree = NULL;

    equal1464.tree = NULL;

    expression1465.tree = NULL;

    system_variable1466.tree = NULL;

    equal1467.tree = NULL;

    set_expression_or_default1468.tree = NULL;

    charset_clause1469.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    NAMES_SYMBOL1454_tree   = NULL;
    COLLATE_SYMBOL1458_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1316:20: ({...}? NAMES_SYMBOL ( equal expression | charset_name_or_default ( COLLATE_SYMBOL collation_name_or_default )? ) | variable_name equal set_expression_or_default | user_variable equal expression | system_variable equal set_expression_or_default | charset_clause )

            ANTLR3_UINT32 alt438;

            alt438=5;

            {
                int LA438_0 = LA(1);
                if ( (LA438_0 == NAMES_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case ASSIGN_OPERATOR:
                    case EQUAL_OPERATOR:
                    	{
                    		{
                    		    int LA438_12 = LA(3);
                    		    if ( ((LA(1) == NAMES_SYMBOL)))
                    		    {
                    		        alt438=1;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt438=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 438;
                    		        EXCEPTION->state        = 12;


                    		        goto rulevariable_assignmentEx;

                    		    }
                    		}
                    	}
                        break;
                    case CHARSET_SYMBOL:
                    case CHAR_SYMBOL:
                    case DEFAULT_SYMBOL:
                    	{
                    		alt438=1;
                    	}
                        break;
                    case DOT_SYMBOL:
                    	{
                    		alt438=2;
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 438;
                        EXCEPTION->state        = 1;


                        goto rulevariable_assignmentEx;

                    }

                }
                else if ( (LA438_0 == BACK_TICK_QUOTED_ID || LA438_0 == IDENTIFIER))
                {
                    alt438=2;
                }
                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA438_0 == DOUBLE_QUOTED_TEXT))
                {
                    alt438=2;
                }
                else if ( (((LA438_0 >= ACTION_SYMBOL) && (LA438_0 <= ADDDATE_SYMBOL)) || ((LA438_0 >= AFTER_SYMBOL) && (LA438_0 <= ALGORITHM_SYMBOL)) || LA438_0 == ANALYZE_SYMBOL || ((LA438_0 >= ANY_SYMBOL) && (LA438_0 <= ASCII_SYMBOL)) || ((LA438_0 >= AT_SYMBOL) && (LA438_0 <= BACKUP_SYMBOL)) || LA438_0 == BEGIN_SYMBOL || LA438_0 == BINLOG_SYMBOL || LA438_0 == BIT_SYMBOL || ((LA438_0 >= BLOCK_SYMBOL) && (LA438_0 <= BOOL_SYMBOL)) || ((LA438_0 >= BTREE_SYMBOL) && (LA438_0 <= BYTE_SYMBOL)) || LA438_0 == CACHE_SYMBOL || LA438_0 == CASCADED_SYMBOL || ((LA438_0 >= CATALOG_NAME_SYMBOL) && (LA438_0 <= CHANGED_SYMBOL)) || LA438_0 == CHECKSUM_SYMBOL || ((LA438_0 >= CIPHER_SYMBOL) && (LA438_0 <= CLIENT_SYMBOL)) || ((LA438_0 >= CLOSE_SYMBOL) && (LA438_0 <= CODE_SYMBOL)) || LA438_0 == COLLATION_SYMBOL || ((LA438_0 >= COLUMNS_SYMBOL) && (LA438_0 <= COLUMN_NAME_SYMBOL)) || ((LA438_0 >= COMMENT_SYMBOL) && (LA438_0 <= COMPRESSED_SYMBOL)) || LA438_0 == CONCURRENT_SYMBOL || ((LA438_0 >= CONNECTION_SYMBOL) && (LA438_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA438_0 >= CONTAINS_SYMBOL) && (LA438_0 <= CONTEXT_SYMBOL)) || LA438_0 == CONTRIBUTORS_SYMBOL || LA438_0 == CPU_SYMBOL || LA438_0 == CUBE_SYMBOL || LA438_0 == CURRENT_SYMBOL || LA438_0 == CURSOR_NAME_SYMBOL || ((LA438_0 >= DATAFILE_SYMBOL) && (LA438_0 <= DATETIME_SYMBOL)) || LA438_0 == DATE_SYMBOL || ((LA438_0 >= DAY_SYMBOL) && (LA438_0 <= DEALLOCATE_SYMBOL)) || ((LA438_0 >= DEFAULT_AUTH_SYMBOL) && (LA438_0 <= DEFINER_SYMBOL)) || LA438_0 == DELAY_KEY_WRITE_SYMBOL || LA438_0 == DES_KEY_FILE_SYMBOL || LA438_0 == DIAGNOSTICS_SYMBOL || ((LA438_0 >= DIRECTORY_SYMBOL) && (LA438_0 <= DISK_SYMBOL)) || LA438_0 == DO_SYMBOL || ((LA438_0 >= DUMPFILE_SYMBOL) && (LA438_0 <= DYNAMIC_SYMBOL)) || LA438_0 == ENABLE_SYMBOL || LA438_0 == ENDS_SYMBOL || ((LA438_0 >= END_SYMBOL) && (LA438_0 <= ENUM_SYMBOL)) || ((LA438_0 >= ERRORS_SYMBOL) && (LA438_0 <= ERROR_SYMBOL)) || ((LA438_0 >= ESCAPE_SYMBOL) && (LA438_0 <= EVERY_SYMBOL)) || LA438_0 == EXECUTE_SYMBOL || LA438_0 == EXPANSION_SYMBOL || LA438_0 == EXPORT_SYMBOL || ((LA438_0 >= EXTENDED_SYMBOL) && (LA438_0 <= EXTENT_SIZE_SYMBOL)) || ((LA438_0 >= FAST_SYMBOL) && (LA438_0 <= FAULTS_SYMBOL)) || ((LA438_0 >= FILE_SYMBOL) && (LA438_0 <= FIXED_SYMBOL)) || LA438_0 == FLUSH_SYMBOL || LA438_0 == FORMAT_SYMBOL || LA438_0 == FOUND_SYMBOL || LA438_0 == FULL_SYMBOL || ((LA438_0 >= FUNCTION_SYMBOL) && (LA438_0 <= GET_FORMAT_SYMBOL)) || ((LA438_0 >= GLOBAL_SYMBOL) && (LA438_0 <= GRANTS_SYMBOL)) || ((LA438_0 >= HANDLER_SYMBOL) && (LA438_0 <= HASH_SYMBOL)) || LA438_0 == HELP_SYMBOL || ((LA438_0 >= HOSTS_SYMBOL) && (LA438_0 <= HOST_SYMBOL)) || ((LA438_0 >= HOUR_SYMBOL) && (LA438_0 <= IDENTIFIED_SYMBOL)) || LA438_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA438_0 >= IMPORT_SYMBOL) && (LA438_0 <= INDEXES_SYMBOL)) || LA438_0 == INITIAL_SIZE_SYMBOL || LA438_0 == INNODB_SYMBOL || LA438_0 == INSERT_METHOD_SYMBOL || LA438_0 == INSTALL_SYMBOL || LA438_0 == INVOKER_SYMBOL || LA438_0 == IO_SYMBOL || ((LA438_0 >= IPC_SYMBOL) && (LA438_0 <= ISSUER_SYMBOL)) || LA438_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA438_0 >= LANGUAGE_SYMBOL) && (LA438_0 <= LAST_SYMBOL)) || LA438_0 == LEAVES_SYMBOL || LA438_0 == LESS_SYMBOL || LA438_0 == LEVEL_SYMBOL || LA438_0 == LINESTRING_SYMBOL || LA438_0 == LIST_SYMBOL || LA438_0 == LOCAL_SYMBOL || LA438_0 == LOCKS_SYMBOL || LA438_0 == LOGFILE_SYMBOL || LA438_0 == LOGS_SYMBOL || LA438_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA438_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA438_0 <= MASTER_SSL_SYMBOL)) || ((LA438_0 >= MASTER_SYMBOL) && (LA438_0 <= MASTER_USER_SYMBOL)) || ((LA438_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA438_0 <= MAX_SIZE_SYMBOL)) || ((LA438_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA438_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA438_0 >= MEDIUM_SYMBOL) && (LA438_0 <= MICROSECOND_SYMBOL)) || LA438_0 == MIGRATE_SYMBOL || ((LA438_0 >= MINUTE_SYMBOL) && (LA438_0 <= MIN_ROWS_SYMBOL)) || LA438_0 == MODE_SYMBOL || LA438_0 == MODIFY_SYMBOL || ((LA438_0 >= MONTH_SYMBOL) && (LA438_0 <= MULTILINESTRING_SYMBOL)) || ((LA438_0 >= MULTIPOINT_SYMBOL) && (LA438_0 <= MULTIPOLYGON_SYMBOL)) || ((LA438_0 >= MUTEX_SYMBOL) && (LA438_0 <= MYSQL_ERRNO_SYMBOL)) || ((LA438_0 >= NAME_SYMBOL) && (LA438_0 <= NATIONAL_SYMBOL)) || LA438_0 == NCHAR_SYMBOL || LA438_0 == NDBCLUSTER_SYMBOL || ((LA438_0 >= NEW_SYMBOL) && (LA438_0 <= NONE_SYMBOL)) || ((LA438_0 >= NO_SYMBOL) && (LA438_0 <= NO_WAIT_SYMBOL)) || LA438_0 == NUMBER_SYMBOL || LA438_0 == NVARCHAR_SYMBOL || ((LA438_0 >= OFFSET_SYMBOL) && (LA438_0 <= ONE_SYMBOL)) || LA438_0 == OPEN_SYMBOL || LA438_0 == OPTIONS_SYMBOL || ((LA438_0 >= OWNER_SYMBOL) && (LA438_0 <= PAGE_SYMBOL)) || ((LA438_0 >= PARSER_SYMBOL) && (LA438_0 <= PARTITION_SYMBOL)) || ((LA438_0 >= PASSWORD_SYMBOL) && (LA438_0 <= PLUGIN_SYMBOL)) || ((LA438_0 >= POINT_SYMBOL) && (LA438_0 <= PORT_SYMBOL)) || ((LA438_0 >= PREPARE_SYMBOL) && (LA438_0 <= PREV_SYMBOL)) || LA438_0 == PRIVILEGES_SYMBOL || ((LA438_0 >= PROCESSLIST_SYMBOL) && (LA438_0 <= PROXY_SYMBOL)) || ((LA438_0 >= QUARTER_SYMBOL) && (LA438_0 <= QUICK_SYMBOL)) || LA438_0 == READ_ONLY_SYMBOL || ((LA438_0 >= REBUILD_SYMBOL) && (LA438_0 <= REDUNDANT_SYMBOL)) || ((LA438_0 >= RELAYLOG_SYMBOL) && (LA438_0 <= RELAY_THREAD_SYMBOL)) || ((LA438_0 >= RELOAD_SYMBOL) && (LA438_0 <= REMOVE_SYMBOL)) || ((LA438_0 >= REORGANIZE_SYMBOL) && (LA438_0 <= REPEATABLE_SYMBOL)) || LA438_0 == REPLICATION_SYMBOL || LA438_0 == RESET_SYMBOL || LA438_0 == RESTORE_SYMBOL || ((LA438_0 >= RESUME_SYMBOL) && (LA438_0 <= RETURNS_SYMBOL)) || LA438_0 == REVERSE_SYMBOL || ((LA438_0 >= ROLLBACK_SYMBOL) && (LA438_0 <= SCHEDULE_SYMBOL)) || LA438_0 == SCHEMA_NAME_SYMBOL || ((LA438_0 >= SECOND_SYMBOL) && (LA438_0 <= SECURITY_SYMBOL)) || ((LA438_0 >= SERIALIZABLE_SYMBOL) && (LA438_0 <= SERIAL_SYMBOL)) || ((LA438_0 >= SERVER_SYMBOL) && (LA438_0 <= SESSION_SYMBOL)) || LA438_0 == SHARE_SYMBOL || LA438_0 == SHUTDOWN_SYMBOL || ((LA438_0 >= SIGNED_SYMBOL) && (LA438_0 <= SIMPLE_SYMBOL)) || ((LA438_0 >= SLAVE_SYMBOL) && (LA438_0 <= SLOW_SYMBOL)) || ((LA438_0 >= SNAPSHOT_SYMBOL) && (LA438_0 <= SOURCE_SYMBOL)) || ((LA438_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA438_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA438_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA438_0 <= SQL_CACHE_SYMBOL)) || LA438_0 == SQL_NO_CACHE_SYMBOL || LA438_0 == SQL_THREAD_SYMBOL || ((LA438_0 >= STARTS_SYMBOL) && (LA438_0 <= STATUS_SYMBOL)) || ((LA438_0 >= STOP_SYMBOL) && (LA438_0 <= STORAGE_SYMBOL)) || ((LA438_0 >= STRING_SYMBOL) && (LA438_0 <= SUBPARTITION_SYMBOL)) || ((LA438_0 >= SUPER_SYMBOL) && (LA438_0 <= SWITCHES_SYMBOL)) || ((LA438_0 >= TABLESPACE_SYMBOL) && (LA438_0 <= TABLE_NAME_SYMBOL)) || ((LA438_0 >= TEMPORARY_SYMBOL) && (LA438_0 <= TEMPTABLE_SYMBOL)) || ((LA438_0 >= TEXT_SYMBOL) && (LA438_0 <= THAN_SYMBOL)) || ((LA438_0 >= TIMESTAMP_ADD_SYMBOL) && (LA438_0 <= TIME_SYMBOL)) || ((LA438_0 >= TRANSACTION_SYMBOL) && (LA438_0 <= TRIGGERS_SYMBOL)) || ((LA438_0 >= TRUNCATE_SYMBOL) && (LA438_0 <= UDF_RETURNS_SYMBOL)) || ((LA438_0 >= UNCOMMITTED_SYMBOL) && (LA438_0 <= UNDEFINED_SYMBOL)) || ((LA438_0 >= UNDOFILE_SYMBOL) && (LA438_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA438_0 >= UNICODE_SYMBOL) && (LA438_0 <= UNINSTALL_SYMBOL)) || LA438_0 == UNKNOWN_SYMBOL || LA438_0 == UNTIL_SYMBOL || LA438_0 == UPGRADE_SYMBOL || ((LA438_0 >= USER_RESOURCES_SYMBOL) && (LA438_0 <= USE_FRM_SYMBOL)) || LA438_0 == VALUE_SYMBOL || LA438_0 == VARIABLES_SYMBOL || ((LA438_0 >= VIEW_SYMBOL) && (LA438_0 <= WEIGHT_STRING_SYMBOL)) || ((LA438_0 >= WORK_SYMBOL) && (LA438_0 <= WRAPPER_SYMBOL)) || LA438_0 == X509_SYMBOL || ((LA438_0 >= XA_SYMBOL) && (LA438_0 <= XML_SYMBOL)) || LA438_0 == YEAR_SYMBOL))
                {
                    alt438=2;
                }
                else if ( (LA438_0 == CHARSET_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case ASSIGN_OPERATOR:
                    case DOT_SYMBOL:
                    case EQUAL_OPERATOR:
                    	{
                    		alt438=2;
                    	}
                        break;
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BINARY_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFAULT_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOUND_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_SYMBOL:
                    case LEVEL_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt438=5;
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 438;
                        EXCEPTION->state        = 6;


                        goto rulevariable_assignmentEx;

                    }

                }
                else if ( (LA438_0 == AT_SIGN_SYMBOL))
                {
                    alt438=3;
                }
                else if ( (LA438_0 == AT_AT_SIGN_SYMBOL))
                {
                    alt438=4;
                }
                else if ( (LA438_0 == CHAR_SYMBOL))
                {
                    alt438=5;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 438;
                    EXCEPTION->state        = 0;


                    goto rulevariable_assignmentEx;

                }
            }
            switch (alt438)
            {
        	case 1:
        	    // MySQL.g:1317:2: {...}? NAMES_SYMBOL ( equal expression | charset_name_or_default ( COLLATE_SYMBOL collation_name_or_default )? )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((LA(1) == NAMES_SYMBOL)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"LA(1) == NAMES_SYMBOL";
        	                EXCEPTION->ruleName	 = (void *)"variable_assignment";


        	        }

        	        NAMES_SYMBOL1454 = (pANTLR3_COMMON_TOKEN) MATCHT(NAMES_SYMBOL, &FOLLOW_NAMES_SYMBOL_in_variable_assignment7138);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulevariable_assignmentEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NAMES_SYMBOL1454_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NAMES_SYMBOL1454));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NAMES_SYMBOL1454_tree);
        	        }

        	        // MySQL.g:1318:3: ( equal expression | charset_name_or_default ( COLLATE_SYMBOL collation_name_or_default )? )
        	        {
        	            int alt437=2;
        	            switch ( LA(1) )
        	            {
        	            case ASSIGN_OPERATOR:
        	            case EQUAL_OPERATOR:
        	            	{
        	            		alt437=1;
        	            	}
        	                break;
        	            case CHARSET_SYMBOL:
        	            case CHAR_SYMBOL:
        	            case DEFAULT_SYMBOL:
        	            	{
        	            		alt437=2;
        	            	}
        	                break;

        	            default:
        	                if (BACKTRACKING>0)
        	                {
        	                    FAILEDFLAG = ANTLR3_TRUE;
        	                    return retval;
        	                }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                EXCEPTION->message      = (void *)"";
        	                EXCEPTION->decisionNum  = 437;
        	                EXCEPTION->state        = 0;


        	                goto rulevariable_assignmentEx;

        	            }

        	            switch (alt437)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1319:4: equal expression
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_equal_in_variable_assignment7147);
        	        	        equal1455=equal(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulevariable_assignmentEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, equal1455.tree);

        	        	        FOLLOWPUSH(FOLLOW_expression_in_variable_assignment7149);
        	        	        expression1456=expression(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulevariable_assignmentEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1456.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:1320:6: charset_name_or_default ( COLLATE_SYMBOL collation_name_or_default )?
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_charset_name_or_default_in_variable_assignment7156);
        	        	        charset_name_or_default1457=charset_name_or_default(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulevariable_assignmentEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset_name_or_default1457.tree);

        	        	        // MySQL.g:1320:30: ( COLLATE_SYMBOL collation_name_or_default )?
        	        	        {
        	        	            int alt436=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case COLLATE_SYMBOL:
        	        	                	{
        	        	                		alt436=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt436)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:1320:31: COLLATE_SYMBOL collation_name_or_default
        	        	        	    {
        	        	        	        COLLATE_SYMBOL1458 = (pANTLR3_COMMON_TOKEN) MATCHT(COLLATE_SYMBOL, &FOLLOW_COLLATE_SYMBOL_in_variable_assignment7159);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulevariable_assignmentEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        COLLATE_SYMBOL1458_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLLATE_SYMBOL1458));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COLLATE_SYMBOL1458_tree);
        	        	        	        }

        	        	        	        FOLLOWPUSH(FOLLOW_collation_name_or_default_in_variable_assignment7161);
        	        	        	        collation_name_or_default1459=collation_name_or_default(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulevariable_assignmentEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, collation_name_or_default1459.tree);

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1322:4: variable_name equal set_expression_or_default
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_variable_name_in_variable_assignment7172);
        	        variable_name1460=variable_name(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulevariable_assignmentEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, variable_name1460.tree);

        	        FOLLOWPUSH(FOLLOW_equal_in_variable_assignment7174);
        	        equal1461=equal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulevariable_assignmentEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, equal1461.tree);

        	        FOLLOWPUSH(FOLLOW_set_expression_or_default_in_variable_assignment7176);
        	        set_expression_or_default1462=set_expression_or_default(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulevariable_assignmentEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, set_expression_or_default1462.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1323:4: user_variable equal expression
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_user_variable_in_variable_assignment7181);
        	        user_variable1463=user_variable(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulevariable_assignmentEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user_variable1463.tree);

        	        FOLLOWPUSH(FOLLOW_equal_in_variable_assignment7183);
        	        equal1464=equal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulevariable_assignmentEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, equal1464.tree);

        	        FOLLOWPUSH(FOLLOW_expression_in_variable_assignment7185);
        	        expression1465=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulevariable_assignmentEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1465.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1324:4: system_variable equal set_expression_or_default
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_system_variable_in_variable_assignment7190);
        	        system_variable1466=system_variable(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulevariable_assignmentEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, system_variable1466.tree);

        	        FOLLOWPUSH(FOLLOW_equal_in_variable_assignment7192);
        	        equal1467=equal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulevariable_assignmentEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, equal1467.tree);

        	        FOLLOWPUSH(FOLLOW_set_expression_or_default_in_variable_assignment7194);
        	        set_expression_or_default1468=set_expression_or_default(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulevariable_assignmentEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, set_expression_or_default1468.tree);

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1325:4: charset_clause
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_charset_clause_in_variable_assignment7199);
        	        charset_clause1469=charset_clause(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulevariable_assignmentEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset_clause1469.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulevariable_assignmentEx; /* Prevent compiler warnings */
    rulevariable_assignmentEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end variable_assignment */

/**
 * $ANTLR start set_expression_or_default
 * MySQL.g:1328:1: set_expression_or_default : ( expression | DEFAULT_SYMBOL | ON_SYMBOL | ALL_SYMBOL | BINARY_SYMBOL );
 */
static MySQLParser_set_expression_or_default_return
set_expression_or_default(pMySQLParser ctx)
{
    MySQLParser_set_expression_or_default_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL1471;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL1472;
    pANTLR3_COMMON_TOKEN    ALL_SYMBOL1473;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL1474;
    MySQLParser_expression_return expression1470;
    #undef	RETURN_TYPE_expression1470
    #define	RETURN_TYPE_expression1470 MySQLParser_expression_return

    pANTLR3_BASE_TREE DEFAULT_SYMBOL1471_tree;
    pANTLR3_BASE_TREE ON_SYMBOL1472_tree;
    pANTLR3_BASE_TREE ALL_SYMBOL1473_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL1474_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DEFAULT_SYMBOL1471       = NULL;
    ON_SYMBOL1472       = NULL;
    ALL_SYMBOL1473       = NULL;
    BINARY_SYMBOL1474       = NULL;
    expression1470.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DEFAULT_SYMBOL1471_tree   = NULL;
    ON_SYMBOL1472_tree   = NULL;
    ALL_SYMBOL1473_tree   = NULL;
    BINARY_SYMBOL1474_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1328:26: ( expression | DEFAULT_SYMBOL | ON_SYMBOL | ALL_SYMBOL | BINARY_SYMBOL )

            ANTLR3_UINT32 alt439;

            alt439=5;

            {
                int LA439_0 = LA(1);
                if ( (LA439_0 == BITWISE_NOT_OPERATOR || LA439_0 == DATE_SYMBOL || LA439_0 == INTERVAL_SYMBOL || LA439_0 == LOGICAL_NOT_OPERATOR || LA439_0 == MINUS_OPERATOR || LA439_0 == NCHAR_TEXT || LA439_0 == NOT2_SYMBOL || LA439_0 == NOT_SYMBOL || LA439_0 == PLUS_OPERATOR || LA439_0 == SINGLE_QUOTED_TEXT || ((LA439_0 >= TIMESTAMP_SYMBOL) && (LA439_0 <= TIME_SYMBOL)) || LA439_0 == UNDERSCORE_CHARSET))
                {
                    alt439=1;
                }
                else if ( ((((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)))||((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))) && (LA439_0 == DOUBLE_QUOTED_TEXT))
                {
                    alt439=1;
                }
                else if ( (LA439_0 == FALSE_SYMBOL || LA439_0 == FLOAT || ((LA439_0 >= HEXNUMBER) && (LA439_0 <= HEXSTRING)) || LA439_0 == INTEGER || LA439_0 == TRUE_SYMBOL))
                {
                    alt439=1;
                }
                else if ( ((SERVER_VERSION >= 50003)) && (((LA439_0 >= BITNUMBER) && (LA439_0 <= BITSTRING))))
                {
                    alt439=1;
                }
                else if ( (((LA439_0 >= ACTION_SYMBOL) && (LA439_0 <= ADDDATE_SYMBOL)) || ((LA439_0 >= AFTER_SYMBOL) && (LA439_0 <= ALGORITHM_SYMBOL)) || LA439_0 == ANALYZE_SYMBOL || ((LA439_0 >= ANY_SYMBOL) && (LA439_0 <= ASCII_SYMBOL)) || ((LA439_0 >= AT_AT_SIGN_SYMBOL) && (LA439_0 <= BACKUP_SYMBOL)) || LA439_0 == BACK_TICK_QUOTED_ID || LA439_0 == BEGIN_SYMBOL || LA439_0 == BINLOG_SYMBOL || ((LA439_0 >= BIT_AND_SYMBOL) && (LA439_0 <= BIT_XOR_SYMBOL)) || ((LA439_0 >= BLOCK_SYMBOL) && (LA439_0 <= BOOL_SYMBOL)) || ((LA439_0 >= BTREE_SYMBOL) && (LA439_0 <= BYTE_SYMBOL)) || LA439_0 == CACHE_SYMBOL || LA439_0 == CASCADED_SYMBOL || ((LA439_0 >= CASE_SYMBOL) && (LA439_0 <= CHANGED_SYMBOL)) || ((LA439_0 >= CHARSET_SYMBOL) && (LA439_0 <= CHECKSUM_SYMBOL)) || ((LA439_0 >= CIPHER_SYMBOL) && (LA439_0 <= CLIENT_SYMBOL)) || ((LA439_0 >= CLOSE_SYMBOL) && (LA439_0 <= CODE_SYMBOL)) || LA439_0 == COLLATION_SYMBOL || ((LA439_0 >= COLUMNS_SYMBOL) && (LA439_0 <= COLUMN_NAME_SYMBOL)) || ((LA439_0 >= COMMENT_SYMBOL) && (LA439_0 <= COMPRESSED_SYMBOL)) || LA439_0 == CONCURRENT_SYMBOL || ((LA439_0 >= CONNECTION_SYMBOL) && (LA439_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA439_0 >= CONTAINS_SYMBOL) && (LA439_0 <= CONTEXT_SYMBOL)) || ((LA439_0 >= CONTRIBUTORS_SYMBOL) && (LA439_0 <= CPU_SYMBOL)) || ((LA439_0 >= CUBE_SYMBOL) && (LA439_0 <= CURRENT_SYMBOL)) || ((LA439_0 >= CURRENT_USER_SYMBOL) && (LA439_0 <= CURSOR_NAME_SYMBOL)) || LA439_0 == CURTIME_SYMBOL || ((LA439_0 >= DATABASE_SYMBOL) && (LA439_0 <= DATETIME_SYMBOL)) || LA439_0 == DATE_ADD_SYMBOL || LA439_0 == DATE_SUB_SYMBOL || ((LA439_0 >= DAY_SYMBOL) && (LA439_0 <= DEALLOCATE_SYMBOL)) || LA439_0 == DEFAULT_AUTH_SYMBOL || LA439_0 == DEFINER_SYMBOL || LA439_0 == DELAY_KEY_WRITE_SYMBOL || LA439_0 == DES_KEY_FILE_SYMBOL || LA439_0 == DIAGNOSTICS_SYMBOL || ((LA439_0 >= DIRECTORY_SYMBOL) && (LA439_0 <= DISK_SYMBOL)) || LA439_0 == DOT_SYMBOL || LA439_0 == DO_SYMBOL || ((LA439_0 >= DUMPFILE_SYMBOL) && (LA439_0 <= DYNAMIC_SYMBOL)) || LA439_0 == ENABLE_SYMBOL || LA439_0 == ENDS_SYMBOL || ((LA439_0 >= END_SYMBOL) && (LA439_0 <= ENUM_SYMBOL)) || ((LA439_0 >= ERRORS_SYMBOL) && (LA439_0 <= ERROR_SYMBOL)) || ((LA439_0 >= ESCAPE_SYMBOL) && (LA439_0 <= EVERY_SYMBOL)) || ((LA439_0 >= EXECUTE_SYMBOL) && (LA439_0 <= EXISTS_SYMBOL)) || LA439_0 == EXPANSION_SYMBOL || LA439_0 == EXPORT_SYMBOL || ((LA439_0 >= EXTENDED_SYMBOL) && (LA439_0 <= EXTRACT_SYMBOL)) || ((LA439_0 >= FAST_SYMBOL) && (LA439_0 <= FAULTS_SYMBOL)) || ((LA439_0 >= FILE_SYMBOL) && (LA439_0 <= FIXED_SYMBOL)) || LA439_0 == FLUSH_SYMBOL || LA439_0 == FORMAT_SYMBOL || LA439_0 == FOUND_SYMBOL || LA439_0 == FULL_SYMBOL || ((LA439_0 >= FUNCTION_SYMBOL) && (LA439_0 <= GET_FORMAT_SYMBOL)) || ((LA439_0 >= GLOBAL_SYMBOL) && (LA439_0 <= GRANTS_SYMBOL)) || LA439_0 == GROUP_CONCAT_SYMBOL || ((LA439_0 >= HANDLER_SYMBOL) && (LA439_0 <= HASH_SYMBOL)) || LA439_0 == HELP_SYMBOL || ((LA439_0 >= HOSTS_SYMBOL) && (LA439_0 <= HOST_SYMBOL)) || ((LA439_0 >= HOUR_SYMBOL) && (LA439_0 <= IGNORE_SERVER_IDS_SYMBOL)) || ((LA439_0 >= IMPORT_SYMBOL) && (LA439_0 <= INDEXES_SYMBOL)) || LA439_0 == INITIAL_SIZE_SYMBOL || LA439_0 == INNODB_SYMBOL || ((LA439_0 >= INSERT_METHOD_SYMBOL) && (LA439_0 <= INSTALL_SYMBOL)) || LA439_0 == INVOKER_SYMBOL || LA439_0 == IO_SYMBOL || ((LA439_0 >= IPC_SYMBOL) && (LA439_0 <= ISSUER_SYMBOL)) || LA439_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA439_0 >= LANGUAGE_SYMBOL) && (LA439_0 <= LAST_SYMBOL)) || LA439_0 == LEAVES_SYMBOL || LA439_0 == LEFT_SYMBOL || LA439_0 == LESS_SYMBOL || LA439_0 == LEVEL_SYMBOL || LA439_0 == LINESTRING_SYMBOL || LA439_0 == LIST_SYMBOL || LA439_0 == LOCAL_SYMBOL || LA439_0 == LOCKS_SYMBOL || LA439_0 == LOGFILE_SYMBOL || LA439_0 == LOGS_SYMBOL || LA439_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA439_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA439_0 <= MASTER_SSL_SYMBOL)) || ((LA439_0 >= MASTER_SYMBOL) && (LA439_0 <= MATCH_SYMBOL)) || ((LA439_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA439_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA439_0 >= MEDIUM_SYMBOL) && (LA439_0 <= MICROSECOND_SYMBOL)) || LA439_0 == MIGRATE_SYMBOL || ((LA439_0 >= MINUTE_SYMBOL) && (LA439_0 <= MIN_SYMBOL)) || LA439_0 == MODE_SYMBOL || LA439_0 == MODIFY_SYMBOL || ((LA439_0 >= MOD_SYMBOL) && (LA439_0 <= MULTILINESTRING_SYMBOL)) || ((LA439_0 >= MULTIPOINT_SYMBOL) && (LA439_0 <= MULTIPOLYGON_SYMBOL)) || ((LA439_0 >= MUTEX_SYMBOL) && (LA439_0 <= NATIONAL_SYMBOL)) || LA439_0 == NCHAR_SYMBOL || LA439_0 == NDBCLUSTER_SYMBOL || ((LA439_0 >= NEW_SYMBOL) && (LA439_0 <= NONE_SYMBOL)) || ((LA439_0 >= NOW_SYMBOL) && (LA439_0 <= NO_WAIT_SYMBOL)) || LA439_0 == NULL2_SYMBOL || ((LA439_0 >= NULL_SYMBOL) && (LA439_0 <= NUMBER_SYMBOL)) || LA439_0 == NVARCHAR_SYMBOL || ((LA439_0 >= OFFSET_SYMBOL) && (LA439_0 <= ONE_SYMBOL)) || ((LA439_0 >= OPEN_PAR_SYMBOL) && (LA439_0 <= OPEN_SYMBOL)) || LA439_0 == OPTIONS_SYMBOL || ((LA439_0 >= OWNER_SYMBOL) && (LA439_0 <= PARAM_MARKER)) || ((LA439_0 >= PARSER_SYMBOL) && (LA439_0 <= PARTITION_SYMBOL)) || ((LA439_0 >= PASSWORD_SYMBOL) && (LA439_0 <= PLUGIN_SYMBOL)) || ((LA439_0 >= POINT_SYMBOL) && (LA439_0 <= POSITION_SYMBOL)) || ((LA439_0 >= PREPARE_SYMBOL) && (LA439_0 <= PREV_SYMBOL)) || LA439_0 == PRIVILEGES_SYMBOL || ((LA439_0 >= PROCESSLIST_SYMBOL) && (LA439_0 <= PROXY_SYMBOL)) || ((LA439_0 >= QUARTER_SYMBOL) && (LA439_0 <= QUICK_SYMBOL)) || LA439_0 == READ_ONLY_SYMBOL || ((LA439_0 >= REBUILD_SYMBOL) && (LA439_0 <= REDUNDANT_SYMBOL)) || ((LA439_0 >= RELAYLOG_SYMBOL) && (LA439_0 <= RELAY_THREAD_SYMBOL)) || ((LA439_0 >= RELOAD_SYMBOL) && (LA439_0 <= REMOVE_SYMBOL)) || ((LA439_0 >= REORGANIZE_SYMBOL) && (LA439_0 <= REPLICATION_SYMBOL)) || LA439_0 == RESET_SYMBOL || LA439_0 == RESTORE_SYMBOL || ((LA439_0 >= RESUME_SYMBOL) && (LA439_0 <= RETURNS_SYMBOL)) || LA439_0 == REVERSE_SYMBOL || LA439_0 == RIGHT_SYMBOL || ((LA439_0 >= ROLLBACK_SYMBOL) && (LA439_0 <= SCHEDULE_SYMBOL)) || LA439_0 == SCHEMA_NAME_SYMBOL || ((LA439_0 >= SECOND_SYMBOL) && (LA439_0 <= SECURITY_SYMBOL)) || ((LA439_0 >= SERIALIZABLE_SYMBOL) && (LA439_0 <= SERIAL_SYMBOL)) || ((LA439_0 >= SERVER_SYMBOL) && (LA439_0 <= SESSION_SYMBOL)) || LA439_0 == SHARE_SYMBOL || LA439_0 == SHUTDOWN_SYMBOL || ((LA439_0 >= SIGNED_SYMBOL) && (LA439_0 <= SIMPLE_SYMBOL)) || ((LA439_0 >= SLAVE_SYMBOL) && (LA439_0 <= SLOW_SYMBOL)) || ((LA439_0 >= SNAPSHOT_SYMBOL) && (LA439_0 <= SOURCE_SYMBOL)) || ((LA439_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA439_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA439_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA439_0 <= SQL_CACHE_SYMBOL)) || LA439_0 == SQL_NO_CACHE_SYMBOL || LA439_0 == SQL_THREAD_SYMBOL || ((LA439_0 >= STARTS_SYMBOL) && (LA439_0 <= STATUS_SYMBOL)) || LA439_0 == STDDEV_SAMP_SYMBOL || ((LA439_0 >= STD_SYMBOL) && (LA439_0 <= STORAGE_SYMBOL)) || ((LA439_0 >= STRING_SYMBOL) && (LA439_0 <= SUBPARTITION_SYMBOL)) || LA439_0 == SUBSTRING_SYMBOL || ((LA439_0 >= SUM_SYMBOL) && (LA439_0 <= SYSDATE_SYMBOL)) || ((LA439_0 >= TABLESPACE_SYMBOL) && (LA439_0 <= TABLE_NAME_SYMBOL)) || ((LA439_0 >= TEMPORARY_SYMBOL) && (LA439_0 <= TEMPTABLE_SYMBOL)) || ((LA439_0 >= TEXT_SYMBOL) && (LA439_0 <= THAN_SYMBOL)) || ((LA439_0 >= TIMESTAMP_ADD_SYMBOL) && (LA439_0 <= TIMESTAMP_DIFF_SYMBOL)) || ((LA439_0 >= TRANSACTION_SYMBOL) && (LA439_0 <= TRIGGERS_SYMBOL)) || LA439_0 == TRIM_SYMBOL || ((LA439_0 >= TRUNCATE_SYMBOL) && (LA439_0 <= UDF_RETURNS_SYMBOL)) || ((LA439_0 >= UNCOMMITTED_SYMBOL) && (LA439_0 <= UNDEFINED_SYMBOL)) || ((LA439_0 >= UNDOFILE_SYMBOL) && (LA439_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA439_0 >= UNICODE_SYMBOL) && (LA439_0 <= UNINSTALL_SYMBOL)) || LA439_0 == UNKNOWN_SYMBOL || LA439_0 == UNTIL_SYMBOL || LA439_0 == UPGRADE_SYMBOL || ((LA439_0 >= USER_RESOURCES_SYMBOL) && (LA439_0 <= USE_FRM_SYMBOL)) || ((LA439_0 >= UTC_DATE_SYMBOL) && (LA439_0 <= VALUE_SYMBOL)) || ((LA439_0 >= VARIABLES_SYMBOL) && (LA439_0 <= VARIANCE_SYMBOL)) || LA439_0 == VAR_SAMP_SYMBOL || ((LA439_0 >= VIEW_SYMBOL) && (LA439_0 <= WEIGHT_STRING_SYMBOL)) || ((LA439_0 >= WORK_SYMBOL) && (LA439_0 <= WRAPPER_SYMBOL)) || LA439_0 == X509_SYMBOL || ((LA439_0 >= XA_SYMBOL) && (LA439_0 <= XML_SYMBOL)) || LA439_0 == YEAR_SYMBOL || LA439_0 == 732))
                {
                    alt439=1;
                }
                else if ( (LA439_0 == BINARY_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AT_AT_SIGN_SYMBOL:
                    case AT_SIGN_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BINARY_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BITNUMBER:
                    case BITSTRING:
                    case BIT_AND_SYMBOL:
                    case BIT_OR_SYMBOL:
                    case BIT_SYMBOL:
                    case BIT_XOR_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CASE_SYMBOL:
                    case CAST_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHAR_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CONVERT_SYMBOL:
                    case COUNT_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURDATE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURRENT_USER_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case CURTIME_SYMBOL:
                    case DATABASE_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_ADD_SYMBOL:
                    case DATE_SUB_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DOT_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXISTS_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case EXTRACT_SYMBOL:
                    case FALSE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLOAT:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOUND_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GROUP_CONCAT_SYMBOL:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HEXNUMBER:
                    case HEXSTRING:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IF_SYMBOL:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSERT_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INTEGER:
                    case INVOKER_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LEFT_SYMBOL:
                    case LESS_SYMBOL:
                    case LEVEL_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MATCH_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MIN_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MOD_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NCHAR_TEXT:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NOW_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NULL2_SYMBOL:
                    case NULL_SYMBOL:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARAM_MARKER:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case POSITION_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPEAT_SYMBOL:
                    case REPLACE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case RIGHT_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SINGLE_QUOTED_TEXT:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STDDEV_SAMP_SYMBOL:
                    case STD_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUBSTRING_SYMBOL:
                    case SUM_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case SYSDATE_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRIM_SYMBOL:
                    case TRUE_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDERSCORE_CHARSET:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case UTC_DATE_SYMBOL:
                    case UTC_TIMESTAMP_SYMBOL:
                    case UTC_TIME_SYMBOL:
                    case VALUES_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VARIANCE_SYMBOL:
                    case VAR_SAMP_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case YEAR_SYMBOL:
                    case 732:
                    	{
                    		alt439=1;
                    	}
                        break;
                    case EOF:
                    case COMMA_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    	{
                    		alt439=5;
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 439;
                        EXCEPTION->state        = 99;


                        goto ruleset_expression_or_defaultEx;

                    }

                }
                else if ( (LA439_0 == DEFAULT_SYMBOL))
                {
                    alt439=2;
                }
                else if ( (LA439_0 == ON_SYMBOL))
                {
                    alt439=3;
                }
                else if ( (LA439_0 == ALL_SYMBOL))
                {
                    alt439=4;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 439;
                    EXCEPTION->state        = 0;


                    goto ruleset_expression_or_defaultEx;

                }
            }
            switch (alt439)
            {
        	case 1:
        	    // MySQL.g:1329:2: expression
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_expression_in_set_expression_or_default7208);
        	        expression1470=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleset_expression_or_defaultEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1470.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1330:4: DEFAULT_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DEFAULT_SYMBOL1471 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_set_expression_or_default7213);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleset_expression_or_defaultEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DEFAULT_SYMBOL1471_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL1471));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL1471_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1331:4: ON_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ON_SYMBOL1472 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_set_expression_or_default7218);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleset_expression_or_defaultEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ON_SYMBOL1472_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL1472));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL1472_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1332:4: ALL_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ALL_SYMBOL1473 = (pANTLR3_COMMON_TOKEN) MATCHT(ALL_SYMBOL, &FOLLOW_ALL_SYMBOL_in_set_expression_or_default7223);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleset_expression_or_defaultEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ALL_SYMBOL1473_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALL_SYMBOL1473));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ALL_SYMBOL1473_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1333:4: BINARY_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BINARY_SYMBOL1474 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_set_expression_or_default7228);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleset_expression_or_defaultEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BINARY_SYMBOL1474_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL1474));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL1474_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleset_expression_or_defaultEx; /* Prevent compiler warnings */
    ruleset_expression_or_defaultEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end set_expression_or_default */

/**
 * $ANTLR start option_value_list
 * MySQL.g:1336:1: option_value_list : option_value ( COMMA_SYMBOL option_value )* ;
 */
static MySQLParser_option_value_list_return
option_value_list(pMySQLParser ctx)
{
    MySQLParser_option_value_list_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1476;
    MySQLParser_option_value_return option_value1475;
    #undef	RETURN_TYPE_option_value1475
    #define	RETURN_TYPE_option_value1475 MySQLParser_option_value_return

    MySQLParser_option_value_return option_value1477;
    #undef	RETURN_TYPE_option_value1477
    #define	RETURN_TYPE_option_value1477 MySQLParser_option_value_return

    pANTLR3_BASE_TREE COMMA_SYMBOL1476_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL1476       = NULL;
    option_value1475.tree = NULL;

    option_value1477.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL1476_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1336:18: ( option_value ( COMMA_SYMBOL option_value )* )
        // MySQL.g:1337:2: option_value ( COMMA_SYMBOL option_value )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_option_value_in_option_value_list7237);
            option_value1475=option_value(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleoption_value_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, option_value1475.tree);

            // MySQL.g:1337:15: ( COMMA_SYMBOL option_value )*

            for (;;)
            {
                int alt440=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt440=1;
                	}
                    break;

                }

                switch (alt440)
                {
            	case 1:
            	    // MySQL.g:1337:16: COMMA_SYMBOL option_value
            	    {
            	        COMMA_SYMBOL1476 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_option_value_list7240);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleoption_value_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL1476_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1476));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1476_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_option_value_in_option_value_list7242);
            	        option_value1477=option_value(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleoption_value_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, option_value1477.tree);

            	    }
            	    break;

            	default:
            	    goto loop440;	/* break out of the loop */
            	    break;
                }
            }
            loop440: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto ruleoption_value_listEx; /* Prevent compiler warnings */
    ruleoption_value_listEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end option_value_list */

/**
 * $ANTLR start option_value
 * MySQL.g:1340:1: option_value : ( option_type variable_name equal set_expression_or_default | variable_assignment );
 */
static MySQLParser_option_value_return
option_value(pMySQLParser ctx)
{
    MySQLParser_option_value_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_option_type_return option_type1478;
    #undef	RETURN_TYPE_option_type1478
    #define	RETURN_TYPE_option_type1478 MySQLParser_option_type_return

    MySQLParser_variable_name_return variable_name1479;
    #undef	RETURN_TYPE_variable_name1479
    #define	RETURN_TYPE_variable_name1479 MySQLParser_variable_name_return

    MySQLParser_equal_return equal1480;
    #undef	RETURN_TYPE_equal1480
    #define	RETURN_TYPE_equal1480 MySQLParser_equal_return

    MySQLParser_set_expression_or_default_return set_expression_or_default1481;
    #undef	RETURN_TYPE_set_expression_or_default1481
    #define	RETURN_TYPE_set_expression_or_default1481 MySQLParser_set_expression_or_default_return

    MySQLParser_variable_assignment_return variable_assignment1482;
    #undef	RETURN_TYPE_variable_assignment1482
    #define	RETURN_TYPE_variable_assignment1482 MySQLParser_variable_assignment_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    option_type1478.tree = NULL;

    variable_name1479.tree = NULL;

    equal1480.tree = NULL;

    set_expression_or_default1481.tree = NULL;

    variable_assignment1482.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1340:13: ( option_type variable_name equal set_expression_or_default | variable_assignment )

            ANTLR3_UINT32 alt441;

            alt441=2;

            {
                int LA441_0 = LA(1);
                if ( (LA441_0 == GLOBAL_SYMBOL || LA441_0 == LOCAL_SYMBOL || LA441_0 == SESSION_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case ANY_SYMBOL:
                    case ASCII_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case BYTE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHARSET_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMENT_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFAULT_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case END_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FORMAT_SYMBOL:
                    case FOUND_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOST_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LESS_SYMBOL:
                    case LEVEL_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGS_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NO_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIONS_SYMBOL:
                    case OWNER_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARSER_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PORT_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELOAD_SYMBOL:
                    case REMOVE_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case REVERSE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SECURITY_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SERVER_SYMBOL:
                    case SESSION_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHUTDOWN_SYMBOL:
                    case SIGNED_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SLAVE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOCKET_SYMBOL:
                    case SONAME_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNICODE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPGRADE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WORK_SYMBOL:
                    case WRAPPER_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt441=1;
                    	}
                        break;
                    case ASSIGN_OPERATOR:
                    case DOT_SYMBOL:
                    case EQUAL_OPERATOR:
                    	{
                    		alt441=2;
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 441;
                        EXCEPTION->state        = 1;


                        goto ruleoption_valueEx;

                    }

                }
                else if ( (LA441_0 == BACK_TICK_QUOTED_ID || LA441_0 == IDENTIFIER || LA441_0 == NAMES_SYMBOL))
                {
                    alt441=2;
                }
                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA441_0 == DOUBLE_QUOTED_TEXT))
                {
                    alt441=2;
                }
                else if ( (((LA441_0 >= ACTION_SYMBOL) && (LA441_0 <= ADDDATE_SYMBOL)) || ((LA441_0 >= AFTER_SYMBOL) && (LA441_0 <= ALGORITHM_SYMBOL)) || LA441_0 == ANALYZE_SYMBOL || ((LA441_0 >= ANY_SYMBOL) && (LA441_0 <= ASCII_SYMBOL)) || ((LA441_0 >= AT_AT_SIGN_SYMBOL) && (LA441_0 <= BACKUP_SYMBOL)) || LA441_0 == BEGIN_SYMBOL || LA441_0 == BINLOG_SYMBOL || LA441_0 == BIT_SYMBOL || ((LA441_0 >= BLOCK_SYMBOL) && (LA441_0 <= BOOL_SYMBOL)) || ((LA441_0 >= BTREE_SYMBOL) && (LA441_0 <= BYTE_SYMBOL)) || LA441_0 == CACHE_SYMBOL || LA441_0 == CASCADED_SYMBOL || ((LA441_0 >= CATALOG_NAME_SYMBOL) && (LA441_0 <= CHANGED_SYMBOL)) || ((LA441_0 >= CHARSET_SYMBOL) && (LA441_0 <= CHECKSUM_SYMBOL)) || ((LA441_0 >= CIPHER_SYMBOL) && (LA441_0 <= CLIENT_SYMBOL)) || ((LA441_0 >= CLOSE_SYMBOL) && (LA441_0 <= CODE_SYMBOL)) || LA441_0 == COLLATION_SYMBOL || ((LA441_0 >= COLUMNS_SYMBOL) && (LA441_0 <= COLUMN_NAME_SYMBOL)) || ((LA441_0 >= COMMENT_SYMBOL) && (LA441_0 <= COMPRESSED_SYMBOL)) || LA441_0 == CONCURRENT_SYMBOL || ((LA441_0 >= CONNECTION_SYMBOL) && (LA441_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA441_0 >= CONTAINS_SYMBOL) && (LA441_0 <= CONTEXT_SYMBOL)) || LA441_0 == CONTRIBUTORS_SYMBOL || LA441_0 == CPU_SYMBOL || LA441_0 == CUBE_SYMBOL || LA441_0 == CURRENT_SYMBOL || LA441_0 == CURSOR_NAME_SYMBOL || ((LA441_0 >= DATAFILE_SYMBOL) && (LA441_0 <= DATETIME_SYMBOL)) || LA441_0 == DATE_SYMBOL || ((LA441_0 >= DAY_SYMBOL) && (LA441_0 <= DEALLOCATE_SYMBOL)) || ((LA441_0 >= DEFAULT_AUTH_SYMBOL) && (LA441_0 <= DEFINER_SYMBOL)) || LA441_0 == DELAY_KEY_WRITE_SYMBOL || LA441_0 == DES_KEY_FILE_SYMBOL || LA441_0 == DIAGNOSTICS_SYMBOL || ((LA441_0 >= DIRECTORY_SYMBOL) && (LA441_0 <= DISK_SYMBOL)) || LA441_0 == DO_SYMBOL || ((LA441_0 >= DUMPFILE_SYMBOL) && (LA441_0 <= DYNAMIC_SYMBOL)) || LA441_0 == ENABLE_SYMBOL || LA441_0 == ENDS_SYMBOL || ((LA441_0 >= END_SYMBOL) && (LA441_0 <= ENUM_SYMBOL)) || ((LA441_0 >= ERRORS_SYMBOL) && (LA441_0 <= ERROR_SYMBOL)) || ((LA441_0 >= ESCAPE_SYMBOL) && (LA441_0 <= EVERY_SYMBOL)) || LA441_0 == EXECUTE_SYMBOL || LA441_0 == EXPANSION_SYMBOL || LA441_0 == EXPORT_SYMBOL || ((LA441_0 >= EXTENDED_SYMBOL) && (LA441_0 <= EXTENT_SIZE_SYMBOL)) || ((LA441_0 >= FAST_SYMBOL) && (LA441_0 <= FAULTS_SYMBOL)) || ((LA441_0 >= FILE_SYMBOL) && (LA441_0 <= FIXED_SYMBOL)) || LA441_0 == FLUSH_SYMBOL || LA441_0 == FORMAT_SYMBOL || LA441_0 == FOUND_SYMBOL || LA441_0 == FULL_SYMBOL || ((LA441_0 >= FUNCTION_SYMBOL) && (LA441_0 <= GET_FORMAT_SYMBOL)) || LA441_0 == GRANTS_SYMBOL || ((LA441_0 >= HANDLER_SYMBOL) && (LA441_0 <= HASH_SYMBOL)) || LA441_0 == HELP_SYMBOL || ((LA441_0 >= HOSTS_SYMBOL) && (LA441_0 <= HOST_SYMBOL)) || ((LA441_0 >= HOUR_SYMBOL) && (LA441_0 <= IDENTIFIED_SYMBOL)) || LA441_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA441_0 >= IMPORT_SYMBOL) && (LA441_0 <= INDEXES_SYMBOL)) || LA441_0 == INITIAL_SIZE_SYMBOL || LA441_0 == INNODB_SYMBOL || LA441_0 == INSERT_METHOD_SYMBOL || LA441_0 == INSTALL_SYMBOL || LA441_0 == INVOKER_SYMBOL || LA441_0 == IO_SYMBOL || ((LA441_0 >= IPC_SYMBOL) && (LA441_0 <= ISSUER_SYMBOL)) || LA441_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA441_0 >= LANGUAGE_SYMBOL) && (LA441_0 <= LAST_SYMBOL)) || LA441_0 == LEAVES_SYMBOL || LA441_0 == LESS_SYMBOL || LA441_0 == LEVEL_SYMBOL || LA441_0 == LINESTRING_SYMBOL || LA441_0 == LIST_SYMBOL || LA441_0 == LOCKS_SYMBOL || LA441_0 == LOGFILE_SYMBOL || LA441_0 == LOGS_SYMBOL || LA441_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA441_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA441_0 <= MASTER_SSL_SYMBOL)) || ((LA441_0 >= MASTER_SYMBOL) && (LA441_0 <= MASTER_USER_SYMBOL)) || ((LA441_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA441_0 <= MAX_SIZE_SYMBOL)) || ((LA441_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA441_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA441_0 >= MEDIUM_SYMBOL) && (LA441_0 <= MICROSECOND_SYMBOL)) || LA441_0 == MIGRATE_SYMBOL || ((LA441_0 >= MINUTE_SYMBOL) && (LA441_0 <= MIN_ROWS_SYMBOL)) || LA441_0 == MODE_SYMBOL || LA441_0 == MODIFY_SYMBOL || ((LA441_0 >= MONTH_SYMBOL) && (LA441_0 <= MULTILINESTRING_SYMBOL)) || ((LA441_0 >= MULTIPOINT_SYMBOL) && (LA441_0 <= MULTIPOLYGON_SYMBOL)) || ((LA441_0 >= MUTEX_SYMBOL) && (LA441_0 <= MYSQL_ERRNO_SYMBOL)) || ((LA441_0 >= NAME_SYMBOL) && (LA441_0 <= NATIONAL_SYMBOL)) || LA441_0 == NCHAR_SYMBOL || LA441_0 == NDBCLUSTER_SYMBOL || ((LA441_0 >= NEW_SYMBOL) && (LA441_0 <= NONE_SYMBOL)) || ((LA441_0 >= NO_SYMBOL) && (LA441_0 <= NO_WAIT_SYMBOL)) || LA441_0 == NUMBER_SYMBOL || LA441_0 == NVARCHAR_SYMBOL || ((LA441_0 >= OFFSET_SYMBOL) && (LA441_0 <= ONE_SYMBOL)) || LA441_0 == OPEN_SYMBOL || LA441_0 == OPTIONS_SYMBOL || ((LA441_0 >= OWNER_SYMBOL) && (LA441_0 <= PAGE_SYMBOL)) || ((LA441_0 >= PARSER_SYMBOL) && (LA441_0 <= PARTITION_SYMBOL)) || ((LA441_0 >= PASSWORD_SYMBOL) && (LA441_0 <= PLUGIN_SYMBOL)) || ((LA441_0 >= POINT_SYMBOL) && (LA441_0 <= PORT_SYMBOL)) || ((LA441_0 >= PREPARE_SYMBOL) && (LA441_0 <= PREV_SYMBOL)) || LA441_0 == PRIVILEGES_SYMBOL || ((LA441_0 >= PROCESSLIST_SYMBOL) && (LA441_0 <= PROXY_SYMBOL)) || ((LA441_0 >= QUARTER_SYMBOL) && (LA441_0 <= QUICK_SYMBOL)) || LA441_0 == READ_ONLY_SYMBOL || ((LA441_0 >= REBUILD_SYMBOL) && (LA441_0 <= REDUNDANT_SYMBOL)) || ((LA441_0 >= RELAYLOG_SYMBOL) && (LA441_0 <= RELAY_THREAD_SYMBOL)) || ((LA441_0 >= RELOAD_SYMBOL) && (LA441_0 <= REMOVE_SYMBOL)) || ((LA441_0 >= REORGANIZE_SYMBOL) && (LA441_0 <= REPEATABLE_SYMBOL)) || LA441_0 == REPLICATION_SYMBOL || LA441_0 == RESET_SYMBOL || LA441_0 == RESTORE_SYMBOL || ((LA441_0 >= RESUME_SYMBOL) && (LA441_0 <= RETURNS_SYMBOL)) || LA441_0 == REVERSE_SYMBOL || ((LA441_0 >= ROLLBACK_SYMBOL) && (LA441_0 <= SCHEDULE_SYMBOL)) || LA441_0 == SCHEMA_NAME_SYMBOL || ((LA441_0 >= SECOND_SYMBOL) && (LA441_0 <= SECURITY_SYMBOL)) || ((LA441_0 >= SERIALIZABLE_SYMBOL) && (LA441_0 <= SERIAL_SYMBOL)) || LA441_0 == SERVER_SYMBOL || LA441_0 == SHARE_SYMBOL || LA441_0 == SHUTDOWN_SYMBOL || ((LA441_0 >= SIGNED_SYMBOL) && (LA441_0 <= SIMPLE_SYMBOL)) || ((LA441_0 >= SLAVE_SYMBOL) && (LA441_0 <= SLOW_SYMBOL)) || ((LA441_0 >= SNAPSHOT_SYMBOL) && (LA441_0 <= SOURCE_SYMBOL)) || ((LA441_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA441_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA441_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA441_0 <= SQL_CACHE_SYMBOL)) || LA441_0 == SQL_NO_CACHE_SYMBOL || LA441_0 == SQL_THREAD_SYMBOL || ((LA441_0 >= STARTS_SYMBOL) && (LA441_0 <= STATUS_SYMBOL)) || ((LA441_0 >= STOP_SYMBOL) && (LA441_0 <= STORAGE_SYMBOL)) || ((LA441_0 >= STRING_SYMBOL) && (LA441_0 <= SUBPARTITION_SYMBOL)) || ((LA441_0 >= SUPER_SYMBOL) && (LA441_0 <= SWITCHES_SYMBOL)) || ((LA441_0 >= TABLESPACE_SYMBOL) && (LA441_0 <= TABLE_NAME_SYMBOL)) || ((LA441_0 >= TEMPORARY_SYMBOL) && (LA441_0 <= TEMPTABLE_SYMBOL)) || ((LA441_0 >= TEXT_SYMBOL) && (LA441_0 <= THAN_SYMBOL)) || ((LA441_0 >= TIMESTAMP_ADD_SYMBOL) && (LA441_0 <= TIME_SYMBOL)) || ((LA441_0 >= TRANSACTION_SYMBOL) && (LA441_0 <= TRIGGERS_SYMBOL)) || ((LA441_0 >= TRUNCATE_SYMBOL) && (LA441_0 <= UDF_RETURNS_SYMBOL)) || ((LA441_0 >= UNCOMMITTED_SYMBOL) && (LA441_0 <= UNDEFINED_SYMBOL)) || ((LA441_0 >= UNDOFILE_SYMBOL) && (LA441_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA441_0 >= UNICODE_SYMBOL) && (LA441_0 <= UNINSTALL_SYMBOL)) || LA441_0 == UNKNOWN_SYMBOL || LA441_0 == UNTIL_SYMBOL || LA441_0 == UPGRADE_SYMBOL || ((LA441_0 >= USER_RESOURCES_SYMBOL) && (LA441_0 <= USE_FRM_SYMBOL)) || LA441_0 == VALUE_SYMBOL || LA441_0 == VARIABLES_SYMBOL || ((LA441_0 >= VIEW_SYMBOL) && (LA441_0 <= WEIGHT_STRING_SYMBOL)) || ((LA441_0 >= WORK_SYMBOL) && (LA441_0 <= WRAPPER_SYMBOL)) || LA441_0 == X509_SYMBOL || ((LA441_0 >= XA_SYMBOL) && (LA441_0 <= XML_SYMBOL)) || LA441_0 == YEAR_SYMBOL))
                {
                    alt441=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 441;
                    EXCEPTION->state        = 0;


                    goto ruleoption_valueEx;

                }
            }
            switch (alt441)
            {
        	case 1:
        	    // MySQL.g:1341:2: option_type variable_name equal set_expression_or_default
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_option_type_in_option_value7253);
        	        option_type1478=option_type(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleoption_valueEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, option_type1478.tree);

        	        FOLLOWPUSH(FOLLOW_variable_name_in_option_value7255);
        	        variable_name1479=variable_name(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleoption_valueEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, variable_name1479.tree);

        	        FOLLOWPUSH(FOLLOW_equal_in_option_value7257);
        	        equal1480=equal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleoption_valueEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, equal1480.tree);

        	        FOLLOWPUSH(FOLLOW_set_expression_or_default_in_option_value7259);
        	        set_expression_or_default1481=set_expression_or_default(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleoption_valueEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, set_expression_or_default1481.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1342:4: variable_assignment
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_variable_assignment_in_option_value7264);
        	        variable_assignment1482=variable_assignment(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleoption_valueEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, variable_assignment1482.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleoption_valueEx; /* Prevent compiler warnings */
    ruleoption_valueEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end option_value */

/**
 * $ANTLR start show_statement
 * MySQL.g:1347:1: show_statement : SHOW_SYMBOL ^ ( AUTHORS_SYMBOL | BINARY_SYMBOL LOGS_SYMBOL | BINLOG_SYMBOL EVENTS_SYMBOL ( IN_SYMBOL string_literal )? ( FROM_SYMBOL INTEGER )? ( limit_clause )? | CHAR_SYMBOL SET_SYMBOL ( like_or_where )? | COLLATION_SYMBOL ( like_or_where )? | ( FULL_SYMBOL )? COLUMNS_SYMBOL FROM_SYMBOL pure_identifier FROM_SYMBOL pure_identifier ( like_or_where )? | CONTRIBUTORS_SYMBOL | CREATE_SYMBOL ( DATABASE_SYMBOL | EVENT_SYMBOL | FUNCTION_SYMBOL | PROCEDURE_SYMBOL | TABLE_SYMBOL | TRIGGER_SYMBOL | VIEW_SYMBOL ) qualified_identifier | DATABASES_SYMBOL ( like_clause )? | ENGINE_SYMBOL pure_identifier ( STATUS_SYMBOL | MUTEX_SYMBOL ) | ( STORAGE_SYMBOL )? ENGINES_SYMBOL | ERRORS_SYMBOL ( limit_clause )? | EVENTS_SYMBOL | FUNCTION_SYMBOL CODE_SYMBOL pure_identifier | FUNCTION_SYMBOL STATUS_SYMBOL ( like_or_where )? | GRANTS_SYMBOL FOR_SYMBOL user | INDEX_SYMBOL FROM_SYMBOL pure_identifier ( FROM_SYMBOL pure_identifier )? |{...}? => INNODB_SYMBOL STATUS_SYMBOL | MASTER_SYMBOL STATUS_SYMBOL | OPEN_SYMBOL TABLES_SYMBOL ( FROM_SYMBOL pure_identifier )? ( like_or_where )? |{...}? => PLUGIN_SYMBOL |{...}? => PLUGINS_SYMBOL | PROCEDURE_SYMBOL CODE_SYMBOL pure_identifier | PRIVILEGES_SYMBOL | ( FULL_SYMBOL )? PROCESSLIST_SYMBOL | PROFILE_SYMBOL ( profile_type ( COMMA_SYMBOL profile_type )* )? ( FOR_SYMBOL QUERY_SYMBOL INTEGER )? ( limit_clause )? | PROFILES_SYMBOL | SLAVE_SYMBOL ( HOSTS_SYMBOL | STATUS_SYMBOL ) | ( option_type )? ( STATUS_SYMBOL | VARIABLES_SYMBOL ) ( like_or_where )? | TABLE_SYMBOL STATUS_SYMBOL ( FROM_SYMBOL pure_identifier )? ( like_or_where )? | ( FULL_SYMBOL )? TABLES_SYMBOL ( FROM_SYMBOL pure_identifier )? ( like_or_where )? | TRIGGERS_SYMBOL ( FROM_SYMBOL pure_identifier )? ( like_or_where )? | WARNINGS_SYMBOL ( limit_clause )? ) ;
 */
static MySQLParser_show_statement_return
show_statement(pMySQLParser ctx)
{
    MySQLParser_show_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    SHOW_SYMBOL1483;
    pANTLR3_COMMON_TOKEN    AUTHORS_SYMBOL1484;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL1485;
    pANTLR3_COMMON_TOKEN    LOGS_SYMBOL1486;
    pANTLR3_COMMON_TOKEN    BINLOG_SYMBOL1487;
    pANTLR3_COMMON_TOKEN    EVENTS_SYMBOL1488;
    pANTLR3_COMMON_TOKEN    IN_SYMBOL1489;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL1491;
    pANTLR3_COMMON_TOKEN    INTEGER1492;
    pANTLR3_COMMON_TOKEN    CHAR_SYMBOL1494;
    pANTLR3_COMMON_TOKEN    SET_SYMBOL1495;
    pANTLR3_COMMON_TOKEN    COLLATION_SYMBOL1497;
    pANTLR3_COMMON_TOKEN    FULL_SYMBOL1499;
    pANTLR3_COMMON_TOKEN    COLUMNS_SYMBOL1500;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL1501;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL1503;
    pANTLR3_COMMON_TOKEN    CONTRIBUTORS_SYMBOL1506;
    pANTLR3_COMMON_TOKEN    CREATE_SYMBOL1507;
    pANTLR3_COMMON_TOKEN    set1508;
    pANTLR3_COMMON_TOKEN    DATABASES_SYMBOL1510;
    pANTLR3_COMMON_TOKEN    ENGINE_SYMBOL1512;
    pANTLR3_COMMON_TOKEN    set1514;
    pANTLR3_COMMON_TOKEN    STORAGE_SYMBOL1515;
    pANTLR3_COMMON_TOKEN    ENGINES_SYMBOL1516;
    pANTLR3_COMMON_TOKEN    ERRORS_SYMBOL1517;
    pANTLR3_COMMON_TOKEN    EVENTS_SYMBOL1519;
    pANTLR3_COMMON_TOKEN    FUNCTION_SYMBOL1520;
    pANTLR3_COMMON_TOKEN    CODE_SYMBOL1521;
    pANTLR3_COMMON_TOKEN    FUNCTION_SYMBOL1523;
    pANTLR3_COMMON_TOKEN    STATUS_SYMBOL1524;
    pANTLR3_COMMON_TOKEN    GRANTS_SYMBOL1526;
    pANTLR3_COMMON_TOKEN    FOR_SYMBOL1527;
    pANTLR3_COMMON_TOKEN    INDEX_SYMBOL1529;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL1530;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL1532;
    pANTLR3_COMMON_TOKEN    INNODB_SYMBOL1534;
    pANTLR3_COMMON_TOKEN    STATUS_SYMBOL1535;
    pANTLR3_COMMON_TOKEN    MASTER_SYMBOL1536;
    pANTLR3_COMMON_TOKEN    STATUS_SYMBOL1537;
    pANTLR3_COMMON_TOKEN    OPEN_SYMBOL1538;
    pANTLR3_COMMON_TOKEN    TABLES_SYMBOL1539;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL1540;
    pANTLR3_COMMON_TOKEN    PLUGIN_SYMBOL1543;
    pANTLR3_COMMON_TOKEN    PLUGINS_SYMBOL1544;
    pANTLR3_COMMON_TOKEN    PROCEDURE_SYMBOL1545;
    pANTLR3_COMMON_TOKEN    CODE_SYMBOL1546;
    pANTLR3_COMMON_TOKEN    PRIVILEGES_SYMBOL1548;
    pANTLR3_COMMON_TOKEN    FULL_SYMBOL1549;
    pANTLR3_COMMON_TOKEN    PROCESSLIST_SYMBOL1550;
    pANTLR3_COMMON_TOKEN    PROFILE_SYMBOL1551;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1553;
    pANTLR3_COMMON_TOKEN    FOR_SYMBOL1555;
    pANTLR3_COMMON_TOKEN    QUERY_SYMBOL1556;
    pANTLR3_COMMON_TOKEN    INTEGER1557;
    pANTLR3_COMMON_TOKEN    PROFILES_SYMBOL1559;
    pANTLR3_COMMON_TOKEN    SLAVE_SYMBOL1560;
    pANTLR3_COMMON_TOKEN    set1561;
    pANTLR3_COMMON_TOKEN    set1563;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL1565;
    pANTLR3_COMMON_TOKEN    STATUS_SYMBOL1566;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL1567;
    pANTLR3_COMMON_TOKEN    FULL_SYMBOL1570;
    pANTLR3_COMMON_TOKEN    TABLES_SYMBOL1571;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL1572;
    pANTLR3_COMMON_TOKEN    TRIGGERS_SYMBOL1575;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL1576;
    pANTLR3_COMMON_TOKEN    WARNINGS_SYMBOL1579;
    MySQLParser_string_literal_return string_literal1490;
    #undef	RETURN_TYPE_string_literal1490
    #define	RETURN_TYPE_string_literal1490 MySQLParser_string_literal_return

    MySQLParser_limit_clause_return limit_clause1493;
    #undef	RETURN_TYPE_limit_clause1493
    #define	RETURN_TYPE_limit_clause1493 MySQLParser_limit_clause_return

    MySQLParser_like_or_where_return like_or_where1496;
    #undef	RETURN_TYPE_like_or_where1496
    #define	RETURN_TYPE_like_or_where1496 MySQLParser_like_or_where_return

    MySQLParser_like_or_where_return like_or_where1498;
    #undef	RETURN_TYPE_like_or_where1498
    #define	RETURN_TYPE_like_or_where1498 MySQLParser_like_or_where_return

    MySQLParser_pure_identifier_return pure_identifier1502;
    #undef	RETURN_TYPE_pure_identifier1502
    #define	RETURN_TYPE_pure_identifier1502 MySQLParser_pure_identifier_return

    MySQLParser_pure_identifier_return pure_identifier1504;
    #undef	RETURN_TYPE_pure_identifier1504
    #define	RETURN_TYPE_pure_identifier1504 MySQLParser_pure_identifier_return

    MySQLParser_like_or_where_return like_or_where1505;
    #undef	RETURN_TYPE_like_or_where1505
    #define	RETURN_TYPE_like_or_where1505 MySQLParser_like_or_where_return

    MySQLParser_qualified_identifier_return qualified_identifier1509;
    #undef	RETURN_TYPE_qualified_identifier1509
    #define	RETURN_TYPE_qualified_identifier1509 MySQLParser_qualified_identifier_return

    MySQLParser_like_clause_return like_clause1511;
    #undef	RETURN_TYPE_like_clause1511
    #define	RETURN_TYPE_like_clause1511 MySQLParser_like_clause_return

    MySQLParser_pure_identifier_return pure_identifier1513;
    #undef	RETURN_TYPE_pure_identifier1513
    #define	RETURN_TYPE_pure_identifier1513 MySQLParser_pure_identifier_return

    MySQLParser_limit_clause_return limit_clause1518;
    #undef	RETURN_TYPE_limit_clause1518
    #define	RETURN_TYPE_limit_clause1518 MySQLParser_limit_clause_return

    MySQLParser_pure_identifier_return pure_identifier1522;
    #undef	RETURN_TYPE_pure_identifier1522
    #define	RETURN_TYPE_pure_identifier1522 MySQLParser_pure_identifier_return

    MySQLParser_like_or_where_return like_or_where1525;
    #undef	RETURN_TYPE_like_or_where1525
    #define	RETURN_TYPE_like_or_where1525 MySQLParser_like_or_where_return

    MySQLParser_user_return user1528;
    #undef	RETURN_TYPE_user1528
    #define	RETURN_TYPE_user1528 MySQLParser_user_return

    MySQLParser_pure_identifier_return pure_identifier1531;
    #undef	RETURN_TYPE_pure_identifier1531
    #define	RETURN_TYPE_pure_identifier1531 MySQLParser_pure_identifier_return

    MySQLParser_pure_identifier_return pure_identifier1533;
    #undef	RETURN_TYPE_pure_identifier1533
    #define	RETURN_TYPE_pure_identifier1533 MySQLParser_pure_identifier_return

    MySQLParser_pure_identifier_return pure_identifier1541;
    #undef	RETURN_TYPE_pure_identifier1541
    #define	RETURN_TYPE_pure_identifier1541 MySQLParser_pure_identifier_return

    MySQLParser_like_or_where_return like_or_where1542;
    #undef	RETURN_TYPE_like_or_where1542
    #define	RETURN_TYPE_like_or_where1542 MySQLParser_like_or_where_return

    MySQLParser_pure_identifier_return pure_identifier1547;
    #undef	RETURN_TYPE_pure_identifier1547
    #define	RETURN_TYPE_pure_identifier1547 MySQLParser_pure_identifier_return

    MySQLParser_profile_type_return profile_type1552;
    #undef	RETURN_TYPE_profile_type1552
    #define	RETURN_TYPE_profile_type1552 MySQLParser_profile_type_return

    MySQLParser_profile_type_return profile_type1554;
    #undef	RETURN_TYPE_profile_type1554
    #define	RETURN_TYPE_profile_type1554 MySQLParser_profile_type_return

    MySQLParser_limit_clause_return limit_clause1558;
    #undef	RETURN_TYPE_limit_clause1558
    #define	RETURN_TYPE_limit_clause1558 MySQLParser_limit_clause_return

    MySQLParser_option_type_return option_type1562;
    #undef	RETURN_TYPE_option_type1562
    #define	RETURN_TYPE_option_type1562 MySQLParser_option_type_return

    MySQLParser_like_or_where_return like_or_where1564;
    #undef	RETURN_TYPE_like_or_where1564
    #define	RETURN_TYPE_like_or_where1564 MySQLParser_like_or_where_return

    MySQLParser_pure_identifier_return pure_identifier1568;
    #undef	RETURN_TYPE_pure_identifier1568
    #define	RETURN_TYPE_pure_identifier1568 MySQLParser_pure_identifier_return

    MySQLParser_like_or_where_return like_or_where1569;
    #undef	RETURN_TYPE_like_or_where1569
    #define	RETURN_TYPE_like_or_where1569 MySQLParser_like_or_where_return

    MySQLParser_pure_identifier_return pure_identifier1573;
    #undef	RETURN_TYPE_pure_identifier1573
    #define	RETURN_TYPE_pure_identifier1573 MySQLParser_pure_identifier_return

    MySQLParser_like_or_where_return like_or_where1574;
    #undef	RETURN_TYPE_like_or_where1574
    #define	RETURN_TYPE_like_or_where1574 MySQLParser_like_or_where_return

    MySQLParser_pure_identifier_return pure_identifier1577;
    #undef	RETURN_TYPE_pure_identifier1577
    #define	RETURN_TYPE_pure_identifier1577 MySQLParser_pure_identifier_return

    MySQLParser_like_or_where_return like_or_where1578;
    #undef	RETURN_TYPE_like_or_where1578
    #define	RETURN_TYPE_like_or_where1578 MySQLParser_like_or_where_return

    MySQLParser_limit_clause_return limit_clause1580;
    #undef	RETURN_TYPE_limit_clause1580
    #define	RETURN_TYPE_limit_clause1580 MySQLParser_limit_clause_return

    pANTLR3_BASE_TREE SHOW_SYMBOL1483_tree;
    pANTLR3_BASE_TREE AUTHORS_SYMBOL1484_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL1485_tree;
    pANTLR3_BASE_TREE LOGS_SYMBOL1486_tree;
    pANTLR3_BASE_TREE BINLOG_SYMBOL1487_tree;
    pANTLR3_BASE_TREE EVENTS_SYMBOL1488_tree;
    pANTLR3_BASE_TREE IN_SYMBOL1489_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL1491_tree;
    pANTLR3_BASE_TREE INTEGER1492_tree;
    pANTLR3_BASE_TREE CHAR_SYMBOL1494_tree;
    pANTLR3_BASE_TREE SET_SYMBOL1495_tree;
    pANTLR3_BASE_TREE COLLATION_SYMBOL1497_tree;
    pANTLR3_BASE_TREE FULL_SYMBOL1499_tree;
    pANTLR3_BASE_TREE COLUMNS_SYMBOL1500_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL1501_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL1503_tree;
    pANTLR3_BASE_TREE CONTRIBUTORS_SYMBOL1506_tree;
    pANTLR3_BASE_TREE CREATE_SYMBOL1507_tree;
    pANTLR3_BASE_TREE set1508_tree;
    pANTLR3_BASE_TREE DATABASES_SYMBOL1510_tree;
    pANTLR3_BASE_TREE ENGINE_SYMBOL1512_tree;
    pANTLR3_BASE_TREE set1514_tree;
    pANTLR3_BASE_TREE STORAGE_SYMBOL1515_tree;
    pANTLR3_BASE_TREE ENGINES_SYMBOL1516_tree;
    pANTLR3_BASE_TREE ERRORS_SYMBOL1517_tree;
    pANTLR3_BASE_TREE EVENTS_SYMBOL1519_tree;
    pANTLR3_BASE_TREE FUNCTION_SYMBOL1520_tree;
    pANTLR3_BASE_TREE CODE_SYMBOL1521_tree;
    pANTLR3_BASE_TREE FUNCTION_SYMBOL1523_tree;
    pANTLR3_BASE_TREE STATUS_SYMBOL1524_tree;
    pANTLR3_BASE_TREE GRANTS_SYMBOL1526_tree;
    pANTLR3_BASE_TREE FOR_SYMBOL1527_tree;
    pANTLR3_BASE_TREE INDEX_SYMBOL1529_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL1530_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL1532_tree;
    pANTLR3_BASE_TREE INNODB_SYMBOL1534_tree;
    pANTLR3_BASE_TREE STATUS_SYMBOL1535_tree;
    pANTLR3_BASE_TREE MASTER_SYMBOL1536_tree;
    pANTLR3_BASE_TREE STATUS_SYMBOL1537_tree;
    pANTLR3_BASE_TREE OPEN_SYMBOL1538_tree;
    pANTLR3_BASE_TREE TABLES_SYMBOL1539_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL1540_tree;
    pANTLR3_BASE_TREE PLUGIN_SYMBOL1543_tree;
    pANTLR3_BASE_TREE PLUGINS_SYMBOL1544_tree;
    pANTLR3_BASE_TREE PROCEDURE_SYMBOL1545_tree;
    pANTLR3_BASE_TREE CODE_SYMBOL1546_tree;
    pANTLR3_BASE_TREE PRIVILEGES_SYMBOL1548_tree;
    pANTLR3_BASE_TREE FULL_SYMBOL1549_tree;
    pANTLR3_BASE_TREE PROCESSLIST_SYMBOL1550_tree;
    pANTLR3_BASE_TREE PROFILE_SYMBOL1551_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1553_tree;
    pANTLR3_BASE_TREE FOR_SYMBOL1555_tree;
    pANTLR3_BASE_TREE QUERY_SYMBOL1556_tree;
    pANTLR3_BASE_TREE INTEGER1557_tree;
    pANTLR3_BASE_TREE PROFILES_SYMBOL1559_tree;
    pANTLR3_BASE_TREE SLAVE_SYMBOL1560_tree;
    pANTLR3_BASE_TREE set1561_tree;
    pANTLR3_BASE_TREE set1563_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL1565_tree;
    pANTLR3_BASE_TREE STATUS_SYMBOL1566_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL1567_tree;
    pANTLR3_BASE_TREE FULL_SYMBOL1570_tree;
    pANTLR3_BASE_TREE TABLES_SYMBOL1571_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL1572_tree;
    pANTLR3_BASE_TREE TRIGGERS_SYMBOL1575_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL1576_tree;
    pANTLR3_BASE_TREE WARNINGS_SYMBOL1579_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SHOW_SYMBOL1483       = NULL;
    AUTHORS_SYMBOL1484       = NULL;
    BINARY_SYMBOL1485       = NULL;
    LOGS_SYMBOL1486       = NULL;
    BINLOG_SYMBOL1487       = NULL;
    EVENTS_SYMBOL1488       = NULL;
    IN_SYMBOL1489       = NULL;
    FROM_SYMBOL1491       = NULL;
    INTEGER1492       = NULL;
    CHAR_SYMBOL1494       = NULL;
    SET_SYMBOL1495       = NULL;
    COLLATION_SYMBOL1497       = NULL;
    FULL_SYMBOL1499       = NULL;
    COLUMNS_SYMBOL1500       = NULL;
    FROM_SYMBOL1501       = NULL;
    FROM_SYMBOL1503       = NULL;
    CONTRIBUTORS_SYMBOL1506       = NULL;
    CREATE_SYMBOL1507       = NULL;
    set1508       = NULL;
    DATABASES_SYMBOL1510       = NULL;
    ENGINE_SYMBOL1512       = NULL;
    set1514       = NULL;
    STORAGE_SYMBOL1515       = NULL;
    ENGINES_SYMBOL1516       = NULL;
    ERRORS_SYMBOL1517       = NULL;
    EVENTS_SYMBOL1519       = NULL;
    FUNCTION_SYMBOL1520       = NULL;
    CODE_SYMBOL1521       = NULL;
    FUNCTION_SYMBOL1523       = NULL;
    STATUS_SYMBOL1524       = NULL;
    GRANTS_SYMBOL1526       = NULL;
    FOR_SYMBOL1527       = NULL;
    INDEX_SYMBOL1529       = NULL;
    FROM_SYMBOL1530       = NULL;
    FROM_SYMBOL1532       = NULL;
    INNODB_SYMBOL1534       = NULL;
    STATUS_SYMBOL1535       = NULL;
    MASTER_SYMBOL1536       = NULL;
    STATUS_SYMBOL1537       = NULL;
    OPEN_SYMBOL1538       = NULL;
    TABLES_SYMBOL1539       = NULL;
    FROM_SYMBOL1540       = NULL;
    PLUGIN_SYMBOL1543       = NULL;
    PLUGINS_SYMBOL1544       = NULL;
    PROCEDURE_SYMBOL1545       = NULL;
    CODE_SYMBOL1546       = NULL;
    PRIVILEGES_SYMBOL1548       = NULL;
    FULL_SYMBOL1549       = NULL;
    PROCESSLIST_SYMBOL1550       = NULL;
    PROFILE_SYMBOL1551       = NULL;
    COMMA_SYMBOL1553       = NULL;
    FOR_SYMBOL1555       = NULL;
    QUERY_SYMBOL1556       = NULL;
    INTEGER1557       = NULL;
    PROFILES_SYMBOL1559       = NULL;
    SLAVE_SYMBOL1560       = NULL;
    set1561       = NULL;
    set1563       = NULL;
    TABLE_SYMBOL1565       = NULL;
    STATUS_SYMBOL1566       = NULL;
    FROM_SYMBOL1567       = NULL;
    FULL_SYMBOL1570       = NULL;
    TABLES_SYMBOL1571       = NULL;
    FROM_SYMBOL1572       = NULL;
    TRIGGERS_SYMBOL1575       = NULL;
    FROM_SYMBOL1576       = NULL;
    WARNINGS_SYMBOL1579       = NULL;
    string_literal1490.tree = NULL;

    limit_clause1493.tree = NULL;

    like_or_where1496.tree = NULL;

    like_or_where1498.tree = NULL;

    pure_identifier1502.tree = NULL;

    pure_identifier1504.tree = NULL;

    like_or_where1505.tree = NULL;

    qualified_identifier1509.tree = NULL;

    like_clause1511.tree = NULL;

    pure_identifier1513.tree = NULL;

    limit_clause1518.tree = NULL;

    pure_identifier1522.tree = NULL;

    like_or_where1525.tree = NULL;

    user1528.tree = NULL;

    pure_identifier1531.tree = NULL;

    pure_identifier1533.tree = NULL;

    pure_identifier1541.tree = NULL;

    like_or_where1542.tree = NULL;

    pure_identifier1547.tree = NULL;

    profile_type1552.tree = NULL;

    profile_type1554.tree = NULL;

    limit_clause1558.tree = NULL;

    option_type1562.tree = NULL;

    like_or_where1564.tree = NULL;

    pure_identifier1568.tree = NULL;

    like_or_where1569.tree = NULL;

    pure_identifier1573.tree = NULL;

    like_or_where1574.tree = NULL;

    pure_identifier1577.tree = NULL;

    like_or_where1578.tree = NULL;

    limit_clause1580.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SHOW_SYMBOL1483_tree   = NULL;
    AUTHORS_SYMBOL1484_tree   = NULL;
    BINARY_SYMBOL1485_tree   = NULL;
    LOGS_SYMBOL1486_tree   = NULL;
    BINLOG_SYMBOL1487_tree   = NULL;
    EVENTS_SYMBOL1488_tree   = NULL;
    IN_SYMBOL1489_tree   = NULL;
    FROM_SYMBOL1491_tree   = NULL;
    INTEGER1492_tree   = NULL;
    CHAR_SYMBOL1494_tree   = NULL;
    SET_SYMBOL1495_tree   = NULL;
    COLLATION_SYMBOL1497_tree   = NULL;
    FULL_SYMBOL1499_tree   = NULL;
    COLUMNS_SYMBOL1500_tree   = NULL;
    FROM_SYMBOL1501_tree   = NULL;
    FROM_SYMBOL1503_tree   = NULL;
    CONTRIBUTORS_SYMBOL1506_tree   = NULL;
    CREATE_SYMBOL1507_tree   = NULL;
    set1508_tree   = NULL;
    DATABASES_SYMBOL1510_tree   = NULL;
    ENGINE_SYMBOL1512_tree   = NULL;
    set1514_tree   = NULL;
    STORAGE_SYMBOL1515_tree   = NULL;
    ENGINES_SYMBOL1516_tree   = NULL;
    ERRORS_SYMBOL1517_tree   = NULL;
    EVENTS_SYMBOL1519_tree   = NULL;
    FUNCTION_SYMBOL1520_tree   = NULL;
    CODE_SYMBOL1521_tree   = NULL;
    FUNCTION_SYMBOL1523_tree   = NULL;
    STATUS_SYMBOL1524_tree   = NULL;
    GRANTS_SYMBOL1526_tree   = NULL;
    FOR_SYMBOL1527_tree   = NULL;
    INDEX_SYMBOL1529_tree   = NULL;
    FROM_SYMBOL1530_tree   = NULL;
    FROM_SYMBOL1532_tree   = NULL;
    INNODB_SYMBOL1534_tree   = NULL;
    STATUS_SYMBOL1535_tree   = NULL;
    MASTER_SYMBOL1536_tree   = NULL;
    STATUS_SYMBOL1537_tree   = NULL;
    OPEN_SYMBOL1538_tree   = NULL;
    TABLES_SYMBOL1539_tree   = NULL;
    FROM_SYMBOL1540_tree   = NULL;
    PLUGIN_SYMBOL1543_tree   = NULL;
    PLUGINS_SYMBOL1544_tree   = NULL;
    PROCEDURE_SYMBOL1545_tree   = NULL;
    CODE_SYMBOL1546_tree   = NULL;
    PRIVILEGES_SYMBOL1548_tree   = NULL;
    FULL_SYMBOL1549_tree   = NULL;
    PROCESSLIST_SYMBOL1550_tree   = NULL;
    PROFILE_SYMBOL1551_tree   = NULL;
    COMMA_SYMBOL1553_tree   = NULL;
    FOR_SYMBOL1555_tree   = NULL;
    QUERY_SYMBOL1556_tree   = NULL;
    INTEGER1557_tree   = NULL;
    PROFILES_SYMBOL1559_tree   = NULL;
    SLAVE_SYMBOL1560_tree   = NULL;
    set1561_tree   = NULL;
    set1563_tree   = NULL;
    TABLE_SYMBOL1565_tree   = NULL;
    STATUS_SYMBOL1566_tree   = NULL;
    FROM_SYMBOL1567_tree   = NULL;
    FULL_SYMBOL1570_tree   = NULL;
    TABLES_SYMBOL1571_tree   = NULL;
    FROM_SYMBOL1572_tree   = NULL;
    TRIGGERS_SYMBOL1575_tree   = NULL;
    FROM_SYMBOL1576_tree   = NULL;
    WARNINGS_SYMBOL1579_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1347:15: ( SHOW_SYMBOL ^ ( AUTHORS_SYMBOL | BINARY_SYMBOL LOGS_SYMBOL | BINLOG_SYMBOL EVENTS_SYMBOL ( IN_SYMBOL string_literal )? ( FROM_SYMBOL INTEGER )? ( limit_clause )? | CHAR_SYMBOL SET_SYMBOL ( like_or_where )? | COLLATION_SYMBOL ( like_or_where )? | ( FULL_SYMBOL )? COLUMNS_SYMBOL FROM_SYMBOL pure_identifier FROM_SYMBOL pure_identifier ( like_or_where )? | CONTRIBUTORS_SYMBOL | CREATE_SYMBOL ( DATABASE_SYMBOL | EVENT_SYMBOL | FUNCTION_SYMBOL | PROCEDURE_SYMBOL | TABLE_SYMBOL | TRIGGER_SYMBOL | VIEW_SYMBOL ) qualified_identifier | DATABASES_SYMBOL ( like_clause )? | ENGINE_SYMBOL pure_identifier ( STATUS_SYMBOL | MUTEX_SYMBOL ) | ( STORAGE_SYMBOL )? ENGINES_SYMBOL | ERRORS_SYMBOL ( limit_clause )? | EVENTS_SYMBOL | FUNCTION_SYMBOL CODE_SYMBOL pure_identifier | FUNCTION_SYMBOL STATUS_SYMBOL ( like_or_where )? | GRANTS_SYMBOL FOR_SYMBOL user | INDEX_SYMBOL FROM_SYMBOL pure_identifier ( FROM_SYMBOL pure_identifier )? |{...}? => INNODB_SYMBOL STATUS_SYMBOL | MASTER_SYMBOL STATUS_SYMBOL | OPEN_SYMBOL TABLES_SYMBOL ( FROM_SYMBOL pure_identifier )? ( like_or_where )? |{...}? => PLUGIN_SYMBOL |{...}? => PLUGINS_SYMBOL | PROCEDURE_SYMBOL CODE_SYMBOL pure_identifier | PRIVILEGES_SYMBOL | ( FULL_SYMBOL )? PROCESSLIST_SYMBOL | PROFILE_SYMBOL ( profile_type ( COMMA_SYMBOL profile_type )* )? ( FOR_SYMBOL QUERY_SYMBOL INTEGER )? ( limit_clause )? | PROFILES_SYMBOL | SLAVE_SYMBOL ( HOSTS_SYMBOL | STATUS_SYMBOL ) | ( option_type )? ( STATUS_SYMBOL | VARIABLES_SYMBOL ) ( like_or_where )? | TABLE_SYMBOL STATUS_SYMBOL ( FROM_SYMBOL pure_identifier )? ( like_or_where )? | ( FULL_SYMBOL )? TABLES_SYMBOL ( FROM_SYMBOL pure_identifier )? ( like_or_where )? | TRIGGERS_SYMBOL ( FROM_SYMBOL pure_identifier )? ( like_or_where )? | WARNINGS_SYMBOL ( limit_clause )? ) )
        // MySQL.g:1348:2: SHOW_SYMBOL ^ ( AUTHORS_SYMBOL | BINARY_SYMBOL LOGS_SYMBOL | BINLOG_SYMBOL EVENTS_SYMBOL ( IN_SYMBOL string_literal )? ( FROM_SYMBOL INTEGER )? ( limit_clause )? | CHAR_SYMBOL SET_SYMBOL ( like_or_where )? | COLLATION_SYMBOL ( like_or_where )? | ( FULL_SYMBOL )? COLUMNS_SYMBOL FROM_SYMBOL pure_identifier FROM_SYMBOL pure_identifier ( like_or_where )? | CONTRIBUTORS_SYMBOL | CREATE_SYMBOL ( DATABASE_SYMBOL | EVENT_SYMBOL | FUNCTION_SYMBOL | PROCEDURE_SYMBOL | TABLE_SYMBOL | TRIGGER_SYMBOL | VIEW_SYMBOL ) qualified_identifier | DATABASES_SYMBOL ( like_clause )? | ENGINE_SYMBOL pure_identifier ( STATUS_SYMBOL | MUTEX_SYMBOL ) | ( STORAGE_SYMBOL )? ENGINES_SYMBOL | ERRORS_SYMBOL ( limit_clause )? | EVENTS_SYMBOL | FUNCTION_SYMBOL CODE_SYMBOL pure_identifier | FUNCTION_SYMBOL STATUS_SYMBOL ( like_or_where )? | GRANTS_SYMBOL FOR_SYMBOL user | INDEX_SYMBOL FROM_SYMBOL pure_identifier ( FROM_SYMBOL pure_identifier )? |{...}? => INNODB_SYMBOL STATUS_SYMBOL | MASTER_SYMBOL STATUS_SYMBOL | OPEN_SYMBOL TABLES_SYMBOL ( FROM_SYMBOL pure_identifier )? ( like_or_where )? |{...}? => PLUGIN_SYMBOL |{...}? => PLUGINS_SYMBOL | PROCEDURE_SYMBOL CODE_SYMBOL pure_identifier | PRIVILEGES_SYMBOL | ( FULL_SYMBOL )? PROCESSLIST_SYMBOL | PROFILE_SYMBOL ( profile_type ( COMMA_SYMBOL profile_type )* )? ( FOR_SYMBOL QUERY_SYMBOL INTEGER )? ( limit_clause )? | PROFILES_SYMBOL | SLAVE_SYMBOL ( HOSTS_SYMBOL | STATUS_SYMBOL ) | ( option_type )? ( STATUS_SYMBOL | VARIABLES_SYMBOL ) ( like_or_where )? | TABLE_SYMBOL STATUS_SYMBOL ( FROM_SYMBOL pure_identifier )? ( like_or_where )? | ( FULL_SYMBOL )? TABLES_SYMBOL ( FROM_SYMBOL pure_identifier )? ( like_or_where )? | TRIGGERS_SYMBOL ( FROM_SYMBOL pure_identifier )? ( like_or_where )? | WARNINGS_SYMBOL ( limit_clause )? )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            SHOW_SYMBOL1483 = (pANTLR3_COMMON_TOKEN) MATCHT(SHOW_SYMBOL, &FOLLOW_SHOW_SYMBOL_in_show_statement7275);
            if  (HASEXCEPTION())
            {
                goto ruleshow_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SHOW_SYMBOL1483_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SHOW_SYMBOL1483))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, SHOW_SYMBOL1483_tree, root_0));
            }

            // MySQL.g:1349:2: ( AUTHORS_SYMBOL | BINARY_SYMBOL LOGS_SYMBOL | BINLOG_SYMBOL EVENTS_SYMBOL ( IN_SYMBOL string_literal )? ( FROM_SYMBOL INTEGER )? ( limit_clause )? | CHAR_SYMBOL SET_SYMBOL ( like_or_where )? | COLLATION_SYMBOL ( like_or_where )? | ( FULL_SYMBOL )? COLUMNS_SYMBOL FROM_SYMBOL pure_identifier FROM_SYMBOL pure_identifier ( like_or_where )? | CONTRIBUTORS_SYMBOL | CREATE_SYMBOL ( DATABASE_SYMBOL | EVENT_SYMBOL | FUNCTION_SYMBOL | PROCEDURE_SYMBOL | TABLE_SYMBOL | TRIGGER_SYMBOL | VIEW_SYMBOL ) qualified_identifier | DATABASES_SYMBOL ( like_clause )? | ENGINE_SYMBOL pure_identifier ( STATUS_SYMBOL | MUTEX_SYMBOL ) | ( STORAGE_SYMBOL )? ENGINES_SYMBOL | ERRORS_SYMBOL ( limit_clause )? | EVENTS_SYMBOL | FUNCTION_SYMBOL CODE_SYMBOL pure_identifier | FUNCTION_SYMBOL STATUS_SYMBOL ( like_or_where )? | GRANTS_SYMBOL FOR_SYMBOL user | INDEX_SYMBOL FROM_SYMBOL pure_identifier ( FROM_SYMBOL pure_identifier )? |{...}? => INNODB_SYMBOL STATUS_SYMBOL | MASTER_SYMBOL STATUS_SYMBOL | OPEN_SYMBOL TABLES_SYMBOL ( FROM_SYMBOL pure_identifier )? ( like_or_where )? |{...}? => PLUGIN_SYMBOL |{...}? => PLUGINS_SYMBOL | PROCEDURE_SYMBOL CODE_SYMBOL pure_identifier | PRIVILEGES_SYMBOL | ( FULL_SYMBOL )? PROCESSLIST_SYMBOL | PROFILE_SYMBOL ( profile_type ( COMMA_SYMBOL profile_type )* )? ( FOR_SYMBOL QUERY_SYMBOL INTEGER )? ( limit_clause )? | PROFILES_SYMBOL | SLAVE_SYMBOL ( HOSTS_SYMBOL | STATUS_SYMBOL ) | ( option_type )? ( STATUS_SYMBOL | VARIABLES_SYMBOL ) ( like_or_where )? | TABLE_SYMBOL STATUS_SYMBOL ( FROM_SYMBOL pure_identifier )? ( like_or_where )? | ( FULL_SYMBOL )? TABLES_SYMBOL ( FROM_SYMBOL pure_identifier )? ( like_or_where )? | TRIGGERS_SYMBOL ( FROM_SYMBOL pure_identifier )? ( like_or_where )? | WARNINGS_SYMBOL ( limit_clause )? )
            {
                int alt471=33;
                {
                    int LA471_0 = LA(1);
                    if ( (LA471_0 == AUTHORS_SYMBOL))
                    {
                        alt471=1;
                    }
                    else if ( (LA471_0 == BINARY_SYMBOL))
                    {
                        alt471=2;
                    }
                    else if ( (LA471_0 == BINLOG_SYMBOL))
                    {
                        alt471=3;
                    }
                    else if ( (LA471_0 == CHAR_SYMBOL))
                    {
                        alt471=4;
                    }
                    else if ( (LA471_0 == COLLATION_SYMBOL))
                    {
                        alt471=5;
                    }
                    else if ( (LA471_0 == FULL_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case COLUMNS_SYMBOL:
                        	{
                        		alt471=6;
                        	}
                            break;
                        case PROCESSLIST_SYMBOL:
                        	{
                        		alt471=25;
                        	}
                            break;
                        case TABLES_SYMBOL:
                        	{
                        		alt471=31;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 471;
                            EXCEPTION->state        = 6;


                            goto ruleshow_statementEx;

                        }

                    }
                    else if ( (LA471_0 == COLUMNS_SYMBOL))
                    {
                        alt471=6;
                    }
                    else if ( (LA471_0 == CONTRIBUTORS_SYMBOL))
                    {
                        alt471=7;
                    }
                    else if ( (LA471_0 == CREATE_SYMBOL))
                    {
                        alt471=8;
                    }
                    else if ( (LA471_0 == DATABASES_SYMBOL))
                    {
                        alt471=9;
                    }
                    else if ( (LA471_0 == ENGINE_SYMBOL))
                    {
                        alt471=10;
                    }
                    else if ( (LA471_0 == ENGINES_SYMBOL || LA471_0 == STORAGE_SYMBOL))
                    {
                        alt471=11;
                    }
                    else if ( (LA471_0 == ERRORS_SYMBOL))
                    {
                        alt471=12;
                    }
                    else if ( (LA471_0 == EVENTS_SYMBOL))
                    {
                        alt471=13;
                    }
                    else if ( (LA471_0 == FUNCTION_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case CODE_SYMBOL:
                        	{
                        		alt471=14;
                        	}
                            break;
                        case STATUS_SYMBOL:
                        	{
                        		alt471=15;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 471;
                            EXCEPTION->state        = 16;


                            goto ruleshow_statementEx;

                        }

                    }
                    else if ( (LA471_0 == GRANTS_SYMBOL))
                    {
                        alt471=16;
                    }
                    else if ( (LA471_0 == INDEX_SYMBOL))
                    {
                        alt471=17;
                    }
                    else if ( ((SERVER_VERSION < 50500)) && (LA471_0 == INNODB_SYMBOL))
                    {
                        alt471=18;
                    }
                    else if ( (LA471_0 == MASTER_SYMBOL))
                    {
                        alt471=19;
                    }
                    else if ( (LA471_0 == OPEN_SYMBOL))
                    {
                        alt471=20;
                    }
                    else if ( (((SERVER_VERSION >= 50105) && (SERVER_VERSION < 50500))) && (LA471_0 == PLUGIN_SYMBOL))
                    {
                        alt471=21;
                    }
                    else if ( ((SERVER_VERSION >= 50500)) && (LA471_0 == PLUGINS_SYMBOL))
                    {
                        alt471=22;
                    }
                    else if ( (LA471_0 == PROCEDURE_SYMBOL))
                    {
                        alt471=23;
                    }
                    else if ( (LA471_0 == PRIVILEGES_SYMBOL))
                    {
                        alt471=24;
                    }
                    else if ( (LA471_0 == PROCESSLIST_SYMBOL))
                    {
                        alt471=25;
                    }
                    else if ( (LA471_0 == PROFILE_SYMBOL))
                    {
                        alt471=26;
                    }
                    else if ( (LA471_0 == PROFILES_SYMBOL))
                    {
                        alt471=27;
                    }
                    else if ( (LA471_0 == SLAVE_SYMBOL))
                    {
                        alt471=28;
                    }
                    else if ( (LA471_0 == GLOBAL_SYMBOL || LA471_0 == LOCAL_SYMBOL || LA471_0 == SESSION_SYMBOL || LA471_0 == STATUS_SYMBOL || LA471_0 == VARIABLES_SYMBOL))
                    {
                        alt471=29;
                    }
                    else if ( (LA471_0 == TABLE_SYMBOL))
                    {
                        alt471=30;
                    }
                    else if ( (LA471_0 == TABLES_SYMBOL))
                    {
                        alt471=31;
                    }
                    else if ( (LA471_0 == TRIGGERS_SYMBOL))
                    {
                        alt471=32;
                    }
                    else if ( (LA471_0 == WARNINGS_SYMBOL))
                    {
                        alt471=33;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 471;
                        EXCEPTION->state        = 0;


                        goto ruleshow_statementEx;

                    }
                }
                switch (alt471)
                {
            	case 1:
            	    // MySQL.g:1350:3: AUTHORS_SYMBOL
            	    {
            	        AUTHORS_SYMBOL1484 = (pANTLR3_COMMON_TOKEN) MATCHT(AUTHORS_SYMBOL, &FOLLOW_AUTHORS_SYMBOL_in_show_statement7283);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        AUTHORS_SYMBOL1484_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AUTHORS_SYMBOL1484));
            	        ADAPTOR->addChild(ADAPTOR, root_0, AUTHORS_SYMBOL1484_tree);
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1351:5: BINARY_SYMBOL LOGS_SYMBOL
            	    {
            	        BINARY_SYMBOL1485 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_show_statement7289);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        BINARY_SYMBOL1485_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL1485));
            	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL1485_tree);
            	        }

            	        LOGS_SYMBOL1486 = (pANTLR3_COMMON_TOKEN) MATCHT(LOGS_SYMBOL, &FOLLOW_LOGS_SYMBOL_in_show_statement7291);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        LOGS_SYMBOL1486_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOGS_SYMBOL1486));
            	        ADAPTOR->addChild(ADAPTOR, root_0, LOGS_SYMBOL1486_tree);
            	        }

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:1352:5: BINLOG_SYMBOL EVENTS_SYMBOL ( IN_SYMBOL string_literal )? ( FROM_SYMBOL INTEGER )? ( limit_clause )?
            	    {
            	        BINLOG_SYMBOL1487 = (pANTLR3_COMMON_TOKEN) MATCHT(BINLOG_SYMBOL, &FOLLOW_BINLOG_SYMBOL_in_show_statement7297);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        BINLOG_SYMBOL1487_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINLOG_SYMBOL1487));
            	        ADAPTOR->addChild(ADAPTOR, root_0, BINLOG_SYMBOL1487_tree);
            	        }

            	        EVENTS_SYMBOL1488 = (pANTLR3_COMMON_TOKEN) MATCHT(EVENTS_SYMBOL, &FOLLOW_EVENTS_SYMBOL_in_show_statement7299);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        EVENTS_SYMBOL1488_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EVENTS_SYMBOL1488));
            	        ADAPTOR->addChild(ADAPTOR, root_0, EVENTS_SYMBOL1488_tree);
            	        }

            	        // MySQL.g:1352:33: ( IN_SYMBOL string_literal )?
            	        {
            	            int alt442=2;
            	            switch ( LA(1) )
            	            {
            	                case IN_SYMBOL:
            	                	{
            	                		alt442=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt442)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1352:34: IN_SYMBOL string_literal
            	        	    {
            	        	        IN_SYMBOL1489 = (pANTLR3_COMMON_TOKEN) MATCHT(IN_SYMBOL, &FOLLOW_IN_SYMBOL_in_show_statement7302);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        IN_SYMBOL1489_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IN_SYMBOL1489));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, IN_SYMBOL1489_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_string_literal_in_show_statement7304);
            	        	        string_literal1490=string_literal(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1490.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1352:61: ( FROM_SYMBOL INTEGER )?
            	        {
            	            int alt443=2;
            	            switch ( LA(1) )
            	            {
            	                case FROM_SYMBOL:
            	                	{
            	                		alt443=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt443)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1352:62: FROM_SYMBOL INTEGER
            	        	    {
            	        	        FROM_SYMBOL1491 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_show_statement7309);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        FROM_SYMBOL1491_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL1491));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL1491_tree);
            	        	        }

            	        	        INTEGER1492 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_show_statement7311);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        INTEGER1492_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER1492));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER1492_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1352:84: ( limit_clause )?
            	        {
            	            int alt444=2;
            	            switch ( LA(1) )
            	            {
            	                case LIMIT_SYMBOL:
            	                	{
            	                		alt444=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt444)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1352:84: limit_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_limit_clause_in_show_statement7315);
            	        	        limit_clause1493=limit_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_clause1493.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 4:
            	    // MySQL.g:1353:5: CHAR_SYMBOL SET_SYMBOL ( like_or_where )?
            	    {
            	        CHAR_SYMBOL1494 = (pANTLR3_COMMON_TOKEN) MATCHT(CHAR_SYMBOL, &FOLLOW_CHAR_SYMBOL_in_show_statement7322);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CHAR_SYMBOL1494_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHAR_SYMBOL1494));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CHAR_SYMBOL1494_tree);
            	        }

            	        SET_SYMBOL1495 = (pANTLR3_COMMON_TOKEN) MATCHT(SET_SYMBOL, &FOLLOW_SET_SYMBOL_in_show_statement7324);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SET_SYMBOL1495_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SET_SYMBOL1495));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SET_SYMBOL1495_tree);
            	        }

            	        // MySQL.g:1353:28: ( like_or_where )?
            	        {
            	            int alt445=2;
            	            switch ( LA(1) )
            	            {
            	                case LIKE_SYMBOL:
            	                case WHERE_SYMBOL:
            	                	{
            	                		alt445=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt445)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1353:28: like_or_where
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_like_or_where_in_show_statement7326);
            	        	        like_or_where1496=like_or_where(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, like_or_where1496.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 5:
            	    // MySQL.g:1354:5: COLLATION_SYMBOL ( like_or_where )?
            	    {
            	        COLLATION_SYMBOL1497 = (pANTLR3_COMMON_TOKEN) MATCHT(COLLATION_SYMBOL, &FOLLOW_COLLATION_SYMBOL_in_show_statement7333);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COLLATION_SYMBOL1497_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLLATION_SYMBOL1497));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COLLATION_SYMBOL1497_tree);
            	        }

            	        // MySQL.g:1354:22: ( like_or_where )?
            	        {
            	            int alt446=2;
            	            switch ( LA(1) )
            	            {
            	                case LIKE_SYMBOL:
            	                case WHERE_SYMBOL:
            	                	{
            	                		alt446=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt446)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1354:22: like_or_where
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_like_or_where_in_show_statement7335);
            	        	        like_or_where1498=like_or_where(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, like_or_where1498.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 6:
            	    // MySQL.g:1355:5: ( FULL_SYMBOL )? COLUMNS_SYMBOL FROM_SYMBOL pure_identifier FROM_SYMBOL pure_identifier ( like_or_where )?
            	    {
            	        // MySQL.g:1355:5: ( FULL_SYMBOL )?
            	        {
            	            int alt447=2;
            	            switch ( LA(1) )
            	            {
            	                case FULL_SYMBOL:
            	                	{
            	                		alt447=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt447)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1355:5: FULL_SYMBOL
            	        	    {
            	        	        FULL_SYMBOL1499 = (pANTLR3_COMMON_TOKEN) MATCHT(FULL_SYMBOL, &FOLLOW_FULL_SYMBOL_in_show_statement7342);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        FULL_SYMBOL1499_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FULL_SYMBOL1499));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, FULL_SYMBOL1499_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        COLUMNS_SYMBOL1500 = (pANTLR3_COMMON_TOKEN) MATCHT(COLUMNS_SYMBOL, &FOLLOW_COLUMNS_SYMBOL_in_show_statement7345);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COLUMNS_SYMBOL1500_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLUMNS_SYMBOL1500));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COLUMNS_SYMBOL1500_tree);
            	        }

            	        FROM_SYMBOL1501 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_show_statement7347);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FROM_SYMBOL1501_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL1501));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL1501_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_pure_identifier_in_show_statement7349);
            	        pure_identifier1502=pure_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier1502.tree);

            	        FROM_SYMBOL1503 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_show_statement7351);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FROM_SYMBOL1503_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL1503));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL1503_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_pure_identifier_in_show_statement7353);
            	        pure_identifier1504=pure_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier1504.tree);

            	        // MySQL.g:1355:89: ( like_or_where )?
            	        {
            	            int alt448=2;
            	            switch ( LA(1) )
            	            {
            	                case LIKE_SYMBOL:
            	                case WHERE_SYMBOL:
            	                	{
            	                		alt448=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt448)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1355:89: like_or_where
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_like_or_where_in_show_statement7355);
            	        	        like_or_where1505=like_or_where(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, like_or_where1505.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 7:
            	    // MySQL.g:1356:5: CONTRIBUTORS_SYMBOL
            	    {
            	        CONTRIBUTORS_SYMBOL1506 = (pANTLR3_COMMON_TOKEN) MATCHT(CONTRIBUTORS_SYMBOL, &FOLLOW_CONTRIBUTORS_SYMBOL_in_show_statement7362);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CONTRIBUTORS_SYMBOL1506_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CONTRIBUTORS_SYMBOL1506));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CONTRIBUTORS_SYMBOL1506_tree);
            	        }

            	    }
            	    break;
            	case 8:
            	    // MySQL.g:1357:5: CREATE_SYMBOL ( DATABASE_SYMBOL | EVENT_SYMBOL | FUNCTION_SYMBOL | PROCEDURE_SYMBOL | TABLE_SYMBOL | TRIGGER_SYMBOL | VIEW_SYMBOL ) qualified_identifier
            	    {
            	        CREATE_SYMBOL1507 = (pANTLR3_COMMON_TOKEN) MATCHT(CREATE_SYMBOL, &FOLLOW_CREATE_SYMBOL_in_show_statement7368);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CREATE_SYMBOL1507_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CREATE_SYMBOL1507));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CREATE_SYMBOL1507_tree);
            	        }

            	        set1508=(pANTLR3_COMMON_TOKEN)LT(1);

            	        if ( LA(1) == DATABASE_SYMBOL || LA(1) == EVENT_SYMBOL || LA(1) == FUNCTION_SYMBOL || LA(1) == PROCEDURE_SYMBOL || LA(1) == TABLE_SYMBOL || LA(1) == TRIGGER_SYMBOL || LA(1) == VIEW_SYMBOL )
            	        {
            	            CONSUME();
            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1508))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	            CONSTRUCTEX();
            	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	            EXCEPTION->expectingSet = NULL;

            	            goto ruleshow_statementEx;
            	        }


            	        FOLLOWPUSH(FOLLOW_qualified_identifier_in_show_statement7398);
            	        qualified_identifier1509=qualified_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, qualified_identifier1509.tree);

            	    }
            	    break;
            	case 9:
            	    // MySQL.g:1358:5: DATABASES_SYMBOL ( like_clause )?
            	    {
            	        DATABASES_SYMBOL1510 = (pANTLR3_COMMON_TOKEN) MATCHT(DATABASES_SYMBOL, &FOLLOW_DATABASES_SYMBOL_in_show_statement7404);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DATABASES_SYMBOL1510_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATABASES_SYMBOL1510));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DATABASES_SYMBOL1510_tree);
            	        }

            	        // MySQL.g:1358:22: ( like_clause )?
            	        {
            	            int alt449=2;
            	            switch ( LA(1) )
            	            {
            	                case LIKE_SYMBOL:
            	                	{
            	                		alt449=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt449)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1358:22: like_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_like_clause_in_show_statement7406);
            	        	        like_clause1511=like_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, like_clause1511.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 10:
            	    // MySQL.g:1359:5: ENGINE_SYMBOL pure_identifier ( STATUS_SYMBOL | MUTEX_SYMBOL )
            	    {
            	        ENGINE_SYMBOL1512 = (pANTLR3_COMMON_TOKEN) MATCHT(ENGINE_SYMBOL, &FOLLOW_ENGINE_SYMBOL_in_show_statement7413);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ENGINE_SYMBOL1512_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ENGINE_SYMBOL1512));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ENGINE_SYMBOL1512_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_pure_identifier_in_show_statement7415);
            	        pure_identifier1513=pure_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier1513.tree);

            	        set1514=(pANTLR3_COMMON_TOKEN)LT(1);

            	        if ( LA(1) == MUTEX_SYMBOL || LA(1) == STATUS_SYMBOL )
            	        {
            	            CONSUME();
            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1514))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	            CONSTRUCTEX();
            	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	            EXCEPTION->expectingSet = NULL;

            	            goto ruleshow_statementEx;
            	        }


            	    }
            	    break;
            	case 11:
            	    // MySQL.g:1360:5: ( STORAGE_SYMBOL )? ENGINES_SYMBOL
            	    {
            	        // MySQL.g:1360:5: ( STORAGE_SYMBOL )?
            	        {
            	            int alt450=2;
            	            switch ( LA(1) )
            	            {
            	                case STORAGE_SYMBOL:
            	                	{
            	                		alt450=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt450)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1360:5: STORAGE_SYMBOL
            	        	    {
            	        	        STORAGE_SYMBOL1515 = (pANTLR3_COMMON_TOKEN) MATCHT(STORAGE_SYMBOL, &FOLLOW_STORAGE_SYMBOL_in_show_statement7429);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        STORAGE_SYMBOL1515_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STORAGE_SYMBOL1515));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, STORAGE_SYMBOL1515_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        ENGINES_SYMBOL1516 = (pANTLR3_COMMON_TOKEN) MATCHT(ENGINES_SYMBOL, &FOLLOW_ENGINES_SYMBOL_in_show_statement7432);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ENGINES_SYMBOL1516_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ENGINES_SYMBOL1516));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ENGINES_SYMBOL1516_tree);
            	        }

            	    }
            	    break;
            	case 12:
            	    // MySQL.g:1361:5: ERRORS_SYMBOL ( limit_clause )?
            	    {
            	        ERRORS_SYMBOL1517 = (pANTLR3_COMMON_TOKEN) MATCHT(ERRORS_SYMBOL, &FOLLOW_ERRORS_SYMBOL_in_show_statement7438);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ERRORS_SYMBOL1517_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ERRORS_SYMBOL1517));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ERRORS_SYMBOL1517_tree);
            	        }

            	        // MySQL.g:1361:19: ( limit_clause )?
            	        {
            	            int alt451=2;
            	            switch ( LA(1) )
            	            {
            	                case LIMIT_SYMBOL:
            	                	{
            	                		alt451=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt451)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1361:19: limit_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_limit_clause_in_show_statement7440);
            	        	        limit_clause1518=limit_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_clause1518.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 13:
            	    // MySQL.g:1362:5: EVENTS_SYMBOL
            	    {
            	        EVENTS_SYMBOL1519 = (pANTLR3_COMMON_TOKEN) MATCHT(EVENTS_SYMBOL, &FOLLOW_EVENTS_SYMBOL_in_show_statement7447);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        EVENTS_SYMBOL1519_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EVENTS_SYMBOL1519));
            	        ADAPTOR->addChild(ADAPTOR, root_0, EVENTS_SYMBOL1519_tree);
            	        }

            	    }
            	    break;
            	case 14:
            	    // MySQL.g:1363:5: FUNCTION_SYMBOL CODE_SYMBOL pure_identifier
            	    {
            	        FUNCTION_SYMBOL1520 = (pANTLR3_COMMON_TOKEN) MATCHT(FUNCTION_SYMBOL, &FOLLOW_FUNCTION_SYMBOL_in_show_statement7453);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FUNCTION_SYMBOL1520_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FUNCTION_SYMBOL1520));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FUNCTION_SYMBOL1520_tree);
            	        }

            	        CODE_SYMBOL1521 = (pANTLR3_COMMON_TOKEN) MATCHT(CODE_SYMBOL, &FOLLOW_CODE_SYMBOL_in_show_statement7455);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CODE_SYMBOL1521_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CODE_SYMBOL1521));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CODE_SYMBOL1521_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_pure_identifier_in_show_statement7457);
            	        pure_identifier1522=pure_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier1522.tree);

            	    }
            	    break;
            	case 15:
            	    // MySQL.g:1364:5: FUNCTION_SYMBOL STATUS_SYMBOL ( like_or_where )?
            	    {
            	        FUNCTION_SYMBOL1523 = (pANTLR3_COMMON_TOKEN) MATCHT(FUNCTION_SYMBOL, &FOLLOW_FUNCTION_SYMBOL_in_show_statement7463);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FUNCTION_SYMBOL1523_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FUNCTION_SYMBOL1523));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FUNCTION_SYMBOL1523_tree);
            	        }

            	        STATUS_SYMBOL1524 = (pANTLR3_COMMON_TOKEN) MATCHT(STATUS_SYMBOL, &FOLLOW_STATUS_SYMBOL_in_show_statement7465);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        STATUS_SYMBOL1524_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STATUS_SYMBOL1524));
            	        ADAPTOR->addChild(ADAPTOR, root_0, STATUS_SYMBOL1524_tree);
            	        }

            	        // MySQL.g:1364:35: ( like_or_where )?
            	        {
            	            int alt452=2;
            	            switch ( LA(1) )
            	            {
            	                case LIKE_SYMBOL:
            	                case WHERE_SYMBOL:
            	                	{
            	                		alt452=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt452)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1364:35: like_or_where
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_like_or_where_in_show_statement7467);
            	        	        like_or_where1525=like_or_where(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, like_or_where1525.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 16:
            	    // MySQL.g:1365:5: GRANTS_SYMBOL FOR_SYMBOL user
            	    {
            	        GRANTS_SYMBOL1526 = (pANTLR3_COMMON_TOKEN) MATCHT(GRANTS_SYMBOL, &FOLLOW_GRANTS_SYMBOL_in_show_statement7474);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        GRANTS_SYMBOL1526_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GRANTS_SYMBOL1526));
            	        ADAPTOR->addChild(ADAPTOR, root_0, GRANTS_SYMBOL1526_tree);
            	        }

            	        FOR_SYMBOL1527 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_show_statement7476);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FOR_SYMBOL1527_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL1527));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL1527_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_user_in_show_statement7478);
            	        user1528=user(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user1528.tree);

            	    }
            	    break;
            	case 17:
            	    // MySQL.g:1366:5: INDEX_SYMBOL FROM_SYMBOL pure_identifier ( FROM_SYMBOL pure_identifier )?
            	    {
            	        INDEX_SYMBOL1529 = (pANTLR3_COMMON_TOKEN) MATCHT(INDEX_SYMBOL, &FOLLOW_INDEX_SYMBOL_in_show_statement7484);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INDEX_SYMBOL1529_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INDEX_SYMBOL1529));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INDEX_SYMBOL1529_tree);
            	        }

            	        FROM_SYMBOL1530 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_show_statement7486);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FROM_SYMBOL1530_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL1530));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL1530_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_pure_identifier_in_show_statement7488);
            	        pure_identifier1531=pure_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier1531.tree);

            	        // MySQL.g:1366:46: ( FROM_SYMBOL pure_identifier )?
            	        {
            	            int alt453=2;
            	            switch ( LA(1) )
            	            {
            	                case FROM_SYMBOL:
            	                	{
            	                		alt453=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt453)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1366:47: FROM_SYMBOL pure_identifier
            	        	    {
            	        	        FROM_SYMBOL1532 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_show_statement7491);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        FROM_SYMBOL1532_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL1532));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL1532_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_pure_identifier_in_show_statement7493);
            	        	        pure_identifier1533=pure_identifier(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier1533.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 18:
            	    // MySQL.g:1367:5: {...}? => INNODB_SYMBOL STATUS_SYMBOL
            	    {
            	        if ( !((SERVER_VERSION < 50500)) )
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
            	                EXCEPTION->message      = (void *)"SERVER_VERSION < 50500";
            	                EXCEPTION->ruleName	 = (void *)"show_statement";


            	        }

            	        INNODB_SYMBOL1534 = (pANTLR3_COMMON_TOKEN) MATCHT(INNODB_SYMBOL, &FOLLOW_INNODB_SYMBOL_in_show_statement7505);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INNODB_SYMBOL1534_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INNODB_SYMBOL1534));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INNODB_SYMBOL1534_tree);
            	        }

            	        STATUS_SYMBOL1535 = (pANTLR3_COMMON_TOKEN) MATCHT(STATUS_SYMBOL, &FOLLOW_STATUS_SYMBOL_in_show_statement7507);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        STATUS_SYMBOL1535_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STATUS_SYMBOL1535));
            	        ADAPTOR->addChild(ADAPTOR, root_0, STATUS_SYMBOL1535_tree);
            	        }

            	    }
            	    break;
            	case 19:
            	    // MySQL.g:1368:5: MASTER_SYMBOL STATUS_SYMBOL
            	    {
            	        MASTER_SYMBOL1536 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_SYMBOL, &FOLLOW_MASTER_SYMBOL_in_show_statement7514);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        MASTER_SYMBOL1536_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_SYMBOL1536));
            	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_SYMBOL1536_tree);
            	        }

            	        STATUS_SYMBOL1537 = (pANTLR3_COMMON_TOKEN) MATCHT(STATUS_SYMBOL, &FOLLOW_STATUS_SYMBOL_in_show_statement7516);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        STATUS_SYMBOL1537_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STATUS_SYMBOL1537));
            	        ADAPTOR->addChild(ADAPTOR, root_0, STATUS_SYMBOL1537_tree);
            	        }

            	    }
            	    break;
            	case 20:
            	    // MySQL.g:1369:5: OPEN_SYMBOL TABLES_SYMBOL ( FROM_SYMBOL pure_identifier )? ( like_or_where )?
            	    {
            	        OPEN_SYMBOL1538 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_SYMBOL, &FOLLOW_OPEN_SYMBOL_in_show_statement7522);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPEN_SYMBOL1538_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_SYMBOL1538));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_SYMBOL1538_tree);
            	        }

            	        TABLES_SYMBOL1539 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLES_SYMBOL, &FOLLOW_TABLES_SYMBOL_in_show_statement7524);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TABLES_SYMBOL1539_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLES_SYMBOL1539));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TABLES_SYMBOL1539_tree);
            	        }

            	        // MySQL.g:1369:31: ( FROM_SYMBOL pure_identifier )?
            	        {
            	            int alt454=2;
            	            switch ( LA(1) )
            	            {
            	                case FROM_SYMBOL:
            	                	{
            	                		alt454=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt454)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1369:32: FROM_SYMBOL pure_identifier
            	        	    {
            	        	        FROM_SYMBOL1540 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_show_statement7527);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        FROM_SYMBOL1540_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL1540));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL1540_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_pure_identifier_in_show_statement7529);
            	        	        pure_identifier1541=pure_identifier(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier1541.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1369:62: ( like_or_where )?
            	        {
            	            int alt455=2;
            	            switch ( LA(1) )
            	            {
            	                case LIKE_SYMBOL:
            	                case WHERE_SYMBOL:
            	                	{
            	                		alt455=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt455)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1369:62: like_or_where
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_like_or_where_in_show_statement7533);
            	        	        like_or_where1542=like_or_where(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, like_or_where1542.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 21:
            	    // MySQL.g:1370:5: {...}? => PLUGIN_SYMBOL
            	    {
            	        if ( !(((SERVER_VERSION >= 50105) && (SERVER_VERSION < 50500))) )
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
            	                EXCEPTION->message      = (void *)"(SERVER_VERSION >= 50105) && (SERVER_VERSION < 50500)";
            	                EXCEPTION->ruleName	 = (void *)"show_statement";


            	        }

            	        PLUGIN_SYMBOL1543 = (pANTLR3_COMMON_TOKEN) MATCHT(PLUGIN_SYMBOL, &FOLLOW_PLUGIN_SYMBOL_in_show_statement7544);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PLUGIN_SYMBOL1543_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PLUGIN_SYMBOL1543));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PLUGIN_SYMBOL1543_tree);
            	        }

            	    }
            	    break;
            	case 22:
            	    // MySQL.g:1371:5: {...}? => PLUGINS_SYMBOL
            	    {
            	        if ( !((SERVER_VERSION >= 50500)) )
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
            	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50500";
            	                EXCEPTION->ruleName	 = (void *)"show_statement";


            	        }

            	        PLUGINS_SYMBOL1544 = (pANTLR3_COMMON_TOKEN) MATCHT(PLUGINS_SYMBOL, &FOLLOW_PLUGINS_SYMBOL_in_show_statement7555);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PLUGINS_SYMBOL1544_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PLUGINS_SYMBOL1544));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PLUGINS_SYMBOL1544_tree);
            	        }

            	    }
            	    break;
            	case 23:
            	    // MySQL.g:1372:5: PROCEDURE_SYMBOL CODE_SYMBOL pure_identifier
            	    {
            	        PROCEDURE_SYMBOL1545 = (pANTLR3_COMMON_TOKEN) MATCHT(PROCEDURE_SYMBOL, &FOLLOW_PROCEDURE_SYMBOL_in_show_statement7561);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PROCEDURE_SYMBOL1545_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PROCEDURE_SYMBOL1545));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PROCEDURE_SYMBOL1545_tree);
            	        }

            	        CODE_SYMBOL1546 = (pANTLR3_COMMON_TOKEN) MATCHT(CODE_SYMBOL, &FOLLOW_CODE_SYMBOL_in_show_statement7563);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CODE_SYMBOL1546_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CODE_SYMBOL1546));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CODE_SYMBOL1546_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_pure_identifier_in_show_statement7565);
            	        pure_identifier1547=pure_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier1547.tree);

            	    }
            	    break;
            	case 24:
            	    // MySQL.g:1373:5: PRIVILEGES_SYMBOL
            	    {
            	        PRIVILEGES_SYMBOL1548 = (pANTLR3_COMMON_TOKEN) MATCHT(PRIVILEGES_SYMBOL, &FOLLOW_PRIVILEGES_SYMBOL_in_show_statement7571);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PRIVILEGES_SYMBOL1548_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PRIVILEGES_SYMBOL1548));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PRIVILEGES_SYMBOL1548_tree);
            	        }

            	    }
            	    break;
            	case 25:
            	    // MySQL.g:1374:5: ( FULL_SYMBOL )? PROCESSLIST_SYMBOL
            	    {
            	        // MySQL.g:1374:5: ( FULL_SYMBOL )?
            	        {
            	            int alt456=2;
            	            switch ( LA(1) )
            	            {
            	                case FULL_SYMBOL:
            	                	{
            	                		alt456=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt456)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1374:5: FULL_SYMBOL
            	        	    {
            	        	        FULL_SYMBOL1549 = (pANTLR3_COMMON_TOKEN) MATCHT(FULL_SYMBOL, &FOLLOW_FULL_SYMBOL_in_show_statement7577);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        FULL_SYMBOL1549_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FULL_SYMBOL1549));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, FULL_SYMBOL1549_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        PROCESSLIST_SYMBOL1550 = (pANTLR3_COMMON_TOKEN) MATCHT(PROCESSLIST_SYMBOL, &FOLLOW_PROCESSLIST_SYMBOL_in_show_statement7580);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PROCESSLIST_SYMBOL1550_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PROCESSLIST_SYMBOL1550));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PROCESSLIST_SYMBOL1550_tree);
            	        }

            	    }
            	    break;
            	case 26:
            	    // MySQL.g:1375:5: PROFILE_SYMBOL ( profile_type ( COMMA_SYMBOL profile_type )* )? ( FOR_SYMBOL QUERY_SYMBOL INTEGER )? ( limit_clause )?
            	    {
            	        PROFILE_SYMBOL1551 = (pANTLR3_COMMON_TOKEN) MATCHT(PROFILE_SYMBOL, &FOLLOW_PROFILE_SYMBOL_in_show_statement7586);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PROFILE_SYMBOL1551_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PROFILE_SYMBOL1551));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PROFILE_SYMBOL1551_tree);
            	        }

            	        // MySQL.g:1375:20: ( profile_type ( COMMA_SYMBOL profile_type )* )?
            	        {
            	            int alt458=2;
            	            switch ( LA(1) )
            	            {
            	                case ALL_SYMBOL:
            	                case BLOCK_SYMBOL:
            	                case CONTEXT_SYMBOL:
            	                case CPU_SYMBOL:
            	                case IPC_SYMBOL:
            	                case MEMORY_SYMBOL:
            	                case PAGE_SYMBOL:
            	                case SOURCE_SYMBOL:
            	                case SWAPS_SYMBOL:
            	                	{
            	                		alt458=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt458)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1375:21: profile_type ( COMMA_SYMBOL profile_type )*
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_profile_type_in_show_statement7589);
            	        	        profile_type1552=profile_type(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, profile_type1552.tree);

            	        	        // MySQL.g:1375:34: ( COMMA_SYMBOL profile_type )*

            	        	        for (;;)
            	        	        {
            	        	            int alt457=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	            case COMMA_SYMBOL:
            	        	            	{
            	        	            		alt457=1;
            	        	            	}
            	        	                break;

            	        	            }

            	        	            switch (alt457)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:1375:35: COMMA_SYMBOL profile_type
            	        	        	    {
            	        	        	        COMMA_SYMBOL1553 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_show_statement7592);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruleshow_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        COMMA_SYMBOL1553_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1553));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1553_tree);
            	        	        	        }

            	        	        	        FOLLOWPUSH(FOLLOW_profile_type_in_show_statement7594);
            	        	        	        profile_type1554=profile_type(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruleshow_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, profile_type1554.tree);

            	        	        	    }
            	        	        	    break;

            	        	        	default:
            	        	        	    goto loop457;	/* break out of the loop */
            	        	        	    break;
            	        	            }
            	        	        }
            	        	        loop457: ; /* Jump out to here if this rule does not match */


            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1375:65: ( FOR_SYMBOL QUERY_SYMBOL INTEGER )?
            	        {
            	            int alt459=2;
            	            switch ( LA(1) )
            	            {
            	                case FOR_SYMBOL:
            	                	{
            	                		alt459=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt459)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1375:66: FOR_SYMBOL QUERY_SYMBOL INTEGER
            	        	    {
            	        	        FOR_SYMBOL1555 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_show_statement7601);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        FOR_SYMBOL1555_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL1555));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL1555_tree);
            	        	        }

            	        	        QUERY_SYMBOL1556 = (pANTLR3_COMMON_TOKEN) MATCHT(QUERY_SYMBOL, &FOLLOW_QUERY_SYMBOL_in_show_statement7603);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        QUERY_SYMBOL1556_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, QUERY_SYMBOL1556));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, QUERY_SYMBOL1556_tree);
            	        	        }

            	        	        INTEGER1557 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_show_statement7605);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        INTEGER1557_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER1557));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER1557_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1375:100: ( limit_clause )?
            	        {
            	            int alt460=2;
            	            switch ( LA(1) )
            	            {
            	                case LIMIT_SYMBOL:
            	                	{
            	                		alt460=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt460)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1375:100: limit_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_limit_clause_in_show_statement7609);
            	        	        limit_clause1558=limit_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_clause1558.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 27:
            	    // MySQL.g:1376:5: PROFILES_SYMBOL
            	    {
            	        PROFILES_SYMBOL1559 = (pANTLR3_COMMON_TOKEN) MATCHT(PROFILES_SYMBOL, &FOLLOW_PROFILES_SYMBOL_in_show_statement7616);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PROFILES_SYMBOL1559_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PROFILES_SYMBOL1559));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PROFILES_SYMBOL1559_tree);
            	        }

            	    }
            	    break;
            	case 28:
            	    // MySQL.g:1377:5: SLAVE_SYMBOL ( HOSTS_SYMBOL | STATUS_SYMBOL )
            	    {
            	        SLAVE_SYMBOL1560 = (pANTLR3_COMMON_TOKEN) MATCHT(SLAVE_SYMBOL, &FOLLOW_SLAVE_SYMBOL_in_show_statement7622);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SLAVE_SYMBOL1560_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SLAVE_SYMBOL1560));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SLAVE_SYMBOL1560_tree);
            	        }

            	        set1561=(pANTLR3_COMMON_TOKEN)LT(1);

            	        if ( LA(1) == HOSTS_SYMBOL || LA(1) == STATUS_SYMBOL )
            	        {
            	            CONSUME();
            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1561))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	            CONSTRUCTEX();
            	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	            EXCEPTION->expectingSet = NULL;

            	            goto ruleshow_statementEx;
            	        }


            	    }
            	    break;
            	case 29:
            	    // MySQL.g:1378:5: ( option_type )? ( STATUS_SYMBOL | VARIABLES_SYMBOL ) ( like_or_where )?
            	    {
            	        // MySQL.g:1378:5: ( option_type )?
            	        {
            	            int alt461=2;
            	            switch ( LA(1) )
            	            {
            	                case GLOBAL_SYMBOL:
            	                case LOCAL_SYMBOL:
            	                case SESSION_SYMBOL:
            	                	{
            	                		alt461=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt461)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1378:5: option_type
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_option_type_in_show_statement7636);
            	        	        option_type1562=option_type(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, option_type1562.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        set1563=(pANTLR3_COMMON_TOKEN)LT(1);

            	        if ( LA(1) == STATUS_SYMBOL || LA(1) == VARIABLES_SYMBOL )
            	        {
            	            CONSUME();
            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1563))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	            CONSTRUCTEX();
            	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	            EXCEPTION->expectingSet = NULL;

            	            goto ruleshow_statementEx;
            	        }


            	        // MySQL.g:1378:53: ( like_or_where )?
            	        {
            	            int alt462=2;
            	            switch ( LA(1) )
            	            {
            	                case LIKE_SYMBOL:
            	                case WHERE_SYMBOL:
            	                	{
            	                		alt462=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt462)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1378:53: like_or_where
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_like_or_where_in_show_statement7647);
            	        	        like_or_where1564=like_or_where(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, like_or_where1564.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 30:
            	    // MySQL.g:1379:5: TABLE_SYMBOL STATUS_SYMBOL ( FROM_SYMBOL pure_identifier )? ( like_or_where )?
            	    {
            	        TABLE_SYMBOL1565 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_show_statement7654);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TABLE_SYMBOL1565_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL1565));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL1565_tree);
            	        }

            	        STATUS_SYMBOL1566 = (pANTLR3_COMMON_TOKEN) MATCHT(STATUS_SYMBOL, &FOLLOW_STATUS_SYMBOL_in_show_statement7656);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        STATUS_SYMBOL1566_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STATUS_SYMBOL1566));
            	        ADAPTOR->addChild(ADAPTOR, root_0, STATUS_SYMBOL1566_tree);
            	        }

            	        // MySQL.g:1379:32: ( FROM_SYMBOL pure_identifier )?
            	        {
            	            int alt463=2;
            	            switch ( LA(1) )
            	            {
            	                case FROM_SYMBOL:
            	                	{
            	                		alt463=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt463)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1379:33: FROM_SYMBOL pure_identifier
            	        	    {
            	        	        FROM_SYMBOL1567 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_show_statement7659);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        FROM_SYMBOL1567_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL1567));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL1567_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_pure_identifier_in_show_statement7661);
            	        	        pure_identifier1568=pure_identifier(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier1568.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1379:63: ( like_or_where )?
            	        {
            	            int alt464=2;
            	            switch ( LA(1) )
            	            {
            	                case LIKE_SYMBOL:
            	                case WHERE_SYMBOL:
            	                	{
            	                		alt464=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt464)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1379:63: like_or_where
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_like_or_where_in_show_statement7665);
            	        	        like_or_where1569=like_or_where(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, like_or_where1569.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 31:
            	    // MySQL.g:1380:5: ( FULL_SYMBOL )? TABLES_SYMBOL ( FROM_SYMBOL pure_identifier )? ( like_or_where )?
            	    {
            	        // MySQL.g:1380:5: ( FULL_SYMBOL )?
            	        {
            	            int alt465=2;
            	            switch ( LA(1) )
            	            {
            	                case FULL_SYMBOL:
            	                	{
            	                		alt465=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt465)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1380:5: FULL_SYMBOL
            	        	    {
            	        	        FULL_SYMBOL1570 = (pANTLR3_COMMON_TOKEN) MATCHT(FULL_SYMBOL, &FOLLOW_FULL_SYMBOL_in_show_statement7672);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        FULL_SYMBOL1570_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FULL_SYMBOL1570));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, FULL_SYMBOL1570_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        TABLES_SYMBOL1571 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLES_SYMBOL, &FOLLOW_TABLES_SYMBOL_in_show_statement7675);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TABLES_SYMBOL1571_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLES_SYMBOL1571));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TABLES_SYMBOL1571_tree);
            	        }

            	        // MySQL.g:1380:32: ( FROM_SYMBOL pure_identifier )?
            	        {
            	            int alt466=2;
            	            switch ( LA(1) )
            	            {
            	                case FROM_SYMBOL:
            	                	{
            	                		alt466=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt466)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1380:33: FROM_SYMBOL pure_identifier
            	        	    {
            	        	        FROM_SYMBOL1572 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_show_statement7678);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        FROM_SYMBOL1572_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL1572));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL1572_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_pure_identifier_in_show_statement7680);
            	        	        pure_identifier1573=pure_identifier(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier1573.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1380:63: ( like_or_where )?
            	        {
            	            int alt467=2;
            	            switch ( LA(1) )
            	            {
            	                case LIKE_SYMBOL:
            	                case WHERE_SYMBOL:
            	                	{
            	                		alt467=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt467)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1380:63: like_or_where
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_like_or_where_in_show_statement7684);
            	        	        like_or_where1574=like_or_where(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, like_or_where1574.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 32:
            	    // MySQL.g:1381:5: TRIGGERS_SYMBOL ( FROM_SYMBOL pure_identifier )? ( like_or_where )?
            	    {
            	        TRIGGERS_SYMBOL1575 = (pANTLR3_COMMON_TOKEN) MATCHT(TRIGGERS_SYMBOL, &FOLLOW_TRIGGERS_SYMBOL_in_show_statement7691);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TRIGGERS_SYMBOL1575_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TRIGGERS_SYMBOL1575));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TRIGGERS_SYMBOL1575_tree);
            	        }

            	        // MySQL.g:1381:21: ( FROM_SYMBOL pure_identifier )?
            	        {
            	            int alt468=2;
            	            switch ( LA(1) )
            	            {
            	                case FROM_SYMBOL:
            	                	{
            	                		alt468=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt468)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1381:22: FROM_SYMBOL pure_identifier
            	        	    {
            	        	        FROM_SYMBOL1576 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_show_statement7694);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        FROM_SYMBOL1576_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL1576));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL1576_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_pure_identifier_in_show_statement7696);
            	        	        pure_identifier1577=pure_identifier(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier1577.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1381:52: ( like_or_where )?
            	        {
            	            int alt469=2;
            	            switch ( LA(1) )
            	            {
            	                case LIKE_SYMBOL:
            	                case WHERE_SYMBOL:
            	                	{
            	                		alt469=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt469)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1381:52: like_or_where
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_like_or_where_in_show_statement7700);
            	        	        like_or_where1578=like_or_where(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, like_or_where1578.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 33:
            	    // MySQL.g:1382:5: WARNINGS_SYMBOL ( limit_clause )?
            	    {
            	        WARNINGS_SYMBOL1579 = (pANTLR3_COMMON_TOKEN) MATCHT(WARNINGS_SYMBOL, &FOLLOW_WARNINGS_SYMBOL_in_show_statement7707);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        WARNINGS_SYMBOL1579_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WARNINGS_SYMBOL1579));
            	        ADAPTOR->addChild(ADAPTOR, root_0, WARNINGS_SYMBOL1579_tree);
            	        }

            	        // MySQL.g:1382:21: ( limit_clause )?
            	        {
            	            int alt470=2;
            	            switch ( LA(1) )
            	            {
            	                case LIMIT_SYMBOL:
            	                	{
            	                		alt470=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt470)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1382:21: limit_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_limit_clause_in_show_statement7709);
            	        	        limit_clause1580=limit_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_clause1580.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleshow_statementEx; /* Prevent compiler warnings */
    ruleshow_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end show_statement */

/**
 * $ANTLR start profile_type
 * MySQL.g:1386:1: profile_type : ( ALL_SYMBOL | BLOCK_SYMBOL IO_SYMBOL | CONTEXT_SYMBOL SWITCHES_SYMBOL | CPU_SYMBOL | IPC_SYMBOL | MEMORY_SYMBOL | PAGE_SYMBOL FAULTS_SYMBOL | SOURCE_SYMBOL | SWAPS_SYMBOL );
 */
static MySQLParser_profile_type_return
profile_type(pMySQLParser ctx)
{
    MySQLParser_profile_type_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    ALL_SYMBOL1581;
    pANTLR3_COMMON_TOKEN    BLOCK_SYMBOL1582;
    pANTLR3_COMMON_TOKEN    IO_SYMBOL1583;
    pANTLR3_COMMON_TOKEN    CONTEXT_SYMBOL1584;
    pANTLR3_COMMON_TOKEN    SWITCHES_SYMBOL1585;
    pANTLR3_COMMON_TOKEN    CPU_SYMBOL1586;
    pANTLR3_COMMON_TOKEN    IPC_SYMBOL1587;
    pANTLR3_COMMON_TOKEN    MEMORY_SYMBOL1588;
    pANTLR3_COMMON_TOKEN    PAGE_SYMBOL1589;
    pANTLR3_COMMON_TOKEN    FAULTS_SYMBOL1590;
    pANTLR3_COMMON_TOKEN    SOURCE_SYMBOL1591;
    pANTLR3_COMMON_TOKEN    SWAPS_SYMBOL1592;

    pANTLR3_BASE_TREE ALL_SYMBOL1581_tree;
    pANTLR3_BASE_TREE BLOCK_SYMBOL1582_tree;
    pANTLR3_BASE_TREE IO_SYMBOL1583_tree;
    pANTLR3_BASE_TREE CONTEXT_SYMBOL1584_tree;
    pANTLR3_BASE_TREE SWITCHES_SYMBOL1585_tree;
    pANTLR3_BASE_TREE CPU_SYMBOL1586_tree;
    pANTLR3_BASE_TREE IPC_SYMBOL1587_tree;
    pANTLR3_BASE_TREE MEMORY_SYMBOL1588_tree;
    pANTLR3_BASE_TREE PAGE_SYMBOL1589_tree;
    pANTLR3_BASE_TREE FAULTS_SYMBOL1590_tree;
    pANTLR3_BASE_TREE SOURCE_SYMBOL1591_tree;
    pANTLR3_BASE_TREE SWAPS_SYMBOL1592_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ALL_SYMBOL1581       = NULL;
    BLOCK_SYMBOL1582       = NULL;
    IO_SYMBOL1583       = NULL;
    CONTEXT_SYMBOL1584       = NULL;
    SWITCHES_SYMBOL1585       = NULL;
    CPU_SYMBOL1586       = NULL;
    IPC_SYMBOL1587       = NULL;
    MEMORY_SYMBOL1588       = NULL;
    PAGE_SYMBOL1589       = NULL;
    FAULTS_SYMBOL1590       = NULL;
    SOURCE_SYMBOL1591       = NULL;
    SWAPS_SYMBOL1592       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ALL_SYMBOL1581_tree   = NULL;
    BLOCK_SYMBOL1582_tree   = NULL;
    IO_SYMBOL1583_tree   = NULL;
    CONTEXT_SYMBOL1584_tree   = NULL;
    SWITCHES_SYMBOL1585_tree   = NULL;
    CPU_SYMBOL1586_tree   = NULL;
    IPC_SYMBOL1587_tree   = NULL;
    MEMORY_SYMBOL1588_tree   = NULL;
    PAGE_SYMBOL1589_tree   = NULL;
    FAULTS_SYMBOL1590_tree   = NULL;
    SOURCE_SYMBOL1591_tree   = NULL;
    SWAPS_SYMBOL1592_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1386:13: ( ALL_SYMBOL | BLOCK_SYMBOL IO_SYMBOL | CONTEXT_SYMBOL SWITCHES_SYMBOL | CPU_SYMBOL | IPC_SYMBOL | MEMORY_SYMBOL | PAGE_SYMBOL FAULTS_SYMBOL | SOURCE_SYMBOL | SWAPS_SYMBOL )

            ANTLR3_UINT32 alt472;

            alt472=9;

            switch ( LA(1) )
            {
            case ALL_SYMBOL:
            	{
            		alt472=1;
            	}
                break;
            case BLOCK_SYMBOL:
            	{
            		alt472=2;
            	}
                break;
            case CONTEXT_SYMBOL:
            	{
            		alt472=3;
            	}
                break;
            case CPU_SYMBOL:
            	{
            		alt472=4;
            	}
                break;
            case IPC_SYMBOL:
            	{
            		alt472=5;
            	}
                break;
            case MEMORY_SYMBOL:
            	{
            		alt472=6;
            	}
                break;
            case PAGE_SYMBOL:
            	{
            		alt472=7;
            	}
                break;
            case SOURCE_SYMBOL:
            	{
            		alt472=8;
            	}
                break;
            case SWAPS_SYMBOL:
            	{
            		alt472=9;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 472;
                EXCEPTION->state        = 0;


                goto ruleprofile_typeEx;

            }

            switch (alt472)
            {
        	case 1:
        	    // MySQL.g:1387:2: ALL_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ALL_SYMBOL1581 = (pANTLR3_COMMON_TOKEN) MATCHT(ALL_SYMBOL, &FOLLOW_ALL_SYMBOL_in_profile_type7722);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprofile_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ALL_SYMBOL1581_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALL_SYMBOL1581));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ALL_SYMBOL1581_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1388:4: BLOCK_SYMBOL IO_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BLOCK_SYMBOL1582 = (pANTLR3_COMMON_TOKEN) MATCHT(BLOCK_SYMBOL, &FOLLOW_BLOCK_SYMBOL_in_profile_type7727);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprofile_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BLOCK_SYMBOL1582_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BLOCK_SYMBOL1582));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BLOCK_SYMBOL1582_tree);
        	        }

        	        IO_SYMBOL1583 = (pANTLR3_COMMON_TOKEN) MATCHT(IO_SYMBOL, &FOLLOW_IO_SYMBOL_in_profile_type7729);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprofile_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        IO_SYMBOL1583_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IO_SYMBOL1583));
        	        ADAPTOR->addChild(ADAPTOR, root_0, IO_SYMBOL1583_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1389:4: CONTEXT_SYMBOL SWITCHES_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CONTEXT_SYMBOL1584 = (pANTLR3_COMMON_TOKEN) MATCHT(CONTEXT_SYMBOL, &FOLLOW_CONTEXT_SYMBOL_in_profile_type7734);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprofile_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CONTEXT_SYMBOL1584_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CONTEXT_SYMBOL1584));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CONTEXT_SYMBOL1584_tree);
        	        }

        	        SWITCHES_SYMBOL1585 = (pANTLR3_COMMON_TOKEN) MATCHT(SWITCHES_SYMBOL, &FOLLOW_SWITCHES_SYMBOL_in_profile_type7736);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprofile_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SWITCHES_SYMBOL1585_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SWITCHES_SYMBOL1585));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SWITCHES_SYMBOL1585_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1390:4: CPU_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CPU_SYMBOL1586 = (pANTLR3_COMMON_TOKEN) MATCHT(CPU_SYMBOL, &FOLLOW_CPU_SYMBOL_in_profile_type7741);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprofile_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CPU_SYMBOL1586_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CPU_SYMBOL1586));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CPU_SYMBOL1586_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1391:4: IPC_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        IPC_SYMBOL1587 = (pANTLR3_COMMON_TOKEN) MATCHT(IPC_SYMBOL, &FOLLOW_IPC_SYMBOL_in_profile_type7746);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprofile_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        IPC_SYMBOL1587_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IPC_SYMBOL1587));
        	        ADAPTOR->addChild(ADAPTOR, root_0, IPC_SYMBOL1587_tree);
        	        }

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:1392:4: MEMORY_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MEMORY_SYMBOL1588 = (pANTLR3_COMMON_TOKEN) MATCHT(MEMORY_SYMBOL, &FOLLOW_MEMORY_SYMBOL_in_profile_type7751);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprofile_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MEMORY_SYMBOL1588_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MEMORY_SYMBOL1588));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MEMORY_SYMBOL1588_tree);
        	        }

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:1393:4: PAGE_SYMBOL FAULTS_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PAGE_SYMBOL1589 = (pANTLR3_COMMON_TOKEN) MATCHT(PAGE_SYMBOL, &FOLLOW_PAGE_SYMBOL_in_profile_type7756);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprofile_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PAGE_SYMBOL1589_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PAGE_SYMBOL1589));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PAGE_SYMBOL1589_tree);
        	        }

        	        FAULTS_SYMBOL1590 = (pANTLR3_COMMON_TOKEN) MATCHT(FAULTS_SYMBOL, &FOLLOW_FAULTS_SYMBOL_in_profile_type7758);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprofile_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FAULTS_SYMBOL1590_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FAULTS_SYMBOL1590));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FAULTS_SYMBOL1590_tree);
        	        }

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:1394:4: SOURCE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SOURCE_SYMBOL1591 = (pANTLR3_COMMON_TOKEN) MATCHT(SOURCE_SYMBOL, &FOLLOW_SOURCE_SYMBOL_in_profile_type7763);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprofile_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SOURCE_SYMBOL1591_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SOURCE_SYMBOL1591));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SOURCE_SYMBOL1591_tree);
        	        }

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:1395:4: SWAPS_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SWAPS_SYMBOL1592 = (pANTLR3_COMMON_TOKEN) MATCHT(SWAPS_SYMBOL, &FOLLOW_SWAPS_SYMBOL_in_profile_type7768);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprofile_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SWAPS_SYMBOL1592_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SWAPS_SYMBOL1592));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SWAPS_SYMBOL1592_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleprofile_typeEx; /* Prevent compiler warnings */
    ruleprofile_typeEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end profile_type */

/**
 * $ANTLR start miscellaneous_statement
 * MySQL.g:1400:1: miscellaneous_statement : ( BINLOG_SYMBOL string_literal | CACHE_SYMBOL INDEX_SYMBOL table_index_list ( COMMA_SYMBOL table_index_list )* ( PARTITION_SYMBOL OPEN_PAR_SYMBOL ( identifier_list | ALL_SYMBOL ) CLOSE_PAR_SYMBOL )? IN_SYMBOL pure_identifier | FLUSH_SYMBOL ( no_write_to_bin_log )? flush_option ( COMMA_SYMBOL flush_option )* | KILL_SYMBOL ( CONNECTION_SYMBOL | QUERY_SYMBOL )? INTEGER | LOAD_SYMBOL INDEX_SYMBOL INTO_SYMBOL CACHE_SYMBOL load_table_index_list | RESET_SYMBOL reset_option ( COMMA_SYMBOL reset_option )* );
 */
static MySQLParser_miscellaneous_statement_return
miscellaneous_statement(pMySQLParser ctx)
{
    MySQLParser_miscellaneous_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    BINLOG_SYMBOL1593;
    pANTLR3_COMMON_TOKEN    CACHE_SYMBOL1595;
    pANTLR3_COMMON_TOKEN    INDEX_SYMBOL1596;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1598;
    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL1600;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1601;
    pANTLR3_COMMON_TOKEN    ALL_SYMBOL1603;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1604;
    pANTLR3_COMMON_TOKEN    IN_SYMBOL1605;
    pANTLR3_COMMON_TOKEN    FLUSH_SYMBOL1607;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1610;
    pANTLR3_COMMON_TOKEN    KILL_SYMBOL1612;
    pANTLR3_COMMON_TOKEN    set1613;
    pANTLR3_COMMON_TOKEN    INTEGER1614;
    pANTLR3_COMMON_TOKEN    LOAD_SYMBOL1615;
    pANTLR3_COMMON_TOKEN    INDEX_SYMBOL1616;
    pANTLR3_COMMON_TOKEN    INTO_SYMBOL1617;
    pANTLR3_COMMON_TOKEN    CACHE_SYMBOL1618;
    pANTLR3_COMMON_TOKEN    RESET_SYMBOL1620;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1622;
    MySQLParser_string_literal_return string_literal1594;
    #undef	RETURN_TYPE_string_literal1594
    #define	RETURN_TYPE_string_literal1594 MySQLParser_string_literal_return

    MySQLParser_table_index_list_return table_index_list1597;
    #undef	RETURN_TYPE_table_index_list1597
    #define	RETURN_TYPE_table_index_list1597 MySQLParser_table_index_list_return

    MySQLParser_table_index_list_return table_index_list1599;
    #undef	RETURN_TYPE_table_index_list1599
    #define	RETURN_TYPE_table_index_list1599 MySQLParser_table_index_list_return

    MySQLParser_identifier_list_return identifier_list1602;
    #undef	RETURN_TYPE_identifier_list1602
    #define	RETURN_TYPE_identifier_list1602 MySQLParser_identifier_list_return

    MySQLParser_pure_identifier_return pure_identifier1606;
    #undef	RETURN_TYPE_pure_identifier1606
    #define	RETURN_TYPE_pure_identifier1606 MySQLParser_pure_identifier_return

    MySQLParser_no_write_to_bin_log_return no_write_to_bin_log1608;
    #undef	RETURN_TYPE_no_write_to_bin_log1608
    #define	RETURN_TYPE_no_write_to_bin_log1608 MySQLParser_no_write_to_bin_log_return

    MySQLParser_flush_option_return flush_option1609;
    #undef	RETURN_TYPE_flush_option1609
    #define	RETURN_TYPE_flush_option1609 MySQLParser_flush_option_return

    MySQLParser_flush_option_return flush_option1611;
    #undef	RETURN_TYPE_flush_option1611
    #define	RETURN_TYPE_flush_option1611 MySQLParser_flush_option_return

    MySQLParser_load_table_index_list_return load_table_index_list1619;
    #undef	RETURN_TYPE_load_table_index_list1619
    #define	RETURN_TYPE_load_table_index_list1619 MySQLParser_load_table_index_list_return

    MySQLParser_reset_option_return reset_option1621;
    #undef	RETURN_TYPE_reset_option1621
    #define	RETURN_TYPE_reset_option1621 MySQLParser_reset_option_return

    MySQLParser_reset_option_return reset_option1623;
    #undef	RETURN_TYPE_reset_option1623
    #define	RETURN_TYPE_reset_option1623 MySQLParser_reset_option_return

    pANTLR3_BASE_TREE BINLOG_SYMBOL1593_tree;
    pANTLR3_BASE_TREE CACHE_SYMBOL1595_tree;
    pANTLR3_BASE_TREE INDEX_SYMBOL1596_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1598_tree;
    pANTLR3_BASE_TREE PARTITION_SYMBOL1600_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1601_tree;
    pANTLR3_BASE_TREE ALL_SYMBOL1603_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1604_tree;
    pANTLR3_BASE_TREE IN_SYMBOL1605_tree;
    pANTLR3_BASE_TREE FLUSH_SYMBOL1607_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1610_tree;
    pANTLR3_BASE_TREE KILL_SYMBOL1612_tree;
    pANTLR3_BASE_TREE set1613_tree;
    pANTLR3_BASE_TREE INTEGER1614_tree;
    pANTLR3_BASE_TREE LOAD_SYMBOL1615_tree;
    pANTLR3_BASE_TREE INDEX_SYMBOL1616_tree;
    pANTLR3_BASE_TREE INTO_SYMBOL1617_tree;
    pANTLR3_BASE_TREE CACHE_SYMBOL1618_tree;
    pANTLR3_BASE_TREE RESET_SYMBOL1620_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1622_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    BINLOG_SYMBOL1593       = NULL;
    CACHE_SYMBOL1595       = NULL;
    INDEX_SYMBOL1596       = NULL;
    COMMA_SYMBOL1598       = NULL;
    PARTITION_SYMBOL1600       = NULL;
    OPEN_PAR_SYMBOL1601       = NULL;
    ALL_SYMBOL1603       = NULL;
    CLOSE_PAR_SYMBOL1604       = NULL;
    IN_SYMBOL1605       = NULL;
    FLUSH_SYMBOL1607       = NULL;
    COMMA_SYMBOL1610       = NULL;
    KILL_SYMBOL1612       = NULL;
    set1613       = NULL;
    INTEGER1614       = NULL;
    LOAD_SYMBOL1615       = NULL;
    INDEX_SYMBOL1616       = NULL;
    INTO_SYMBOL1617       = NULL;
    CACHE_SYMBOL1618       = NULL;
    RESET_SYMBOL1620       = NULL;
    COMMA_SYMBOL1622       = NULL;
    string_literal1594.tree = NULL;

    table_index_list1597.tree = NULL;

    table_index_list1599.tree = NULL;

    identifier_list1602.tree = NULL;

    pure_identifier1606.tree = NULL;

    no_write_to_bin_log1608.tree = NULL;

    flush_option1609.tree = NULL;

    flush_option1611.tree = NULL;

    load_table_index_list1619.tree = NULL;

    reset_option1621.tree = NULL;

    reset_option1623.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    BINLOG_SYMBOL1593_tree   = NULL;
    CACHE_SYMBOL1595_tree   = NULL;
    INDEX_SYMBOL1596_tree   = NULL;
    COMMA_SYMBOL1598_tree   = NULL;
    PARTITION_SYMBOL1600_tree   = NULL;
    OPEN_PAR_SYMBOL1601_tree   = NULL;
    ALL_SYMBOL1603_tree   = NULL;
    CLOSE_PAR_SYMBOL1604_tree   = NULL;
    IN_SYMBOL1605_tree   = NULL;
    FLUSH_SYMBOL1607_tree   = NULL;
    COMMA_SYMBOL1610_tree   = NULL;
    KILL_SYMBOL1612_tree   = NULL;
    set1613_tree   = NULL;
    INTEGER1614_tree   = NULL;
    LOAD_SYMBOL1615_tree   = NULL;
    INDEX_SYMBOL1616_tree   = NULL;
    INTO_SYMBOL1617_tree   = NULL;
    CACHE_SYMBOL1618_tree   = NULL;
    RESET_SYMBOL1620_tree   = NULL;
    COMMA_SYMBOL1622_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1400:24: ( BINLOG_SYMBOL string_literal | CACHE_SYMBOL INDEX_SYMBOL table_index_list ( COMMA_SYMBOL table_index_list )* ( PARTITION_SYMBOL OPEN_PAR_SYMBOL ( identifier_list | ALL_SYMBOL ) CLOSE_PAR_SYMBOL )? IN_SYMBOL pure_identifier | FLUSH_SYMBOL ( no_write_to_bin_log )? flush_option ( COMMA_SYMBOL flush_option )* | KILL_SYMBOL ( CONNECTION_SYMBOL | QUERY_SYMBOL )? INTEGER | LOAD_SYMBOL INDEX_SYMBOL INTO_SYMBOL CACHE_SYMBOL load_table_index_list | RESET_SYMBOL reset_option ( COMMA_SYMBOL reset_option )* )

            ANTLR3_UINT32 alt480;

            alt480=6;

            switch ( LA(1) )
            {
            case BINLOG_SYMBOL:
            	{
            		alt480=1;
            	}
                break;
            case CACHE_SYMBOL:
            	{
            		alt480=2;
            	}
                break;
            case FLUSH_SYMBOL:
            	{
            		alt480=3;
            	}
                break;
            case KILL_SYMBOL:
            	{
            		alt480=4;
            	}
                break;
            case LOAD_SYMBOL:
            	{
            		alt480=5;
            	}
                break;
            case RESET_SYMBOL:
            	{
            		alt480=6;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 480;
                EXCEPTION->state        = 0;


                goto rulemiscellaneous_statementEx;

            }

            switch (alt480)
            {
        	case 1:
        	    // MySQL.g:1401:2: BINLOG_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BINLOG_SYMBOL1593 = (pANTLR3_COMMON_TOKEN) MATCHT(BINLOG_SYMBOL, &FOLLOW_BINLOG_SYMBOL_in_miscellaneous_statement7779);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemiscellaneous_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BINLOG_SYMBOL1593_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINLOG_SYMBOL1593));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BINLOG_SYMBOL1593_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_miscellaneous_statement7781);
        	        string_literal1594=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemiscellaneous_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1594.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1402:4: CACHE_SYMBOL INDEX_SYMBOL table_index_list ( COMMA_SYMBOL table_index_list )* ( PARTITION_SYMBOL OPEN_PAR_SYMBOL ( identifier_list | ALL_SYMBOL ) CLOSE_PAR_SYMBOL )? IN_SYMBOL pure_identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CACHE_SYMBOL1595 = (pANTLR3_COMMON_TOKEN) MATCHT(CACHE_SYMBOL, &FOLLOW_CACHE_SYMBOL_in_miscellaneous_statement7786);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemiscellaneous_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CACHE_SYMBOL1595_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CACHE_SYMBOL1595));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CACHE_SYMBOL1595_tree);
        	        }

        	        INDEX_SYMBOL1596 = (pANTLR3_COMMON_TOKEN) MATCHT(INDEX_SYMBOL, &FOLLOW_INDEX_SYMBOL_in_miscellaneous_statement7788);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemiscellaneous_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INDEX_SYMBOL1596_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INDEX_SYMBOL1596));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INDEX_SYMBOL1596_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_table_index_list_in_miscellaneous_statement7790);
        	        table_index_list1597=table_index_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemiscellaneous_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_index_list1597.tree);

        	        // MySQL.g:1402:47: ( COMMA_SYMBOL table_index_list )*

        	        for (;;)
        	        {
        	            int alt473=2;
        	            switch ( LA(1) )
        	            {
        	            case COMMA_SYMBOL:
        	            	{
        	            		alt473=1;
        	            	}
        	                break;

        	            }

        	            switch (alt473)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1402:48: COMMA_SYMBOL table_index_list
        	        	    {
        	        	        COMMA_SYMBOL1598 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_miscellaneous_statement7793);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulemiscellaneous_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COMMA_SYMBOL1598_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1598));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1598_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_table_index_list_in_miscellaneous_statement7795);
        	        	        table_index_list1599=table_index_list(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulemiscellaneous_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_index_list1599.tree);

        	        	    }
        	        	    break;

        	        	default:
        	        	    goto loop473;	/* break out of the loop */
        	        	    break;
        	            }
        	        }
        	        loop473: ; /* Jump out to here if this rule does not match */


        	        // MySQL.g:1403:3: ( PARTITION_SYMBOL OPEN_PAR_SYMBOL ( identifier_list | ALL_SYMBOL ) CLOSE_PAR_SYMBOL )?
        	        {
        	            int alt475=2;
        	            switch ( LA(1) )
        	            {
        	                case PARTITION_SYMBOL:
        	                	{
        	                		alt475=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt475)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1403:4: PARTITION_SYMBOL OPEN_PAR_SYMBOL ( identifier_list | ALL_SYMBOL ) CLOSE_PAR_SYMBOL
        	        	    {
        	        	        PARTITION_SYMBOL1600 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_miscellaneous_statement7802);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulemiscellaneous_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        PARTITION_SYMBOL1600_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITION_SYMBOL1600));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, PARTITION_SYMBOL1600_tree);
        	        	        }

        	        	        OPEN_PAR_SYMBOL1601 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_miscellaneous_statement7804);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulemiscellaneous_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        OPEN_PAR_SYMBOL1601_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1601));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1601_tree);
        	        	        }

        	        	        // MySQL.g:1403:37: ( identifier_list | ALL_SYMBOL )
        	        	        {
        	        	            int alt474=2;
        	        	            {
        	        	                int LA474_0 = LA(1);
        	        	                if ( (LA474_0 == BACK_TICK_QUOTED_ID || LA474_0 == IDENTIFIER))
        	        	                {
        	        	                    alt474=1;
        	        	                }
        	        	                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA474_0 == DOUBLE_QUOTED_TEXT))
        	        	                {
        	        	                    alt474=1;
        	        	                }
        	        	                else if ( (((LA474_0 >= ACTION_SYMBOL) && (LA474_0 <= ADDDATE_SYMBOL)) || ((LA474_0 >= AFTER_SYMBOL) && (LA474_0 <= ALGORITHM_SYMBOL)) || LA474_0 == ANALYZE_SYMBOL || ((LA474_0 >= ANY_SYMBOL) && (LA474_0 <= ASCII_SYMBOL)) || ((LA474_0 >= AT_SYMBOL) && (LA474_0 <= BACKUP_SYMBOL)) || LA474_0 == BEGIN_SYMBOL || LA474_0 == BINLOG_SYMBOL || LA474_0 == BIT_SYMBOL || ((LA474_0 >= BLOCK_SYMBOL) && (LA474_0 <= BOOL_SYMBOL)) || ((LA474_0 >= BTREE_SYMBOL) && (LA474_0 <= BYTE_SYMBOL)) || LA474_0 == CACHE_SYMBOL || LA474_0 == CASCADED_SYMBOL || ((LA474_0 >= CATALOG_NAME_SYMBOL) && (LA474_0 <= CHANGED_SYMBOL)) || LA474_0 == CHARSET_SYMBOL || LA474_0 == CHECKSUM_SYMBOL || ((LA474_0 >= CIPHER_SYMBOL) && (LA474_0 <= CLIENT_SYMBOL)) || ((LA474_0 >= CLOSE_SYMBOL) && (LA474_0 <= CODE_SYMBOL)) || LA474_0 == COLLATION_SYMBOL || ((LA474_0 >= COLUMNS_SYMBOL) && (LA474_0 <= COLUMN_NAME_SYMBOL)) || ((LA474_0 >= COMMENT_SYMBOL) && (LA474_0 <= COMPRESSED_SYMBOL)) || LA474_0 == CONCURRENT_SYMBOL || ((LA474_0 >= CONNECTION_SYMBOL) && (LA474_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA474_0 >= CONTAINS_SYMBOL) && (LA474_0 <= CONTEXT_SYMBOL)) || LA474_0 == CONTRIBUTORS_SYMBOL || LA474_0 == CPU_SYMBOL || LA474_0 == CUBE_SYMBOL || LA474_0 == CURRENT_SYMBOL || LA474_0 == CURSOR_NAME_SYMBOL || ((LA474_0 >= DATAFILE_SYMBOL) && (LA474_0 <= DATETIME_SYMBOL)) || LA474_0 == DATE_SYMBOL || ((LA474_0 >= DAY_SYMBOL) && (LA474_0 <= DEALLOCATE_SYMBOL)) || LA474_0 == DEFAULT_AUTH_SYMBOL || LA474_0 == DEFINER_SYMBOL || LA474_0 == DELAY_KEY_WRITE_SYMBOL || LA474_0 == DES_KEY_FILE_SYMBOL || LA474_0 == DIAGNOSTICS_SYMBOL || ((LA474_0 >= DIRECTORY_SYMBOL) && (LA474_0 <= DISK_SYMBOL)) || LA474_0 == DO_SYMBOL || ((LA474_0 >= DUMPFILE_SYMBOL) && (LA474_0 <= DYNAMIC_SYMBOL)) || LA474_0 == ENABLE_SYMBOL || LA474_0 == ENDS_SYMBOL || ((LA474_0 >= END_SYMBOL) && (LA474_0 <= ENUM_SYMBOL)) || ((LA474_0 >= ERRORS_SYMBOL) && (LA474_0 <= ERROR_SYMBOL)) || ((LA474_0 >= ESCAPE_SYMBOL) && (LA474_0 <= EVERY_SYMBOL)) || LA474_0 == EXECUTE_SYMBOL || LA474_0 == EXPANSION_SYMBOL || LA474_0 == EXPORT_SYMBOL || ((LA474_0 >= EXTENDED_SYMBOL) && (LA474_0 <= EXTENT_SIZE_SYMBOL)) || ((LA474_0 >= FAST_SYMBOL) && (LA474_0 <= FAULTS_SYMBOL)) || ((LA474_0 >= FILE_SYMBOL) && (LA474_0 <= FIXED_SYMBOL)) || LA474_0 == FLUSH_SYMBOL || LA474_0 == FORMAT_SYMBOL || LA474_0 == FOUND_SYMBOL || LA474_0 == FULL_SYMBOL || ((LA474_0 >= FUNCTION_SYMBOL) && (LA474_0 <= GET_FORMAT_SYMBOL)) || ((LA474_0 >= GLOBAL_SYMBOL) && (LA474_0 <= GRANTS_SYMBOL)) || ((LA474_0 >= HANDLER_SYMBOL) && (LA474_0 <= HASH_SYMBOL)) || LA474_0 == HELP_SYMBOL || ((LA474_0 >= HOSTS_SYMBOL) && (LA474_0 <= HOST_SYMBOL)) || ((LA474_0 >= HOUR_SYMBOL) && (LA474_0 <= IDENTIFIED_SYMBOL)) || LA474_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA474_0 >= IMPORT_SYMBOL) && (LA474_0 <= INDEXES_SYMBOL)) || LA474_0 == INITIAL_SIZE_SYMBOL || LA474_0 == INNODB_SYMBOL || LA474_0 == INSERT_METHOD_SYMBOL || LA474_0 == INSTALL_SYMBOL || LA474_0 == INVOKER_SYMBOL || LA474_0 == IO_SYMBOL || ((LA474_0 >= IPC_SYMBOL) && (LA474_0 <= ISSUER_SYMBOL)) || LA474_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA474_0 >= LANGUAGE_SYMBOL) && (LA474_0 <= LAST_SYMBOL)) || LA474_0 == LEAVES_SYMBOL || LA474_0 == LESS_SYMBOL || LA474_0 == LEVEL_SYMBOL || LA474_0 == LINESTRING_SYMBOL || LA474_0 == LIST_SYMBOL || LA474_0 == LOCAL_SYMBOL || LA474_0 == LOCKS_SYMBOL || LA474_0 == LOGFILE_SYMBOL || LA474_0 == LOGS_SYMBOL || LA474_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA474_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA474_0 <= MASTER_SSL_SYMBOL)) || ((LA474_0 >= MASTER_SYMBOL) && (LA474_0 <= MASTER_USER_SYMBOL)) || ((LA474_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA474_0 <= MAX_SIZE_SYMBOL)) || ((LA474_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA474_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA474_0 >= MEDIUM_SYMBOL) && (LA474_0 <= MICROSECOND_SYMBOL)) || LA474_0 == MIGRATE_SYMBOL || ((LA474_0 >= MINUTE_SYMBOL) && (LA474_0 <= MIN_ROWS_SYMBOL)) || LA474_0 == MODE_SYMBOL || LA474_0 == MODIFY_SYMBOL || ((LA474_0 >= MONTH_SYMBOL) && (LA474_0 <= MULTILINESTRING_SYMBOL)) || ((LA474_0 >= MULTIPOINT_SYMBOL) && (LA474_0 <= MULTIPOLYGON_SYMBOL)) || ((LA474_0 >= MUTEX_SYMBOL) && (LA474_0 <= NATIONAL_SYMBOL)) || LA474_0 == NCHAR_SYMBOL || LA474_0 == NDBCLUSTER_SYMBOL || ((LA474_0 >= NEW_SYMBOL) && (LA474_0 <= NONE_SYMBOL)) || ((LA474_0 >= NO_SYMBOL) && (LA474_0 <= NO_WAIT_SYMBOL)) || LA474_0 == NUMBER_SYMBOL || LA474_0 == NVARCHAR_SYMBOL || ((LA474_0 >= OFFSET_SYMBOL) && (LA474_0 <= ONE_SYMBOL)) || LA474_0 == OPEN_SYMBOL || LA474_0 == OPTIONS_SYMBOL || ((LA474_0 >= OWNER_SYMBOL) && (LA474_0 <= PAGE_SYMBOL)) || ((LA474_0 >= PARSER_SYMBOL) && (LA474_0 <= PARTITION_SYMBOL)) || ((LA474_0 >= PASSWORD_SYMBOL) && (LA474_0 <= PLUGIN_SYMBOL)) || ((LA474_0 >= POINT_SYMBOL) && (LA474_0 <= PORT_SYMBOL)) || ((LA474_0 >= PREPARE_SYMBOL) && (LA474_0 <= PREV_SYMBOL)) || LA474_0 == PRIVILEGES_SYMBOL || ((LA474_0 >= PROCESSLIST_SYMBOL) && (LA474_0 <= PROXY_SYMBOL)) || ((LA474_0 >= QUARTER_SYMBOL) && (LA474_0 <= QUICK_SYMBOL)) || LA474_0 == READ_ONLY_SYMBOL || ((LA474_0 >= REBUILD_SYMBOL) && (LA474_0 <= REDUNDANT_SYMBOL)) || ((LA474_0 >= RELAYLOG_SYMBOL) && (LA474_0 <= RELAY_THREAD_SYMBOL)) || ((LA474_0 >= RELOAD_SYMBOL) && (LA474_0 <= REMOVE_SYMBOL)) || ((LA474_0 >= REORGANIZE_SYMBOL) && (LA474_0 <= REPEATABLE_SYMBOL)) || LA474_0 == REPLICATION_SYMBOL || LA474_0 == RESET_SYMBOL || LA474_0 == RESTORE_SYMBOL || ((LA474_0 >= RESUME_SYMBOL) && (LA474_0 <= RETURNS_SYMBOL)) || LA474_0 == REVERSE_SYMBOL || ((LA474_0 >= ROLLBACK_SYMBOL) && (LA474_0 <= SCHEDULE_SYMBOL)) || LA474_0 == SCHEMA_NAME_SYMBOL || ((LA474_0 >= SECOND_SYMBOL) && (LA474_0 <= SECURITY_SYMBOL)) || ((LA474_0 >= SERIALIZABLE_SYMBOL) && (LA474_0 <= SERIAL_SYMBOL)) || ((LA474_0 >= SERVER_SYMBOL) && (LA474_0 <= SESSION_SYMBOL)) || LA474_0 == SHARE_SYMBOL || LA474_0 == SHUTDOWN_SYMBOL || ((LA474_0 >= SIGNED_SYMBOL) && (LA474_0 <= SIMPLE_SYMBOL)) || ((LA474_0 >= SLAVE_SYMBOL) && (LA474_0 <= SLOW_SYMBOL)) || ((LA474_0 >= SNAPSHOT_SYMBOL) && (LA474_0 <= SOURCE_SYMBOL)) || ((LA474_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA474_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA474_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA474_0 <= SQL_CACHE_SYMBOL)) || LA474_0 == SQL_NO_CACHE_SYMBOL || LA474_0 == SQL_THREAD_SYMBOL || ((LA474_0 >= STARTS_SYMBOL) && (LA474_0 <= STATUS_SYMBOL)) || ((LA474_0 >= STOP_SYMBOL) && (LA474_0 <= STORAGE_SYMBOL)) || ((LA474_0 >= STRING_SYMBOL) && (LA474_0 <= SUBPARTITION_SYMBOL)) || ((LA474_0 >= SUPER_SYMBOL) && (LA474_0 <= SWITCHES_SYMBOL)) || ((LA474_0 >= TABLESPACE_SYMBOL) && (LA474_0 <= TABLE_NAME_SYMBOL)) || ((LA474_0 >= TEMPORARY_SYMBOL) && (LA474_0 <= TEMPTABLE_SYMBOL)) || ((LA474_0 >= TEXT_SYMBOL) && (LA474_0 <= THAN_SYMBOL)) || ((LA474_0 >= TIMESTAMP_ADD_SYMBOL) && (LA474_0 <= TIME_SYMBOL)) || ((LA474_0 >= TRANSACTION_SYMBOL) && (LA474_0 <= TRIGGERS_SYMBOL)) || ((LA474_0 >= TRUNCATE_SYMBOL) && (LA474_0 <= UDF_RETURNS_SYMBOL)) || ((LA474_0 >= UNCOMMITTED_SYMBOL) && (LA474_0 <= UNDEFINED_SYMBOL)) || ((LA474_0 >= UNDOFILE_SYMBOL) && (LA474_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA474_0 >= UNICODE_SYMBOL) && (LA474_0 <= UNINSTALL_SYMBOL)) || LA474_0 == UNKNOWN_SYMBOL || LA474_0 == UNTIL_SYMBOL || LA474_0 == UPGRADE_SYMBOL || ((LA474_0 >= USER_RESOURCES_SYMBOL) && (LA474_0 <= USE_FRM_SYMBOL)) || LA474_0 == VALUE_SYMBOL || LA474_0 == VARIABLES_SYMBOL || ((LA474_0 >= VIEW_SYMBOL) && (LA474_0 <= WEIGHT_STRING_SYMBOL)) || ((LA474_0 >= WORK_SYMBOL) && (LA474_0 <= WRAPPER_SYMBOL)) || LA474_0 == X509_SYMBOL || ((LA474_0 >= XA_SYMBOL) && (LA474_0 <= XML_SYMBOL)) || LA474_0 == YEAR_SYMBOL))
        	        	                {
        	        	                    alt474=1;
        	        	                }
        	        	                else if ( (LA474_0 == ALL_SYMBOL))
        	        	                {
        	        	                    alt474=2;
        	        	                }
        	        	                else
        	        	                {
        	        	                    if (BACKTRACKING>0)
        	        	                    {
        	        	                        FAILEDFLAG = ANTLR3_TRUE;
        	        	                        return retval;
        	        	                    }


        	        	                    CONSTRUCTEX();
        	        	                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	        	                    EXCEPTION->message      = (void *)"";
        	        	                    EXCEPTION->decisionNum  = 474;
        	        	                    EXCEPTION->state        = 0;


        	        	                    goto rulemiscellaneous_statementEx;

        	        	                }
        	        	            }
        	        	            switch (alt474)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:1403:38: identifier_list
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_identifier_list_in_miscellaneous_statement7807);
        	        	        	        identifier_list1602=identifier_list(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulemiscellaneous_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list1602.tree);

        	        	        	    }
        	        	        	    break;
        	        	        	case 2:
        	        	        	    // MySQL.g:1403:56: ALL_SYMBOL
        	        	        	    {
        	        	        	        ALL_SYMBOL1603 = (pANTLR3_COMMON_TOKEN) MATCHT(ALL_SYMBOL, &FOLLOW_ALL_SYMBOL_in_miscellaneous_statement7811);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulemiscellaneous_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        ALL_SYMBOL1603_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALL_SYMBOL1603));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, ALL_SYMBOL1603_tree);
        	        	        	        }

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        CLOSE_PAR_SYMBOL1604 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_miscellaneous_statement7814);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulemiscellaneous_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        CLOSE_PAR_SYMBOL1604_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1604));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1604_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        IN_SYMBOL1605 = (pANTLR3_COMMON_TOKEN) MATCHT(IN_SYMBOL, &FOLLOW_IN_SYMBOL_in_miscellaneous_statement7820);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemiscellaneous_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        IN_SYMBOL1605_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IN_SYMBOL1605));
        	        ADAPTOR->addChild(ADAPTOR, root_0, IN_SYMBOL1605_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_pure_identifier_in_miscellaneous_statement7822);
        	        pure_identifier1606=pure_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemiscellaneous_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier1606.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1405:4: FLUSH_SYMBOL ( no_write_to_bin_log )? flush_option ( COMMA_SYMBOL flush_option )*
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FLUSH_SYMBOL1607 = (pANTLR3_COMMON_TOKEN) MATCHT(FLUSH_SYMBOL, &FOLLOW_FLUSH_SYMBOL_in_miscellaneous_statement7827);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemiscellaneous_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FLUSH_SYMBOL1607_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FLUSH_SYMBOL1607));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FLUSH_SYMBOL1607_tree);
        	        }

        	        // MySQL.g:1405:17: ( no_write_to_bin_log )?
        	        {
        	            int alt476=2;
        	            switch ( LA(1) )
        	            {
        	                case LOCAL_SYMBOL:
        	                case NO_WRITE_TO_BINLOG_SYMBOL:
        	                	{
        	                		alt476=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt476)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1405:17: no_write_to_bin_log
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_no_write_to_bin_log_in_miscellaneous_statement7829);
        	        	        no_write_to_bin_log1608=no_write_to_bin_log(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulemiscellaneous_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, no_write_to_bin_log1608.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_flush_option_in_miscellaneous_statement7832);
        	        flush_option1609=flush_option(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemiscellaneous_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, flush_option1609.tree);

        	        // MySQL.g:1405:51: ( COMMA_SYMBOL flush_option )*

        	        for (;;)
        	        {
        	            int alt477=2;
        	            switch ( LA(1) )
        	            {
        	            case COMMA_SYMBOL:
        	            	{
        	            		alt477=1;
        	            	}
        	                break;

        	            }

        	            switch (alt477)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1405:52: COMMA_SYMBOL flush_option
        	        	    {
        	        	        COMMA_SYMBOL1610 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_miscellaneous_statement7835);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulemiscellaneous_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COMMA_SYMBOL1610_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1610));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1610_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_flush_option_in_miscellaneous_statement7837);
        	        	        flush_option1611=flush_option(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulemiscellaneous_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, flush_option1611.tree);

        	        	    }
        	        	    break;

        	        	default:
        	        	    goto loop477;	/* break out of the loop */
        	        	    break;
        	            }
        	        }
        	        loop477: ; /* Jump out to here if this rule does not match */


        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1406:4: KILL_SYMBOL ( CONNECTION_SYMBOL | QUERY_SYMBOL )? INTEGER
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        KILL_SYMBOL1612 = (pANTLR3_COMMON_TOKEN) MATCHT(KILL_SYMBOL, &FOLLOW_KILL_SYMBOL_in_miscellaneous_statement7844);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemiscellaneous_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        KILL_SYMBOL1612_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, KILL_SYMBOL1612));
        	        ADAPTOR->addChild(ADAPTOR, root_0, KILL_SYMBOL1612_tree);
        	        }

        	        // MySQL.g:1406:16: ( CONNECTION_SYMBOL | QUERY_SYMBOL )?
        	        {
        	            int alt478=2;
        	            switch ( LA(1) )
        	            {
        	                case CONNECTION_SYMBOL:
        	                case QUERY_SYMBOL:
        	                	{
        	                		alt478=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt478)
        	            {
        	        	case 1:
        	        	    // MySQL.g:
        	        	    {
        	        	        set1613=(pANTLR3_COMMON_TOKEN)LT(1);

        	        	        if ( LA(1) == CONNECTION_SYMBOL || LA(1) == QUERY_SYMBOL )
        	        	        {
        	        	            CONSUME();
        	        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1613))
        	        	            );
        	        	            PERRORRECOVERY=ANTLR3_FALSE;
        	        	            FAILEDFLAG=ANTLR3_FALSE;

        	        	        }
        	        	        else
        	        	        {
        	        	            if (BACKTRACKING>0)
        	        	            {
        	        	                FAILEDFLAG = ANTLR3_TRUE;
        	        	                return retval;
        	        	            }

        	        	            CONSTRUCTEX();
        	        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
        	        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
        	        	            EXCEPTION->expectingSet = NULL;

        	        	            goto rulemiscellaneous_statementEx;
        	        	        }


        	        	    }
        	        	    break;

        	            }
        	        }

        	        INTEGER1614 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_miscellaneous_statement7855);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemiscellaneous_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INTEGER1614_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER1614));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER1614_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1407:4: LOAD_SYMBOL INDEX_SYMBOL INTO_SYMBOL CACHE_SYMBOL load_table_index_list
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        LOAD_SYMBOL1615 = (pANTLR3_COMMON_TOKEN) MATCHT(LOAD_SYMBOL, &FOLLOW_LOAD_SYMBOL_in_miscellaneous_statement7860);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemiscellaneous_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LOAD_SYMBOL1615_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOAD_SYMBOL1615));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LOAD_SYMBOL1615_tree);
        	        }

        	        INDEX_SYMBOL1616 = (pANTLR3_COMMON_TOKEN) MATCHT(INDEX_SYMBOL, &FOLLOW_INDEX_SYMBOL_in_miscellaneous_statement7862);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemiscellaneous_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INDEX_SYMBOL1616_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INDEX_SYMBOL1616));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INDEX_SYMBOL1616_tree);
        	        }

        	        INTO_SYMBOL1617 = (pANTLR3_COMMON_TOKEN) MATCHT(INTO_SYMBOL, &FOLLOW_INTO_SYMBOL_in_miscellaneous_statement7864);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemiscellaneous_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INTO_SYMBOL1617_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTO_SYMBOL1617));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INTO_SYMBOL1617_tree);
        	        }

        	        CACHE_SYMBOL1618 = (pANTLR3_COMMON_TOKEN) MATCHT(CACHE_SYMBOL, &FOLLOW_CACHE_SYMBOL_in_miscellaneous_statement7866);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemiscellaneous_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CACHE_SYMBOL1618_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CACHE_SYMBOL1618));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CACHE_SYMBOL1618_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_load_table_index_list_in_miscellaneous_statement7868);
        	        load_table_index_list1619=load_table_index_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemiscellaneous_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, load_table_index_list1619.tree);

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:1408:4: RESET_SYMBOL reset_option ( COMMA_SYMBOL reset_option )*
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        RESET_SYMBOL1620 = (pANTLR3_COMMON_TOKEN) MATCHT(RESET_SYMBOL, &FOLLOW_RESET_SYMBOL_in_miscellaneous_statement7873);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemiscellaneous_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        RESET_SYMBOL1620_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RESET_SYMBOL1620));
        	        ADAPTOR->addChild(ADAPTOR, root_0, RESET_SYMBOL1620_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_reset_option_in_miscellaneous_statement7875);
        	        reset_option1621=reset_option(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemiscellaneous_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, reset_option1621.tree);

        	        // MySQL.g:1408:30: ( COMMA_SYMBOL reset_option )*

        	        for (;;)
        	        {
        	            int alt479=2;
        	            switch ( LA(1) )
        	            {
        	            case COMMA_SYMBOL:
        	            	{
        	            		alt479=1;
        	            	}
        	                break;

        	            }

        	            switch (alt479)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1408:31: COMMA_SYMBOL reset_option
        	        	    {
        	        	        COMMA_SYMBOL1622 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_miscellaneous_statement7878);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulemiscellaneous_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COMMA_SYMBOL1622_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1622));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1622_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_reset_option_in_miscellaneous_statement7880);
        	        	        reset_option1623=reset_option(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulemiscellaneous_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, reset_option1623.tree);

        	        	    }
        	        	    break;

        	        	default:
        	        	    goto loop479;	/* break out of the loop */
        	        	    break;
        	            }
        	        }
        	        loop479: ; /* Jump out to here if this rule does not match */


        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulemiscellaneous_statementEx; /* Prevent compiler warnings */
    rulemiscellaneous_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end miscellaneous_statement */

/**
 * $ANTLR start table_index_list
 * MySQL.g:1411:1: table_index_list : qualified_identifier ( ( INDEX_SYMBOL | KEY_SYMBOL )? identifier_list_with_parentheses )? ;
 */
static MySQLParser_table_index_list_return
table_index_list(pMySQLParser ctx)
{
    MySQLParser_table_index_list_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set1625;
    MySQLParser_qualified_identifier_return qualified_identifier1624;
    #undef	RETURN_TYPE_qualified_identifier1624
    #define	RETURN_TYPE_qualified_identifier1624 MySQLParser_qualified_identifier_return

    MySQLParser_identifier_list_with_parentheses_return identifier_list_with_parentheses1626;
    #undef	RETURN_TYPE_identifier_list_with_parentheses1626
    #define	RETURN_TYPE_identifier_list_with_parentheses1626 MySQLParser_identifier_list_with_parentheses_return

    pANTLR3_BASE_TREE set1625_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1625       = NULL;
    qualified_identifier1624.tree = NULL;

    identifier_list_with_parentheses1626.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1625_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1411:17: ( qualified_identifier ( ( INDEX_SYMBOL | KEY_SYMBOL )? identifier_list_with_parentheses )? )
        // MySQL.g:1412:2: qualified_identifier ( ( INDEX_SYMBOL | KEY_SYMBOL )? identifier_list_with_parentheses )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_qualified_identifier_in_table_index_list7891);
            qualified_identifier1624=qualified_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruletable_index_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, qualified_identifier1624.tree);

            // MySQL.g:1412:23: ( ( INDEX_SYMBOL | KEY_SYMBOL )? identifier_list_with_parentheses )?
            {
                int alt482=2;
                switch ( LA(1) )
                {
                    case INDEX_SYMBOL:
                    case KEY_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    	{
                    		alt482=1;
                    	}
                        break;
                }

                switch (alt482)
                {
            	case 1:
            	    // MySQL.g:1412:24: ( INDEX_SYMBOL | KEY_SYMBOL )? identifier_list_with_parentheses
            	    {
            	        // MySQL.g:1412:24: ( INDEX_SYMBOL | KEY_SYMBOL )?
            	        {
            	            int alt481=2;
            	            switch ( LA(1) )
            	            {
            	                case INDEX_SYMBOL:
            	                case KEY_SYMBOL:
            	                	{
            	                		alt481=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt481)
            	            {
            	        	case 1:
            	        	    // MySQL.g:
            	        	    {
            	        	        set1625=(pANTLR3_COMMON_TOKEN)LT(1);

            	        	        if ( LA(1) == INDEX_SYMBOL || LA(1) == KEY_SYMBOL )
            	        	        {
            	        	            CONSUME();
            	        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1625))
            	        	            );
            	        	            PERRORRECOVERY=ANTLR3_FALSE;
            	        	            FAILEDFLAG=ANTLR3_FALSE;

            	        	        }
            	        	        else
            	        	        {
            	        	            if (BACKTRACKING>0)
            	        	            {
            	        	                FAILEDFLAG = ANTLR3_TRUE;
            	        	                return retval;
            	        	            }

            	        	            CONSTRUCTEX();
            	        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	        	            EXCEPTION->expectingSet = NULL;

            	        	            goto ruletable_index_listEx;
            	        	        }


            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_identifier_list_with_parentheses_in_table_index_list7903);
            	        identifier_list_with_parentheses1626=identifier_list_with_parentheses(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_index_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list_with_parentheses1626.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruletable_index_listEx; /* Prevent compiler warnings */
    ruletable_index_listEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end table_index_list */

/**
 * $ANTLR start flush_option
 * MySQL.g:1416:1: flush_option : ( DES_KEY_FILE_SYMBOL | HOSTS_SYMBOL | ( log_type )? LOGS_SYMBOL | PRIVILEGES_SYMBOL | QUERY_SYMBOL CACHE_SYMBOL | STATUS_SYMBOL | flush_tables | USER_RESOURCES_SYMBOL );
 */
static MySQLParser_flush_option_return
flush_option(pMySQLParser ctx)
{
    MySQLParser_flush_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    DES_KEY_FILE_SYMBOL1627;
    pANTLR3_COMMON_TOKEN    HOSTS_SYMBOL1628;
    pANTLR3_COMMON_TOKEN    LOGS_SYMBOL1630;
    pANTLR3_COMMON_TOKEN    PRIVILEGES_SYMBOL1631;
    pANTLR3_COMMON_TOKEN    QUERY_SYMBOL1632;
    pANTLR3_COMMON_TOKEN    CACHE_SYMBOL1633;
    pANTLR3_COMMON_TOKEN    STATUS_SYMBOL1634;
    pANTLR3_COMMON_TOKEN    USER_RESOURCES_SYMBOL1636;
    MySQLParser_log_type_return log_type1629;
    #undef	RETURN_TYPE_log_type1629
    #define	RETURN_TYPE_log_type1629 MySQLParser_log_type_return

    MySQLParser_flush_tables_return flush_tables1635;
    #undef	RETURN_TYPE_flush_tables1635
    #define	RETURN_TYPE_flush_tables1635 MySQLParser_flush_tables_return

    pANTLR3_BASE_TREE DES_KEY_FILE_SYMBOL1627_tree;
    pANTLR3_BASE_TREE HOSTS_SYMBOL1628_tree;
    pANTLR3_BASE_TREE LOGS_SYMBOL1630_tree;
    pANTLR3_BASE_TREE PRIVILEGES_SYMBOL1631_tree;
    pANTLR3_BASE_TREE QUERY_SYMBOL1632_tree;
    pANTLR3_BASE_TREE CACHE_SYMBOL1633_tree;
    pANTLR3_BASE_TREE STATUS_SYMBOL1634_tree;
    pANTLR3_BASE_TREE USER_RESOURCES_SYMBOL1636_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DES_KEY_FILE_SYMBOL1627       = NULL;
    HOSTS_SYMBOL1628       = NULL;
    LOGS_SYMBOL1630       = NULL;
    PRIVILEGES_SYMBOL1631       = NULL;
    QUERY_SYMBOL1632       = NULL;
    CACHE_SYMBOL1633       = NULL;
    STATUS_SYMBOL1634       = NULL;
    USER_RESOURCES_SYMBOL1636       = NULL;
    log_type1629.tree = NULL;

    flush_tables1635.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DES_KEY_FILE_SYMBOL1627_tree   = NULL;
    HOSTS_SYMBOL1628_tree   = NULL;
    LOGS_SYMBOL1630_tree   = NULL;
    PRIVILEGES_SYMBOL1631_tree   = NULL;
    QUERY_SYMBOL1632_tree   = NULL;
    CACHE_SYMBOL1633_tree   = NULL;
    STATUS_SYMBOL1634_tree   = NULL;
    USER_RESOURCES_SYMBOL1636_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1416:13: ( DES_KEY_FILE_SYMBOL | HOSTS_SYMBOL | ( log_type )? LOGS_SYMBOL | PRIVILEGES_SYMBOL | QUERY_SYMBOL CACHE_SYMBOL | STATUS_SYMBOL | flush_tables | USER_RESOURCES_SYMBOL )

            ANTLR3_UINT32 alt484;

            alt484=8;

            switch ( LA(1) )
            {
            case DES_KEY_FILE_SYMBOL:
            	{
            		alt484=1;
            	}
                break;
            case HOSTS_SYMBOL:
            	{
            		alt484=2;
            	}
                break;
            case BINARY_SYMBOL:
            case ENGINE_SYMBOL:
            case ERROR_SYMBOL:
            case GENERAL_SYMBOL:
            case LOGS_SYMBOL:
            case RELAY_SYMBOL:
            case SLOW_SYMBOL:
            	{
            		alt484=3;
            	}
                break;
            case PRIVILEGES_SYMBOL:
            	{
            		alt484=4;
            	}
                break;
            case QUERY_SYMBOL:
            	{
            		alt484=5;
            	}
                break;
            case STATUS_SYMBOL:
            	{
            		alt484=6;
            	}
                break;
            case TABLES_SYMBOL:
            case TABLE_SYMBOL:
            	{
            		alt484=7;
            	}
                break;
            case USER_RESOURCES_SYMBOL:
            	{
            		alt484=8;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 484;
                EXCEPTION->state        = 0;


                goto ruleflush_optionEx;

            }

            switch (alt484)
            {
        	case 1:
        	    // MySQL.g:1417:2: DES_KEY_FILE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DES_KEY_FILE_SYMBOL1627 = (pANTLR3_COMMON_TOKEN) MATCHT(DES_KEY_FILE_SYMBOL, &FOLLOW_DES_KEY_FILE_SYMBOL_in_flush_option7915);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DES_KEY_FILE_SYMBOL1627_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DES_KEY_FILE_SYMBOL1627));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DES_KEY_FILE_SYMBOL1627_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1418:4: HOSTS_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        HOSTS_SYMBOL1628 = (pANTLR3_COMMON_TOKEN) MATCHT(HOSTS_SYMBOL, &FOLLOW_HOSTS_SYMBOL_in_flush_option7920);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        HOSTS_SYMBOL1628_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HOSTS_SYMBOL1628));
        	        ADAPTOR->addChild(ADAPTOR, root_0, HOSTS_SYMBOL1628_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1419:4: ( log_type )? LOGS_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:1419:4: ( log_type )?
        	        {
        	            int alt483=2;
        	            switch ( LA(1) )
        	            {
        	                case BINARY_SYMBOL:
        	                case ENGINE_SYMBOL:
        	                case ERROR_SYMBOL:
        	                case GENERAL_SYMBOL:
        	                case RELAY_SYMBOL:
        	                case SLOW_SYMBOL:
        	                	{
        	                		alt483=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt483)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1419:4: log_type
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_log_type_in_flush_option7925);
        	        	        log_type1629=log_type(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleflush_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, log_type1629.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        LOGS_SYMBOL1630 = (pANTLR3_COMMON_TOKEN) MATCHT(LOGS_SYMBOL, &FOLLOW_LOGS_SYMBOL_in_flush_option7928);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LOGS_SYMBOL1630_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOGS_SYMBOL1630));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LOGS_SYMBOL1630_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1420:4: PRIVILEGES_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PRIVILEGES_SYMBOL1631 = (pANTLR3_COMMON_TOKEN) MATCHT(PRIVILEGES_SYMBOL, &FOLLOW_PRIVILEGES_SYMBOL_in_flush_option7933);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PRIVILEGES_SYMBOL1631_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PRIVILEGES_SYMBOL1631));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PRIVILEGES_SYMBOL1631_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1421:4: QUERY_SYMBOL CACHE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        QUERY_SYMBOL1632 = (pANTLR3_COMMON_TOKEN) MATCHT(QUERY_SYMBOL, &FOLLOW_QUERY_SYMBOL_in_flush_option7938);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        QUERY_SYMBOL1632_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, QUERY_SYMBOL1632));
        	        ADAPTOR->addChild(ADAPTOR, root_0, QUERY_SYMBOL1632_tree);
        	        }

        	        CACHE_SYMBOL1633 = (pANTLR3_COMMON_TOKEN) MATCHT(CACHE_SYMBOL, &FOLLOW_CACHE_SYMBOL_in_flush_option7940);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CACHE_SYMBOL1633_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CACHE_SYMBOL1633));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CACHE_SYMBOL1633_tree);
        	        }

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:1422:4: STATUS_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        STATUS_SYMBOL1634 = (pANTLR3_COMMON_TOKEN) MATCHT(STATUS_SYMBOL, &FOLLOW_STATUS_SYMBOL_in_flush_option7945);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        STATUS_SYMBOL1634_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STATUS_SYMBOL1634));
        	        ADAPTOR->addChild(ADAPTOR, root_0, STATUS_SYMBOL1634_tree);
        	        }

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:1423:4: flush_tables
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_flush_tables_in_flush_option7950);
        	        flush_tables1635=flush_tables(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, flush_tables1635.tree);

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:1424:4: USER_RESOURCES_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        USER_RESOURCES_SYMBOL1636 = (pANTLR3_COMMON_TOKEN) MATCHT(USER_RESOURCES_SYMBOL, &FOLLOW_USER_RESOURCES_SYMBOL_in_flush_option7955);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        USER_RESOURCES_SYMBOL1636_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USER_RESOURCES_SYMBOL1636));
        	        ADAPTOR->addChild(ADAPTOR, root_0, USER_RESOURCES_SYMBOL1636_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleflush_optionEx; /* Prevent compiler warnings */
    ruleflush_optionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end flush_option */

/**
 * $ANTLR start log_type
 * MySQL.g:1427:1: log_type : ( BINARY_SYMBOL | ENGINE_SYMBOL | ERROR_SYMBOL | GENERAL_SYMBOL | RELAY_SYMBOL | SLOW_SYMBOL );
 */
static MySQLParser_log_type_return
log_type(pMySQLParser ctx)
{
    MySQLParser_log_type_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set1637;

    pANTLR3_BASE_TREE set1637_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1637       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1637_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1427:9: ( BINARY_SYMBOL | ENGINE_SYMBOL | ERROR_SYMBOL | GENERAL_SYMBOL | RELAY_SYMBOL | SLOW_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set1637=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == BINARY_SYMBOL || LA(1) == ENGINE_SYMBOL || LA(1) == ERROR_SYMBOL || LA(1) == GENERAL_SYMBOL || LA(1) == RELAY_SYMBOL || LA(1) == SLOW_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1637))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto rulelog_typeEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto rulelog_typeEx; /* Prevent compiler warnings */
    rulelog_typeEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end log_type */

/**
 * $ANTLR start flush_tables
 * MySQL.g:1436:1: flush_tables : ( TABLES_SYMBOL | TABLE_SYMBOL ) ( WITH_SYMBOL READ_SYMBOL LOCK_SYMBOL | identifier_list ( flush_tables_options )? )? ;
 */
static MySQLParser_flush_tables_return
flush_tables(pMySQLParser ctx)
{
    MySQLParser_flush_tables_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set1638;
    pANTLR3_COMMON_TOKEN    WITH_SYMBOL1639;
    pANTLR3_COMMON_TOKEN    READ_SYMBOL1640;
    pANTLR3_COMMON_TOKEN    LOCK_SYMBOL1641;
    MySQLParser_identifier_list_return identifier_list1642;
    #undef	RETURN_TYPE_identifier_list1642
    #define	RETURN_TYPE_identifier_list1642 MySQLParser_identifier_list_return

    MySQLParser_flush_tables_options_return flush_tables_options1643;
    #undef	RETURN_TYPE_flush_tables_options1643
    #define	RETURN_TYPE_flush_tables_options1643 MySQLParser_flush_tables_options_return

    pANTLR3_BASE_TREE set1638_tree;
    pANTLR3_BASE_TREE WITH_SYMBOL1639_tree;
    pANTLR3_BASE_TREE READ_SYMBOL1640_tree;
    pANTLR3_BASE_TREE LOCK_SYMBOL1641_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1638       = NULL;
    WITH_SYMBOL1639       = NULL;
    READ_SYMBOL1640       = NULL;
    LOCK_SYMBOL1641       = NULL;
    identifier_list1642.tree = NULL;

    flush_tables_options1643.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1638_tree   = NULL;
    WITH_SYMBOL1639_tree   = NULL;
    READ_SYMBOL1640_tree   = NULL;
    LOCK_SYMBOL1641_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1436:13: ( ( TABLES_SYMBOL | TABLE_SYMBOL ) ( WITH_SYMBOL READ_SYMBOL LOCK_SYMBOL | identifier_list ( flush_tables_options )? )? )
        // MySQL.g:1437:2: ( TABLES_SYMBOL | TABLE_SYMBOL ) ( WITH_SYMBOL READ_SYMBOL LOCK_SYMBOL | identifier_list ( flush_tables_options )? )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set1638=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == TABLES_SYMBOL || LA(1) == TABLE_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1638))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto ruleflush_tablesEx;
            }


            // MySQL.g:1438:2: ( WITH_SYMBOL READ_SYMBOL LOCK_SYMBOL | identifier_list ( flush_tables_options )? )?
            {
                int alt486=3;
                {
                    int LA486_0 = LA(1);
                    if ( (LA486_0 == WITH_SYMBOL))
                    {
                        alt486=1;
                    }
                    else if ( (LA486_0 == BACK_TICK_QUOTED_ID || LA486_0 == IDENTIFIER))
                    {
                        alt486=2;
                    }
                    else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA486_0 == DOUBLE_QUOTED_TEXT))
                    {
                        alt486=2;
                    }
                    else if ( (((LA486_0 >= ACTION_SYMBOL) && (LA486_0 <= ADDDATE_SYMBOL)) || ((LA486_0 >= AFTER_SYMBOL) && (LA486_0 <= ALGORITHM_SYMBOL)) || LA486_0 == ANALYZE_SYMBOL || ((LA486_0 >= ANY_SYMBOL) && (LA486_0 <= ASCII_SYMBOL)) || ((LA486_0 >= AT_SYMBOL) && (LA486_0 <= BACKUP_SYMBOL)) || LA486_0 == BEGIN_SYMBOL || LA486_0 == BINLOG_SYMBOL || LA486_0 == BIT_SYMBOL || ((LA486_0 >= BLOCK_SYMBOL) && (LA486_0 <= BOOL_SYMBOL)) || ((LA486_0 >= BTREE_SYMBOL) && (LA486_0 <= BYTE_SYMBOL)) || LA486_0 == CACHE_SYMBOL || LA486_0 == CASCADED_SYMBOL || ((LA486_0 >= CATALOG_NAME_SYMBOL) && (LA486_0 <= CHANGED_SYMBOL)) || LA486_0 == CHARSET_SYMBOL || LA486_0 == CHECKSUM_SYMBOL || ((LA486_0 >= CIPHER_SYMBOL) && (LA486_0 <= CLIENT_SYMBOL)) || ((LA486_0 >= CLOSE_SYMBOL) && (LA486_0 <= CODE_SYMBOL)) || LA486_0 == COLLATION_SYMBOL || ((LA486_0 >= COLUMNS_SYMBOL) && (LA486_0 <= COLUMN_NAME_SYMBOL)) || ((LA486_0 >= COMMENT_SYMBOL) && (LA486_0 <= COMPRESSED_SYMBOL)) || LA486_0 == CONCURRENT_SYMBOL || ((LA486_0 >= CONNECTION_SYMBOL) && (LA486_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA486_0 >= CONTAINS_SYMBOL) && (LA486_0 <= CONTEXT_SYMBOL)) || LA486_0 == CONTRIBUTORS_SYMBOL || LA486_0 == CPU_SYMBOL || LA486_0 == CUBE_SYMBOL || LA486_0 == CURRENT_SYMBOL || LA486_0 == CURSOR_NAME_SYMBOL || ((LA486_0 >= DATAFILE_SYMBOL) && (LA486_0 <= DATETIME_SYMBOL)) || LA486_0 == DATE_SYMBOL || ((LA486_0 >= DAY_SYMBOL) && (LA486_0 <= DEALLOCATE_SYMBOL)) || LA486_0 == DEFAULT_AUTH_SYMBOL || LA486_0 == DEFINER_SYMBOL || LA486_0 == DELAY_KEY_WRITE_SYMBOL || LA486_0 == DES_KEY_FILE_SYMBOL || LA486_0 == DIAGNOSTICS_SYMBOL || ((LA486_0 >= DIRECTORY_SYMBOL) && (LA486_0 <= DISK_SYMBOL)) || LA486_0 == DO_SYMBOL || ((LA486_0 >= DUMPFILE_SYMBOL) && (LA486_0 <= DYNAMIC_SYMBOL)) || LA486_0 == ENABLE_SYMBOL || LA486_0 == ENDS_SYMBOL || ((LA486_0 >= END_SYMBOL) && (LA486_0 <= ENUM_SYMBOL)) || ((LA486_0 >= ERRORS_SYMBOL) && (LA486_0 <= ERROR_SYMBOL)) || ((LA486_0 >= ESCAPE_SYMBOL) && (LA486_0 <= EVERY_SYMBOL)) || LA486_0 == EXECUTE_SYMBOL || LA486_0 == EXPANSION_SYMBOL || LA486_0 == EXPORT_SYMBOL || ((LA486_0 >= EXTENDED_SYMBOL) && (LA486_0 <= EXTENT_SIZE_SYMBOL)) || ((LA486_0 >= FAST_SYMBOL) && (LA486_0 <= FAULTS_SYMBOL)) || ((LA486_0 >= FILE_SYMBOL) && (LA486_0 <= FIXED_SYMBOL)) || LA486_0 == FLUSH_SYMBOL || LA486_0 == FORMAT_SYMBOL || LA486_0 == FOUND_SYMBOL || LA486_0 == FULL_SYMBOL || ((LA486_0 >= FUNCTION_SYMBOL) && (LA486_0 <= GET_FORMAT_SYMBOL)) || ((LA486_0 >= GLOBAL_SYMBOL) && (LA486_0 <= GRANTS_SYMBOL)) || ((LA486_0 >= HANDLER_SYMBOL) && (LA486_0 <= HASH_SYMBOL)) || LA486_0 == HELP_SYMBOL || ((LA486_0 >= HOSTS_SYMBOL) && (LA486_0 <= HOST_SYMBOL)) || ((LA486_0 >= HOUR_SYMBOL) && (LA486_0 <= IDENTIFIED_SYMBOL)) || LA486_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA486_0 >= IMPORT_SYMBOL) && (LA486_0 <= INDEXES_SYMBOL)) || LA486_0 == INITIAL_SIZE_SYMBOL || LA486_0 == INNODB_SYMBOL || LA486_0 == INSERT_METHOD_SYMBOL || LA486_0 == INSTALL_SYMBOL || LA486_0 == INVOKER_SYMBOL || LA486_0 == IO_SYMBOL || ((LA486_0 >= IPC_SYMBOL) && (LA486_0 <= ISSUER_SYMBOL)) || LA486_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA486_0 >= LANGUAGE_SYMBOL) && (LA486_0 <= LAST_SYMBOL)) || LA486_0 == LEAVES_SYMBOL || LA486_0 == LESS_SYMBOL || LA486_0 == LEVEL_SYMBOL || LA486_0 == LINESTRING_SYMBOL || LA486_0 == LIST_SYMBOL || LA486_0 == LOCAL_SYMBOL || LA486_0 == LOCKS_SYMBOL || LA486_0 == LOGFILE_SYMBOL || LA486_0 == LOGS_SYMBOL || LA486_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA486_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA486_0 <= MASTER_SSL_SYMBOL)) || ((LA486_0 >= MASTER_SYMBOL) && (LA486_0 <= MASTER_USER_SYMBOL)) || ((LA486_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA486_0 <= MAX_SIZE_SYMBOL)) || ((LA486_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA486_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA486_0 >= MEDIUM_SYMBOL) && (LA486_0 <= MICROSECOND_SYMBOL)) || LA486_0 == MIGRATE_SYMBOL || ((LA486_0 >= MINUTE_SYMBOL) && (LA486_0 <= MIN_ROWS_SYMBOL)) || LA486_0 == MODE_SYMBOL || LA486_0 == MODIFY_SYMBOL || ((LA486_0 >= MONTH_SYMBOL) && (LA486_0 <= MULTILINESTRING_SYMBOL)) || ((LA486_0 >= MULTIPOINT_SYMBOL) && (LA486_0 <= MULTIPOLYGON_SYMBOL)) || ((LA486_0 >= MUTEX_SYMBOL) && (LA486_0 <= NATIONAL_SYMBOL)) || LA486_0 == NCHAR_SYMBOL || LA486_0 == NDBCLUSTER_SYMBOL || ((LA486_0 >= NEW_SYMBOL) && (LA486_0 <= NONE_SYMBOL)) || ((LA486_0 >= NO_SYMBOL) && (LA486_0 <= NO_WAIT_SYMBOL)) || LA486_0 == NUMBER_SYMBOL || LA486_0 == NVARCHAR_SYMBOL || ((LA486_0 >= OFFSET_SYMBOL) && (LA486_0 <= ONE_SYMBOL)) || LA486_0 == OPEN_SYMBOL || LA486_0 == OPTIONS_SYMBOL || ((LA486_0 >= OWNER_SYMBOL) && (LA486_0 <= PAGE_SYMBOL)) || ((LA486_0 >= PARSER_SYMBOL) && (LA486_0 <= PARTITION_SYMBOL)) || ((LA486_0 >= PASSWORD_SYMBOL) && (LA486_0 <= PLUGIN_SYMBOL)) || ((LA486_0 >= POINT_SYMBOL) && (LA486_0 <= PORT_SYMBOL)) || ((LA486_0 >= PREPARE_SYMBOL) && (LA486_0 <= PREV_SYMBOL)) || LA486_0 == PRIVILEGES_SYMBOL || ((LA486_0 >= PROCESSLIST_SYMBOL) && (LA486_0 <= PROXY_SYMBOL)) || ((LA486_0 >= QUARTER_SYMBOL) && (LA486_0 <= QUICK_SYMBOL)) || LA486_0 == READ_ONLY_SYMBOL || ((LA486_0 >= REBUILD_SYMBOL) && (LA486_0 <= REDUNDANT_SYMBOL)) || ((LA486_0 >= RELAYLOG_SYMBOL) && (LA486_0 <= RELAY_THREAD_SYMBOL)) || ((LA486_0 >= RELOAD_SYMBOL) && (LA486_0 <= REMOVE_SYMBOL)) || ((LA486_0 >= REORGANIZE_SYMBOL) && (LA486_0 <= REPEATABLE_SYMBOL)) || LA486_0 == REPLICATION_SYMBOL || LA486_0 == RESET_SYMBOL || LA486_0 == RESTORE_SYMBOL || ((LA486_0 >= RESUME_SYMBOL) && (LA486_0 <= RETURNS_SYMBOL)) || LA486_0 == REVERSE_SYMBOL || ((LA486_0 >= ROLLBACK_SYMBOL) && (LA486_0 <= SCHEDULE_SYMBOL)) || LA486_0 == SCHEMA_NAME_SYMBOL || ((LA486_0 >= SECOND_SYMBOL) && (LA486_0 <= SECURITY_SYMBOL)) || ((LA486_0 >= SERIALIZABLE_SYMBOL) && (LA486_0 <= SERIAL_SYMBOL)) || ((LA486_0 >= SERVER_SYMBOL) && (LA486_0 <= SESSION_SYMBOL)) || LA486_0 == SHARE_SYMBOL || LA486_0 == SHUTDOWN_SYMBOL || ((LA486_0 >= SIGNED_SYMBOL) && (LA486_0 <= SIMPLE_SYMBOL)) || ((LA486_0 >= SLAVE_SYMBOL) && (LA486_0 <= SLOW_SYMBOL)) || ((LA486_0 >= SNAPSHOT_SYMBOL) && (LA486_0 <= SOURCE_SYMBOL)) || ((LA486_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA486_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA486_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA486_0 <= SQL_CACHE_SYMBOL)) || LA486_0 == SQL_NO_CACHE_SYMBOL || LA486_0 == SQL_THREAD_SYMBOL || ((LA486_0 >= STARTS_SYMBOL) && (LA486_0 <= STATUS_SYMBOL)) || ((LA486_0 >= STOP_SYMBOL) && (LA486_0 <= STORAGE_SYMBOL)) || ((LA486_0 >= STRING_SYMBOL) && (LA486_0 <= SUBPARTITION_SYMBOL)) || ((LA486_0 >= SUPER_SYMBOL) && (LA486_0 <= SWITCHES_SYMBOL)) || ((LA486_0 >= TABLESPACE_SYMBOL) && (LA486_0 <= TABLE_NAME_SYMBOL)) || ((LA486_0 >= TEMPORARY_SYMBOL) && (LA486_0 <= TEMPTABLE_SYMBOL)) || ((LA486_0 >= TEXT_SYMBOL) && (LA486_0 <= THAN_SYMBOL)) || ((LA486_0 >= TIMESTAMP_ADD_SYMBOL) && (LA486_0 <= TIME_SYMBOL)) || ((LA486_0 >= TRANSACTION_SYMBOL) && (LA486_0 <= TRIGGERS_SYMBOL)) || ((LA486_0 >= TRUNCATE_SYMBOL) && (LA486_0 <= UDF_RETURNS_SYMBOL)) || ((LA486_0 >= UNCOMMITTED_SYMBOL) && (LA486_0 <= UNDEFINED_SYMBOL)) || ((LA486_0 >= UNDOFILE_SYMBOL) && (LA486_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA486_0 >= UNICODE_SYMBOL) && (LA486_0 <= UNINSTALL_SYMBOL)) || LA486_0 == UNKNOWN_SYMBOL || LA486_0 == UNTIL_SYMBOL || LA486_0 == UPGRADE_SYMBOL || ((LA486_0 >= USER_RESOURCES_SYMBOL) && (LA486_0 <= USE_FRM_SYMBOL)) || LA486_0 == VALUE_SYMBOL || LA486_0 == VARIABLES_SYMBOL || ((LA486_0 >= VIEW_SYMBOL) && (LA486_0 <= WEIGHT_STRING_SYMBOL)) || ((LA486_0 >= WORK_SYMBOL) && (LA486_0 <= WRAPPER_SYMBOL)) || LA486_0 == X509_SYMBOL || ((LA486_0 >= XA_SYMBOL) && (LA486_0 <= XML_SYMBOL)) || LA486_0 == YEAR_SYMBOL))
                    {
                        alt486=2;
                    }
                }
                switch (alt486)
                {
            	case 1:
            	    // MySQL.g:1439:3: WITH_SYMBOL READ_SYMBOL LOCK_SYMBOL
            	    {
            	        WITH_SYMBOL1639 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_flush_tables8011);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleflush_tablesEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        WITH_SYMBOL1639_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WITH_SYMBOL1639));
            	        ADAPTOR->addChild(ADAPTOR, root_0, WITH_SYMBOL1639_tree);
            	        }

            	        READ_SYMBOL1640 = (pANTLR3_COMMON_TOKEN) MATCHT(READ_SYMBOL, &FOLLOW_READ_SYMBOL_in_flush_tables8013);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleflush_tablesEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        READ_SYMBOL1640_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, READ_SYMBOL1640));
            	        ADAPTOR->addChild(ADAPTOR, root_0, READ_SYMBOL1640_tree);
            	        }

            	        LOCK_SYMBOL1641 = (pANTLR3_COMMON_TOKEN) MATCHT(LOCK_SYMBOL, &FOLLOW_LOCK_SYMBOL_in_flush_tables8015);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleflush_tablesEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        LOCK_SYMBOL1641_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOCK_SYMBOL1641));
            	        ADAPTOR->addChild(ADAPTOR, root_0, LOCK_SYMBOL1641_tree);
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1440:5: identifier_list ( flush_tables_options )?
            	    {
            	        FOLLOWPUSH(FOLLOW_identifier_list_in_flush_tables8021);
            	        identifier_list1642=identifier_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleflush_tablesEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list1642.tree);

            	        // MySQL.g:1440:21: ( flush_tables_options )?
            	        {
            	            int alt485=2;
            	            {
            	                int LA485_0 = LA(1);
            	                if ( ((SERVER_VERSION >= 50606)) && (LA485_0 == FOR_SYMBOL))
            	                {
            	                    alt485=1;
            	                }
            	                else if ( (LA485_0 == WITH_SYMBOL))
            	                {
            	                    alt485=1;
            	                }
            	            }
            	            switch (alt485)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1440:21: flush_tables_options
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_flush_tables_options_in_flush_tables8023);
            	        	        flush_tables_options1643=flush_tables_options(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleflush_tablesEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, flush_tables_options1643.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleflush_tablesEx; /* Prevent compiler warnings */
    ruleflush_tablesEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end flush_tables */

/**
 * $ANTLR start flush_tables_options
 * MySQL.g:1444:1: flush_tables_options : ({...}? => FOR_SYMBOL EXPORT_SYMBOL | WITH_SYMBOL READ_SYMBOL LOCK_SYMBOL );
 */
static MySQLParser_flush_tables_options_return
flush_tables_options(pMySQLParser ctx)
{
    MySQLParser_flush_tables_options_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    FOR_SYMBOL1644;
    pANTLR3_COMMON_TOKEN    EXPORT_SYMBOL1645;
    pANTLR3_COMMON_TOKEN    WITH_SYMBOL1646;
    pANTLR3_COMMON_TOKEN    READ_SYMBOL1647;
    pANTLR3_COMMON_TOKEN    LOCK_SYMBOL1648;

    pANTLR3_BASE_TREE FOR_SYMBOL1644_tree;
    pANTLR3_BASE_TREE EXPORT_SYMBOL1645_tree;
    pANTLR3_BASE_TREE WITH_SYMBOL1646_tree;
    pANTLR3_BASE_TREE READ_SYMBOL1647_tree;
    pANTLR3_BASE_TREE LOCK_SYMBOL1648_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    FOR_SYMBOL1644       = NULL;
    EXPORT_SYMBOL1645       = NULL;
    WITH_SYMBOL1646       = NULL;
    READ_SYMBOL1647       = NULL;
    LOCK_SYMBOL1648       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    FOR_SYMBOL1644_tree   = NULL;
    EXPORT_SYMBOL1645_tree   = NULL;
    WITH_SYMBOL1646_tree   = NULL;
    READ_SYMBOL1647_tree   = NULL;
    LOCK_SYMBOL1648_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1444:21: ({...}? => FOR_SYMBOL EXPORT_SYMBOL | WITH_SYMBOL READ_SYMBOL LOCK_SYMBOL )

            ANTLR3_UINT32 alt487;

            alt487=2;

            {
                int LA487_0 = LA(1);
                if ( ((SERVER_VERSION >= 50606)) && (LA487_0 == FOR_SYMBOL))
                {
                    alt487=1;
                }
                else if ( (LA487_0 == WITH_SYMBOL))
                {
                    alt487=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 487;
                    EXCEPTION->state        = 0;


                    goto ruleflush_tables_optionsEx;

                }
            }
            switch (alt487)
            {
        	case 1:
        	    // MySQL.g:1445:2: {...}? => FOR_SYMBOL EXPORT_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((SERVER_VERSION >= 50606)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50606";
        	                EXCEPTION->ruleName	 = (void *)"flush_tables_options";


        	        }

        	        FOR_SYMBOL1644 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_flush_tables_options8041);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_tables_optionsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FOR_SYMBOL1644_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL1644));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL1644_tree);
        	        }

        	        EXPORT_SYMBOL1645 = (pANTLR3_COMMON_TOKEN) MATCHT(EXPORT_SYMBOL, &FOLLOW_EXPORT_SYMBOL_in_flush_tables_options8043);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_tables_optionsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EXPORT_SYMBOL1645_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXPORT_SYMBOL1645));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EXPORT_SYMBOL1645_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1446:4: WITH_SYMBOL READ_SYMBOL LOCK_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        WITH_SYMBOL1646 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_flush_tables_options8048);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_tables_optionsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        WITH_SYMBOL1646_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WITH_SYMBOL1646));
        	        ADAPTOR->addChild(ADAPTOR, root_0, WITH_SYMBOL1646_tree);
        	        }

        	        READ_SYMBOL1647 = (pANTLR3_COMMON_TOKEN) MATCHT(READ_SYMBOL, &FOLLOW_READ_SYMBOL_in_flush_tables_options8050);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_tables_optionsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        READ_SYMBOL1647_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, READ_SYMBOL1647));
        	        ADAPTOR->addChild(ADAPTOR, root_0, READ_SYMBOL1647_tree);
        	        }

        	        LOCK_SYMBOL1648 = (pANTLR3_COMMON_TOKEN) MATCHT(LOCK_SYMBOL, &FOLLOW_LOCK_SYMBOL_in_flush_tables_options8052);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_tables_optionsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LOCK_SYMBOL1648_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOCK_SYMBOL1648));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LOCK_SYMBOL1648_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleflush_tables_optionsEx; /* Prevent compiler warnings */
    ruleflush_tables_optionsEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end flush_tables_options */

/**
 * $ANTLR start load_table_index_list
 * MySQL.g:1449:1: load_table_index_list : qualified_identifier ( load_table_index_partion )? ( ( INDEX_SYMBOL | KEY_SYMBOL )? identifier_list_with_parentheses )? ( IGNORE_SYMBOL LEAVES_SYMBOL )? ;
 */
static MySQLParser_load_table_index_list_return
load_table_index_list(pMySQLParser ctx)
{
    MySQLParser_load_table_index_list_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set1651;
    pANTLR3_COMMON_TOKEN    IGNORE_SYMBOL1653;
    pANTLR3_COMMON_TOKEN    LEAVES_SYMBOL1654;
    MySQLParser_qualified_identifier_return qualified_identifier1649;
    #undef	RETURN_TYPE_qualified_identifier1649
    #define	RETURN_TYPE_qualified_identifier1649 MySQLParser_qualified_identifier_return

    MySQLParser_load_table_index_partion_return load_table_index_partion1650;
    #undef	RETURN_TYPE_load_table_index_partion1650
    #define	RETURN_TYPE_load_table_index_partion1650 MySQLParser_load_table_index_partion_return

    MySQLParser_identifier_list_with_parentheses_return identifier_list_with_parentheses1652;
    #undef	RETURN_TYPE_identifier_list_with_parentheses1652
    #define	RETURN_TYPE_identifier_list_with_parentheses1652 MySQLParser_identifier_list_with_parentheses_return

    pANTLR3_BASE_TREE set1651_tree;
    pANTLR3_BASE_TREE IGNORE_SYMBOL1653_tree;
    pANTLR3_BASE_TREE LEAVES_SYMBOL1654_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1651       = NULL;
    IGNORE_SYMBOL1653       = NULL;
    LEAVES_SYMBOL1654       = NULL;
    qualified_identifier1649.tree = NULL;

    load_table_index_partion1650.tree = NULL;

    identifier_list_with_parentheses1652.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1651_tree   = NULL;
    IGNORE_SYMBOL1653_tree   = NULL;
    LEAVES_SYMBOL1654_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1449:22: ( qualified_identifier ( load_table_index_partion )? ( ( INDEX_SYMBOL | KEY_SYMBOL )? identifier_list_with_parentheses )? ( IGNORE_SYMBOL LEAVES_SYMBOL )? )
        // MySQL.g:1450:2: qualified_identifier ( load_table_index_partion )? ( ( INDEX_SYMBOL | KEY_SYMBOL )? identifier_list_with_parentheses )? ( IGNORE_SYMBOL LEAVES_SYMBOL )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_qualified_identifier_in_load_table_index_list8061);
            qualified_identifier1649=qualified_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleload_table_index_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, qualified_identifier1649.tree);

            // MySQL.g:1450:23: ( load_table_index_partion )?
            {
                int alt488=2;
                {
                    int LA488_0 = LA(1);
                    if ( ((SERVER_VERSION >= 50500)) && (LA488_0 == PARTITION_SYMBOL))
                    {
                        alt488=1;
                    }
                }
                switch (alt488)
                {
            	case 1:
            	    // MySQL.g:1450:23: load_table_index_partion
            	    {
            	        FOLLOWPUSH(FOLLOW_load_table_index_partion_in_load_table_index_list8063);
            	        load_table_index_partion1650=load_table_index_partion(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleload_table_index_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, load_table_index_partion1650.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1451:3: ( ( INDEX_SYMBOL | KEY_SYMBOL )? identifier_list_with_parentheses )?
            {
                int alt490=2;
                switch ( LA(1) )
                {
                    case INDEX_SYMBOL:
                    case KEY_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    	{
                    		alt490=1;
                    	}
                        break;
                }

                switch (alt490)
                {
            	case 1:
            	    // MySQL.g:1451:4: ( INDEX_SYMBOL | KEY_SYMBOL )? identifier_list_with_parentheses
            	    {
            	        // MySQL.g:1451:4: ( INDEX_SYMBOL | KEY_SYMBOL )?
            	        {
            	            int alt489=2;
            	            switch ( LA(1) )
            	            {
            	                case INDEX_SYMBOL:
            	                case KEY_SYMBOL:
            	                	{
            	                		alt489=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt489)
            	            {
            	        	case 1:
            	        	    // MySQL.g:
            	        	    {
            	        	        set1651=(pANTLR3_COMMON_TOKEN)LT(1);

            	        	        if ( LA(1) == INDEX_SYMBOL || LA(1) == KEY_SYMBOL )
            	        	        {
            	        	            CONSUME();
            	        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1651))
            	        	            );
            	        	            PERRORRECOVERY=ANTLR3_FALSE;
            	        	            FAILEDFLAG=ANTLR3_FALSE;

            	        	        }
            	        	        else
            	        	        {
            	        	            if (BACKTRACKING>0)
            	        	            {
            	        	                FAILEDFLAG = ANTLR3_TRUE;
            	        	                return retval;
            	        	            }

            	        	            CONSTRUCTEX();
            	        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	        	            EXCEPTION->expectingSet = NULL;

            	        	            goto ruleload_table_index_listEx;
            	        	        }


            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_identifier_list_with_parentheses_in_load_table_index_list8078);
            	        identifier_list_with_parentheses1652=identifier_list_with_parentheses(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleload_table_index_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list_with_parentheses1652.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1451:68: ( IGNORE_SYMBOL LEAVES_SYMBOL )?
            {
                int alt491=2;
                switch ( LA(1) )
                {
                    case IGNORE_SYMBOL:
                    	{
                    		alt491=1;
                    	}
                        break;
                }

                switch (alt491)
                {
            	case 1:
            	    // MySQL.g:1451:69: IGNORE_SYMBOL LEAVES_SYMBOL
            	    {
            	        IGNORE_SYMBOL1653 = (pANTLR3_COMMON_TOKEN) MATCHT(IGNORE_SYMBOL, &FOLLOW_IGNORE_SYMBOL_in_load_table_index_list8083);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleload_table_index_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        IGNORE_SYMBOL1653_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IGNORE_SYMBOL1653));
            	        ADAPTOR->addChild(ADAPTOR, root_0, IGNORE_SYMBOL1653_tree);
            	        }

            	        LEAVES_SYMBOL1654 = (pANTLR3_COMMON_TOKEN) MATCHT(LEAVES_SYMBOL, &FOLLOW_LEAVES_SYMBOL_in_load_table_index_list8085);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleload_table_index_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        LEAVES_SYMBOL1654_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LEAVES_SYMBOL1654));
            	        ADAPTOR->addChild(ADAPTOR, root_0, LEAVES_SYMBOL1654_tree);
            	        }

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleload_table_index_listEx; /* Prevent compiler warnings */
    ruleload_table_index_listEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end load_table_index_list */

/**
 * $ANTLR start load_table_index_partion
 * MySQL.g:1454:1: load_table_index_partion :{...}? => ( PARTITION_SYMBOL OPEN_PAR_SYMBOL ( identifier_list | ALL_SYMBOL ) CLOSE_PAR_SYMBOL ) ;
 */
static MySQLParser_load_table_index_partion_return
load_table_index_partion(pMySQLParser ctx)
{
    MySQLParser_load_table_index_partion_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL1655;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1656;
    pANTLR3_COMMON_TOKEN    ALL_SYMBOL1658;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1659;
    MySQLParser_identifier_list_return identifier_list1657;
    #undef	RETURN_TYPE_identifier_list1657
    #define	RETURN_TYPE_identifier_list1657 MySQLParser_identifier_list_return

    pANTLR3_BASE_TREE PARTITION_SYMBOL1655_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1656_tree;
    pANTLR3_BASE_TREE ALL_SYMBOL1658_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1659_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PARTITION_SYMBOL1655       = NULL;
    OPEN_PAR_SYMBOL1656       = NULL;
    ALL_SYMBOL1658       = NULL;
    CLOSE_PAR_SYMBOL1659       = NULL;
    identifier_list1657.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PARTITION_SYMBOL1655_tree   = NULL;
    OPEN_PAR_SYMBOL1656_tree   = NULL;
    ALL_SYMBOL1658_tree   = NULL;
    CLOSE_PAR_SYMBOL1659_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1454:25: ({...}? => ( PARTITION_SYMBOL OPEN_PAR_SYMBOL ( identifier_list | ALL_SYMBOL ) CLOSE_PAR_SYMBOL ) )
        // MySQL.g:1455:2: {...}? => ( PARTITION_SYMBOL OPEN_PAR_SYMBOL ( identifier_list | ALL_SYMBOL ) CLOSE_PAR_SYMBOL )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            if ( !((SERVER_VERSION >= 50500)) )
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
                    EXCEPTION->message      = (void *)"SERVER_VERSION >= 50500";
                    EXCEPTION->ruleName	 = (void *)"load_table_index_partion";


            }

            // MySQL.g:1455:32: ( PARTITION_SYMBOL OPEN_PAR_SYMBOL ( identifier_list | ALL_SYMBOL ) CLOSE_PAR_SYMBOL )
            // MySQL.g:1455:33: PARTITION_SYMBOL OPEN_PAR_SYMBOL ( identifier_list | ALL_SYMBOL ) CLOSE_PAR_SYMBOL
            {
                PARTITION_SYMBOL1655 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_load_table_index_partion8101);
                if  (HASEXCEPTION())
                {
                    goto ruleload_table_index_partionEx;
                }
                if (HASFAILED())
                {
                    return retval;
                }

                if ( BACKTRACKING==0 ) {
                PARTITION_SYMBOL1655_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITION_SYMBOL1655));
                ADAPTOR->addChild(ADAPTOR, root_0, PARTITION_SYMBOL1655_tree);
                }

                OPEN_PAR_SYMBOL1656 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_load_table_index_partion8103);
                if  (HASEXCEPTION())
                {
                    goto ruleload_table_index_partionEx;
                }
                if (HASFAILED())
                {
                    return retval;
                }

                if ( BACKTRACKING==0 ) {
                OPEN_PAR_SYMBOL1656_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1656));
                ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1656_tree);
                }

                // MySQL.g:1455:66: ( identifier_list | ALL_SYMBOL )
                {
                    int alt492=2;
                    {
                        int LA492_0 = LA(1);
                        if ( (LA492_0 == BACK_TICK_QUOTED_ID || LA492_0 == IDENTIFIER))
                        {
                            alt492=1;
                        }
                        else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA492_0 == DOUBLE_QUOTED_TEXT))
                        {
                            alt492=1;
                        }
                        else if ( (((LA492_0 >= ACTION_SYMBOL) && (LA492_0 <= ADDDATE_SYMBOL)) || ((LA492_0 >= AFTER_SYMBOL) && (LA492_0 <= ALGORITHM_SYMBOL)) || LA492_0 == ANALYZE_SYMBOL || ((LA492_0 >= ANY_SYMBOL) && (LA492_0 <= ASCII_SYMBOL)) || ((LA492_0 >= AT_SYMBOL) && (LA492_0 <= BACKUP_SYMBOL)) || LA492_0 == BEGIN_SYMBOL || LA492_0 == BINLOG_SYMBOL || LA492_0 == BIT_SYMBOL || ((LA492_0 >= BLOCK_SYMBOL) && (LA492_0 <= BOOL_SYMBOL)) || ((LA492_0 >= BTREE_SYMBOL) && (LA492_0 <= BYTE_SYMBOL)) || LA492_0 == CACHE_SYMBOL || LA492_0 == CASCADED_SYMBOL || ((LA492_0 >= CATALOG_NAME_SYMBOL) && (LA492_0 <= CHANGED_SYMBOL)) || LA492_0 == CHARSET_SYMBOL || LA492_0 == CHECKSUM_SYMBOL || ((LA492_0 >= CIPHER_SYMBOL) && (LA492_0 <= CLIENT_SYMBOL)) || ((LA492_0 >= CLOSE_SYMBOL) && (LA492_0 <= CODE_SYMBOL)) || LA492_0 == COLLATION_SYMBOL || ((LA492_0 >= COLUMNS_SYMBOL) && (LA492_0 <= COLUMN_NAME_SYMBOL)) || ((LA492_0 >= COMMENT_SYMBOL) && (LA492_0 <= COMPRESSED_SYMBOL)) || LA492_0 == CONCURRENT_SYMBOL || ((LA492_0 >= CONNECTION_SYMBOL) && (LA492_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA492_0 >= CONTAINS_SYMBOL) && (LA492_0 <= CONTEXT_SYMBOL)) || LA492_0 == CONTRIBUTORS_SYMBOL || LA492_0 == CPU_SYMBOL || LA492_0 == CUBE_SYMBOL || LA492_0 == CURRENT_SYMBOL || LA492_0 == CURSOR_NAME_SYMBOL || ((LA492_0 >= DATAFILE_SYMBOL) && (LA492_0 <= DATETIME_SYMBOL)) || LA492_0 == DATE_SYMBOL || ((LA492_0 >= DAY_SYMBOL) && (LA492_0 <= DEALLOCATE_SYMBOL)) || LA492_0 == DEFAULT_AUTH_SYMBOL || LA492_0 == DEFINER_SYMBOL || LA492_0 == DELAY_KEY_WRITE_SYMBOL || LA492_0 == DES_KEY_FILE_SYMBOL || LA492_0 == DIAGNOSTICS_SYMBOL || ((LA492_0 >= DIRECTORY_SYMBOL) && (LA492_0 <= DISK_SYMBOL)) || LA492_0 == DO_SYMBOL || ((LA492_0 >= DUMPFILE_SYMBOL) && (LA492_0 <= DYNAMIC_SYMBOL)) || LA492_0 == ENABLE_SYMBOL || LA492_0 == ENDS_SYMBOL || ((LA492_0 >= END_SYMBOL) && (LA492_0 <= ENUM_SYMBOL)) || ((LA492_0 >= ERRORS_SYMBOL) && (LA492_0 <= ERROR_SYMBOL)) || ((LA492_0 >= ESCAPE_SYMBOL) && (LA492_0 <= EVERY_SYMBOL)) || LA492_0 == EXECUTE_SYMBOL || LA492_0 == EXPANSION_SYMBOL || LA492_0 == EXPORT_SYMBOL || ((LA492_0 >= EXTENDED_SYMBOL) && (LA492_0 <= EXTENT_SIZE_SYMBOL)) || ((LA492_0 >= FAST_SYMBOL) && (LA492_0 <= FAULTS_SYMBOL)) || ((LA492_0 >= FILE_SYMBOL) && (LA492_0 <= FIXED_SYMBOL)) || LA492_0 == FLUSH_SYMBOL || LA492_0 == FORMAT_SYMBOL || LA492_0 == FOUND_SYMBOL || LA492_0 == FULL_SYMBOL || ((LA492_0 >= FUNCTION_SYMBOL) && (LA492_0 <= GET_FORMAT_SYMBOL)) || ((LA492_0 >= GLOBAL_SYMBOL) && (LA492_0 <= GRANTS_SYMBOL)) || ((LA492_0 >= HANDLER_SYMBOL) && (LA492_0 <= HASH_SYMBOL)) || LA492_0 == HELP_SYMBOL || ((LA492_0 >= HOSTS_SYMBOL) && (LA492_0 <= HOST_SYMBOL)) || ((LA492_0 >= HOUR_SYMBOL) && (LA492_0 <= IDENTIFIED_SYMBOL)) || LA492_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA492_0 >= IMPORT_SYMBOL) && (LA492_0 <= INDEXES_SYMBOL)) || LA492_0 == INITIAL_SIZE_SYMBOL || LA492_0 == INNODB_SYMBOL || LA492_0 == INSERT_METHOD_SYMBOL || LA492_0 == INSTALL_SYMBOL || LA492_0 == INVOKER_SYMBOL || LA492_0 == IO_SYMBOL || ((LA492_0 >= IPC_SYMBOL) && (LA492_0 <= ISSUER_SYMBOL)) || LA492_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA492_0 >= LANGUAGE_SYMBOL) && (LA492_0 <= LAST_SYMBOL)) || LA492_0 == LEAVES_SYMBOL || LA492_0 == LESS_SYMBOL || LA492_0 == LEVEL_SYMBOL || LA492_0 == LINESTRING_SYMBOL || LA492_0 == LIST_SYMBOL || LA492_0 == LOCAL_SYMBOL || LA492_0 == LOCKS_SYMBOL || LA492_0 == LOGFILE_SYMBOL || LA492_0 == LOGS_SYMBOL || LA492_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA492_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA492_0 <= MASTER_SSL_SYMBOL)) || ((LA492_0 >= MASTER_SYMBOL) && (LA492_0 <= MASTER_USER_SYMBOL)) || ((LA492_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA492_0 <= MAX_SIZE_SYMBOL)) || ((LA492_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA492_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA492_0 >= MEDIUM_SYMBOL) && (LA492_0 <= MICROSECOND_SYMBOL)) || LA492_0 == MIGRATE_SYMBOL || ((LA492_0 >= MINUTE_SYMBOL) && (LA492_0 <= MIN_ROWS_SYMBOL)) || LA492_0 == MODE_SYMBOL || LA492_0 == MODIFY_SYMBOL || ((LA492_0 >= MONTH_SYMBOL) && (LA492_0 <= MULTILINESTRING_SYMBOL)) || ((LA492_0 >= MULTIPOINT_SYMBOL) && (LA492_0 <= MULTIPOLYGON_SYMBOL)) || ((LA492_0 >= MUTEX_SYMBOL) && (LA492_0 <= NATIONAL_SYMBOL)) || LA492_0 == NCHAR_SYMBOL || LA492_0 == NDBCLUSTER_SYMBOL || ((LA492_0 >= NEW_SYMBOL) && (LA492_0 <= NONE_SYMBOL)) || ((LA492_0 >= NO_SYMBOL) && (LA492_0 <= NO_WAIT_SYMBOL)) || LA492_0 == NUMBER_SYMBOL || LA492_0 == NVARCHAR_SYMBOL || ((LA492_0 >= OFFSET_SYMBOL) && (LA492_0 <= ONE_SYMBOL)) || LA492_0 == OPEN_SYMBOL || LA492_0 == OPTIONS_SYMBOL || ((LA492_0 >= OWNER_SYMBOL) && (LA492_0 <= PAGE_SYMBOL)) || ((LA492_0 >= PARSER_SYMBOL) && (LA492_0 <= PARTITION_SYMBOL)) || ((LA492_0 >= PASSWORD_SYMBOL) && (LA492_0 <= PLUGIN_SYMBOL)) || ((LA492_0 >= POINT_SYMBOL) && (LA492_0 <= PORT_SYMBOL)) || ((LA492_0 >= PREPARE_SYMBOL) && (LA492_0 <= PREV_SYMBOL)) || LA492_0 == PRIVILEGES_SYMBOL || ((LA492_0 >= PROCESSLIST_SYMBOL) && (LA492_0 <= PROXY_SYMBOL)) || ((LA492_0 >= QUARTER_SYMBOL) && (LA492_0 <= QUICK_SYMBOL)) || LA492_0 == READ_ONLY_SYMBOL || ((LA492_0 >= REBUILD_SYMBOL) && (LA492_0 <= REDUNDANT_SYMBOL)) || ((LA492_0 >= RELAYLOG_SYMBOL) && (LA492_0 <= RELAY_THREAD_SYMBOL)) || ((LA492_0 >= RELOAD_SYMBOL) && (LA492_0 <= REMOVE_SYMBOL)) || ((LA492_0 >= REORGANIZE_SYMBOL) && (LA492_0 <= REPEATABLE_SYMBOL)) || LA492_0 == REPLICATION_SYMBOL || LA492_0 == RESET_SYMBOL || LA492_0 == RESTORE_SYMBOL || ((LA492_0 >= RESUME_SYMBOL) && (LA492_0 <= RETURNS_SYMBOL)) || LA492_0 == REVERSE_SYMBOL || ((LA492_0 >= ROLLBACK_SYMBOL) && (LA492_0 <= SCHEDULE_SYMBOL)) || LA492_0 == SCHEMA_NAME_SYMBOL || ((LA492_0 >= SECOND_SYMBOL) && (LA492_0 <= SECURITY_SYMBOL)) || ((LA492_0 >= SERIALIZABLE_SYMBOL) && (LA492_0 <= SERIAL_SYMBOL)) || ((LA492_0 >= SERVER_SYMBOL) && (LA492_0 <= SESSION_SYMBOL)) || LA492_0 == SHARE_SYMBOL || LA492_0 == SHUTDOWN_SYMBOL || ((LA492_0 >= SIGNED_SYMBOL) && (LA492_0 <= SIMPLE_SYMBOL)) || ((LA492_0 >= SLAVE_SYMBOL) && (LA492_0 <= SLOW_SYMBOL)) || ((LA492_0 >= SNAPSHOT_SYMBOL) && (LA492_0 <= SOURCE_SYMBOL)) || ((LA492_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA492_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA492_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA492_0 <= SQL_CACHE_SYMBOL)) || LA492_0 == SQL_NO_CACHE_SYMBOL || LA492_0 == SQL_THREAD_SYMBOL || ((LA492_0 >= STARTS_SYMBOL) && (LA492_0 <= STATUS_SYMBOL)) || ((LA492_0 >= STOP_SYMBOL) && (LA492_0 <= STORAGE_SYMBOL)) || ((LA492_0 >= STRING_SYMBOL) && (LA492_0 <= SUBPARTITION_SYMBOL)) || ((LA492_0 >= SUPER_SYMBOL) && (LA492_0 <= SWITCHES_SYMBOL)) || ((LA492_0 >= TABLESPACE_SYMBOL) && (LA492_0 <= TABLE_NAME_SYMBOL)) || ((LA492_0 >= TEMPORARY_SYMBOL) && (LA492_0 <= TEMPTABLE_SYMBOL)) || ((LA492_0 >= TEXT_SYMBOL) && (LA492_0 <= THAN_SYMBOL)) || ((LA492_0 >= TIMESTAMP_ADD_SYMBOL) && (LA492_0 <= TIME_SYMBOL)) || ((LA492_0 >= TRANSACTION_SYMBOL) && (LA492_0 <= TRIGGERS_SYMBOL)) || ((LA492_0 >= TRUNCATE_SYMBOL) && (LA492_0 <= UDF_RETURNS_SYMBOL)) || ((LA492_0 >= UNCOMMITTED_SYMBOL) && (LA492_0 <= UNDEFINED_SYMBOL)) || ((LA492_0 >= UNDOFILE_SYMBOL) && (LA492_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA492_0 >= UNICODE_SYMBOL) && (LA492_0 <= UNINSTALL_SYMBOL)) || LA492_0 == UNKNOWN_SYMBOL || LA492_0 == UNTIL_SYMBOL || LA492_0 == UPGRADE_SYMBOL || ((LA492_0 >= USER_RESOURCES_SYMBOL) && (LA492_0 <= USE_FRM_SYMBOL)) || LA492_0 == VALUE_SYMBOL || LA492_0 == VARIABLES_SYMBOL || ((LA492_0 >= VIEW_SYMBOL) && (LA492_0 <= WEIGHT_STRING_SYMBOL)) || ((LA492_0 >= WORK_SYMBOL) && (LA492_0 <= WRAPPER_SYMBOL)) || LA492_0 == X509_SYMBOL || ((LA492_0 >= XA_SYMBOL) && (LA492_0 <= XML_SYMBOL)) || LA492_0 == YEAR_SYMBOL))
                        {
                            alt492=1;
                        }
                        else if ( (LA492_0 == ALL_SYMBOL))
                        {
                            alt492=2;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 492;
                            EXCEPTION->state        = 0;


                            goto ruleload_table_index_partionEx;

                        }
                    }
                    switch (alt492)
                    {
                	case 1:
                	    // MySQL.g:1455:67: identifier_list
                	    {
                	        FOLLOWPUSH(FOLLOW_identifier_list_in_load_table_index_partion8106);
                	        identifier_list1657=identifier_list(ctx);

                	        FOLLOWPOP();
                	        if  (HASEXCEPTION())
                	        {
                	            goto ruleload_table_index_partionEx;
                	        }
                	        if (HASFAILED())
                	        {
                	            return retval;
                	        }

                	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list1657.tree);

                	    }
                	    break;
                	case 2:
                	    // MySQL.g:1455:85: ALL_SYMBOL
                	    {
                	        ALL_SYMBOL1658 = (pANTLR3_COMMON_TOKEN) MATCHT(ALL_SYMBOL, &FOLLOW_ALL_SYMBOL_in_load_table_index_partion8110);
                	        if  (HASEXCEPTION())
                	        {
                	            goto ruleload_table_index_partionEx;
                	        }
                	        if (HASFAILED())
                	        {
                	            return retval;
                	        }

                	        if ( BACKTRACKING==0 ) {
                	        ALL_SYMBOL1658_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALL_SYMBOL1658));
                	        ADAPTOR->addChild(ADAPTOR, root_0, ALL_SYMBOL1658_tree);
                	        }

                	    }
                	    break;

                    }
                }

                CLOSE_PAR_SYMBOL1659 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_load_table_index_partion8113);
                if  (HASEXCEPTION())
                {
                    goto ruleload_table_index_partionEx;
                }
                if (HASFAILED())
                {
                    return retval;
                }

                if ( BACKTRACKING==0 ) {
                CLOSE_PAR_SYMBOL1659_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1659));
                ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1659_tree);
                }

            }


        }

    }

    // This is where rules clean up and exit
    //
    goto ruleload_table_index_partionEx; /* Prevent compiler warnings */
    ruleload_table_index_partionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end load_table_index_partion */

/**
 * $ANTLR start reset_option
 * MySQL.g:1458:1: reset_option : ( MASTER_SYMBOL | QUERY_SYMBOL CACHE_SYMBOL | SLAVE_SYMBOL );
 */
static MySQLParser_reset_option_return
reset_option(pMySQLParser ctx)
{
    MySQLParser_reset_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    MASTER_SYMBOL1660;
    pANTLR3_COMMON_TOKEN    QUERY_SYMBOL1661;
    pANTLR3_COMMON_TOKEN    CACHE_SYMBOL1662;
    pANTLR3_COMMON_TOKEN    SLAVE_SYMBOL1663;

    pANTLR3_BASE_TREE MASTER_SYMBOL1660_tree;
    pANTLR3_BASE_TREE QUERY_SYMBOL1661_tree;
    pANTLR3_BASE_TREE CACHE_SYMBOL1662_tree;
    pANTLR3_BASE_TREE SLAVE_SYMBOL1663_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    MASTER_SYMBOL1660       = NULL;
    QUERY_SYMBOL1661       = NULL;
    CACHE_SYMBOL1662       = NULL;
    SLAVE_SYMBOL1663       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    MASTER_SYMBOL1660_tree   = NULL;
    QUERY_SYMBOL1661_tree   = NULL;
    CACHE_SYMBOL1662_tree   = NULL;
    SLAVE_SYMBOL1663_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1458:13: ( MASTER_SYMBOL | QUERY_SYMBOL CACHE_SYMBOL | SLAVE_SYMBOL )

            ANTLR3_UINT32 alt493;

            alt493=3;

            switch ( LA(1) )
            {
            case MASTER_SYMBOL:
            	{
            		alt493=1;
            	}
                break;
            case QUERY_SYMBOL:
            	{
            		alt493=2;
            	}
                break;
            case SLAVE_SYMBOL:
            	{
            		alt493=3;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 493;
                EXCEPTION->state        = 0;


                goto rulereset_optionEx;

            }

            switch (alt493)
            {
        	case 1:
        	    // MySQL.g:1459:2: MASTER_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_SYMBOL1660 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_SYMBOL, &FOLLOW_MASTER_SYMBOL_in_reset_option8123);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereset_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_SYMBOL1660_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_SYMBOL1660));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_SYMBOL1660_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1459:18: QUERY_SYMBOL CACHE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        QUERY_SYMBOL1661 = (pANTLR3_COMMON_TOKEN) MATCHT(QUERY_SYMBOL, &FOLLOW_QUERY_SYMBOL_in_reset_option8127);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereset_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        QUERY_SYMBOL1661_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, QUERY_SYMBOL1661));
        	        ADAPTOR->addChild(ADAPTOR, root_0, QUERY_SYMBOL1661_tree);
        	        }

        	        CACHE_SYMBOL1662 = (pANTLR3_COMMON_TOKEN) MATCHT(CACHE_SYMBOL, &FOLLOW_CACHE_SYMBOL_in_reset_option8129);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereset_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CACHE_SYMBOL1662_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CACHE_SYMBOL1662));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CACHE_SYMBOL1662_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1459:46: SLAVE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SLAVE_SYMBOL1663 = (pANTLR3_COMMON_TOKEN) MATCHT(SLAVE_SYMBOL, &FOLLOW_SLAVE_SYMBOL_in_reset_option8133);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereset_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SLAVE_SYMBOL1663_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SLAVE_SYMBOL1663));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SLAVE_SYMBOL1663_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulereset_optionEx; /* Prevent compiler warnings */
    rulereset_optionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end reset_option */

/**
 * $ANTLR start utility_statement
 * MySQL.g:1464:1: utility_statement : ( describe_command ( qualified_identifier ( text_or_identifier )? | ( EXTENDED_SYMBOL |{...}? => PARTITIONS_SYMBOL |{...}? => FORMAT_SYMBOL EQUAL_OPERATOR text_or_identifier )? explainable_statement ) | HELP_SYMBOL string_literal | USE_SYMBOL pure_identifier );
 */
static MySQLParser_utility_statement_return
utility_statement(pMySQLParser ctx)
{
    MySQLParser_utility_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    EXTENDED_SYMBOL1667;
    pANTLR3_COMMON_TOKEN    PARTITIONS_SYMBOL1668;
    pANTLR3_COMMON_TOKEN    FORMAT_SYMBOL1669;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1670;
    pANTLR3_COMMON_TOKEN    HELP_SYMBOL1673;
    pANTLR3_COMMON_TOKEN    USE_SYMBOL1675;
    MySQLParser_describe_command_return describe_command1664;
    #undef	RETURN_TYPE_describe_command1664
    #define	RETURN_TYPE_describe_command1664 MySQLParser_describe_command_return

    MySQLParser_qualified_identifier_return qualified_identifier1665;
    #undef	RETURN_TYPE_qualified_identifier1665
    #define	RETURN_TYPE_qualified_identifier1665 MySQLParser_qualified_identifier_return

    MySQLParser_text_or_identifier_return text_or_identifier1666;
    #undef	RETURN_TYPE_text_or_identifier1666
    #define	RETURN_TYPE_text_or_identifier1666 MySQLParser_text_or_identifier_return

    MySQLParser_text_or_identifier_return text_or_identifier1671;
    #undef	RETURN_TYPE_text_or_identifier1671
    #define	RETURN_TYPE_text_or_identifier1671 MySQLParser_text_or_identifier_return

    MySQLParser_explainable_statement_return explainable_statement1672;
    #undef	RETURN_TYPE_explainable_statement1672
    #define	RETURN_TYPE_explainable_statement1672 MySQLParser_explainable_statement_return

    MySQLParser_string_literal_return string_literal1674;
    #undef	RETURN_TYPE_string_literal1674
    #define	RETURN_TYPE_string_literal1674 MySQLParser_string_literal_return

    MySQLParser_pure_identifier_return pure_identifier1676;
    #undef	RETURN_TYPE_pure_identifier1676
    #define	RETURN_TYPE_pure_identifier1676 MySQLParser_pure_identifier_return

    pANTLR3_BASE_TREE EXTENDED_SYMBOL1667_tree;
    pANTLR3_BASE_TREE PARTITIONS_SYMBOL1668_tree;
    pANTLR3_BASE_TREE FORMAT_SYMBOL1669_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1670_tree;
    pANTLR3_BASE_TREE HELP_SYMBOL1673_tree;
    pANTLR3_BASE_TREE USE_SYMBOL1675_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    EXTENDED_SYMBOL1667       = NULL;
    PARTITIONS_SYMBOL1668       = NULL;
    FORMAT_SYMBOL1669       = NULL;
    EQUAL_OPERATOR1670       = NULL;
    HELP_SYMBOL1673       = NULL;
    USE_SYMBOL1675       = NULL;
    describe_command1664.tree = NULL;

    qualified_identifier1665.tree = NULL;

    text_or_identifier1666.tree = NULL;

    text_or_identifier1671.tree = NULL;

    explainable_statement1672.tree = NULL;

    string_literal1674.tree = NULL;

    pure_identifier1676.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    EXTENDED_SYMBOL1667_tree   = NULL;
    PARTITIONS_SYMBOL1668_tree   = NULL;
    FORMAT_SYMBOL1669_tree   = NULL;
    EQUAL_OPERATOR1670_tree   = NULL;
    HELP_SYMBOL1673_tree   = NULL;
    USE_SYMBOL1675_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1464:18: ( describe_command ( qualified_identifier ( text_or_identifier )? | ( EXTENDED_SYMBOL |{...}? => PARTITIONS_SYMBOL |{...}? => FORMAT_SYMBOL EQUAL_OPERATOR text_or_identifier )? explainable_statement ) | HELP_SYMBOL string_literal | USE_SYMBOL pure_identifier )

            ANTLR3_UINT32 alt497;

            alt497=3;

            switch ( LA(1) )
            {
            case DESCRIBE_SYMBOL:
            case DESC_SYMBOL:
            	{
            		alt497=1;
            	}
                break;
            case HELP_SYMBOL:
            	{
            		alt497=2;
            	}
                break;
            case USE_SYMBOL:
            	{
            		alt497=3;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 497;
                EXCEPTION->state        = 0;


                goto ruleutility_statementEx;

            }

            switch (alt497)
            {
        	case 1:
        	    // MySQL.g:1465:2: describe_command ( qualified_identifier ( text_or_identifier )? | ( EXTENDED_SYMBOL |{...}? => PARTITIONS_SYMBOL |{...}? => FORMAT_SYMBOL EQUAL_OPERATOR text_or_identifier )? explainable_statement )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_describe_command_in_utility_statement8144);
        	        describe_command1664=describe_command(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleutility_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, describe_command1664.tree);

        	        // MySQL.g:1466:3: ( qualified_identifier ( text_or_identifier )? | ( EXTENDED_SYMBOL |{...}? => PARTITIONS_SYMBOL |{...}? => FORMAT_SYMBOL EQUAL_OPERATOR text_or_identifier )? explainable_statement )
        	        {
        	            int alt496=2;
        	            {
        	                int LA496_0 = LA(1);
        	                if ( (LA496_0 == BACK_TICK_QUOTED_ID || LA496_0 == IDENTIFIER))
        	                {
        	                    alt496=1;
        	                }
        	                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA496_0 == DOUBLE_QUOTED_TEXT))
        	                {
        	                    alt496=1;
        	                }
        	                else if ( (LA496_0 == EXTENDED_SYMBOL))
        	                {
        	                    switch ( LA(2) )
        	                    {
        	                    case EOF:
        	                    case ACTION_SYMBOL:
        	                    case ADDDATE_SYMBOL:
        	                    case AFTER_SYMBOL:
        	                    case AGAINST_SYMBOL:
        	                    case AGGREGATE_SYMBOL:
        	                    case ALGORITHM_SYMBOL:
        	                    case ANALYZE_SYMBOL:
        	                    case ANY_SYMBOL:
        	                    case ASCII_SYMBOL:
        	                    case AT_SYMBOL:
        	                    case AUTHORS_SYMBOL:
        	                    case AUTOEXTEND_SIZE_SYMBOL:
        	                    case AUTO_INCREMENT_SYMBOL:
        	                    case AVG_ROW_LENGTH_SYMBOL:
        	                    case AVG_SYMBOL:
        	                    case BACKUP_SYMBOL:
        	                    case BACK_TICK_QUOTED_ID:
        	                    case BEGIN_SYMBOL:
        	                    case BINLOG_SYMBOL:
        	                    case BIT_SYMBOL:
        	                    case BLOCK_SYMBOL:
        	                    case BOOLEAN_SYMBOL:
        	                    case BOOL_SYMBOL:
        	                    case BTREE_SYMBOL:
        	                    case BYTE_SYMBOL:
        	                    case CACHE_SYMBOL:
        	                    case CASCADED_SYMBOL:
        	                    case CATALOG_NAME_SYMBOL:
        	                    case CHAIN_SYMBOL:
        	                    case CHANGED_SYMBOL:
        	                    case CHARSET_SYMBOL:
        	                    case CHECKSUM_SYMBOL:
        	                    case CIPHER_SYMBOL:
        	                    case CLASS_ORIGIN_SYMBOL:
        	                    case CLIENT_SYMBOL:
        	                    case CLOSE_SYMBOL:
        	                    case COALESCE_SYMBOL:
        	                    case CODE_SYMBOL:
        	                    case COLLATION_SYMBOL:
        	                    case COLUMNS_SYMBOL:
        	                    case COLUMN_FORMAT_SYMBOL:
        	                    case COLUMN_NAME_SYMBOL:
        	                    case COMMENT_SYMBOL:
        	                    case COMMITTED_SYMBOL:
        	                    case COMMIT_SYMBOL:
        	                    case COMPACT_SYMBOL:
        	                    case COMPLETION_SYMBOL:
        	                    case COMPRESSED_SYMBOL:
        	                    case CONCURRENT_SYMBOL:
        	                    case CONNECTION_SYMBOL:
        	                    case CONSISTENT_SYMBOL:
        	                    case CONSTRAINT_CATALOG_SYMBOL:
        	                    case CONSTRAINT_NAME_SYMBOL:
        	                    case CONSTRAINT_SCHEMA_SYMBOL:
        	                    case CONTAINS_SYMBOL:
        	                    case CONTEXT_SYMBOL:
        	                    case CONTRIBUTORS_SYMBOL:
        	                    case CPU_SYMBOL:
        	                    case CUBE_SYMBOL:
        	                    case CURRENT_SYMBOL:
        	                    case CURSOR_NAME_SYMBOL:
        	                    case DATAFILE_SYMBOL:
        	                    case DATA_SYMBOL:
        	                    case DATETIME_SYMBOL:
        	                    case DATE_SYMBOL:
        	                    case DAY_SYMBOL:
        	                    case DEALLOCATE_SYMBOL:
        	                    case DEFAULT_AUTH_SYMBOL:
        	                    case DEFINER_SYMBOL:
        	                    case DELAY_KEY_WRITE_SYMBOL:
        	                    case DES_KEY_FILE_SYMBOL:
        	                    case DIAGNOSTICS_SYMBOL:
        	                    case DIRECTORY_SYMBOL:
        	                    case DISABLE_SYMBOL:
        	                    case DISCARD_SYMBOL:
        	                    case DISK_SYMBOL:
        	                    case DOT_SYMBOL:
        	                    case DOUBLE_QUOTED_TEXT:
        	                    case DO_SYMBOL:
        	                    case DUMPFILE_SYMBOL:
        	                    case DUPLICATE_SYMBOL:
        	                    case DYNAMIC_SYMBOL:
        	                    case ENABLE_SYMBOL:
        	                    case ENDS_SYMBOL:
        	                    case END_SYMBOL:
        	                    case ENGINES_SYMBOL:
        	                    case ENGINE_SYMBOL:
        	                    case ENUM_SYMBOL:
        	                    case ERRORS_SYMBOL:
        	                    case ERROR_SYMBOL:
        	                    case ESCAPE_SYMBOL:
        	                    case EVENTS_SYMBOL:
        	                    case EVENT_SYMBOL:
        	                    case EVERY_SYMBOL:
        	                    case EXECUTE_SYMBOL:
        	                    case EXPANSION_SYMBOL:
        	                    case EXPORT_SYMBOL:
        	                    case EXTENDED_SYMBOL:
        	                    case EXTENT_SIZE_SYMBOL:
        	                    case FAST_SYMBOL:
        	                    case FAULTS_SYMBOL:
        	                    case FILE_SYMBOL:
        	                    case FIRST_SYMBOL:
        	                    case FIXED_SYMBOL:
        	                    case FLUSH_SYMBOL:
        	                    case FORMAT_SYMBOL:
        	                    case FOUND_SYMBOL:
        	                    case FULL_SYMBOL:
        	                    case FUNCTION_SYMBOL:
        	                    case GENERAL_SYMBOL:
        	                    case GEOMETRYCOLLECTION_SYMBOL:
        	                    case GEOMETRY_SYMBOL:
        	                    case GET_FORMAT_SYMBOL:
        	                    case GLOBAL_SYMBOL:
        	                    case GRANTS_SYMBOL:
        	                    case HANDLER_SYMBOL:
        	                    case HASH_SYMBOL:
        	                    case HELP_SYMBOL:
        	                    case HOSTS_SYMBOL:
        	                    case HOST_SYMBOL:
        	                    case HOUR_SYMBOL:
        	                    case IDENTIFIED_SYMBOL:
        	                    case IDENTIFIER:
        	                    case IGNORE_SERVER_IDS_SYMBOL:
        	                    case IMPORT_SYMBOL:
        	                    case INDEXES_SYMBOL:
        	                    case INITIAL_SIZE_SYMBOL:
        	                    case INNODB_SYMBOL:
        	                    case INSERT_METHOD_SYMBOL:
        	                    case INSTALL_SYMBOL:
        	                    case INVOKER_SYMBOL:
        	                    case IO_SYMBOL:
        	                    case IPC_SYMBOL:
        	                    case ISOLATION_SYMBOL:
        	                    case ISSUER_SYMBOL:
        	                    case KEY_BLOCK_SIZE_SYMBOL:
        	                    case LANGUAGE_SYMBOL:
        	                    case LAST_SYMBOL:
        	                    case LEAVES_SYMBOL:
        	                    case LESS_SYMBOL:
        	                    case LEVEL_SYMBOL:
        	                    case LINESTRING_SYMBOL:
        	                    case LIST_SYMBOL:
        	                    case LOCAL_SYMBOL:
        	                    case LOCKS_SYMBOL:
        	                    case LOGFILE_SYMBOL:
        	                    case LOGS_SYMBOL:
        	                    case MASTER_AUTO_POSITION_SYMBOL:
        	                    case MASTER_CONNECT_RETRY_SYMBOL:
        	                    case MASTER_DELAY_SYMBOL:
        	                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
        	                    case MASTER_HOST_SYMBOL:
        	                    case MASTER_LOG_FILE_SYMBOL:
        	                    case MASTER_LOG_POS_SYMBOL:
        	                    case MASTER_PASSWORD_SYMBOL:
        	                    case MASTER_PORT_SYMBOL:
        	                    case MASTER_RETRY_COUNT_SYMBOL:
        	                    case MASTER_SERVER_ID_SYMBOL:
        	                    case MASTER_SSL_CAPATH_SYMBOL:
        	                    case MASTER_SSL_CA_SYMBOL:
        	                    case MASTER_SSL_CERT_SYMBOL:
        	                    case MASTER_SSL_CIPHER_SYMBOL:
        	                    case MASTER_SSL_CRLPATH_SYMBOL:
        	                    case MASTER_SSL_CRL_SYMBOL:
        	                    case MASTER_SSL_KEY_SYMBOL:
        	                    case MASTER_SSL_SYMBOL:
        	                    case MASTER_SYMBOL:
        	                    case MASTER_USER_SYMBOL:
        	                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
        	                    case MAX_QUERIES_PER_HOUR_SYMBOL:
        	                    case MAX_ROWS_SYMBOL:
        	                    case MAX_SIZE_SYMBOL:
        	                    case MAX_UPDATES_PER_HOUR_SYMBOL:
        	                    case MAX_USER_CONNECTIONS_SYMBOL:
        	                    case MEDIUM_SYMBOL:
        	                    case MEMORY_SYMBOL:
        	                    case MERGE_SYMBOL:
        	                    case MESSAGE_TEXT_SYMBOL:
        	                    case MICROSECOND_SYMBOL:
        	                    case MIGRATE_SYMBOL:
        	                    case MINUTE_SYMBOL:
        	                    case MIN_ROWS_SYMBOL:
        	                    case MODE_SYMBOL:
        	                    case MODIFY_SYMBOL:
        	                    case MONTH_SYMBOL:
        	                    case MULTILINESTRING_SYMBOL:
        	                    case MULTIPOINT_SYMBOL:
        	                    case MULTIPOLYGON_SYMBOL:
        	                    case MUTEX_SYMBOL:
        	                    case MYSQL_ERRNO_SYMBOL:
        	                    case NAMES_SYMBOL:
        	                    case NAME_SYMBOL:
        	                    case NATIONAL_SYMBOL:
        	                    case NCHAR_SYMBOL:
        	                    case NCHAR_TEXT:
        	                    case NDBCLUSTER_SYMBOL:
        	                    case NEW_SYMBOL:
        	                    case NEXT_SYMBOL:
        	                    case NODEGROUP_SYMBOL:
        	                    case NONE_SYMBOL:
        	                    case NO_SYMBOL:
        	                    case NO_WAIT_SYMBOL:
        	                    case NUMBER_SYMBOL:
        	                    case NVARCHAR_SYMBOL:
        	                    case OFFSET_SYMBOL:
        	                    case OLD_PASSWORD_SYMBOL:
        	                    case ONE_SHOT_SYMBOL:
        	                    case ONE_SYMBOL:
        	                    case OPEN_SYMBOL:
        	                    case OPTIONS_SYMBOL:
        	                    case OWNER_SYMBOL:
        	                    case PACK_KEYS_SYMBOL:
        	                    case PAGE_SYMBOL:
        	                    case PARSER_SYMBOL:
        	                    case PARTIAL_SYMBOL:
        	                    case PARTITIONING_SYMBOL:
        	                    case PARTITIONS_SYMBOL:
        	                    case PARTITION_SYMBOL:
        	                    case PASSWORD_SYMBOL:
        	                    case PHASE_SYMBOL:
        	                    case PLUGINS_SYMBOL:
        	                    case PLUGIN_DIR_SYMBOL:
        	                    case PLUGIN_SYMBOL:
        	                    case POINT_SYMBOL:
        	                    case POLYGON_SYMBOL:
        	                    case PORT_SYMBOL:
        	                    case PREPARE_SYMBOL:
        	                    case PRESERVE_SYMBOL:
        	                    case PREV_SYMBOL:
        	                    case PRIVILEGES_SYMBOL:
        	                    case PROCESSLIST_SYMBOL:
        	                    case PROCESS_SYMBOL:
        	                    case PROFILES_SYMBOL:
        	                    case PROFILE_SYMBOL:
        	                    case PROXY_SYMBOL:
        	                    case QUARTER_SYMBOL:
        	                    case QUERY_SYMBOL:
        	                    case QUICK_SYMBOL:
        	                    case READ_ONLY_SYMBOL:
        	                    case REBUILD_SYMBOL:
        	                    case RECOVER_SYMBOL:
        	                    case REDOFILE_SYMBOL:
        	                    case REDO_BUFFER_SIZE_SYMBOL:
        	                    case REDUNDANT_SYMBOL:
        	                    case RELAYLOG_SYMBOL:
        	                    case RELAY_LOG_FILE_SYMBOL:
        	                    case RELAY_LOG_POS_SYMBOL:
        	                    case RELAY_SYMBOL:
        	                    case RELAY_THREAD_SYMBOL:
        	                    case RELOAD_SYMBOL:
        	                    case REMOVE_SYMBOL:
        	                    case REORGANIZE_SYMBOL:
        	                    case REPAIR_SYMBOL:
        	                    case REPEATABLE_SYMBOL:
        	                    case REPLICATION_SYMBOL:
        	                    case RESET_SYMBOL:
        	                    case RESTORE_SYMBOL:
        	                    case RESUME_SYMBOL:
        	                    case RETURNED_SQLSTATE_SYMBOL:
        	                    case RETURNS_SYMBOL:
        	                    case REVERSE_SYMBOL:
        	                    case ROLLBACK_SYMBOL:
        	                    case ROLLUP_SYMBOL:
        	                    case ROUTINE_SYMBOL:
        	                    case ROWS_SYMBOL:
        	                    case ROW_COUNT_SYMBOL:
        	                    case ROW_FORMAT_SYMBOL:
        	                    case ROW_SYMBOL:
        	                    case RTREE_SYMBOL:
        	                    case SAVEPOINT_SYMBOL:
        	                    case SCHEDULE_SYMBOL:
        	                    case SCHEMA_NAME_SYMBOL:
        	                    case SECOND_SYMBOL:
        	                    case SECURITY_SYMBOL:
        	                    case SEMICOLON_SYMBOL:
        	                    case SERIALIZABLE_SYMBOL:
        	                    case SERIAL_SYMBOL:
        	                    case SERVER_SYMBOL:
        	                    case SESSION_SYMBOL:
        	                    case SHARE_SYMBOL:
        	                    case SHUTDOWN_SYMBOL:
        	                    case SIGNED_SYMBOL:
        	                    case SIMPLE_SYMBOL:
        	                    case SINGLE_QUOTED_TEXT:
        	                    case SLAVE_SYMBOL:
        	                    case SLOW_SYMBOL:
        	                    case SNAPSHOT_SYMBOL:
        	                    case SOCKET_SYMBOL:
        	                    case SONAME_SYMBOL:
        	                    case SOUNDS_SYMBOL:
        	                    case SOURCE_SYMBOL:
        	                    case SQL_AFTER_GTIDS_SYMBOL:
        	                    case SQL_AFTER_MTS_GAPS_SYMBOL:
        	                    case SQL_BEFORE_GTIDS_SYMBOL:
        	                    case SQL_BUFFER_RESULT_SYMBOL:
        	                    case SQL_CACHE_SYMBOL:
        	                    case SQL_NO_CACHE_SYMBOL:
        	                    case SQL_THREAD_SYMBOL:
        	                    case STARTS_SYMBOL:
        	                    case START_SYMBOL:
        	                    case STATS_AUTO_RECALC_SYMBOL:
        	                    case STATS_PERSISTENT_SYMBOL:
        	                    case STATS_SAMPLE_PAGES_SYMBOL:
        	                    case STATUS_SYMBOL:
        	                    case STOP_SYMBOL:
        	                    case STORAGE_SYMBOL:
        	                    case STRING_SYMBOL:
        	                    case SUBCLASS_ORIGIN_SYMBOL:
        	                    case SUBDATE_SYMBOL:
        	                    case SUBJECT_SYMBOL:
        	                    case SUBPARTITIONS_SYMBOL:
        	                    case SUBPARTITION_SYMBOL:
        	                    case SUPER_SYMBOL:
        	                    case SUSPEND_SYMBOL:
        	                    case SWAPS_SYMBOL:
        	                    case SWITCHES_SYMBOL:
        	                    case TABLESPACE_SYMBOL:
        	                    case TABLES_SYMBOL:
        	                    case TABLE_CHECKSUM_SYMBOL:
        	                    case TABLE_NAME_SYMBOL:
        	                    case TEMPORARY_SYMBOL:
        	                    case TEMPTABLE_SYMBOL:
        	                    case TEXT_SYMBOL:
        	                    case THAN_SYMBOL:
        	                    case TIMESTAMP_ADD_SYMBOL:
        	                    case TIMESTAMP_DIFF_SYMBOL:
        	                    case TIMESTAMP_SYMBOL:
        	                    case TIME_SYMBOL:
        	                    case TRANSACTION_SYMBOL:
        	                    case TRIGGERS_SYMBOL:
        	                    case TRUNCATE_SYMBOL:
        	                    case TYPES_SYMBOL:
        	                    case TYPE_SYMBOL:
        	                    case UDF_RETURNS_SYMBOL:
        	                    case UNCOMMITTED_SYMBOL:
        	                    case UNDEFINED_SYMBOL:
        	                    case UNDERSCORE_CHARSET:
        	                    case UNDOFILE_SYMBOL:
        	                    case UNDO_BUFFER_SIZE_SYMBOL:
        	                    case UNICODE_SYMBOL:
        	                    case UNINSTALL_SYMBOL:
        	                    case UNKNOWN_SYMBOL:
        	                    case UNTIL_SYMBOL:
        	                    case UPGRADE_SYMBOL:
        	                    case USER_RESOURCES_SYMBOL:
        	                    case USER_SYMBOL:
        	                    case USE_FRM_SYMBOL:
        	                    case VALUE_SYMBOL:
        	                    case VARIABLES_SYMBOL:
        	                    case VIEW_SYMBOL:
        	                    case WAIT_SYMBOL:
        	                    case WARNINGS_SYMBOL:
        	                    case WEEK_SYMBOL:
        	                    case WEIGHT_STRING_SYMBOL:
        	                    case WORK_SYMBOL:
        	                    case WRAPPER_SYMBOL:
        	                    case X509_SYMBOL:
        	                    case XA_SYMBOL:
        	                    case XML_SYMBOL:
        	                    case YEAR_SYMBOL:
        	                    	{
        	                    		alt496=1;
        	                    	}
        	                        break;
        	                    case DELETE_SYMBOL:
        	                    case INSERT_SYMBOL:
        	                    case OPEN_PAR_SYMBOL:
        	                    case REPLACE_SYMBOL:
        	                    case SELECT_SYMBOL:
        	                    case UPDATE_SYMBOL:
        	                    	{
        	                    		alt496=2;
        	                    	}
        	                        break;

        	                    default:
        	                        if (BACKTRACKING>0)
        	                        {
        	                            FAILEDFLAG = ANTLR3_TRUE;
        	                            return retval;
        	                        }

        	                        CONSTRUCTEX();
        	                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                        EXCEPTION->message      = (void *)"";
        	                        EXCEPTION->decisionNum  = 496;
        	                        EXCEPTION->state        = 4;


        	                        goto ruleutility_statementEx;

        	                    }

        	                }
        	                else if ( (LA496_0 == FORMAT_SYMBOL))
        	                {
        	                    {
        	                        int LA496_5 = LA(2);
        	                        if ( ((SERVER_VERSION >= 50605)) && (LA496_5 == EQUAL_OPERATOR))
        	                        {
        	                            alt496=2;
        	                        }
        	                        else if ( (LA496_5 == EOF || ((LA496_5 >= ACTION_SYMBOL) && (LA496_5 <= ADDDATE_SYMBOL)) || ((LA496_5 >= AFTER_SYMBOL) && (LA496_5 <= ALGORITHM_SYMBOL)) || LA496_5 == ANALYZE_SYMBOL || ((LA496_5 >= ANY_SYMBOL) && (LA496_5 <= ASCII_SYMBOL)) || ((LA496_5 >= AT_SYMBOL) && (LA496_5 <= BACKUP_SYMBOL)) || LA496_5 == BACK_TICK_QUOTED_ID || LA496_5 == BEGIN_SYMBOL || LA496_5 == BINLOG_SYMBOL || LA496_5 == BIT_SYMBOL || ((LA496_5 >= BLOCK_SYMBOL) && (LA496_5 <= BOOL_SYMBOL)) || ((LA496_5 >= BTREE_SYMBOL) && (LA496_5 <= BYTE_SYMBOL)) || LA496_5 == CACHE_SYMBOL || LA496_5 == CASCADED_SYMBOL || ((LA496_5 >= CATALOG_NAME_SYMBOL) && (LA496_5 <= CHANGED_SYMBOL)) || LA496_5 == CHARSET_SYMBOL || LA496_5 == CHECKSUM_SYMBOL || ((LA496_5 >= CIPHER_SYMBOL) && (LA496_5 <= CLIENT_SYMBOL)) || ((LA496_5 >= CLOSE_SYMBOL) && (LA496_5 <= CODE_SYMBOL)) || LA496_5 == COLLATION_SYMBOL || ((LA496_5 >= COLUMNS_SYMBOL) && (LA496_5 <= COLUMN_NAME_SYMBOL)) || ((LA496_5 >= COMMENT_SYMBOL) && (LA496_5 <= COMPRESSED_SYMBOL)) || LA496_5 == CONCURRENT_SYMBOL || ((LA496_5 >= CONNECTION_SYMBOL) && (LA496_5 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA496_5 >= CONTAINS_SYMBOL) && (LA496_5 <= CONTEXT_SYMBOL)) || LA496_5 == CONTRIBUTORS_SYMBOL || LA496_5 == CPU_SYMBOL || LA496_5 == CUBE_SYMBOL || LA496_5 == CURRENT_SYMBOL || LA496_5 == CURSOR_NAME_SYMBOL || ((LA496_5 >= DATAFILE_SYMBOL) && (LA496_5 <= DATETIME_SYMBOL)) || LA496_5 == DATE_SYMBOL || ((LA496_5 >= DAY_SYMBOL) && (LA496_5 <= DEALLOCATE_SYMBOL)) || LA496_5 == DEFAULT_AUTH_SYMBOL || LA496_5 == DEFINER_SYMBOL || LA496_5 == DELAY_KEY_WRITE_SYMBOL || LA496_5 == DES_KEY_FILE_SYMBOL || LA496_5 == DIAGNOSTICS_SYMBOL || ((LA496_5 >= DIRECTORY_SYMBOL) && (LA496_5 <= DISK_SYMBOL)) || LA496_5 == DOT_SYMBOL || LA496_5 == DOUBLE_QUOTED_TEXT || LA496_5 == DO_SYMBOL || ((LA496_5 >= DUMPFILE_SYMBOL) && (LA496_5 <= DYNAMIC_SYMBOL)) || LA496_5 == ENABLE_SYMBOL || LA496_5 == ENDS_SYMBOL || ((LA496_5 >= END_SYMBOL) && (LA496_5 <= ENUM_SYMBOL)) || ((LA496_5 >= ERRORS_SYMBOL) && (LA496_5 <= ERROR_SYMBOL)) || ((LA496_5 >= ESCAPE_SYMBOL) && (LA496_5 <= EVERY_SYMBOL)) || LA496_5 == EXECUTE_SYMBOL || LA496_5 == EXPANSION_SYMBOL || LA496_5 == EXPORT_SYMBOL || ((LA496_5 >= EXTENDED_SYMBOL) && (LA496_5 <= EXTENT_SIZE_SYMBOL)) || ((LA496_5 >= FAST_SYMBOL) && (LA496_5 <= FAULTS_SYMBOL)) || ((LA496_5 >= FILE_SYMBOL) && (LA496_5 <= FIXED_SYMBOL)) || LA496_5 == FLUSH_SYMBOL || LA496_5 == FORMAT_SYMBOL || LA496_5 == FOUND_SYMBOL || LA496_5 == FULL_SYMBOL || ((LA496_5 >= FUNCTION_SYMBOL) && (LA496_5 <= GET_FORMAT_SYMBOL)) || ((LA496_5 >= GLOBAL_SYMBOL) && (LA496_5 <= GRANTS_SYMBOL)) || ((LA496_5 >= HANDLER_SYMBOL) && (LA496_5 <= HASH_SYMBOL)) || LA496_5 == HELP_SYMBOL || ((LA496_5 >= HOSTS_SYMBOL) && (LA496_5 <= HOST_SYMBOL)) || ((LA496_5 >= HOUR_SYMBOL) && (LA496_5 <= IDENTIFIER)) || LA496_5 == IGNORE_SERVER_IDS_SYMBOL || ((LA496_5 >= IMPORT_SYMBOL) && (LA496_5 <= INDEXES_SYMBOL)) || LA496_5 == INITIAL_SIZE_SYMBOL || LA496_5 == INNODB_SYMBOL || LA496_5 == INSERT_METHOD_SYMBOL || LA496_5 == INSTALL_SYMBOL || LA496_5 == INVOKER_SYMBOL || LA496_5 == IO_SYMBOL || ((LA496_5 >= IPC_SYMBOL) && (LA496_5 <= ISSUER_SYMBOL)) || LA496_5 == KEY_BLOCK_SIZE_SYMBOL || ((LA496_5 >= LANGUAGE_SYMBOL) && (LA496_5 <= LAST_SYMBOL)) || LA496_5 == LEAVES_SYMBOL || LA496_5 == LESS_SYMBOL || LA496_5 == LEVEL_SYMBOL || LA496_5 == LINESTRING_SYMBOL || LA496_5 == LIST_SYMBOL || LA496_5 == LOCAL_SYMBOL || LA496_5 == LOCKS_SYMBOL || LA496_5 == LOGFILE_SYMBOL || LA496_5 == LOGS_SYMBOL || LA496_5 == MASTER_AUTO_POSITION_SYMBOL || ((LA496_5 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA496_5 <= MASTER_SSL_SYMBOL)) || ((LA496_5 >= MASTER_SYMBOL) && (LA496_5 <= MASTER_USER_SYMBOL)) || ((LA496_5 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA496_5 <= MAX_SIZE_SYMBOL)) || ((LA496_5 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA496_5 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA496_5 >= MEDIUM_SYMBOL) && (LA496_5 <= MICROSECOND_SYMBOL)) || LA496_5 == MIGRATE_SYMBOL || ((LA496_5 >= MINUTE_SYMBOL) && (LA496_5 <= MIN_ROWS_SYMBOL)) || LA496_5 == MODE_SYMBOL || LA496_5 == MODIFY_SYMBOL || ((LA496_5 >= MONTH_SYMBOL) && (LA496_5 <= MULTILINESTRING_SYMBOL)) || ((LA496_5 >= MULTIPOINT_SYMBOL) && (LA496_5 <= MULTIPOLYGON_SYMBOL)) || ((LA496_5 >= MUTEX_SYMBOL) && (LA496_5 <= NATIONAL_SYMBOL)) || ((LA496_5 >= NCHAR_SYMBOL) && (LA496_5 <= NDBCLUSTER_SYMBOL)) || ((LA496_5 >= NEW_SYMBOL) && (LA496_5 <= NONE_SYMBOL)) || ((LA496_5 >= NO_SYMBOL) && (LA496_5 <= NO_WAIT_SYMBOL)) || LA496_5 == NUMBER_SYMBOL || LA496_5 == NVARCHAR_SYMBOL || ((LA496_5 >= OFFSET_SYMBOL) && (LA496_5 <= ONE_SYMBOL)) || LA496_5 == OPEN_SYMBOL || LA496_5 == OPTIONS_SYMBOL || ((LA496_5 >= OWNER_SYMBOL) && (LA496_5 <= PAGE_SYMBOL)) || ((LA496_5 >= PARSER_SYMBOL) && (LA496_5 <= PARTITION_SYMBOL)) || ((LA496_5 >= PASSWORD_SYMBOL) && (LA496_5 <= PLUGIN_SYMBOL)) || ((LA496_5 >= POINT_SYMBOL) && (LA496_5 <= PORT_SYMBOL)) || ((LA496_5 >= PREPARE_SYMBOL) && (LA496_5 <= PREV_SYMBOL)) || LA496_5 == PRIVILEGES_SYMBOL || ((LA496_5 >= PROCESSLIST_SYMBOL) && (LA496_5 <= PROXY_SYMBOL)) || ((LA496_5 >= QUARTER_SYMBOL) && (LA496_5 <= QUICK_SYMBOL)) || LA496_5 == READ_ONLY_SYMBOL || ((LA496_5 >= REBUILD_SYMBOL) && (LA496_5 <= REDUNDANT_SYMBOL)) || ((LA496_5 >= RELAYLOG_SYMBOL) && (LA496_5 <= RELAY_THREAD_SYMBOL)) || ((LA496_5 >= RELOAD_SYMBOL) && (LA496_5 <= REMOVE_SYMBOL)) || ((LA496_5 >= REORGANIZE_SYMBOL) && (LA496_5 <= REPEATABLE_SYMBOL)) || LA496_5 == REPLICATION_SYMBOL || LA496_5 == RESET_SYMBOL || LA496_5 == RESTORE_SYMBOL || ((LA496_5 >= RESUME_SYMBOL) && (LA496_5 <= RETURNS_SYMBOL)) || LA496_5 == REVERSE_SYMBOL || ((LA496_5 >= ROLLBACK_SYMBOL) && (LA496_5 <= SCHEDULE_SYMBOL)) || LA496_5 == SCHEMA_NAME_SYMBOL || ((LA496_5 >= SECOND_SYMBOL) && (LA496_5 <= SECURITY_SYMBOL)) || LA496_5 == SEMICOLON_SYMBOL || ((LA496_5 >= SERIALIZABLE_SYMBOL) && (LA496_5 <= SERIAL_SYMBOL)) || ((LA496_5 >= SERVER_SYMBOL) && (LA496_5 <= SESSION_SYMBOL)) || LA496_5 == SHARE_SYMBOL || LA496_5 == SHUTDOWN_SYMBOL || ((LA496_5 >= SIGNED_SYMBOL) && (LA496_5 <= SIMPLE_SYMBOL)) || ((LA496_5 >= SINGLE_QUOTED_TEXT) && (LA496_5 <= SLOW_SYMBOL)) || ((LA496_5 >= SNAPSHOT_SYMBOL) && (LA496_5 <= SOURCE_SYMBOL)) || ((LA496_5 >= SQL_AFTER_GTIDS_SYMBOL) && (LA496_5 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA496_5 >= SQL_BUFFER_RESULT_SYMBOL) && (LA496_5 <= SQL_CACHE_SYMBOL)) || LA496_5 == SQL_NO_CACHE_SYMBOL || LA496_5 == SQL_THREAD_SYMBOL || ((LA496_5 >= STARTS_SYMBOL) && (LA496_5 <= STATUS_SYMBOL)) || ((LA496_5 >= STOP_SYMBOL) && (LA496_5 <= STORAGE_SYMBOL)) || ((LA496_5 >= STRING_SYMBOL) && (LA496_5 <= SUBPARTITION_SYMBOL)) || ((LA496_5 >= SUPER_SYMBOL) && (LA496_5 <= SWITCHES_SYMBOL)) || ((LA496_5 >= TABLESPACE_SYMBOL) && (LA496_5 <= TABLE_NAME_SYMBOL)) || ((LA496_5 >= TEMPORARY_SYMBOL) && (LA496_5 <= TEMPTABLE_SYMBOL)) || ((LA496_5 >= TEXT_SYMBOL) && (LA496_5 <= THAN_SYMBOL)) || ((LA496_5 >= TIMESTAMP_ADD_SYMBOL) && (LA496_5 <= TIME_SYMBOL)) || ((LA496_5 >= TRANSACTION_SYMBOL) && (LA496_5 <= TRIGGERS_SYMBOL)) || ((LA496_5 >= TRUNCATE_SYMBOL) && (LA496_5 <= UDF_RETURNS_SYMBOL)) || ((LA496_5 >= UNCOMMITTED_SYMBOL) && (LA496_5 <= UNDEFINED_SYMBOL)) || ((LA496_5 >= UNDERSCORE_CHARSET) && (LA496_5 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA496_5 >= UNICODE_SYMBOL) && (LA496_5 <= UNINSTALL_SYMBOL)) || LA496_5 == UNKNOWN_SYMBOL || LA496_5 == UNTIL_SYMBOL || LA496_5 == UPGRADE_SYMBOL || ((LA496_5 >= USER_RESOURCES_SYMBOL) && (LA496_5 <= USE_FRM_SYMBOL)) || LA496_5 == VALUE_SYMBOL || LA496_5 == VARIABLES_SYMBOL || ((LA496_5 >= VIEW_SYMBOL) && (LA496_5 <= WEIGHT_STRING_SYMBOL)) || ((LA496_5 >= WORK_SYMBOL) && (LA496_5 <= WRAPPER_SYMBOL)) || LA496_5 == X509_SYMBOL || ((LA496_5 >= XA_SYMBOL) && (LA496_5 <= XML_SYMBOL)) || LA496_5 == YEAR_SYMBOL))
        	                        {
        	                            alt496=1;
        	                        }
        	                        else
        	                        {
        	                            if (BACKTRACKING>0)
        	                            {
        	                                FAILEDFLAG = ANTLR3_TRUE;
        	                                return retval;
        	                            }


        	                            CONSTRUCTEX();
        	                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                            EXCEPTION->message      = (void *)"";
        	                            EXCEPTION->decisionNum  = 496;
        	                            EXCEPTION->state        = 5;


        	                            goto ruleutility_statementEx;

        	                        }
        	                    }
        	                }
        	                else if ( (LA496_0 == PARTITIONS_SYMBOL))
        	                {
        	                    {
        	                        int LA496_6 = LA(2);
        	                        if ( (LA496_6 == EOF || ((LA496_6 >= ACTION_SYMBOL) && (LA496_6 <= ADDDATE_SYMBOL)) || ((LA496_6 >= AFTER_SYMBOL) && (LA496_6 <= ALGORITHM_SYMBOL)) || LA496_6 == ANALYZE_SYMBOL || ((LA496_6 >= ANY_SYMBOL) && (LA496_6 <= ASCII_SYMBOL)) || ((LA496_6 >= AT_SYMBOL) && (LA496_6 <= BACKUP_SYMBOL)) || LA496_6 == BACK_TICK_QUOTED_ID || LA496_6 == BEGIN_SYMBOL || LA496_6 == BINLOG_SYMBOL || LA496_6 == BIT_SYMBOL || ((LA496_6 >= BLOCK_SYMBOL) && (LA496_6 <= BOOL_SYMBOL)) || ((LA496_6 >= BTREE_SYMBOL) && (LA496_6 <= BYTE_SYMBOL)) || LA496_6 == CACHE_SYMBOL || LA496_6 == CASCADED_SYMBOL || ((LA496_6 >= CATALOG_NAME_SYMBOL) && (LA496_6 <= CHANGED_SYMBOL)) || LA496_6 == CHARSET_SYMBOL || LA496_6 == CHECKSUM_SYMBOL || ((LA496_6 >= CIPHER_SYMBOL) && (LA496_6 <= CLIENT_SYMBOL)) || ((LA496_6 >= CLOSE_SYMBOL) && (LA496_6 <= CODE_SYMBOL)) || LA496_6 == COLLATION_SYMBOL || ((LA496_6 >= COLUMNS_SYMBOL) && (LA496_6 <= COLUMN_NAME_SYMBOL)) || ((LA496_6 >= COMMENT_SYMBOL) && (LA496_6 <= COMPRESSED_SYMBOL)) || LA496_6 == CONCURRENT_SYMBOL || ((LA496_6 >= CONNECTION_SYMBOL) && (LA496_6 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA496_6 >= CONTAINS_SYMBOL) && (LA496_6 <= CONTEXT_SYMBOL)) || LA496_6 == CONTRIBUTORS_SYMBOL || LA496_6 == CPU_SYMBOL || LA496_6 == CUBE_SYMBOL || LA496_6 == CURRENT_SYMBOL || LA496_6 == CURSOR_NAME_SYMBOL || ((LA496_6 >= DATAFILE_SYMBOL) && (LA496_6 <= DATETIME_SYMBOL)) || LA496_6 == DATE_SYMBOL || ((LA496_6 >= DAY_SYMBOL) && (LA496_6 <= DEALLOCATE_SYMBOL)) || LA496_6 == DEFAULT_AUTH_SYMBOL || LA496_6 == DEFINER_SYMBOL || LA496_6 == DELAY_KEY_WRITE_SYMBOL || LA496_6 == DES_KEY_FILE_SYMBOL || LA496_6 == DIAGNOSTICS_SYMBOL || ((LA496_6 >= DIRECTORY_SYMBOL) && (LA496_6 <= DISK_SYMBOL)) || LA496_6 == DOT_SYMBOL || LA496_6 == DOUBLE_QUOTED_TEXT || LA496_6 == DO_SYMBOL || ((LA496_6 >= DUMPFILE_SYMBOL) && (LA496_6 <= DYNAMIC_SYMBOL)) || LA496_6 == ENABLE_SYMBOL || LA496_6 == ENDS_SYMBOL || ((LA496_6 >= END_SYMBOL) && (LA496_6 <= ENUM_SYMBOL)) || ((LA496_6 >= ERRORS_SYMBOL) && (LA496_6 <= ERROR_SYMBOL)) || ((LA496_6 >= ESCAPE_SYMBOL) && (LA496_6 <= EVERY_SYMBOL)) || LA496_6 == EXECUTE_SYMBOL || LA496_6 == EXPANSION_SYMBOL || LA496_6 == EXPORT_SYMBOL || ((LA496_6 >= EXTENDED_SYMBOL) && (LA496_6 <= EXTENT_SIZE_SYMBOL)) || ((LA496_6 >= FAST_SYMBOL) && (LA496_6 <= FAULTS_SYMBOL)) || ((LA496_6 >= FILE_SYMBOL) && (LA496_6 <= FIXED_SYMBOL)) || LA496_6 == FLUSH_SYMBOL || LA496_6 == FORMAT_SYMBOL || LA496_6 == FOUND_SYMBOL || LA496_6 == FULL_SYMBOL || ((LA496_6 >= FUNCTION_SYMBOL) && (LA496_6 <= GET_FORMAT_SYMBOL)) || ((LA496_6 >= GLOBAL_SYMBOL) && (LA496_6 <= GRANTS_SYMBOL)) || ((LA496_6 >= HANDLER_SYMBOL) && (LA496_6 <= HASH_SYMBOL)) || LA496_6 == HELP_SYMBOL || ((LA496_6 >= HOSTS_SYMBOL) && (LA496_6 <= HOST_SYMBOL)) || ((LA496_6 >= HOUR_SYMBOL) && (LA496_6 <= IDENTIFIER)) || LA496_6 == IGNORE_SERVER_IDS_SYMBOL || ((LA496_6 >= IMPORT_SYMBOL) && (LA496_6 <= INDEXES_SYMBOL)) || LA496_6 == INITIAL_SIZE_SYMBOL || LA496_6 == INNODB_SYMBOL || LA496_6 == INSERT_METHOD_SYMBOL || LA496_6 == INSTALL_SYMBOL || LA496_6 == INVOKER_SYMBOL || LA496_6 == IO_SYMBOL || ((LA496_6 >= IPC_SYMBOL) && (LA496_6 <= ISSUER_SYMBOL)) || LA496_6 == KEY_BLOCK_SIZE_SYMBOL || ((LA496_6 >= LANGUAGE_SYMBOL) && (LA496_6 <= LAST_SYMBOL)) || LA496_6 == LEAVES_SYMBOL || LA496_6 == LESS_SYMBOL || LA496_6 == LEVEL_SYMBOL || LA496_6 == LINESTRING_SYMBOL || LA496_6 == LIST_SYMBOL || LA496_6 == LOCAL_SYMBOL || LA496_6 == LOCKS_SYMBOL || LA496_6 == LOGFILE_SYMBOL || LA496_6 == LOGS_SYMBOL || LA496_6 == MASTER_AUTO_POSITION_SYMBOL || ((LA496_6 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA496_6 <= MASTER_SSL_SYMBOL)) || ((LA496_6 >= MASTER_SYMBOL) && (LA496_6 <= MASTER_USER_SYMBOL)) || ((LA496_6 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA496_6 <= MAX_SIZE_SYMBOL)) || ((LA496_6 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA496_6 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA496_6 >= MEDIUM_SYMBOL) && (LA496_6 <= MICROSECOND_SYMBOL)) || LA496_6 == MIGRATE_SYMBOL || ((LA496_6 >= MINUTE_SYMBOL) && (LA496_6 <= MIN_ROWS_SYMBOL)) || LA496_6 == MODE_SYMBOL || LA496_6 == MODIFY_SYMBOL || ((LA496_6 >= MONTH_SYMBOL) && (LA496_6 <= MULTILINESTRING_SYMBOL)) || ((LA496_6 >= MULTIPOINT_SYMBOL) && (LA496_6 <= MULTIPOLYGON_SYMBOL)) || ((LA496_6 >= MUTEX_SYMBOL) && (LA496_6 <= NATIONAL_SYMBOL)) || ((LA496_6 >= NCHAR_SYMBOL) && (LA496_6 <= NDBCLUSTER_SYMBOL)) || ((LA496_6 >= NEW_SYMBOL) && (LA496_6 <= NONE_SYMBOL)) || ((LA496_6 >= NO_SYMBOL) && (LA496_6 <= NO_WAIT_SYMBOL)) || LA496_6 == NUMBER_SYMBOL || LA496_6 == NVARCHAR_SYMBOL || ((LA496_6 >= OFFSET_SYMBOL) && (LA496_6 <= ONE_SYMBOL)) || LA496_6 == OPEN_SYMBOL || LA496_6 == OPTIONS_SYMBOL || ((LA496_6 >= OWNER_SYMBOL) && (LA496_6 <= PAGE_SYMBOL)) || ((LA496_6 >= PARSER_SYMBOL) && (LA496_6 <= PARTITION_SYMBOL)) || ((LA496_6 >= PASSWORD_SYMBOL) && (LA496_6 <= PLUGIN_SYMBOL)) || ((LA496_6 >= POINT_SYMBOL) && (LA496_6 <= PORT_SYMBOL)) || ((LA496_6 >= PREPARE_SYMBOL) && (LA496_6 <= PREV_SYMBOL)) || LA496_6 == PRIVILEGES_SYMBOL || ((LA496_6 >= PROCESSLIST_SYMBOL) && (LA496_6 <= PROXY_SYMBOL)) || ((LA496_6 >= QUARTER_SYMBOL) && (LA496_6 <= QUICK_SYMBOL)) || LA496_6 == READ_ONLY_SYMBOL || ((LA496_6 >= REBUILD_SYMBOL) && (LA496_6 <= REDUNDANT_SYMBOL)) || ((LA496_6 >= RELAYLOG_SYMBOL) && (LA496_6 <= RELAY_THREAD_SYMBOL)) || ((LA496_6 >= RELOAD_SYMBOL) && (LA496_6 <= REMOVE_SYMBOL)) || ((LA496_6 >= REORGANIZE_SYMBOL) && (LA496_6 <= REPEATABLE_SYMBOL)) || LA496_6 == REPLICATION_SYMBOL || LA496_6 == RESET_SYMBOL || LA496_6 == RESTORE_SYMBOL || ((LA496_6 >= RESUME_SYMBOL) && (LA496_6 <= RETURNS_SYMBOL)) || LA496_6 == REVERSE_SYMBOL || ((LA496_6 >= ROLLBACK_SYMBOL) && (LA496_6 <= SCHEDULE_SYMBOL)) || LA496_6 == SCHEMA_NAME_SYMBOL || ((LA496_6 >= SECOND_SYMBOL) && (LA496_6 <= SECURITY_SYMBOL)) || LA496_6 == SEMICOLON_SYMBOL || ((LA496_6 >= SERIALIZABLE_SYMBOL) && (LA496_6 <= SERIAL_SYMBOL)) || ((LA496_6 >= SERVER_SYMBOL) && (LA496_6 <= SESSION_SYMBOL)) || LA496_6 == SHARE_SYMBOL || LA496_6 == SHUTDOWN_SYMBOL || ((LA496_6 >= SIGNED_SYMBOL) && (LA496_6 <= SIMPLE_SYMBOL)) || ((LA496_6 >= SINGLE_QUOTED_TEXT) && (LA496_6 <= SLOW_SYMBOL)) || ((LA496_6 >= SNAPSHOT_SYMBOL) && (LA496_6 <= SOURCE_SYMBOL)) || ((LA496_6 >= SQL_AFTER_GTIDS_SYMBOL) && (LA496_6 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA496_6 >= SQL_BUFFER_RESULT_SYMBOL) && (LA496_6 <= SQL_CACHE_SYMBOL)) || LA496_6 == SQL_NO_CACHE_SYMBOL || LA496_6 == SQL_THREAD_SYMBOL || ((LA496_6 >= STARTS_SYMBOL) && (LA496_6 <= STATUS_SYMBOL)) || ((LA496_6 >= STOP_SYMBOL) && (LA496_6 <= STORAGE_SYMBOL)) || ((LA496_6 >= STRING_SYMBOL) && (LA496_6 <= SUBPARTITION_SYMBOL)) || ((LA496_6 >= SUPER_SYMBOL) && (LA496_6 <= SWITCHES_SYMBOL)) || ((LA496_6 >= TABLESPACE_SYMBOL) && (LA496_6 <= TABLE_NAME_SYMBOL)) || ((LA496_6 >= TEMPORARY_SYMBOL) && (LA496_6 <= TEMPTABLE_SYMBOL)) || ((LA496_6 >= TEXT_SYMBOL) && (LA496_6 <= THAN_SYMBOL)) || ((LA496_6 >= TIMESTAMP_ADD_SYMBOL) && (LA496_6 <= TIME_SYMBOL)) || ((LA496_6 >= TRANSACTION_SYMBOL) && (LA496_6 <= TRIGGERS_SYMBOL)) || ((LA496_6 >= TRUNCATE_SYMBOL) && (LA496_6 <= UDF_RETURNS_SYMBOL)) || ((LA496_6 >= UNCOMMITTED_SYMBOL) && (LA496_6 <= UNDEFINED_SYMBOL)) || ((LA496_6 >= UNDERSCORE_CHARSET) && (LA496_6 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA496_6 >= UNICODE_SYMBOL) && (LA496_6 <= UNINSTALL_SYMBOL)) || LA496_6 == UNKNOWN_SYMBOL || LA496_6 == UNTIL_SYMBOL || LA496_6 == UPGRADE_SYMBOL || ((LA496_6 >= USER_RESOURCES_SYMBOL) && (LA496_6 <= USE_FRM_SYMBOL)) || LA496_6 == VALUE_SYMBOL || LA496_6 == VARIABLES_SYMBOL || ((LA496_6 >= VIEW_SYMBOL) && (LA496_6 <= WEIGHT_STRING_SYMBOL)) || ((LA496_6 >= WORK_SYMBOL) && (LA496_6 <= WRAPPER_SYMBOL)) || LA496_6 == X509_SYMBOL || ((LA496_6 >= XA_SYMBOL) && (LA496_6 <= XML_SYMBOL)) || LA496_6 == YEAR_SYMBOL))
        	                        {
        	                            alt496=1;
        	                        }
        	                        else if ( ((SERVER_VERSION >= 50105)) && (LA496_6 == DELETE_SYMBOL || LA496_6 == INSERT_SYMBOL || LA496_6 == OPEN_PAR_SYMBOL || LA496_6 == REPLACE_SYMBOL || LA496_6 == SELECT_SYMBOL || LA496_6 == UPDATE_SYMBOL))
        	                        {
        	                            alt496=2;
        	                        }
        	                        else
        	                        {
        	                            if (BACKTRACKING>0)
        	                            {
        	                                FAILEDFLAG = ANTLR3_TRUE;
        	                                return retval;
        	                            }


        	                            CONSTRUCTEX();
        	                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                            EXCEPTION->message      = (void *)"";
        	                            EXCEPTION->decisionNum  = 496;
        	                            EXCEPTION->state        = 6;


        	                            goto ruleutility_statementEx;

        	                        }
        	                    }
        	                }
        	                else if ( (((LA496_0 >= ACTION_SYMBOL) && (LA496_0 <= ADDDATE_SYMBOL)) || ((LA496_0 >= AFTER_SYMBOL) && (LA496_0 <= ALGORITHM_SYMBOL)) || LA496_0 == ANALYZE_SYMBOL || ((LA496_0 >= ANY_SYMBOL) && (LA496_0 <= ASCII_SYMBOL)) || ((LA496_0 >= AT_SYMBOL) && (LA496_0 <= BACKUP_SYMBOL)) || LA496_0 == BEGIN_SYMBOL || LA496_0 == BINLOG_SYMBOL || LA496_0 == BIT_SYMBOL || ((LA496_0 >= BLOCK_SYMBOL) && (LA496_0 <= BOOL_SYMBOL)) || ((LA496_0 >= BTREE_SYMBOL) && (LA496_0 <= BYTE_SYMBOL)) || LA496_0 == CACHE_SYMBOL || LA496_0 == CASCADED_SYMBOL || ((LA496_0 >= CATALOG_NAME_SYMBOL) && (LA496_0 <= CHANGED_SYMBOL)) || LA496_0 == CHARSET_SYMBOL || LA496_0 == CHECKSUM_SYMBOL || ((LA496_0 >= CIPHER_SYMBOL) && (LA496_0 <= CLIENT_SYMBOL)) || ((LA496_0 >= CLOSE_SYMBOL) && (LA496_0 <= CODE_SYMBOL)) || LA496_0 == COLLATION_SYMBOL || ((LA496_0 >= COLUMNS_SYMBOL) && (LA496_0 <= COLUMN_NAME_SYMBOL)) || ((LA496_0 >= COMMENT_SYMBOL) && (LA496_0 <= COMPRESSED_SYMBOL)) || LA496_0 == CONCURRENT_SYMBOL || ((LA496_0 >= CONNECTION_SYMBOL) && (LA496_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA496_0 >= CONTAINS_SYMBOL) && (LA496_0 <= CONTEXT_SYMBOL)) || LA496_0 == CONTRIBUTORS_SYMBOL || LA496_0 == CPU_SYMBOL || LA496_0 == CUBE_SYMBOL || LA496_0 == CURRENT_SYMBOL || LA496_0 == CURSOR_NAME_SYMBOL || ((LA496_0 >= DATAFILE_SYMBOL) && (LA496_0 <= DATETIME_SYMBOL)) || LA496_0 == DATE_SYMBOL || ((LA496_0 >= DAY_SYMBOL) && (LA496_0 <= DEALLOCATE_SYMBOL)) || LA496_0 == DEFAULT_AUTH_SYMBOL || LA496_0 == DEFINER_SYMBOL || LA496_0 == DELAY_KEY_WRITE_SYMBOL || LA496_0 == DES_KEY_FILE_SYMBOL || LA496_0 == DIAGNOSTICS_SYMBOL || ((LA496_0 >= DIRECTORY_SYMBOL) && (LA496_0 <= DISK_SYMBOL)) || LA496_0 == DO_SYMBOL || ((LA496_0 >= DUMPFILE_SYMBOL) && (LA496_0 <= DYNAMIC_SYMBOL)) || LA496_0 == ENABLE_SYMBOL || LA496_0 == ENDS_SYMBOL || ((LA496_0 >= END_SYMBOL) && (LA496_0 <= ENUM_SYMBOL)) || ((LA496_0 >= ERRORS_SYMBOL) && (LA496_0 <= ERROR_SYMBOL)) || ((LA496_0 >= ESCAPE_SYMBOL) && (LA496_0 <= EVERY_SYMBOL)) || LA496_0 == EXECUTE_SYMBOL || LA496_0 == EXPANSION_SYMBOL || LA496_0 == EXPORT_SYMBOL || LA496_0 == EXTENT_SIZE_SYMBOL || ((LA496_0 >= FAST_SYMBOL) && (LA496_0 <= FAULTS_SYMBOL)) || ((LA496_0 >= FILE_SYMBOL) && (LA496_0 <= FIXED_SYMBOL)) || LA496_0 == FLUSH_SYMBOL || LA496_0 == FOUND_SYMBOL || LA496_0 == FULL_SYMBOL || ((LA496_0 >= FUNCTION_SYMBOL) && (LA496_0 <= GET_FORMAT_SYMBOL)) || ((LA496_0 >= GLOBAL_SYMBOL) && (LA496_0 <= GRANTS_SYMBOL)) || ((LA496_0 >= HANDLER_SYMBOL) && (LA496_0 <= HASH_SYMBOL)) || LA496_0 == HELP_SYMBOL || ((LA496_0 >= HOSTS_SYMBOL) && (LA496_0 <= HOST_SYMBOL)) || ((LA496_0 >= HOUR_SYMBOL) && (LA496_0 <= IDENTIFIED_SYMBOL)) || LA496_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA496_0 >= IMPORT_SYMBOL) && (LA496_0 <= INDEXES_SYMBOL)) || LA496_0 == INITIAL_SIZE_SYMBOL || LA496_0 == INNODB_SYMBOL || LA496_0 == INSERT_METHOD_SYMBOL || LA496_0 == INSTALL_SYMBOL || LA496_0 == INVOKER_SYMBOL || LA496_0 == IO_SYMBOL || ((LA496_0 >= IPC_SYMBOL) && (LA496_0 <= ISSUER_SYMBOL)) || LA496_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA496_0 >= LANGUAGE_SYMBOL) && (LA496_0 <= LAST_SYMBOL)) || LA496_0 == LEAVES_SYMBOL || LA496_0 == LESS_SYMBOL || LA496_0 == LEVEL_SYMBOL || LA496_0 == LINESTRING_SYMBOL || LA496_0 == LIST_SYMBOL || LA496_0 == LOCAL_SYMBOL || LA496_0 == LOCKS_SYMBOL || LA496_0 == LOGFILE_SYMBOL || LA496_0 == LOGS_SYMBOL || LA496_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA496_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA496_0 <= MASTER_SSL_SYMBOL)) || ((LA496_0 >= MASTER_SYMBOL) && (LA496_0 <= MASTER_USER_SYMBOL)) || ((LA496_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA496_0 <= MAX_SIZE_SYMBOL)) || ((LA496_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA496_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA496_0 >= MEDIUM_SYMBOL) && (LA496_0 <= MICROSECOND_SYMBOL)) || LA496_0 == MIGRATE_SYMBOL || ((LA496_0 >= MINUTE_SYMBOL) && (LA496_0 <= MIN_ROWS_SYMBOL)) || LA496_0 == MODE_SYMBOL || LA496_0 == MODIFY_SYMBOL || ((LA496_0 >= MONTH_SYMBOL) && (LA496_0 <= MULTILINESTRING_SYMBOL)) || ((LA496_0 >= MULTIPOINT_SYMBOL) && (LA496_0 <= MULTIPOLYGON_SYMBOL)) || ((LA496_0 >= MUTEX_SYMBOL) && (LA496_0 <= NATIONAL_SYMBOL)) || LA496_0 == NCHAR_SYMBOL || LA496_0 == NDBCLUSTER_SYMBOL || ((LA496_0 >= NEW_SYMBOL) && (LA496_0 <= NONE_SYMBOL)) || ((LA496_0 >= NO_SYMBOL) && (LA496_0 <= NO_WAIT_SYMBOL)) || LA496_0 == NUMBER_SYMBOL || LA496_0 == NVARCHAR_SYMBOL || ((LA496_0 >= OFFSET_SYMBOL) && (LA496_0 <= ONE_SYMBOL)) || LA496_0 == OPEN_SYMBOL || LA496_0 == OPTIONS_SYMBOL || ((LA496_0 >= OWNER_SYMBOL) && (LA496_0 <= PAGE_SYMBOL)) || ((LA496_0 >= PARSER_SYMBOL) && (LA496_0 <= PARTITIONING_SYMBOL)) || LA496_0 == PARTITION_SYMBOL || ((LA496_0 >= PASSWORD_SYMBOL) && (LA496_0 <= PLUGIN_SYMBOL)) || ((LA496_0 >= POINT_SYMBOL) && (LA496_0 <= PORT_SYMBOL)) || ((LA496_0 >= PREPARE_SYMBOL) && (LA496_0 <= PREV_SYMBOL)) || LA496_0 == PRIVILEGES_SYMBOL || ((LA496_0 >= PROCESSLIST_SYMBOL) && (LA496_0 <= PROXY_SYMBOL)) || ((LA496_0 >= QUARTER_SYMBOL) && (LA496_0 <= QUICK_SYMBOL)) || LA496_0 == READ_ONLY_SYMBOL || ((LA496_0 >= REBUILD_SYMBOL) && (LA496_0 <= REDUNDANT_SYMBOL)) || ((LA496_0 >= RELAYLOG_SYMBOL) && (LA496_0 <= RELAY_THREAD_SYMBOL)) || ((LA496_0 >= RELOAD_SYMBOL) && (LA496_0 <= REMOVE_SYMBOL)) || ((LA496_0 >= REORGANIZE_SYMBOL) && (LA496_0 <= REPEATABLE_SYMBOL)) || LA496_0 == REPLICATION_SYMBOL || LA496_0 == RESET_SYMBOL || LA496_0 == RESTORE_SYMBOL || ((LA496_0 >= RESUME_SYMBOL) && (LA496_0 <= RETURNS_SYMBOL)) || LA496_0 == REVERSE_SYMBOL || ((LA496_0 >= ROLLBACK_SYMBOL) && (LA496_0 <= SCHEDULE_SYMBOL)) || LA496_0 == SCHEMA_NAME_SYMBOL || ((LA496_0 >= SECOND_SYMBOL) && (LA496_0 <= SECURITY_SYMBOL)) || ((LA496_0 >= SERIALIZABLE_SYMBOL) && (LA496_0 <= SERIAL_SYMBOL)) || ((LA496_0 >= SERVER_SYMBOL) && (LA496_0 <= SESSION_SYMBOL)) || LA496_0 == SHARE_SYMBOL || LA496_0 == SHUTDOWN_SYMBOL || ((LA496_0 >= SIGNED_SYMBOL) && (LA496_0 <= SIMPLE_SYMBOL)) || ((LA496_0 >= SLAVE_SYMBOL) && (LA496_0 <= SLOW_SYMBOL)) || ((LA496_0 >= SNAPSHOT_SYMBOL) && (LA496_0 <= SOURCE_SYMBOL)) || ((LA496_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA496_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA496_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA496_0 <= SQL_CACHE_SYMBOL)) || LA496_0 == SQL_NO_CACHE_SYMBOL || LA496_0 == SQL_THREAD_SYMBOL || ((LA496_0 >= STARTS_SYMBOL) && (LA496_0 <= STATUS_SYMBOL)) || ((LA496_0 >= STOP_SYMBOL) && (LA496_0 <= STORAGE_SYMBOL)) || ((LA496_0 >= STRING_SYMBOL) && (LA496_0 <= SUBPARTITION_SYMBOL)) || ((LA496_0 >= SUPER_SYMBOL) && (LA496_0 <= SWITCHES_SYMBOL)) || ((LA496_0 >= TABLESPACE_SYMBOL) && (LA496_0 <= TABLE_NAME_SYMBOL)) || ((LA496_0 >= TEMPORARY_SYMBOL) && (LA496_0 <= TEMPTABLE_SYMBOL)) || ((LA496_0 >= TEXT_SYMBOL) && (LA496_0 <= THAN_SYMBOL)) || ((LA496_0 >= TIMESTAMP_ADD_SYMBOL) && (LA496_0 <= TIME_SYMBOL)) || ((LA496_0 >= TRANSACTION_SYMBOL) && (LA496_0 <= TRIGGERS_SYMBOL)) || ((LA496_0 >= TRUNCATE_SYMBOL) && (LA496_0 <= UDF_RETURNS_SYMBOL)) || ((LA496_0 >= UNCOMMITTED_SYMBOL) && (LA496_0 <= UNDEFINED_SYMBOL)) || ((LA496_0 >= UNDOFILE_SYMBOL) && (LA496_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA496_0 >= UNICODE_SYMBOL) && (LA496_0 <= UNINSTALL_SYMBOL)) || LA496_0 == UNKNOWN_SYMBOL || LA496_0 == UNTIL_SYMBOL || LA496_0 == UPGRADE_SYMBOL || ((LA496_0 >= USER_RESOURCES_SYMBOL) && (LA496_0 <= USE_FRM_SYMBOL)) || LA496_0 == VALUE_SYMBOL || LA496_0 == VARIABLES_SYMBOL || ((LA496_0 >= VIEW_SYMBOL) && (LA496_0 <= WEIGHT_STRING_SYMBOL)) || ((LA496_0 >= WORK_SYMBOL) && (LA496_0 <= WRAPPER_SYMBOL)) || LA496_0 == X509_SYMBOL || ((LA496_0 >= XA_SYMBOL) && (LA496_0 <= XML_SYMBOL)) || LA496_0 == YEAR_SYMBOL))
        	                {
        	                    alt496=1;
        	                }
        	                else if ( ((SERVER_VERSION >= 50603)) && (LA496_0 == DELETE_SYMBOL || LA496_0 == INSERT_SYMBOL || LA496_0 == REPLACE_SYMBOL || LA496_0 == UPDATE_SYMBOL))
        	                {
        	                    alt496=2;
        	                }
        	                else if ( (LA496_0 == OPEN_PAR_SYMBOL || LA496_0 == SELECT_SYMBOL))
        	                {
        	                    alt496=2;
        	                }
        	                else
        	                {
        	                    if (BACKTRACKING>0)
        	                    {
        	                        FAILEDFLAG = ANTLR3_TRUE;
        	                        return retval;
        	                    }


        	                    CONSTRUCTEX();
        	                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    EXCEPTION->message      = (void *)"";
        	                    EXCEPTION->decisionNum  = 496;
        	                    EXCEPTION->state        = 0;


        	                    goto ruleutility_statementEx;

        	                }
        	            }
        	            switch (alt496)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1467:4: qualified_identifier ( text_or_identifier )?
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_qualified_identifier_in_utility_statement8153);
        	        	        qualified_identifier1665=qualified_identifier(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleutility_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, qualified_identifier1665.tree);

        	        	        // MySQL.g:1467:25: ( text_or_identifier )?
        	        	        {
        	        	            int alt494=2;
        	        	            {
        	        	                int LA494_0 = LA(1);
        	        	                if ( (LA494_0 == NCHAR_TEXT || LA494_0 == SINGLE_QUOTED_TEXT || LA494_0 == UNDERSCORE_CHARSET))
        	        	                {
        	        	                    alt494=1;
        	        	                }
        	        	                else if ( ((((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)))||((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))) && (LA494_0 == DOUBLE_QUOTED_TEXT))
        	        	                {
        	        	                    alt494=1;
        	        	                }
        	        	                else if ( (((LA494_0 >= ACTION_SYMBOL) && (LA494_0 <= ADDDATE_SYMBOL)) || ((LA494_0 >= AFTER_SYMBOL) && (LA494_0 <= ALGORITHM_SYMBOL)) || LA494_0 == ANALYZE_SYMBOL || ((LA494_0 >= ANY_SYMBOL) && (LA494_0 <= ASCII_SYMBOL)) || ((LA494_0 >= AT_SYMBOL) && (LA494_0 <= BACKUP_SYMBOL)) || LA494_0 == BACK_TICK_QUOTED_ID || LA494_0 == BEGIN_SYMBOL || LA494_0 == BINLOG_SYMBOL || LA494_0 == BIT_SYMBOL || ((LA494_0 >= BLOCK_SYMBOL) && (LA494_0 <= BOOL_SYMBOL)) || ((LA494_0 >= BTREE_SYMBOL) && (LA494_0 <= BYTE_SYMBOL)) || LA494_0 == CACHE_SYMBOL || LA494_0 == CASCADED_SYMBOL || ((LA494_0 >= CATALOG_NAME_SYMBOL) && (LA494_0 <= CHANGED_SYMBOL)) || LA494_0 == CHARSET_SYMBOL || LA494_0 == CHECKSUM_SYMBOL || ((LA494_0 >= CIPHER_SYMBOL) && (LA494_0 <= CLIENT_SYMBOL)) || ((LA494_0 >= CLOSE_SYMBOL) && (LA494_0 <= CODE_SYMBOL)) || LA494_0 == COLLATION_SYMBOL || ((LA494_0 >= COLUMNS_SYMBOL) && (LA494_0 <= COLUMN_NAME_SYMBOL)) || ((LA494_0 >= COMMENT_SYMBOL) && (LA494_0 <= COMPRESSED_SYMBOL)) || LA494_0 == CONCURRENT_SYMBOL || ((LA494_0 >= CONNECTION_SYMBOL) && (LA494_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA494_0 >= CONTAINS_SYMBOL) && (LA494_0 <= CONTEXT_SYMBOL)) || LA494_0 == CONTRIBUTORS_SYMBOL || LA494_0 == CPU_SYMBOL || LA494_0 == CUBE_SYMBOL || LA494_0 == CURRENT_SYMBOL || LA494_0 == CURSOR_NAME_SYMBOL || ((LA494_0 >= DATAFILE_SYMBOL) && (LA494_0 <= DATETIME_SYMBOL)) || LA494_0 == DATE_SYMBOL || ((LA494_0 >= DAY_SYMBOL) && (LA494_0 <= DEALLOCATE_SYMBOL)) || LA494_0 == DEFAULT_AUTH_SYMBOL || LA494_0 == DEFINER_SYMBOL || LA494_0 == DELAY_KEY_WRITE_SYMBOL || LA494_0 == DES_KEY_FILE_SYMBOL || LA494_0 == DIAGNOSTICS_SYMBOL || ((LA494_0 >= DIRECTORY_SYMBOL) && (LA494_0 <= DISK_SYMBOL)) || LA494_0 == DO_SYMBOL || ((LA494_0 >= DUMPFILE_SYMBOL) && (LA494_0 <= DYNAMIC_SYMBOL)) || LA494_0 == ENABLE_SYMBOL || LA494_0 == ENDS_SYMBOL || ((LA494_0 >= END_SYMBOL) && (LA494_0 <= ENUM_SYMBOL)) || ((LA494_0 >= ERRORS_SYMBOL) && (LA494_0 <= ERROR_SYMBOL)) || ((LA494_0 >= ESCAPE_SYMBOL) && (LA494_0 <= EVERY_SYMBOL)) || LA494_0 == EXECUTE_SYMBOL || LA494_0 == EXPANSION_SYMBOL || LA494_0 == EXPORT_SYMBOL || ((LA494_0 >= EXTENDED_SYMBOL) && (LA494_0 <= EXTENT_SIZE_SYMBOL)) || ((LA494_0 >= FAST_SYMBOL) && (LA494_0 <= FAULTS_SYMBOL)) || ((LA494_0 >= FILE_SYMBOL) && (LA494_0 <= FIXED_SYMBOL)) || LA494_0 == FLUSH_SYMBOL || LA494_0 == FORMAT_SYMBOL || LA494_0 == FOUND_SYMBOL || LA494_0 == FULL_SYMBOL || ((LA494_0 >= FUNCTION_SYMBOL) && (LA494_0 <= GET_FORMAT_SYMBOL)) || ((LA494_0 >= GLOBAL_SYMBOL) && (LA494_0 <= GRANTS_SYMBOL)) || ((LA494_0 >= HANDLER_SYMBOL) && (LA494_0 <= HASH_SYMBOL)) || LA494_0 == HELP_SYMBOL || ((LA494_0 >= HOSTS_SYMBOL) && (LA494_0 <= HOST_SYMBOL)) || ((LA494_0 >= HOUR_SYMBOL) && (LA494_0 <= IDENTIFIER)) || LA494_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA494_0 >= IMPORT_SYMBOL) && (LA494_0 <= INDEXES_SYMBOL)) || LA494_0 == INITIAL_SIZE_SYMBOL || LA494_0 == INNODB_SYMBOL || LA494_0 == INSERT_METHOD_SYMBOL || LA494_0 == INSTALL_SYMBOL || LA494_0 == INVOKER_SYMBOL || LA494_0 == IO_SYMBOL || ((LA494_0 >= IPC_SYMBOL) && (LA494_0 <= ISSUER_SYMBOL)) || LA494_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA494_0 >= LANGUAGE_SYMBOL) && (LA494_0 <= LAST_SYMBOL)) || LA494_0 == LEAVES_SYMBOL || LA494_0 == LESS_SYMBOL || LA494_0 == LEVEL_SYMBOL || LA494_0 == LINESTRING_SYMBOL || LA494_0 == LIST_SYMBOL || LA494_0 == LOCAL_SYMBOL || LA494_0 == LOCKS_SYMBOL || LA494_0 == LOGFILE_SYMBOL || LA494_0 == LOGS_SYMBOL || LA494_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA494_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA494_0 <= MASTER_SSL_SYMBOL)) || ((LA494_0 >= MASTER_SYMBOL) && (LA494_0 <= MASTER_USER_SYMBOL)) || ((LA494_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA494_0 <= MAX_SIZE_SYMBOL)) || ((LA494_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA494_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA494_0 >= MEDIUM_SYMBOL) && (LA494_0 <= MICROSECOND_SYMBOL)) || LA494_0 == MIGRATE_SYMBOL || ((LA494_0 >= MINUTE_SYMBOL) && (LA494_0 <= MIN_ROWS_SYMBOL)) || LA494_0 == MODE_SYMBOL || LA494_0 == MODIFY_SYMBOL || ((LA494_0 >= MONTH_SYMBOL) && (LA494_0 <= MULTILINESTRING_SYMBOL)) || ((LA494_0 >= MULTIPOINT_SYMBOL) && (LA494_0 <= MULTIPOLYGON_SYMBOL)) || ((LA494_0 >= MUTEX_SYMBOL) && (LA494_0 <= NATIONAL_SYMBOL)) || LA494_0 == NCHAR_SYMBOL || LA494_0 == NDBCLUSTER_SYMBOL || ((LA494_0 >= NEW_SYMBOL) && (LA494_0 <= NONE_SYMBOL)) || ((LA494_0 >= NO_SYMBOL) && (LA494_0 <= NO_WAIT_SYMBOL)) || LA494_0 == NUMBER_SYMBOL || LA494_0 == NVARCHAR_SYMBOL || ((LA494_0 >= OFFSET_SYMBOL) && (LA494_0 <= ONE_SYMBOL)) || LA494_0 == OPEN_SYMBOL || LA494_0 == OPTIONS_SYMBOL || ((LA494_0 >= OWNER_SYMBOL) && (LA494_0 <= PAGE_SYMBOL)) || ((LA494_0 >= PARSER_SYMBOL) && (LA494_0 <= PARTITION_SYMBOL)) || ((LA494_0 >= PASSWORD_SYMBOL) && (LA494_0 <= PLUGIN_SYMBOL)) || ((LA494_0 >= POINT_SYMBOL) && (LA494_0 <= PORT_SYMBOL)) || ((LA494_0 >= PREPARE_SYMBOL) && (LA494_0 <= PREV_SYMBOL)) || LA494_0 == PRIVILEGES_SYMBOL || ((LA494_0 >= PROCESSLIST_SYMBOL) && (LA494_0 <= PROXY_SYMBOL)) || ((LA494_0 >= QUARTER_SYMBOL) && (LA494_0 <= QUICK_SYMBOL)) || LA494_0 == READ_ONLY_SYMBOL || ((LA494_0 >= REBUILD_SYMBOL) && (LA494_0 <= REDUNDANT_SYMBOL)) || ((LA494_0 >= RELAYLOG_SYMBOL) && (LA494_0 <= RELAY_THREAD_SYMBOL)) || ((LA494_0 >= RELOAD_SYMBOL) && (LA494_0 <= REMOVE_SYMBOL)) || ((LA494_0 >= REORGANIZE_SYMBOL) && (LA494_0 <= REPEATABLE_SYMBOL)) || LA494_0 == REPLICATION_SYMBOL || LA494_0 == RESET_SYMBOL || LA494_0 == RESTORE_SYMBOL || ((LA494_0 >= RESUME_SYMBOL) && (LA494_0 <= RETURNS_SYMBOL)) || LA494_0 == REVERSE_SYMBOL || ((LA494_0 >= ROLLBACK_SYMBOL) && (LA494_0 <= SCHEDULE_SYMBOL)) || LA494_0 == SCHEMA_NAME_SYMBOL || ((LA494_0 >= SECOND_SYMBOL) && (LA494_0 <= SECURITY_SYMBOL)) || ((LA494_0 >= SERIALIZABLE_SYMBOL) && (LA494_0 <= SERIAL_SYMBOL)) || ((LA494_0 >= SERVER_SYMBOL) && (LA494_0 <= SESSION_SYMBOL)) || LA494_0 == SHARE_SYMBOL || LA494_0 == SHUTDOWN_SYMBOL || ((LA494_0 >= SIGNED_SYMBOL) && (LA494_0 <= SIMPLE_SYMBOL)) || ((LA494_0 >= SLAVE_SYMBOL) && (LA494_0 <= SLOW_SYMBOL)) || ((LA494_0 >= SNAPSHOT_SYMBOL) && (LA494_0 <= SOURCE_SYMBOL)) || ((LA494_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA494_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA494_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA494_0 <= SQL_CACHE_SYMBOL)) || LA494_0 == SQL_NO_CACHE_SYMBOL || LA494_0 == SQL_THREAD_SYMBOL || ((LA494_0 >= STARTS_SYMBOL) && (LA494_0 <= STATUS_SYMBOL)) || ((LA494_0 >= STOP_SYMBOL) && (LA494_0 <= STORAGE_SYMBOL)) || ((LA494_0 >= STRING_SYMBOL) && (LA494_0 <= SUBPARTITION_SYMBOL)) || ((LA494_0 >= SUPER_SYMBOL) && (LA494_0 <= SWITCHES_SYMBOL)) || ((LA494_0 >= TABLESPACE_SYMBOL) && (LA494_0 <= TABLE_NAME_SYMBOL)) || ((LA494_0 >= TEMPORARY_SYMBOL) && (LA494_0 <= TEMPTABLE_SYMBOL)) || ((LA494_0 >= TEXT_SYMBOL) && (LA494_0 <= THAN_SYMBOL)) || ((LA494_0 >= TIMESTAMP_ADD_SYMBOL) && (LA494_0 <= TIME_SYMBOL)) || ((LA494_0 >= TRANSACTION_SYMBOL) && (LA494_0 <= TRIGGERS_SYMBOL)) || ((LA494_0 >= TRUNCATE_SYMBOL) && (LA494_0 <= UDF_RETURNS_SYMBOL)) || ((LA494_0 >= UNCOMMITTED_SYMBOL) && (LA494_0 <= UNDEFINED_SYMBOL)) || ((LA494_0 >= UNDOFILE_SYMBOL) && (LA494_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA494_0 >= UNICODE_SYMBOL) && (LA494_0 <= UNINSTALL_SYMBOL)) || LA494_0 == UNKNOWN_SYMBOL || LA494_0 == UNTIL_SYMBOL || LA494_0 == UPGRADE_SYMBOL || ((LA494_0 >= USER_RESOURCES_SYMBOL) && (LA494_0 <= USE_FRM_SYMBOL)) || LA494_0 == VALUE_SYMBOL || LA494_0 == VARIABLES_SYMBOL || ((LA494_0 >= VIEW_SYMBOL) && (LA494_0 <= WEIGHT_STRING_SYMBOL)) || ((LA494_0 >= WORK_SYMBOL) && (LA494_0 <= WRAPPER_SYMBOL)) || LA494_0 == X509_SYMBOL || ((LA494_0 >= XA_SYMBOL) && (LA494_0 <= XML_SYMBOL)) || LA494_0 == YEAR_SYMBOL))
        	        	                {
        	        	                    alt494=1;
        	        	                }
        	        	            }
        	        	            switch (alt494)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:1467:25: text_or_identifier
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_text_or_identifier_in_utility_statement8155);
        	        	        	        text_or_identifier1666=text_or_identifier(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleutility_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_identifier1666.tree);

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:1471:5: ( EXTENDED_SYMBOL |{...}? => PARTITIONS_SYMBOL |{...}? => FORMAT_SYMBOL EQUAL_OPERATOR text_or_identifier )? explainable_statement
        	        	    {
        	        	        // MySQL.g:1471:5: ( EXTENDED_SYMBOL |{...}? => PARTITIONS_SYMBOL |{...}? => FORMAT_SYMBOL EQUAL_OPERATOR text_or_identifier )?
        	        	        {
        	        	            int alt495=4;
        	        	            {
        	        	                int LA495_0 = LA(1);
        	        	                if ( (LA495_0 == EXTENDED_SYMBOL))
        	        	                {
        	        	                    alt495=1;
        	        	                }
        	        	                else if ( ((SERVER_VERSION >= 50105)) && (LA495_0 == PARTITIONS_SYMBOL))
        	        	                {
        	        	                    alt495=2;
        	        	                }
        	        	                else if ( ((SERVER_VERSION >= 50605)) && (LA495_0 == FORMAT_SYMBOL))
        	        	                {
        	        	                    alt495=3;
        	        	                }
        	        	            }
        	        	            switch (alt495)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:1472:6: EXTENDED_SYMBOL
        	        	        	    {
        	        	        	        EXTENDED_SYMBOL1667 = (pANTLR3_COMMON_TOKEN) MATCHT(EXTENDED_SYMBOL, &FOLLOW_EXTENDED_SYMBOL_in_utility_statement8182);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleutility_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        EXTENDED_SYMBOL1667_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXTENDED_SYMBOL1667));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EXTENDED_SYMBOL1667_tree);
        	        	        	        }

        	        	        	    }
        	        	        	    break;
        	        	        	case 2:
        	        	        	    // MySQL.g:1473:8: {...}? => PARTITIONS_SYMBOL
        	        	        	    {
        	        	        	        if ( !((SERVER_VERSION >= 50105)) )
        	        	        	        {
        	        	        	            if (BACKTRACKING>0)
        	        	        	            {
        	        	        	                FAILEDFLAG = ANTLR3_TRUE;
        	        	        	                return retval;
        	        	        	            }

        	        	        	                CONSTRUCTEX();
        	        	        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	        	        	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50105";
        	        	        	                EXCEPTION->ruleName	 = (void *)"utility_statement";


        	        	        	        }

        	        	        	        PARTITIONS_SYMBOL1668 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITIONS_SYMBOL, &FOLLOW_PARTITIONS_SYMBOL_in_utility_statement8195);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleutility_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        PARTITIONS_SYMBOL1668_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITIONS_SYMBOL1668));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, PARTITIONS_SYMBOL1668_tree);
        	        	        	        }

        	        	        	    }
        	        	        	    break;
        	        	        	case 3:
        	        	        	    // MySQL.g:1474:8: {...}? => FORMAT_SYMBOL EQUAL_OPERATOR text_or_identifier
        	        	        	    {
        	        	        	        if ( !((SERVER_VERSION >= 50605)) )
        	        	        	        {
        	        	        	            if (BACKTRACKING>0)
        	        	        	            {
        	        	        	                FAILEDFLAG = ANTLR3_TRUE;
        	        	        	                return retval;
        	        	        	            }

        	        	        	                CONSTRUCTEX();
        	        	        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	        	        	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50605";
        	        	        	                EXCEPTION->ruleName	 = (void *)"utility_statement";


        	        	        	        }

        	        	        	        FORMAT_SYMBOL1669 = (pANTLR3_COMMON_TOKEN) MATCHT(FORMAT_SYMBOL, &FOLLOW_FORMAT_SYMBOL_in_utility_statement8208);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleutility_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        FORMAT_SYMBOL1669_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FORMAT_SYMBOL1669));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, FORMAT_SYMBOL1669_tree);
        	        	        	        }

        	        	        	        EQUAL_OPERATOR1670 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_utility_statement8210);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleutility_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        EQUAL_OPERATOR1670_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1670));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1670_tree);
        	        	        	        }

        	        	        	        FOLLOWPUSH(FOLLOW_text_or_identifier_in_utility_statement8212);
        	        	        	        text_or_identifier1671=text_or_identifier(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleutility_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_identifier1671.tree);

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_explainable_statement_in_utility_statement8221);
        	        	        explainable_statement1672=explainable_statement(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleutility_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, explainable_statement1672.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1477:4: HELP_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        HELP_SYMBOL1673 = (pANTLR3_COMMON_TOKEN) MATCHT(HELP_SYMBOL, &FOLLOW_HELP_SYMBOL_in_utility_statement8230);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleutility_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        HELP_SYMBOL1673_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HELP_SYMBOL1673));
        	        ADAPTOR->addChild(ADAPTOR, root_0, HELP_SYMBOL1673_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_utility_statement8232);
        	        string_literal1674=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleutility_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1674.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1478:4: USE_SYMBOL pure_identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        USE_SYMBOL1675 = (pANTLR3_COMMON_TOKEN) MATCHT(USE_SYMBOL, &FOLLOW_USE_SYMBOL_in_utility_statement8237);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleutility_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        USE_SYMBOL1675_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USE_SYMBOL1675));
        	        ADAPTOR->addChild(ADAPTOR, root_0, USE_SYMBOL1675_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_pure_identifier_in_utility_statement8239);
        	        pure_identifier1676=pure_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleutility_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier1676.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleutility_statementEx; /* Prevent compiler warnings */
    ruleutility_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end utility_statement */

/**
 * $ANTLR start describe_command
 * MySQL.g:1481:1: describe_command : ( DESCRIBE_SYMBOL | DESC_SYMBOL );
 */
static MySQLParser_describe_command_return
describe_command(pMySQLParser ctx)
{
    MySQLParser_describe_command_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set1677;

    pANTLR3_BASE_TREE set1677_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1677       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1677_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1481:17: ( DESCRIBE_SYMBOL | DESC_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set1677=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( ((LA(1) >= DESCRIBE_SYMBOL) && (LA(1) <= DESC_SYMBOL)) )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1677))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto ruledescribe_commandEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto ruledescribe_commandEx; /* Prevent compiler warnings */
    ruledescribe_commandEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end describe_command */

/**
 * $ANTLR start explainable_statement
 * MySQL.g:1486:1: explainable_statement : ({...}? => ( delete_statement | insert_statement | replace_statement | update_statement ) | select_statement );
 */
static MySQLParser_explainable_statement_return
explainable_statement(pMySQLParser ctx)
{
    MySQLParser_explainable_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_delete_statement_return delete_statement1678;
    #undef	RETURN_TYPE_delete_statement1678
    #define	RETURN_TYPE_delete_statement1678 MySQLParser_delete_statement_return

    MySQLParser_insert_statement_return insert_statement1679;
    #undef	RETURN_TYPE_insert_statement1679
    #define	RETURN_TYPE_insert_statement1679 MySQLParser_insert_statement_return

    MySQLParser_replace_statement_return replace_statement1680;
    #undef	RETURN_TYPE_replace_statement1680
    #define	RETURN_TYPE_replace_statement1680 MySQLParser_replace_statement_return

    MySQLParser_update_statement_return update_statement1681;
    #undef	RETURN_TYPE_update_statement1681
    #define	RETURN_TYPE_update_statement1681 MySQLParser_update_statement_return

    MySQLParser_select_statement_return select_statement1682;
    #undef	RETURN_TYPE_select_statement1682
    #define	RETURN_TYPE_select_statement1682 MySQLParser_select_statement_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    delete_statement1678.tree = NULL;

    insert_statement1679.tree = NULL;

    replace_statement1680.tree = NULL;

    update_statement1681.tree = NULL;

    select_statement1682.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1486:22: ({...}? => ( delete_statement | insert_statement | replace_statement | update_statement ) | select_statement )

            ANTLR3_UINT32 alt499;

            alt499=2;

            {
                int LA499_0 = LA(1);
                if ( ((SERVER_VERSION >= 50603)) && (LA499_0 == DELETE_SYMBOL || LA499_0 == INSERT_SYMBOL || LA499_0 == REPLACE_SYMBOL || LA499_0 == UPDATE_SYMBOL))
                {
                    alt499=1;
                }
                else if ( (LA499_0 == OPEN_PAR_SYMBOL || LA499_0 == SELECT_SYMBOL))
                {
                    alt499=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 499;
                    EXCEPTION->state        = 0;


                    goto ruleexplainable_statementEx;

                }
            }
            switch (alt499)
            {
        	case 1:
        	    // MySQL.g:1487:2: {...}? => ( delete_statement | insert_statement | replace_statement | update_statement )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((SERVER_VERSION >= 50603)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50603";
        	                EXCEPTION->ruleName	 = (void *)"explainable_statement";


        	        }

        	        // MySQL.g:1488:3: ( delete_statement | insert_statement | replace_statement | update_statement )
        	        {
        	            int alt498=4;
        	            switch ( LA(1) )
        	            {
        	            case DELETE_SYMBOL:
        	            	{
        	            		alt498=1;
        	            	}
        	                break;
        	            case INSERT_SYMBOL:
        	            	{
        	            		alt498=2;
        	            	}
        	                break;
        	            case REPLACE_SYMBOL:
        	            	{
        	            		alt498=3;
        	            	}
        	                break;
        	            case UPDATE_SYMBOL:
        	            	{
        	            		alt498=4;
        	            	}
        	                break;

        	            default:
        	                if (BACKTRACKING>0)
        	                {
        	                    FAILEDFLAG = ANTLR3_TRUE;
        	                    return retval;
        	                }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                EXCEPTION->message      = (void *)"";
        	                EXCEPTION->decisionNum  = 498;
        	                EXCEPTION->state        = 0;


        	                goto ruleexplainable_statementEx;

        	            }

        	            switch (alt498)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1489:4: delete_statement
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_delete_statement_in_explainable_statement8273);
        	        	        delete_statement1678=delete_statement(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleexplainable_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, delete_statement1678.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:1490:6: insert_statement
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_insert_statement_in_explainable_statement8280);
        	        	        insert_statement1679=insert_statement(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleexplainable_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, insert_statement1679.tree);

        	        	    }
        	        	    break;
        	        	case 3:
        	        	    // MySQL.g:1491:6: replace_statement
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_replace_statement_in_explainable_statement8287);
        	        	        replace_statement1680=replace_statement(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleexplainable_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, replace_statement1680.tree);

        	        	    }
        	        	    break;
        	        	case 4:
        	        	    // MySQL.g:1492:6: update_statement
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_update_statement_in_explainable_statement8294);
        	        	        update_statement1681=update_statement(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleexplainable_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, update_statement1681.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1494:4: select_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_select_statement_in_explainable_statement8303);
        	        select_statement1682=select_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleexplainable_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_statement1682.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleexplainable_statementEx; /* Prevent compiler warnings */
    ruleexplainable_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end explainable_statement */

/**
 * $ANTLR start expression
 * MySQL.g:1502:1: expression : logical_or_expression ;
 */
static MySQLParser_expression_return
expression(pMySQLParser ctx)
{
    MySQLParser_expression_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_logical_or_expression_return logical_or_expression1683;
    #undef	RETURN_TYPE_logical_or_expression1683
    #define	RETURN_TYPE_logical_or_expression1683 MySQLParser_logical_or_expression_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    logical_or_expression1683.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:1502:11: ( logical_or_expression )
        // MySQL.g:1503:2: logical_or_expression
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_logical_or_expression_in_expression8317);
            logical_or_expression1683=logical_or_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleexpressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, logical_or_expression1683.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleexpressionEx; /* Prevent compiler warnings */
    ruleexpressionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end expression */

/**
 * $ANTLR start logical_or_expression
 * MySQL.g:1506:1: logical_or_expression : logical_xor_expression ( options {greedy=true; } : ( LOGICAL_OR_OPERATOR | OR_SYMBOL ) ^ logical_xor_expression )* ;
 */
static MySQLParser_logical_or_expression_return
logical_or_expression(pMySQLParser ctx)
{
    MySQLParser_logical_or_expression_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set1685;
    MySQLParser_logical_xor_expression_return logical_xor_expression1684;
    #undef	RETURN_TYPE_logical_xor_expression1684
    #define	RETURN_TYPE_logical_xor_expression1684 MySQLParser_logical_xor_expression_return

    MySQLParser_logical_xor_expression_return logical_xor_expression1686;
    #undef	RETURN_TYPE_logical_xor_expression1686
    #define	RETURN_TYPE_logical_xor_expression1686 MySQLParser_logical_xor_expression_return

    pANTLR3_BASE_TREE set1685_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1685       = NULL;
    logical_xor_expression1684.tree = NULL;

    logical_xor_expression1686.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1685_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1506:22: ( logical_xor_expression ( options {greedy=true; } : ( LOGICAL_OR_OPERATOR | OR_SYMBOL ) ^ logical_xor_expression )* )
        // MySQL.g:1507:2: logical_xor_expression ( options {greedy=true; } : ( LOGICAL_OR_OPERATOR | OR_SYMBOL ) ^ logical_xor_expression )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_logical_xor_expression_in_logical_or_expression8326);
            logical_xor_expression1684=logical_xor_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulelogical_or_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, logical_xor_expression1684.tree);

            // MySQL.g:1507:25: ( options {greedy=true; } : ( LOGICAL_OR_OPERATOR | OR_SYMBOL ) ^ logical_xor_expression )*

            for (;;)
            {
                int alt500=2;
                switch ( LA(1) )
                {
                case LOGICAL_OR_OPERATOR:
                case OR_SYMBOL:
                	{
                		alt500=1;
                	}
                    break;

                }

                switch (alt500)
                {
            	case 1:
            	    // MySQL.g:1507:55: ( LOGICAL_OR_OPERATOR | OR_SYMBOL ) ^ logical_xor_expression
            	    {
            	        set1685=(pANTLR3_COMMON_TOKEN)LT(1);

            	        set1685=(pANTLR3_COMMON_TOKEN)LT(1);

            	        if ( LA(1) == LOGICAL_OR_OPERATOR || LA(1) == OR_SYMBOL )
            	        {
            	            CONSUME();
            	            if ( BACKTRACKING==0 ) root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, 
            	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1685))
            	            , root_0));
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	            CONSTRUCTEX();
            	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	            EXCEPTION->expectingSet = NULL;

            	            goto rulelogical_or_expressionEx;
            	        }


            	        FOLLOWPUSH(FOLLOW_logical_xor_expression_in_logical_or_expression8351);
            	        logical_xor_expression1686=logical_xor_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulelogical_or_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, logical_xor_expression1686.tree);

            	    }
            	    break;

            	default:
            	    goto loop500;	/* break out of the loop */
            	    break;
                }
            }
            loop500: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto rulelogical_or_expressionEx; /* Prevent compiler warnings */
    rulelogical_or_expressionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end logical_or_expression */

/**
 * $ANTLR start logical_xor_expression
 * MySQL.g:1510:1: logical_xor_expression : logical_and_expression ( options {greedy=true; } : XOR_SYMBOL ^ logical_and_expression )* ;
 */
static MySQLParser_logical_xor_expression_return
logical_xor_expression(pMySQLParser ctx)
{
    MySQLParser_logical_xor_expression_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    XOR_SYMBOL1688;
    MySQLParser_logical_and_expression_return logical_and_expression1687;
    #undef	RETURN_TYPE_logical_and_expression1687
    #define	RETURN_TYPE_logical_and_expression1687 MySQLParser_logical_and_expression_return

    MySQLParser_logical_and_expression_return logical_and_expression1689;
    #undef	RETURN_TYPE_logical_and_expression1689
    #define	RETURN_TYPE_logical_and_expression1689 MySQLParser_logical_and_expression_return

    pANTLR3_BASE_TREE XOR_SYMBOL1688_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    XOR_SYMBOL1688       = NULL;
    logical_and_expression1687.tree = NULL;

    logical_and_expression1689.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    XOR_SYMBOL1688_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1510:23: ( logical_and_expression ( options {greedy=true; } : XOR_SYMBOL ^ logical_and_expression )* )
        // MySQL.g:1511:2: logical_and_expression ( options {greedy=true; } : XOR_SYMBOL ^ logical_and_expression )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_logical_and_expression_in_logical_xor_expression8362);
            logical_and_expression1687=logical_and_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulelogical_xor_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, logical_and_expression1687.tree);

            // MySQL.g:1511:25: ( options {greedy=true; } : XOR_SYMBOL ^ logical_and_expression )*

            for (;;)
            {
                int alt501=2;
                switch ( LA(1) )
                {
                case XOR_SYMBOL:
                	{
                		alt501=1;
                	}
                    break;

                }

                switch (alt501)
                {
            	case 1:
            	    // MySQL.g:1511:55: XOR_SYMBOL ^ logical_and_expression
            	    {
            	        XOR_SYMBOL1688 = (pANTLR3_COMMON_TOKEN) MATCHT(XOR_SYMBOL, &FOLLOW_XOR_SYMBOL_in_logical_xor_expression8378);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulelogical_xor_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        XOR_SYMBOL1688_tree = 
            	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, XOR_SYMBOL1688))
            	        ;
            	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, XOR_SYMBOL1688_tree, root_0));
            	        }

            	        FOLLOWPUSH(FOLLOW_logical_and_expression_in_logical_xor_expression8381);
            	        logical_and_expression1689=logical_and_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulelogical_xor_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, logical_and_expression1689.tree);

            	    }
            	    break;

            	default:
            	    goto loop501;	/* break out of the loop */
            	    break;
                }
            }
            loop501: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto rulelogical_xor_expressionEx; /* Prevent compiler warnings */
    rulelogical_xor_expressionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end logical_xor_expression */

/**
 * $ANTLR start logical_and_expression
 * MySQL.g:1514:1: logical_and_expression : logical_not_expression ( options {greedy=true; } : ( LOGICAL_AND_OPERATOR | AND_SYMBOL ) ^ logical_not_expression )* ;
 */
static MySQLParser_logical_and_expression_return
logical_and_expression(pMySQLParser ctx)
{
    MySQLParser_logical_and_expression_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set1691;
    MySQLParser_logical_not_expression_return logical_not_expression1690;
    #undef	RETURN_TYPE_logical_not_expression1690
    #define	RETURN_TYPE_logical_not_expression1690 MySQLParser_logical_not_expression_return

    MySQLParser_logical_not_expression_return logical_not_expression1692;
    #undef	RETURN_TYPE_logical_not_expression1692
    #define	RETURN_TYPE_logical_not_expression1692 MySQLParser_logical_not_expression_return

    pANTLR3_BASE_TREE set1691_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1691       = NULL;
    logical_not_expression1690.tree = NULL;

    logical_not_expression1692.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1691_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1514:23: ( logical_not_expression ( options {greedy=true; } : ( LOGICAL_AND_OPERATOR | AND_SYMBOL ) ^ logical_not_expression )* )
        // MySQL.g:1515:2: logical_not_expression ( options {greedy=true; } : ( LOGICAL_AND_OPERATOR | AND_SYMBOL ) ^ logical_not_expression )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_logical_not_expression_in_logical_and_expression8392);
            logical_not_expression1690=logical_not_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulelogical_and_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, logical_not_expression1690.tree);

            // MySQL.g:1515:25: ( options {greedy=true; } : ( LOGICAL_AND_OPERATOR | AND_SYMBOL ) ^ logical_not_expression )*

            for (;;)
            {
                int alt502=2;
                switch ( LA(1) )
                {
                case AND_SYMBOL:
                	{
                		alt502=1;
                	}
                    break;
                case LOGICAL_AND_OPERATOR:
                	{
                		alt502=1;
                	}
                    break;

                }

                switch (alt502)
                {
            	case 1:
            	    // MySQL.g:1515:55: ( LOGICAL_AND_OPERATOR | AND_SYMBOL ) ^ logical_not_expression
            	    {
            	        set1691=(pANTLR3_COMMON_TOKEN)LT(1);

            	        set1691=(pANTLR3_COMMON_TOKEN)LT(1);

            	        if ( LA(1) == AND_SYMBOL || LA(1) == LOGICAL_AND_OPERATOR )
            	        {
            	            CONSUME();
            	            if ( BACKTRACKING==0 ) root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, 
            	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1691))
            	            , root_0));
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	            CONSTRUCTEX();
            	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	            EXCEPTION->expectingSet = NULL;

            	            goto rulelogical_and_expressionEx;
            	        }


            	        FOLLOWPUSH(FOLLOW_logical_not_expression_in_logical_and_expression8417);
            	        logical_not_expression1692=logical_not_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulelogical_and_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, logical_not_expression1692.tree);

            	    }
            	    break;

            	default:
            	    goto loop502;	/* break out of the loop */
            	    break;
                }
            }
            loop502: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto rulelogical_and_expressionEx; /* Prevent compiler warnings */
    rulelogical_and_expressionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end logical_and_expression */

/**
 * $ANTLR start logical_not_expression
 * MySQL.g:1518:1: logical_not_expression : ( NOT_SYMBOL ^ logical_not_expression | boolean_primary_expression );
 */
static MySQLParser_logical_not_expression_return
logical_not_expression(pMySQLParser ctx)
{
    MySQLParser_logical_not_expression_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    NOT_SYMBOL1693;
    MySQLParser_logical_not_expression_return logical_not_expression1694;
    #undef	RETURN_TYPE_logical_not_expression1694
    #define	RETURN_TYPE_logical_not_expression1694 MySQLParser_logical_not_expression_return

    MySQLParser_boolean_primary_expression_return boolean_primary_expression1695;
    #undef	RETURN_TYPE_boolean_primary_expression1695
    #define	RETURN_TYPE_boolean_primary_expression1695 MySQLParser_boolean_primary_expression_return

    pANTLR3_BASE_TREE NOT_SYMBOL1693_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    NOT_SYMBOL1693       = NULL;
    logical_not_expression1694.tree = NULL;

    boolean_primary_expression1695.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    NOT_SYMBOL1693_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1518:23: ( NOT_SYMBOL ^ logical_not_expression | boolean_primary_expression )

            ANTLR3_UINT32 alt503;

            alt503=2;

            {
                int LA503_0 = LA(1);
                if ( (LA503_0 == NOT_SYMBOL))
                {
                    alt503=1;
                }
                else if ( (LA503_0 == BITWISE_NOT_OPERATOR || LA503_0 == DATE_SYMBOL || LA503_0 == INTERVAL_SYMBOL || LA503_0 == LOGICAL_NOT_OPERATOR || LA503_0 == MINUS_OPERATOR || LA503_0 == NCHAR_TEXT || LA503_0 == NOT2_SYMBOL || LA503_0 == PLUS_OPERATOR || LA503_0 == SINGLE_QUOTED_TEXT || ((LA503_0 >= TIMESTAMP_SYMBOL) && (LA503_0 <= TIME_SYMBOL)) || LA503_0 == UNDERSCORE_CHARSET))
                {
                    alt503=2;
                }
                else if ( ((((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)))||((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))) && (LA503_0 == DOUBLE_QUOTED_TEXT))
                {
                    alt503=2;
                }
                else if ( (LA503_0 == FALSE_SYMBOL || LA503_0 == FLOAT || ((LA503_0 >= HEXNUMBER) && (LA503_0 <= HEXSTRING)) || LA503_0 == INTEGER || LA503_0 == TRUE_SYMBOL))
                {
                    alt503=2;
                }
                else if ( ((SERVER_VERSION >= 50003)) && (((LA503_0 >= BITNUMBER) && (LA503_0 <= BITSTRING))))
                {
                    alt503=2;
                }
                else if ( (((LA503_0 >= ACTION_SYMBOL) && (LA503_0 <= ADDDATE_SYMBOL)) || ((LA503_0 >= AFTER_SYMBOL) && (LA503_0 <= ALGORITHM_SYMBOL)) || LA503_0 == ANALYZE_SYMBOL || ((LA503_0 >= ANY_SYMBOL) && (LA503_0 <= ASCII_SYMBOL)) || ((LA503_0 >= AT_AT_SIGN_SYMBOL) && (LA503_0 <= BACKUP_SYMBOL)) || LA503_0 == BACK_TICK_QUOTED_ID || LA503_0 == BEGIN_SYMBOL || ((LA503_0 >= BINARY_SYMBOL) && (LA503_0 <= BINLOG_SYMBOL)) || ((LA503_0 >= BIT_AND_SYMBOL) && (LA503_0 <= BIT_XOR_SYMBOL)) || ((LA503_0 >= BLOCK_SYMBOL) && (LA503_0 <= BOOL_SYMBOL)) || ((LA503_0 >= BTREE_SYMBOL) && (LA503_0 <= BYTE_SYMBOL)) || LA503_0 == CACHE_SYMBOL || LA503_0 == CASCADED_SYMBOL || ((LA503_0 >= CASE_SYMBOL) && (LA503_0 <= CHANGED_SYMBOL)) || ((LA503_0 >= CHARSET_SYMBOL) && (LA503_0 <= CHECKSUM_SYMBOL)) || ((LA503_0 >= CIPHER_SYMBOL) && (LA503_0 <= CLIENT_SYMBOL)) || ((LA503_0 >= CLOSE_SYMBOL) && (LA503_0 <= CODE_SYMBOL)) || LA503_0 == COLLATION_SYMBOL || ((LA503_0 >= COLUMNS_SYMBOL) && (LA503_0 <= COLUMN_NAME_SYMBOL)) || ((LA503_0 >= COMMENT_SYMBOL) && (LA503_0 <= COMPRESSED_SYMBOL)) || LA503_0 == CONCURRENT_SYMBOL || ((LA503_0 >= CONNECTION_SYMBOL) && (LA503_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA503_0 >= CONTAINS_SYMBOL) && (LA503_0 <= CONTEXT_SYMBOL)) || ((LA503_0 >= CONTRIBUTORS_SYMBOL) && (LA503_0 <= CPU_SYMBOL)) || ((LA503_0 >= CUBE_SYMBOL) && (LA503_0 <= CURRENT_SYMBOL)) || ((LA503_0 >= CURRENT_USER_SYMBOL) && (LA503_0 <= CURSOR_NAME_SYMBOL)) || LA503_0 == CURTIME_SYMBOL || ((LA503_0 >= DATABASE_SYMBOL) && (LA503_0 <= DATETIME_SYMBOL)) || LA503_0 == DATE_ADD_SYMBOL || LA503_0 == DATE_SUB_SYMBOL || ((LA503_0 >= DAY_SYMBOL) && (LA503_0 <= DEALLOCATE_SYMBOL)) || LA503_0 == DEFAULT_AUTH_SYMBOL || LA503_0 == DEFINER_SYMBOL || LA503_0 == DELAY_KEY_WRITE_SYMBOL || LA503_0 == DES_KEY_FILE_SYMBOL || LA503_0 == DIAGNOSTICS_SYMBOL || ((LA503_0 >= DIRECTORY_SYMBOL) && (LA503_0 <= DISK_SYMBOL)) || LA503_0 == DOT_SYMBOL || LA503_0 == DO_SYMBOL || ((LA503_0 >= DUMPFILE_SYMBOL) && (LA503_0 <= DYNAMIC_SYMBOL)) || LA503_0 == ENABLE_SYMBOL || LA503_0 == ENDS_SYMBOL || ((LA503_0 >= END_SYMBOL) && (LA503_0 <= ENUM_SYMBOL)) || ((LA503_0 >= ERRORS_SYMBOL) && (LA503_0 <= ERROR_SYMBOL)) || ((LA503_0 >= ESCAPE_SYMBOL) && (LA503_0 <= EVERY_SYMBOL)) || ((LA503_0 >= EXECUTE_SYMBOL) && (LA503_0 <= EXISTS_SYMBOL)) || LA503_0 == EXPANSION_SYMBOL || LA503_0 == EXPORT_SYMBOL || ((LA503_0 >= EXTENDED_SYMBOL) && (LA503_0 <= EXTRACT_SYMBOL)) || ((LA503_0 >= FAST_SYMBOL) && (LA503_0 <= FAULTS_SYMBOL)) || ((LA503_0 >= FILE_SYMBOL) && (LA503_0 <= FIXED_SYMBOL)) || LA503_0 == FLUSH_SYMBOL || LA503_0 == FORMAT_SYMBOL || LA503_0 == FOUND_SYMBOL || LA503_0 == FULL_SYMBOL || ((LA503_0 >= FUNCTION_SYMBOL) && (LA503_0 <= GET_FORMAT_SYMBOL)) || ((LA503_0 >= GLOBAL_SYMBOL) && (LA503_0 <= GRANTS_SYMBOL)) || LA503_0 == GROUP_CONCAT_SYMBOL || ((LA503_0 >= HANDLER_SYMBOL) && (LA503_0 <= HASH_SYMBOL)) || LA503_0 == HELP_SYMBOL || ((LA503_0 >= HOSTS_SYMBOL) && (LA503_0 <= HOST_SYMBOL)) || ((LA503_0 >= HOUR_SYMBOL) && (LA503_0 <= IGNORE_SERVER_IDS_SYMBOL)) || ((LA503_0 >= IMPORT_SYMBOL) && (LA503_0 <= INDEXES_SYMBOL)) || LA503_0 == INITIAL_SIZE_SYMBOL || LA503_0 == INNODB_SYMBOL || ((LA503_0 >= INSERT_METHOD_SYMBOL) && (LA503_0 <= INSTALL_SYMBOL)) || LA503_0 == INVOKER_SYMBOL || LA503_0 == IO_SYMBOL || ((LA503_0 >= IPC_SYMBOL) && (LA503_0 <= ISSUER_SYMBOL)) || LA503_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA503_0 >= LANGUAGE_SYMBOL) && (LA503_0 <= LAST_SYMBOL)) || LA503_0 == LEAVES_SYMBOL || LA503_0 == LEFT_SYMBOL || LA503_0 == LESS_SYMBOL || LA503_0 == LEVEL_SYMBOL || LA503_0 == LINESTRING_SYMBOL || LA503_0 == LIST_SYMBOL || LA503_0 == LOCAL_SYMBOL || LA503_0 == LOCKS_SYMBOL || LA503_0 == LOGFILE_SYMBOL || LA503_0 == LOGS_SYMBOL || LA503_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA503_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA503_0 <= MASTER_SSL_SYMBOL)) || ((LA503_0 >= MASTER_SYMBOL) && (LA503_0 <= MATCH_SYMBOL)) || ((LA503_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA503_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA503_0 >= MEDIUM_SYMBOL) && (LA503_0 <= MICROSECOND_SYMBOL)) || LA503_0 == MIGRATE_SYMBOL || ((LA503_0 >= MINUTE_SYMBOL) && (LA503_0 <= MIN_SYMBOL)) || LA503_0 == MODE_SYMBOL || LA503_0 == MODIFY_SYMBOL || ((LA503_0 >= MOD_SYMBOL) && (LA503_0 <= MULTILINESTRING_SYMBOL)) || ((LA503_0 >= MULTIPOINT_SYMBOL) && (LA503_0 <= MULTIPOLYGON_SYMBOL)) || ((LA503_0 >= MUTEX_SYMBOL) && (LA503_0 <= NATIONAL_SYMBOL)) || LA503_0 == NCHAR_SYMBOL || LA503_0 == NDBCLUSTER_SYMBOL || ((LA503_0 >= NEW_SYMBOL) && (LA503_0 <= NONE_SYMBOL)) || ((LA503_0 >= NOW_SYMBOL) && (LA503_0 <= NO_WAIT_SYMBOL)) || LA503_0 == NULL2_SYMBOL || ((LA503_0 >= NULL_SYMBOL) && (LA503_0 <= NUMBER_SYMBOL)) || LA503_0 == NVARCHAR_SYMBOL || ((LA503_0 >= OFFSET_SYMBOL) && (LA503_0 <= ONE_SYMBOL)) || ((LA503_0 >= OPEN_PAR_SYMBOL) && (LA503_0 <= OPEN_SYMBOL)) || LA503_0 == OPTIONS_SYMBOL || ((LA503_0 >= OWNER_SYMBOL) && (LA503_0 <= PARAM_MARKER)) || ((LA503_0 >= PARSER_SYMBOL) && (LA503_0 <= PARTITION_SYMBOL)) || ((LA503_0 >= PASSWORD_SYMBOL) && (LA503_0 <= PLUGIN_SYMBOL)) || ((LA503_0 >= POINT_SYMBOL) && (LA503_0 <= POSITION_SYMBOL)) || ((LA503_0 >= PREPARE_SYMBOL) && (LA503_0 <= PREV_SYMBOL)) || LA503_0 == PRIVILEGES_SYMBOL || ((LA503_0 >= PROCESSLIST_SYMBOL) && (LA503_0 <= PROXY_SYMBOL)) || ((LA503_0 >= QUARTER_SYMBOL) && (LA503_0 <= QUICK_SYMBOL)) || LA503_0 == READ_ONLY_SYMBOL || ((LA503_0 >= REBUILD_SYMBOL) && (LA503_0 <= REDUNDANT_SYMBOL)) || ((LA503_0 >= RELAYLOG_SYMBOL) && (LA503_0 <= RELAY_THREAD_SYMBOL)) || ((LA503_0 >= RELOAD_SYMBOL) && (LA503_0 <= REMOVE_SYMBOL)) || ((LA503_0 >= REORGANIZE_SYMBOL) && (LA503_0 <= REPLICATION_SYMBOL)) || LA503_0 == RESET_SYMBOL || LA503_0 == RESTORE_SYMBOL || ((LA503_0 >= RESUME_SYMBOL) && (LA503_0 <= RETURNS_SYMBOL)) || LA503_0 == REVERSE_SYMBOL || LA503_0 == RIGHT_SYMBOL || ((LA503_0 >= ROLLBACK_SYMBOL) && (LA503_0 <= SCHEDULE_SYMBOL)) || LA503_0 == SCHEMA_NAME_SYMBOL || ((LA503_0 >= SECOND_SYMBOL) && (LA503_0 <= SECURITY_SYMBOL)) || ((LA503_0 >= SERIALIZABLE_SYMBOL) && (LA503_0 <= SERIAL_SYMBOL)) || ((LA503_0 >= SERVER_SYMBOL) && (LA503_0 <= SESSION_SYMBOL)) || LA503_0 == SHARE_SYMBOL || LA503_0 == SHUTDOWN_SYMBOL || ((LA503_0 >= SIGNED_SYMBOL) && (LA503_0 <= SIMPLE_SYMBOL)) || ((LA503_0 >= SLAVE_SYMBOL) && (LA503_0 <= SLOW_SYMBOL)) || ((LA503_0 >= SNAPSHOT_SYMBOL) && (LA503_0 <= SOURCE_SYMBOL)) || ((LA503_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA503_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA503_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA503_0 <= SQL_CACHE_SYMBOL)) || LA503_0 == SQL_NO_CACHE_SYMBOL || LA503_0 == SQL_THREAD_SYMBOL || ((LA503_0 >= STARTS_SYMBOL) && (LA503_0 <= STATUS_SYMBOL)) || LA503_0 == STDDEV_SAMP_SYMBOL || ((LA503_0 >= STD_SYMBOL) && (LA503_0 <= STORAGE_SYMBOL)) || ((LA503_0 >= STRING_SYMBOL) && (LA503_0 <= SUBPARTITION_SYMBOL)) || LA503_0 == SUBSTRING_SYMBOL || ((LA503_0 >= SUM_SYMBOL) && (LA503_0 <= SYSDATE_SYMBOL)) || ((LA503_0 >= TABLESPACE_SYMBOL) && (LA503_0 <= TABLE_NAME_SYMBOL)) || ((LA503_0 >= TEMPORARY_SYMBOL) && (LA503_0 <= TEMPTABLE_SYMBOL)) || ((LA503_0 >= TEXT_SYMBOL) && (LA503_0 <= THAN_SYMBOL)) || ((LA503_0 >= TIMESTAMP_ADD_SYMBOL) && (LA503_0 <= TIMESTAMP_DIFF_SYMBOL)) || ((LA503_0 >= TRANSACTION_SYMBOL) && (LA503_0 <= TRIGGERS_SYMBOL)) || LA503_0 == TRIM_SYMBOL || ((LA503_0 >= TRUNCATE_SYMBOL) && (LA503_0 <= UDF_RETURNS_SYMBOL)) || ((LA503_0 >= UNCOMMITTED_SYMBOL) && (LA503_0 <= UNDEFINED_SYMBOL)) || ((LA503_0 >= UNDOFILE_SYMBOL) && (LA503_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA503_0 >= UNICODE_SYMBOL) && (LA503_0 <= UNINSTALL_SYMBOL)) || LA503_0 == UNKNOWN_SYMBOL || LA503_0 == UNTIL_SYMBOL || LA503_0 == UPGRADE_SYMBOL || ((LA503_0 >= USER_RESOURCES_SYMBOL) && (LA503_0 <= USE_FRM_SYMBOL)) || ((LA503_0 >= UTC_DATE_SYMBOL) && (LA503_0 <= VALUE_SYMBOL)) || ((LA503_0 >= VARIABLES_SYMBOL) && (LA503_0 <= VARIANCE_SYMBOL)) || LA503_0 == VAR_SAMP_SYMBOL || ((LA503_0 >= VIEW_SYMBOL) && (LA503_0 <= WEIGHT_STRING_SYMBOL)) || ((LA503_0 >= WORK_SYMBOL) && (LA503_0 <= WRAPPER_SYMBOL)) || LA503_0 == X509_SYMBOL || ((LA503_0 >= XA_SYMBOL) && (LA503_0 <= XML_SYMBOL)) || LA503_0 == YEAR_SYMBOL || LA503_0 == 732))
                {
                    alt503=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 503;
                    EXCEPTION->state        = 0;


                    goto rulelogical_not_expressionEx;

                }
            }
            switch (alt503)
            {
        	case 1:
        	    // MySQL.g:1519:2: NOT_SYMBOL ^ logical_not_expression
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NOT_SYMBOL1693 = (pANTLR3_COMMON_TOKEN) MATCHT(NOT_SYMBOL, &FOLLOW_NOT_SYMBOL_in_logical_not_expression8428);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelogical_not_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NOT_SYMBOL1693_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NOT_SYMBOL1693))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, NOT_SYMBOL1693_tree, root_0));
        	        }

        	        FOLLOWPUSH(FOLLOW_logical_not_expression_in_logical_not_expression8431);
        	        logical_not_expression1694=logical_not_expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelogical_not_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, logical_not_expression1694.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1520:4: boolean_primary_expression
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_boolean_primary_expression_in_logical_not_expression8436);
        	        boolean_primary_expression1695=boolean_primary_expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelogical_not_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, boolean_primary_expression1695.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulelogical_not_expressionEx; /* Prevent compiler warnings */
    rulelogical_not_expressionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end logical_not_expression */

/**
 * $ANTLR start boolean_primary_expression
 * MySQL.g:1523:1: boolean_primary_expression : predicate ( options {greedy=true; } : comparison_operator ^ ({...}? ( ALL_SYMBOL | ANY_SYMBOL ) subquery | predicate ) | ( options {greedy=true; } : IS_SYMBOL ^ ( NOT_SYMBOL )? ( null_literal | FALSE_SYMBOL | TRUE_SYMBOL | UNKNOWN_SYMBOL ) )+ )* ;
 */
static MySQLParser_boolean_primary_expression_return
boolean_primary_expression(pMySQLParser ctx)
{
    MySQLParser_boolean_primary_expression_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set1698;
    pANTLR3_COMMON_TOKEN    IS_SYMBOL1701;
    pANTLR3_COMMON_TOKEN    NOT_SYMBOL1702;
    pANTLR3_COMMON_TOKEN    FALSE_SYMBOL1704;
    pANTLR3_COMMON_TOKEN    TRUE_SYMBOL1705;
    pANTLR3_COMMON_TOKEN    UNKNOWN_SYMBOL1706;
    MySQLParser_predicate_return predicate1696;
    #undef	RETURN_TYPE_predicate1696
    #define	RETURN_TYPE_predicate1696 MySQLParser_predicate_return

    MySQLParser_comparison_operator_return comparison_operator1697;
    #undef	RETURN_TYPE_comparison_operator1697
    #define	RETURN_TYPE_comparison_operator1697 MySQLParser_comparison_operator_return

    MySQLParser_subquery_return subquery1699;
    #undef	RETURN_TYPE_subquery1699
    #define	RETURN_TYPE_subquery1699 MySQLParser_subquery_return

    MySQLParser_predicate_return predicate1700;
    #undef	RETURN_TYPE_predicate1700
    #define	RETURN_TYPE_predicate1700 MySQLParser_predicate_return

    MySQLParser_null_literal_return null_literal1703;
    #undef	RETURN_TYPE_null_literal1703
    #define	RETURN_TYPE_null_literal1703 MySQLParser_null_literal_return

    pANTLR3_BASE_TREE set1698_tree;
    pANTLR3_BASE_TREE IS_SYMBOL1701_tree;
    pANTLR3_BASE_TREE NOT_SYMBOL1702_tree;
    pANTLR3_BASE_TREE FALSE_SYMBOL1704_tree;
    pANTLR3_BASE_TREE TRUE_SYMBOL1705_tree;
    pANTLR3_BASE_TREE UNKNOWN_SYMBOL1706_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1698       = NULL;
    IS_SYMBOL1701       = NULL;
    NOT_SYMBOL1702       = NULL;
    FALSE_SYMBOL1704       = NULL;
    TRUE_SYMBOL1705       = NULL;
    UNKNOWN_SYMBOL1706       = NULL;
    predicate1696.tree = NULL;

    comparison_operator1697.tree = NULL;

    subquery1699.tree = NULL;

    predicate1700.tree = NULL;

    null_literal1703.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1698_tree   = NULL;
    IS_SYMBOL1701_tree   = NULL;
    NOT_SYMBOL1702_tree   = NULL;
    FALSE_SYMBOL1704_tree   = NULL;
    TRUE_SYMBOL1705_tree   = NULL;
    UNKNOWN_SYMBOL1706_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1523:27: ( predicate ( options {greedy=true; } : comparison_operator ^ ({...}? ( ALL_SYMBOL | ANY_SYMBOL ) subquery | predicate ) | ( options {greedy=true; } : IS_SYMBOL ^ ( NOT_SYMBOL )? ( null_literal | FALSE_SYMBOL | TRUE_SYMBOL | UNKNOWN_SYMBOL ) )+ )* )
        // MySQL.g:1524:2: predicate ( options {greedy=true; } : comparison_operator ^ ({...}? ( ALL_SYMBOL | ANY_SYMBOL ) subquery | predicate ) | ( options {greedy=true; } : IS_SYMBOL ^ ( NOT_SYMBOL )? ( null_literal | FALSE_SYMBOL | TRUE_SYMBOL | UNKNOWN_SYMBOL ) )+ )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_predicate_in_boolean_primary_expression8445);
            predicate1696=predicate(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleboolean_primary_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, predicate1696.tree);

            // MySQL.g:1525:3: ( options {greedy=true; } : comparison_operator ^ ({...}? ( ALL_SYMBOL | ANY_SYMBOL ) subquery | predicate ) | ( options {greedy=true; } : IS_SYMBOL ^ ( NOT_SYMBOL )? ( null_literal | FALSE_SYMBOL | TRUE_SYMBOL | UNKNOWN_SYMBOL ) )+ )*

            for (;;)
            {
                int alt508=3;
                switch ( LA(1) )
                {
                case EQUAL_OPERATOR:
                	{
                		alt508=1;
                	}
                    break;
                case IS_SYMBOL:
                	{
                		alt508=2;
                	}
                    break;
                case GREATER_OR_EQUAL_OPERATOR:
                case GREATER_THAN_OPERATOR:
                case LESS_OR_EQUAL_OPERATOR:
                case LESS_THAN_OPERATOR:
                case NOT_EQUAL2_OPERATOR:
                case NOT_EQUAL_OPERATOR:
                case NULL_SAFE_EQUAL_OPERATOR:
                	{
                		alt508=1;
                	}
                    break;

                }

                switch (alt508)
                {
            	case 1:
            	    // MySQL.g:1526:4: comparison_operator ^ ({...}? ( ALL_SYMBOL | ANY_SYMBOL ) subquery | predicate )
            	    {
            	        FOLLOWPUSH(FOLLOW_comparison_operator_in_boolean_primary_expression8467);
            	        comparison_operator1697=comparison_operator(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleboolean_primary_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, comparison_operator1697.tree, root_0));

            	        // MySQL.g:1527:4: ({...}? ( ALL_SYMBOL | ANY_SYMBOL ) subquery | predicate )
            	        {
            	            int alt504=2;
            	            {
            	                int LA504_0 = LA(1);
            	                if ( (LA504_0 == ANY_SYMBOL))
            	                {
            	                    switch ( LA(2) )
            	                    {
            	                    case OPEN_PAR_SYMBOL:
            	                    	{
            	                    		{
            	                    		    int LA504_103 = LA(3);
            	                    		    if ( ((LA(1) == ALL_SYMBOL || LA(1) == ANY_SYMBOL)))
            	                    		    {
            	                    		        alt504=1;
            	                    		    }
            	                    		    else if ( (ANTLR3_TRUE))
            	                    		    {
            	                    		        alt504=2;
            	                    		    }
            	                    		    else
            	                    		    {
            	                    		        if (BACKTRACKING>0)
            	                    		        {
            	                    		            FAILEDFLAG = ANTLR3_TRUE;
            	                    		            return retval;
            	                    		        }


            	                    		        CONSTRUCTEX();
            	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    		        EXCEPTION->message      = (void *)"";
            	                    		        EXCEPTION->decisionNum  = 504;
            	                    		        EXCEPTION->state        = 103;


            	                    		        goto ruleboolean_primary_expressionEx;

            	                    		    }
            	                    		}
            	                    	}
            	                        break;
            	                    case EOF:
            	                    case ACTION_SYMBOL:
            	                    case ADDDATE_SYMBOL:
            	                    case AFTER_SYMBOL:
            	                    case AGAINST_SYMBOL:
            	                    case AGGREGATE_SYMBOL:
            	                    case ALGORITHM_SYMBOL:
            	                    case ANALYZE_SYMBOL:
            	                    case AND_SYMBOL:
            	                    case ANY_SYMBOL:
            	                    case ASCII_SYMBOL:
            	                    case ASC_SYMBOL:
            	                    case AS_SYMBOL:
            	                    case AT_SYMBOL:
            	                    case AUTHORS_SYMBOL:
            	                    case AUTOEXTEND_SIZE_SYMBOL:
            	                    case AUTO_INCREMENT_SYMBOL:
            	                    case AVG_ROW_LENGTH_SYMBOL:
            	                    case AVG_SYMBOL:
            	                    case BACKUP_SYMBOL:
            	                    case BACK_TICK_QUOTED_ID:
            	                    case BEGIN_SYMBOL:
            	                    case BETWEEN_SYMBOL:
            	                    case BINLOG_SYMBOL:
            	                    case BITWISE_AND_OPERATOR:
            	                    case BITWISE_OR_OPERATOR:
            	                    case BITWISE_XOR_OPERATOR:
            	                    case BIT_SYMBOL:
            	                    case BLOCK_SYMBOL:
            	                    case BOOLEAN_SYMBOL:
            	                    case BOOL_SYMBOL:
            	                    case BTREE_SYMBOL:
            	                    case BYTE_SYMBOL:
            	                    case CACHE_SYMBOL:
            	                    case CASCADED_SYMBOL:
            	                    case CATALOG_NAME_SYMBOL:
            	                    case CHAIN_SYMBOL:
            	                    case CHANGED_SYMBOL:
            	                    case CHARSET_SYMBOL:
            	                    case CHECKSUM_SYMBOL:
            	                    case CIPHER_SYMBOL:
            	                    case CLASS_ORIGIN_SYMBOL:
            	                    case CLIENT_SYMBOL:
            	                    case CLOSE_PAR_SYMBOL:
            	                    case CLOSE_SYMBOL:
            	                    case COALESCE_SYMBOL:
            	                    case CODE_SYMBOL:
            	                    case COLLATE_SYMBOL:
            	                    case COLLATION_SYMBOL:
            	                    case COLUMNS_SYMBOL:
            	                    case COLUMN_FORMAT_SYMBOL:
            	                    case COLUMN_NAME_SYMBOL:
            	                    case COMMA_SYMBOL:
            	                    case COMMENT_SYMBOL:
            	                    case COMMITTED_SYMBOL:
            	                    case COMMIT_SYMBOL:
            	                    case COMPACT_SYMBOL:
            	                    case COMPLETION_SYMBOL:
            	                    case COMPRESSED_SYMBOL:
            	                    case CONCAT_PIPES_SYMBOL:
            	                    case CONCURRENT_SYMBOL:
            	                    case CONNECTION_SYMBOL:
            	                    case CONSISTENT_SYMBOL:
            	                    case CONSTRAINT_CATALOG_SYMBOL:
            	                    case CONSTRAINT_NAME_SYMBOL:
            	                    case CONSTRAINT_SCHEMA_SYMBOL:
            	                    case CONTAINS_SYMBOL:
            	                    case CONTEXT_SYMBOL:
            	                    case CONTRIBUTORS_SYMBOL:
            	                    case CPU_SYMBOL:
            	                    case CROSS_SYMBOL:
            	                    case CUBE_SYMBOL:
            	                    case CURRENT_SYMBOL:
            	                    case CURSOR_NAME_SYMBOL:
            	                    case DATAFILE_SYMBOL:
            	                    case DATA_SYMBOL:
            	                    case DATETIME_SYMBOL:
            	                    case DATE_SYMBOL:
            	                    case DAY_HOUR_SYMBOL:
            	                    case DAY_MICROSECOND_SYMBOL:
            	                    case DAY_MINUTE_SYMBOL:
            	                    case DAY_SECOND_SYMBOL:
            	                    case DAY_SYMBOL:
            	                    case DEALLOCATE_SYMBOL:
            	                    case DEFAULT_AUTH_SYMBOL:
            	                    case DEFINER_SYMBOL:
            	                    case DELAY_KEY_WRITE_SYMBOL:
            	                    case DESC_SYMBOL:
            	                    case DES_KEY_FILE_SYMBOL:
            	                    case DIAGNOSTICS_SYMBOL:
            	                    case DIRECTORY_SYMBOL:
            	                    case DISABLE_SYMBOL:
            	                    case DISCARD_SYMBOL:
            	                    case DISK_SYMBOL:
            	                    case DIV_OPERATOR:
            	                    case DIV_SYMBOL:
            	                    case DOT_SYMBOL:
            	                    case DOUBLE_QUOTED_TEXT:
            	                    case DO_SYMBOL:
            	                    case DUMPFILE_SYMBOL:
            	                    case DUPLICATE_SYMBOL:
            	                    case DYNAMIC_SYMBOL:
            	                    case ELSE_SYMBOL:
            	                    case ENABLE_SYMBOL:
            	                    case ENDS_SYMBOL:
            	                    case END_SYMBOL:
            	                    case ENGINES_SYMBOL:
            	                    case ENGINE_SYMBOL:
            	                    case ENUM_SYMBOL:
            	                    case EQUAL_OPERATOR:
            	                    case ERRORS_SYMBOL:
            	                    case ERROR_SYMBOL:
            	                    case ESCAPE_SYMBOL:
            	                    case EVENTS_SYMBOL:
            	                    case EVENT_SYMBOL:
            	                    case EVERY_SYMBOL:
            	                    case EXECUTE_SYMBOL:
            	                    case EXPANSION_SYMBOL:
            	                    case EXPORT_SYMBOL:
            	                    case EXTENDED_SYMBOL:
            	                    case EXTENT_SIZE_SYMBOL:
            	                    case FAST_SYMBOL:
            	                    case FAULTS_SYMBOL:
            	                    case FILE_SYMBOL:
            	                    case FIRST_SYMBOL:
            	                    case FIXED_SYMBOL:
            	                    case FLUSH_SYMBOL:
            	                    case FORMAT_SYMBOL:
            	                    case FOR_SYMBOL:
            	                    case FOUND_SYMBOL:
            	                    case FRAC_SECOND_SYMBOL:
            	                    case FROM_SYMBOL:
            	                    case FULL_SYMBOL:
            	                    case FUNCTION_SYMBOL:
            	                    case GENERAL_SYMBOL:
            	                    case GEOMETRYCOLLECTION_SYMBOL:
            	                    case GEOMETRY_SYMBOL:
            	                    case GET_FORMAT_SYMBOL:
            	                    case GLOBAL_SYMBOL:
            	                    case GRANTS_SYMBOL:
            	                    case GREATER_OR_EQUAL_OPERATOR:
            	                    case GREATER_THAN_OPERATOR:
            	                    case GROUP_SYMBOL:
            	                    case HANDLER_SYMBOL:
            	                    case HASH_SYMBOL:
            	                    case HAVING_SYMBOL:
            	                    case HELP_SYMBOL:
            	                    case HOSTS_SYMBOL:
            	                    case HOST_SYMBOL:
            	                    case HOUR_MICROSECOND_SYMBOL:
            	                    case HOUR_MINUTE_SYMBOL:
            	                    case HOUR_SECOND_SYMBOL:
            	                    case HOUR_SYMBOL:
            	                    case IDENTIFIED_SYMBOL:
            	                    case IDENTIFIER:
            	                    case IGNORE_SERVER_IDS_SYMBOL:
            	                    case IMPORT_SYMBOL:
            	                    case INDEXES_SYMBOL:
            	                    case INITIAL_SIZE_SYMBOL:
            	                    case INNER_SYMBOL:
            	                    case INNODB_SYMBOL:
            	                    case INSERT_METHOD_SYMBOL:
            	                    case INSTALL_SYMBOL:
            	                    case INTO_SYMBOL:
            	                    case INVOKER_SYMBOL:
            	                    case IN_SYMBOL:
            	                    case IO_SYMBOL:
            	                    case IPC_SYMBOL:
            	                    case ISOLATION_SYMBOL:
            	                    case ISSUER_SYMBOL:
            	                    case IS_SYMBOL:
            	                    case JOIN_SYMBOL:
            	                    case KEY_BLOCK_SIZE_SYMBOL:
            	                    case LANGUAGE_SYMBOL:
            	                    case LAST_SYMBOL:
            	                    case LEAVES_SYMBOL:
            	                    case LEFT_SYMBOL:
            	                    case LESS_OR_EQUAL_OPERATOR:
            	                    case LESS_SYMBOL:
            	                    case LESS_THAN_OPERATOR:
            	                    case LEVEL_SYMBOL:
            	                    case LIKE_SYMBOL:
            	                    case LIMIT_SYMBOL:
            	                    case LINESTRING_SYMBOL:
            	                    case LIST_SYMBOL:
            	                    case LOCAL_SYMBOL:
            	                    case LOCKS_SYMBOL:
            	                    case LOCK_SYMBOL:
            	                    case LOGFILE_SYMBOL:
            	                    case LOGICAL_AND_OPERATOR:
            	                    case LOGICAL_OR_OPERATOR:
            	                    case LOGS_SYMBOL:
            	                    case MASTER_AUTO_POSITION_SYMBOL:
            	                    case MASTER_CONNECT_RETRY_SYMBOL:
            	                    case MASTER_DELAY_SYMBOL:
            	                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
            	                    case MASTER_HOST_SYMBOL:
            	                    case MASTER_LOG_FILE_SYMBOL:
            	                    case MASTER_LOG_POS_SYMBOL:
            	                    case MASTER_PASSWORD_SYMBOL:
            	                    case MASTER_PORT_SYMBOL:
            	                    case MASTER_RETRY_COUNT_SYMBOL:
            	                    case MASTER_SERVER_ID_SYMBOL:
            	                    case MASTER_SSL_CAPATH_SYMBOL:
            	                    case MASTER_SSL_CA_SYMBOL:
            	                    case MASTER_SSL_CERT_SYMBOL:
            	                    case MASTER_SSL_CIPHER_SYMBOL:
            	                    case MASTER_SSL_CRLPATH_SYMBOL:
            	                    case MASTER_SSL_CRL_SYMBOL:
            	                    case MASTER_SSL_KEY_SYMBOL:
            	                    case MASTER_SSL_SYMBOL:
            	                    case MASTER_SYMBOL:
            	                    case MASTER_USER_SYMBOL:
            	                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
            	                    case MAX_QUERIES_PER_HOUR_SYMBOL:
            	                    case MAX_ROWS_SYMBOL:
            	                    case MAX_SIZE_SYMBOL:
            	                    case MAX_UPDATES_PER_HOUR_SYMBOL:
            	                    case MAX_USER_CONNECTIONS_SYMBOL:
            	                    case MEDIUM_SYMBOL:
            	                    case MEMORY_SYMBOL:
            	                    case MERGE_SYMBOL:
            	                    case MESSAGE_TEXT_SYMBOL:
            	                    case MICROSECOND_SYMBOL:
            	                    case MIGRATE_SYMBOL:
            	                    case MINUS_OPERATOR:
            	                    case MINUTE_MICROSECOND_SYMBOL:
            	                    case MINUTE_SECOND_SYMBOL:
            	                    case MINUTE_SYMBOL:
            	                    case MIN_ROWS_SYMBOL:
            	                    case MODE_SYMBOL:
            	                    case MODIFY_SYMBOL:
            	                    case MOD_OPERATOR:
            	                    case MOD_SYMBOL:
            	                    case MONTH_SYMBOL:
            	                    case MULTILINESTRING_SYMBOL:
            	                    case MULTIPOINT_SYMBOL:
            	                    case MULTIPOLYGON_SYMBOL:
            	                    case MULT_OPERATOR:
            	                    case MUTEX_SYMBOL:
            	                    case MYSQL_ERRNO_SYMBOL:
            	                    case NAMES_SYMBOL:
            	                    case NAME_SYMBOL:
            	                    case NATIONAL_SYMBOL:
            	                    case NATURAL_SYMBOL:
            	                    case NCHAR_SYMBOL:
            	                    case NCHAR_TEXT:
            	                    case NDBCLUSTER_SYMBOL:
            	                    case NEW_SYMBOL:
            	                    case NEXT_SYMBOL:
            	                    case NODEGROUP_SYMBOL:
            	                    case NONE_SYMBOL:
            	                    case NOT_EQUAL2_OPERATOR:
            	                    case NOT_EQUAL_OPERATOR:
            	                    case NOT_SYMBOL:
            	                    case NO_SYMBOL:
            	                    case NO_WAIT_SYMBOL:
            	                    case NULL_SAFE_EQUAL_OPERATOR:
            	                    case NUMBER_SYMBOL:
            	                    case NVARCHAR_SYMBOL:
            	                    case OFFSET_SYMBOL:
            	                    case OLD_PASSWORD_SYMBOL:
            	                    case ONE_SHOT_SYMBOL:
            	                    case ONE_SYMBOL:
            	                    case ON_SYMBOL:
            	                    case OPEN_SYMBOL:
            	                    case OPTIONS_SYMBOL:
            	                    case ORDER_SYMBOL:
            	                    case OR_SYMBOL:
            	                    case OWNER_SYMBOL:
            	                    case PACK_KEYS_SYMBOL:
            	                    case PAGE_SYMBOL:
            	                    case PARSER_SYMBOL:
            	                    case PARTIAL_SYMBOL:
            	                    case PARTITIONING_SYMBOL:
            	                    case PARTITIONS_SYMBOL:
            	                    case PARTITION_SYMBOL:
            	                    case PASSWORD_SYMBOL:
            	                    case PHASE_SYMBOL:
            	                    case PLUGINS_SYMBOL:
            	                    case PLUGIN_DIR_SYMBOL:
            	                    case PLUGIN_SYMBOL:
            	                    case PLUS_OPERATOR:
            	                    case POINT_SYMBOL:
            	                    case POLYGON_SYMBOL:
            	                    case PORT_SYMBOL:
            	                    case PREPARE_SYMBOL:
            	                    case PRESERVE_SYMBOL:
            	                    case PREV_SYMBOL:
            	                    case PRIVILEGES_SYMBOL:
            	                    case PROCEDURE_SYMBOL:
            	                    case PROCESSLIST_SYMBOL:
            	                    case PROCESS_SYMBOL:
            	                    case PROFILES_SYMBOL:
            	                    case PROFILE_SYMBOL:
            	                    case PROXY_SYMBOL:
            	                    case QUARTER_SYMBOL:
            	                    case QUERY_SYMBOL:
            	                    case QUICK_SYMBOL:
            	                    case READ_ONLY_SYMBOL:
            	                    case REBUILD_SYMBOL:
            	                    case RECOVER_SYMBOL:
            	                    case REDOFILE_SYMBOL:
            	                    case REDO_BUFFER_SIZE_SYMBOL:
            	                    case REDUNDANT_SYMBOL:
            	                    case REGEXP_SYMBOL:
            	                    case RELAYLOG_SYMBOL:
            	                    case RELAY_LOG_FILE_SYMBOL:
            	                    case RELAY_LOG_POS_SYMBOL:
            	                    case RELAY_SYMBOL:
            	                    case RELAY_THREAD_SYMBOL:
            	                    case RELOAD_SYMBOL:
            	                    case REMOVE_SYMBOL:
            	                    case RENAME_SYMBOL:
            	                    case REORGANIZE_SYMBOL:
            	                    case REPAIR_SYMBOL:
            	                    case REPEATABLE_SYMBOL:
            	                    case REPLICATION_SYMBOL:
            	                    case RESET_SYMBOL:
            	                    case RESTORE_SYMBOL:
            	                    case RESUME_SYMBOL:
            	                    case RETURNED_SQLSTATE_SYMBOL:
            	                    case RETURNS_SYMBOL:
            	                    case REVERSE_SYMBOL:
            	                    case RIGHT_SYMBOL:
            	                    case ROLLBACK_SYMBOL:
            	                    case ROLLUP_SYMBOL:
            	                    case ROUTINE_SYMBOL:
            	                    case ROWS_SYMBOL:
            	                    case ROW_COUNT_SYMBOL:
            	                    case ROW_FORMAT_SYMBOL:
            	                    case ROW_SYMBOL:
            	                    case RTREE_SYMBOL:
            	                    case SAVEPOINT_SYMBOL:
            	                    case SCHEDULE_SYMBOL:
            	                    case SCHEMA_NAME_SYMBOL:
            	                    case SECOND_MICROSECOND_SYMBOL:
            	                    case SECOND_SYMBOL:
            	                    case SECURITY_SYMBOL:
            	                    case SEMICOLON_SYMBOL:
            	                    case SEPARATOR_SYMBOL:
            	                    case SERIALIZABLE_SYMBOL:
            	                    case SERIAL_SYMBOL:
            	                    case SERVER_SYMBOL:
            	                    case SESSION_SYMBOL:
            	                    case SET_SYMBOL:
            	                    case SHARE_SYMBOL:
            	                    case SHIFT_LEFT_OPERATOR:
            	                    case SHIFT_RIGHT_OPERATOR:
            	                    case SHUTDOWN_SYMBOL:
            	                    case SIGNED_SYMBOL:
            	                    case SIMPLE_SYMBOL:
            	                    case SINGLE_QUOTED_TEXT:
            	                    case SLAVE_SYMBOL:
            	                    case SLOW_SYMBOL:
            	                    case SNAPSHOT_SYMBOL:
            	                    case SOCKET_SYMBOL:
            	                    case SONAME_SYMBOL:
            	                    case SOUNDS_SYMBOL:
            	                    case SOURCE_SYMBOL:
            	                    case SQL_AFTER_GTIDS_SYMBOL:
            	                    case SQL_AFTER_MTS_GAPS_SYMBOL:
            	                    case SQL_BEFORE_GTIDS_SYMBOL:
            	                    case SQL_BUFFER_RESULT_SYMBOL:
            	                    case SQL_CACHE_SYMBOL:
            	                    case SQL_NO_CACHE_SYMBOL:
            	                    case SQL_THREAD_SYMBOL:
            	                    case STARTS_SYMBOL:
            	                    case START_SYMBOL:
            	                    case STATS_AUTO_RECALC_SYMBOL:
            	                    case STATS_PERSISTENT_SYMBOL:
            	                    case STATS_SAMPLE_PAGES_SYMBOL:
            	                    case STATUS_SYMBOL:
            	                    case STOP_SYMBOL:
            	                    case STORAGE_SYMBOL:
            	                    case STRAIGHT_JOIN_SYMBOL:
            	                    case STRING_SYMBOL:
            	                    case SUBCLASS_ORIGIN_SYMBOL:
            	                    case SUBDATE_SYMBOL:
            	                    case SUBJECT_SYMBOL:
            	                    case SUBPARTITIONS_SYMBOL:
            	                    case SUBPARTITION_SYMBOL:
            	                    case SUPER_SYMBOL:
            	                    case SUSPEND_SYMBOL:
            	                    case SWAPS_SYMBOL:
            	                    case SWITCHES_SYMBOL:
            	                    case TABLESPACE_SYMBOL:
            	                    case TABLES_SYMBOL:
            	                    case TABLE_CHECKSUM_SYMBOL:
            	                    case TABLE_NAME_SYMBOL:
            	                    case TEMPORARY_SYMBOL:
            	                    case TEMPTABLE_SYMBOL:
            	                    case TEXT_SYMBOL:
            	                    case THAN_SYMBOL:
            	                    case THEN_SYMBOL:
            	                    case TIMESTAMP_ADD_SYMBOL:
            	                    case TIMESTAMP_DIFF_SYMBOL:
            	                    case TIMESTAMP_SYMBOL:
            	                    case TIME_SYMBOL:
            	                    case TRANSACTION_SYMBOL:
            	                    case TRIGGERS_SYMBOL:
            	                    case TRUNCATE_SYMBOL:
            	                    case TYPES_SYMBOL:
            	                    case TYPE_SYMBOL:
            	                    case UDF_RETURNS_SYMBOL:
            	                    case UNCOMMITTED_SYMBOL:
            	                    case UNDEFINED_SYMBOL:
            	                    case UNDERSCORE_CHARSET:
            	                    case UNDOFILE_SYMBOL:
            	                    case UNDO_BUFFER_SIZE_SYMBOL:
            	                    case UNICODE_SYMBOL:
            	                    case UNINSTALL_SYMBOL:
            	                    case UNION_SYMBOL:
            	                    case UNKNOWN_SYMBOL:
            	                    case UNTIL_SYMBOL:
            	                    case UPGRADE_SYMBOL:
            	                    case USER_RESOURCES_SYMBOL:
            	                    case USER_SYMBOL:
            	                    case USE_FRM_SYMBOL:
            	                    case USING_SYMBOL:
            	                    case VALUE_SYMBOL:
            	                    case VARIABLES_SYMBOL:
            	                    case VIEW_SYMBOL:
            	                    case WAIT_SYMBOL:
            	                    case WARNINGS_SYMBOL:
            	                    case WEEK_SYMBOL:
            	                    case WEIGHT_STRING_SYMBOL:
            	                    case WHEN_SYMBOL:
            	                    case WHERE_SYMBOL:
            	                    case WITH_SYMBOL:
            	                    case WORK_SYMBOL:
            	                    case WRAPPER_SYMBOL:
            	                    case X509_SYMBOL:
            	                    case XA_SYMBOL:
            	                    case XML_SYMBOL:
            	                    case XOR_SYMBOL:
            	                    case YEAR_MONTH_SYMBOL:
            	                    case YEAR_SYMBOL:
            	                    case 733:
            	                    	{
            	                    		alt504=2;
            	                    	}
            	                        break;

            	                    default:
            	                        if (BACKTRACKING>0)
            	                        {
            	                            FAILEDFLAG = ANTLR3_TRUE;
            	                            return retval;
            	                        }

            	                        CONSTRUCTEX();
            	                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                        EXCEPTION->message      = (void *)"";
            	                        EXCEPTION->decisionNum  = 504;
            	                        EXCEPTION->state        = 1;


            	                        goto ruleboolean_primary_expressionEx;

            	                    }

            	                }
            	                else if ( (LA504_0 == BITWISE_NOT_OPERATOR || LA504_0 == DATE_SYMBOL || LA504_0 == INTERVAL_SYMBOL || LA504_0 == LOGICAL_NOT_OPERATOR || LA504_0 == MINUS_OPERATOR || LA504_0 == NCHAR_TEXT || LA504_0 == NOT2_SYMBOL || LA504_0 == PLUS_OPERATOR || LA504_0 == SINGLE_QUOTED_TEXT || ((LA504_0 >= TIMESTAMP_SYMBOL) && (LA504_0 <= TIME_SYMBOL)) || LA504_0 == UNDERSCORE_CHARSET))
            	                {
            	                    alt504=2;
            	                }
            	                else if ( ((((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)))||((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))) && (LA504_0 == DOUBLE_QUOTED_TEXT))
            	                {
            	                    alt504=2;
            	                }
            	                else if ( (LA504_0 == FALSE_SYMBOL || LA504_0 == FLOAT || ((LA504_0 >= HEXNUMBER) && (LA504_0 <= HEXSTRING)) || LA504_0 == INTEGER || LA504_0 == TRUE_SYMBOL))
            	                {
            	                    alt504=2;
            	                }
            	                else if ( ((SERVER_VERSION >= 50003)) && (((LA504_0 >= BITNUMBER) && (LA504_0 <= BITSTRING))))
            	                {
            	                    alt504=2;
            	                }
            	                else if ( (((LA504_0 >= ACTION_SYMBOL) && (LA504_0 <= ADDDATE_SYMBOL)) || ((LA504_0 >= AFTER_SYMBOL) && (LA504_0 <= ALGORITHM_SYMBOL)) || LA504_0 == ANALYZE_SYMBOL || LA504_0 == ASCII_SYMBOL || ((LA504_0 >= AT_AT_SIGN_SYMBOL) && (LA504_0 <= BACKUP_SYMBOL)) || LA504_0 == BACK_TICK_QUOTED_ID || LA504_0 == BEGIN_SYMBOL || ((LA504_0 >= BINARY_SYMBOL) && (LA504_0 <= BINLOG_SYMBOL)) || ((LA504_0 >= BIT_AND_SYMBOL) && (LA504_0 <= BIT_XOR_SYMBOL)) || ((LA504_0 >= BLOCK_SYMBOL) && (LA504_0 <= BOOL_SYMBOL)) || ((LA504_0 >= BTREE_SYMBOL) && (LA504_0 <= BYTE_SYMBOL)) || LA504_0 == CACHE_SYMBOL || LA504_0 == CASCADED_SYMBOL || ((LA504_0 >= CASE_SYMBOL) && (LA504_0 <= CHANGED_SYMBOL)) || ((LA504_0 >= CHARSET_SYMBOL) && (LA504_0 <= CHECKSUM_SYMBOL)) || ((LA504_0 >= CIPHER_SYMBOL) && (LA504_0 <= CLIENT_SYMBOL)) || ((LA504_0 >= CLOSE_SYMBOL) && (LA504_0 <= CODE_SYMBOL)) || LA504_0 == COLLATION_SYMBOL || ((LA504_0 >= COLUMNS_SYMBOL) && (LA504_0 <= COLUMN_NAME_SYMBOL)) || ((LA504_0 >= COMMENT_SYMBOL) && (LA504_0 <= COMPRESSED_SYMBOL)) || LA504_0 == CONCURRENT_SYMBOL || ((LA504_0 >= CONNECTION_SYMBOL) && (LA504_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA504_0 >= CONTAINS_SYMBOL) && (LA504_0 <= CONTEXT_SYMBOL)) || ((LA504_0 >= CONTRIBUTORS_SYMBOL) && (LA504_0 <= CPU_SYMBOL)) || ((LA504_0 >= CUBE_SYMBOL) && (LA504_0 <= CURRENT_SYMBOL)) || ((LA504_0 >= CURRENT_USER_SYMBOL) && (LA504_0 <= CURSOR_NAME_SYMBOL)) || LA504_0 == CURTIME_SYMBOL || ((LA504_0 >= DATABASE_SYMBOL) && (LA504_0 <= DATETIME_SYMBOL)) || LA504_0 == DATE_ADD_SYMBOL || LA504_0 == DATE_SUB_SYMBOL || ((LA504_0 >= DAY_SYMBOL) && (LA504_0 <= DEALLOCATE_SYMBOL)) || LA504_0 == DEFAULT_AUTH_SYMBOL || LA504_0 == DEFINER_SYMBOL || LA504_0 == DELAY_KEY_WRITE_SYMBOL || LA504_0 == DES_KEY_FILE_SYMBOL || LA504_0 == DIAGNOSTICS_SYMBOL || ((LA504_0 >= DIRECTORY_SYMBOL) && (LA504_0 <= DISK_SYMBOL)) || LA504_0 == DOT_SYMBOL || LA504_0 == DO_SYMBOL || ((LA504_0 >= DUMPFILE_SYMBOL) && (LA504_0 <= DYNAMIC_SYMBOL)) || LA504_0 == ENABLE_SYMBOL || LA504_0 == ENDS_SYMBOL || ((LA504_0 >= END_SYMBOL) && (LA504_0 <= ENUM_SYMBOL)) || ((LA504_0 >= ERRORS_SYMBOL) && (LA504_0 <= ERROR_SYMBOL)) || ((LA504_0 >= ESCAPE_SYMBOL) && (LA504_0 <= EVERY_SYMBOL)) || ((LA504_0 >= EXECUTE_SYMBOL) && (LA504_0 <= EXISTS_SYMBOL)) || LA504_0 == EXPANSION_SYMBOL || LA504_0 == EXPORT_SYMBOL || ((LA504_0 >= EXTENDED_SYMBOL) && (LA504_0 <= EXTRACT_SYMBOL)) || ((LA504_0 >= FAST_SYMBOL) && (LA504_0 <= FAULTS_SYMBOL)) || ((LA504_0 >= FILE_SYMBOL) && (LA504_0 <= FIXED_SYMBOL)) || LA504_0 == FLUSH_SYMBOL || LA504_0 == FORMAT_SYMBOL || LA504_0 == FOUND_SYMBOL || LA504_0 == FULL_SYMBOL || ((LA504_0 >= FUNCTION_SYMBOL) && (LA504_0 <= GET_FORMAT_SYMBOL)) || ((LA504_0 >= GLOBAL_SYMBOL) && (LA504_0 <= GRANTS_SYMBOL)) || LA504_0 == GROUP_CONCAT_SYMBOL || ((LA504_0 >= HANDLER_SYMBOL) && (LA504_0 <= HASH_SYMBOL)) || LA504_0 == HELP_SYMBOL || ((LA504_0 >= HOSTS_SYMBOL) && (LA504_0 <= HOST_SYMBOL)) || ((LA504_0 >= HOUR_SYMBOL) && (LA504_0 <= IGNORE_SERVER_IDS_SYMBOL)) || ((LA504_0 >= IMPORT_SYMBOL) && (LA504_0 <= INDEXES_SYMBOL)) || LA504_0 == INITIAL_SIZE_SYMBOL || LA504_0 == INNODB_SYMBOL || ((LA504_0 >= INSERT_METHOD_SYMBOL) && (LA504_0 <= INSTALL_SYMBOL)) || LA504_0 == INVOKER_SYMBOL || LA504_0 == IO_SYMBOL || ((LA504_0 >= IPC_SYMBOL) && (LA504_0 <= ISSUER_SYMBOL)) || LA504_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA504_0 >= LANGUAGE_SYMBOL) && (LA504_0 <= LAST_SYMBOL)) || LA504_0 == LEAVES_SYMBOL || LA504_0 == LEFT_SYMBOL || LA504_0 == LESS_SYMBOL || LA504_0 == LEVEL_SYMBOL || LA504_0 == LINESTRING_SYMBOL || LA504_0 == LIST_SYMBOL || LA504_0 == LOCAL_SYMBOL || LA504_0 == LOCKS_SYMBOL || LA504_0 == LOGFILE_SYMBOL || LA504_0 == LOGS_SYMBOL || LA504_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA504_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA504_0 <= MASTER_SSL_SYMBOL)) || ((LA504_0 >= MASTER_SYMBOL) && (LA504_0 <= MATCH_SYMBOL)) || ((LA504_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA504_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA504_0 >= MEDIUM_SYMBOL) && (LA504_0 <= MICROSECOND_SYMBOL)) || LA504_0 == MIGRATE_SYMBOL || ((LA504_0 >= MINUTE_SYMBOL) && (LA504_0 <= MIN_SYMBOL)) || LA504_0 == MODE_SYMBOL || LA504_0 == MODIFY_SYMBOL || ((LA504_0 >= MOD_SYMBOL) && (LA504_0 <= MULTILINESTRING_SYMBOL)) || ((LA504_0 >= MULTIPOINT_SYMBOL) && (LA504_0 <= MULTIPOLYGON_SYMBOL)) || ((LA504_0 >= MUTEX_SYMBOL) && (LA504_0 <= NATIONAL_SYMBOL)) || LA504_0 == NCHAR_SYMBOL || LA504_0 == NDBCLUSTER_SYMBOL || ((LA504_0 >= NEW_SYMBOL) && (LA504_0 <= NONE_SYMBOL)) || ((LA504_0 >= NOW_SYMBOL) && (LA504_0 <= NO_WAIT_SYMBOL)) || LA504_0 == NULL2_SYMBOL || ((LA504_0 >= NULL_SYMBOL) && (LA504_0 <= NUMBER_SYMBOL)) || LA504_0 == NVARCHAR_SYMBOL || ((LA504_0 >= OFFSET_SYMBOL) && (LA504_0 <= ONE_SYMBOL)) || ((LA504_0 >= OPEN_PAR_SYMBOL) && (LA504_0 <= OPEN_SYMBOL)) || LA504_0 == OPTIONS_SYMBOL || ((LA504_0 >= OWNER_SYMBOL) && (LA504_0 <= PARAM_MARKER)) || ((LA504_0 >= PARSER_SYMBOL) && (LA504_0 <= PARTITION_SYMBOL)) || ((LA504_0 >= PASSWORD_SYMBOL) && (LA504_0 <= PLUGIN_SYMBOL)) || ((LA504_0 >= POINT_SYMBOL) && (LA504_0 <= POSITION_SYMBOL)) || ((LA504_0 >= PREPARE_SYMBOL) && (LA504_0 <= PREV_SYMBOL)) || LA504_0 == PRIVILEGES_SYMBOL || ((LA504_0 >= PROCESSLIST_SYMBOL) && (LA504_0 <= PROXY_SYMBOL)) || ((LA504_0 >= QUARTER_SYMBOL) && (LA504_0 <= QUICK_SYMBOL)) || LA504_0 == READ_ONLY_SYMBOL || ((LA504_0 >= REBUILD_SYMBOL) && (LA504_0 <= REDUNDANT_SYMBOL)) || ((LA504_0 >= RELAYLOG_SYMBOL) && (LA504_0 <= RELAY_THREAD_SYMBOL)) || ((LA504_0 >= RELOAD_SYMBOL) && (LA504_0 <= REMOVE_SYMBOL)) || ((LA504_0 >= REORGANIZE_SYMBOL) && (LA504_0 <= REPLICATION_SYMBOL)) || LA504_0 == RESET_SYMBOL || LA504_0 == RESTORE_SYMBOL || ((LA504_0 >= RESUME_SYMBOL) && (LA504_0 <= RETURNS_SYMBOL)) || LA504_0 == REVERSE_SYMBOL || LA504_0 == RIGHT_SYMBOL || ((LA504_0 >= ROLLBACK_SYMBOL) && (LA504_0 <= SCHEDULE_SYMBOL)) || LA504_0 == SCHEMA_NAME_SYMBOL || ((LA504_0 >= SECOND_SYMBOL) && (LA504_0 <= SECURITY_SYMBOL)) || ((LA504_0 >= SERIALIZABLE_SYMBOL) && (LA504_0 <= SERIAL_SYMBOL)) || ((LA504_0 >= SERVER_SYMBOL) && (LA504_0 <= SESSION_SYMBOL)) || LA504_0 == SHARE_SYMBOL || LA504_0 == SHUTDOWN_SYMBOL || ((LA504_0 >= SIGNED_SYMBOL) && (LA504_0 <= SIMPLE_SYMBOL)) || ((LA504_0 >= SLAVE_SYMBOL) && (LA504_0 <= SLOW_SYMBOL)) || ((LA504_0 >= SNAPSHOT_SYMBOL) && (LA504_0 <= SOURCE_SYMBOL)) || ((LA504_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA504_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA504_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA504_0 <= SQL_CACHE_SYMBOL)) || LA504_0 == SQL_NO_CACHE_SYMBOL || LA504_0 == SQL_THREAD_SYMBOL || ((LA504_0 >= STARTS_SYMBOL) && (LA504_0 <= STATUS_SYMBOL)) || LA504_0 == STDDEV_SAMP_SYMBOL || ((LA504_0 >= STD_SYMBOL) && (LA504_0 <= STORAGE_SYMBOL)) || ((LA504_0 >= STRING_SYMBOL) && (LA504_0 <= SUBPARTITION_SYMBOL)) || LA504_0 == SUBSTRING_SYMBOL || ((LA504_0 >= SUM_SYMBOL) && (LA504_0 <= SYSDATE_SYMBOL)) || ((LA504_0 >= TABLESPACE_SYMBOL) && (LA504_0 <= TABLE_NAME_SYMBOL)) || ((LA504_0 >= TEMPORARY_SYMBOL) && (LA504_0 <= TEMPTABLE_SYMBOL)) || ((LA504_0 >= TEXT_SYMBOL) && (LA504_0 <= THAN_SYMBOL)) || ((LA504_0 >= TIMESTAMP_ADD_SYMBOL) && (LA504_0 <= TIMESTAMP_DIFF_SYMBOL)) || ((LA504_0 >= TRANSACTION_SYMBOL) && (LA504_0 <= TRIGGERS_SYMBOL)) || LA504_0 == TRIM_SYMBOL || ((LA504_0 >= TRUNCATE_SYMBOL) && (LA504_0 <= UDF_RETURNS_SYMBOL)) || ((LA504_0 >= UNCOMMITTED_SYMBOL) && (LA504_0 <= UNDEFINED_SYMBOL)) || ((LA504_0 >= UNDOFILE_SYMBOL) && (LA504_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA504_0 >= UNICODE_SYMBOL) && (LA504_0 <= UNINSTALL_SYMBOL)) || LA504_0 == UNKNOWN_SYMBOL || LA504_0 == UNTIL_SYMBOL || LA504_0 == UPGRADE_SYMBOL || ((LA504_0 >= USER_RESOURCES_SYMBOL) && (LA504_0 <= USE_FRM_SYMBOL)) || ((LA504_0 >= UTC_DATE_SYMBOL) && (LA504_0 <= VALUE_SYMBOL)) || ((LA504_0 >= VARIABLES_SYMBOL) && (LA504_0 <= VARIANCE_SYMBOL)) || LA504_0 == VAR_SAMP_SYMBOL || ((LA504_0 >= VIEW_SYMBOL) && (LA504_0 <= WEIGHT_STRING_SYMBOL)) || ((LA504_0 >= WORK_SYMBOL) && (LA504_0 <= WRAPPER_SYMBOL)) || LA504_0 == X509_SYMBOL || ((LA504_0 >= XA_SYMBOL) && (LA504_0 <= XML_SYMBOL)) || LA504_0 == YEAR_SYMBOL || LA504_0 == 732))
            	                {
            	                    alt504=2;
            	                }
            	                else if ( (LA504_0 == ALL_SYMBOL))
            	                {
            	                    alt504=1;
            	                }
            	                else
            	                {
            	                    if (BACKTRACKING>0)
            	                    {
            	                        FAILEDFLAG = ANTLR3_TRUE;
            	                        return retval;
            	                    }


            	                    CONSTRUCTEX();
            	                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    EXCEPTION->message      = (void *)"";
            	                    EXCEPTION->decisionNum  = 504;
            	                    EXCEPTION->state        = 0;


            	                    goto ruleboolean_primary_expressionEx;

            	                }
            	            }
            	            switch (alt504)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1528:5: {...}? ( ALL_SYMBOL | ANY_SYMBOL ) subquery
            	        	    {
            	        	        if ( !((LA(1) == ALL_SYMBOL || LA(1) == ANY_SYMBOL)) )
            	        	        {
            	        	            if (BACKTRACKING>0)
            	        	            {
            	        	                FAILEDFLAG = ANTLR3_TRUE;
            	        	                return retval;
            	        	            }

            	        	                CONSTRUCTEX();
            	        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
            	        	                EXCEPTION->message      = (void *)"LA(1) == ALL_SYMBOL || LA(1) == ANY_SYMBOL";
            	        	                EXCEPTION->ruleName	 = (void *)"boolean_primary_expression";


            	        	        }

            	        	        set1698=(pANTLR3_COMMON_TOKEN)LT(1);

            	        	        if ( LA(1) == ALL_SYMBOL || LA(1) == ANY_SYMBOL )
            	        	        {
            	        	            CONSUME();
            	        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1698))
            	        	            );
            	        	            PERRORRECOVERY=ANTLR3_FALSE;
            	        	            FAILEDFLAG=ANTLR3_FALSE;

            	        	        }
            	        	        else
            	        	        {
            	        	            if (BACKTRACKING>0)
            	        	            {
            	        	                FAILEDFLAG = ANTLR3_TRUE;
            	        	                return retval;
            	        	            }

            	        	            CONSTRUCTEX();
            	        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	        	            EXCEPTION->expectingSet = NULL;

            	        	            goto ruleboolean_primary_expressionEx;
            	        	        }


            	        	        FOLLOWPUSH(FOLLOW_subquery_in_boolean_primary_expression8489);
            	        	        subquery1699=subquery(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleboolean_primary_expressionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, subquery1699.tree);

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:1529:7: predicate
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_predicate_in_boolean_primary_expression8497);
            	        	        predicate1700=predicate(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleboolean_primary_expressionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, predicate1700.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1531:9: ( options {greedy=true; } : IS_SYMBOL ^ ( NOT_SYMBOL )? ( null_literal | FALSE_SYMBOL | TRUE_SYMBOL | UNKNOWN_SYMBOL ) )+
            	    {
            	        // MySQL.g:1531:9: ( options {greedy=true; } : IS_SYMBOL ^ ( NOT_SYMBOL )? ( null_literal | FALSE_SYMBOL | TRUE_SYMBOL | UNKNOWN_SYMBOL ) )+
            	        {
            	            int cnt507=0;

            	            for (;;)
            	            {
            	                int alt507=2;
            	        	switch ( LA(1) )
            	        	{
            	        	case IS_SYMBOL:
            	        		{
            	        			alt507=1;
            	        		}
            	        	    break;

            	        	}

            	        	switch (alt507)
            	        	{
            	        	    case 1:
            	        	        // MySQL.g:1531:39: IS_SYMBOL ^ ( NOT_SYMBOL )? ( null_literal | FALSE_SYMBOL | TRUE_SYMBOL | UNKNOWN_SYMBOL )
            	        	        {
            	        	            IS_SYMBOL1701 = (pANTLR3_COMMON_TOKEN) MATCHT(IS_SYMBOL, &FOLLOW_IS_SYMBOL_in_boolean_primary_expression8526);
            	        	            if  (HASEXCEPTION())
            	        	            {
            	        	                goto ruleboolean_primary_expressionEx;
            	        	            }
            	        	            if (HASFAILED())
            	        	            {
            	        	                return retval;
            	        	            }

            	        	            if ( BACKTRACKING==0 ) {
            	        	            IS_SYMBOL1701_tree = 
            	        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IS_SYMBOL1701))
            	        	            ;
            	        	            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, IS_SYMBOL1701_tree, root_0));
            	        	            }

            	        	            // MySQL.g:1531:50: ( NOT_SYMBOL )?
            	        	            {
            	        	                int alt505=2;
            	        	                switch ( LA(1) )
            	        	                {
            	        	                    case NOT_SYMBOL:
            	        	                    	{
            	        	                    		alt505=1;
            	        	                    	}
            	        	                        break;
            	        	                }

            	        	                switch (alt505)
            	        	                {
            	        	            	case 1:
            	        	            	    // MySQL.g:1531:50: NOT_SYMBOL
            	        	            	    {
            	        	            	        NOT_SYMBOL1702 = (pANTLR3_COMMON_TOKEN) MATCHT(NOT_SYMBOL, &FOLLOW_NOT_SYMBOL_in_boolean_primary_expression8529);
            	        	            	        if  (HASEXCEPTION())
            	        	            	        {
            	        	            	            goto ruleboolean_primary_expressionEx;
            	        	            	        }
            	        	            	        if (HASFAILED())
            	        	            	        {
            	        	            	            return retval;
            	        	            	        }

            	        	            	        if ( BACKTRACKING==0 ) {
            	        	            	        NOT_SYMBOL1702_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NOT_SYMBOL1702));
            	        	            	        ADAPTOR->addChild(ADAPTOR, root_0, NOT_SYMBOL1702_tree);
            	        	            	        }

            	        	            	    }
            	        	            	    break;

            	        	                }
            	        	            }

            	        	            // MySQL.g:1531:62: ( null_literal | FALSE_SYMBOL | TRUE_SYMBOL | UNKNOWN_SYMBOL )
            	        	            {
            	        	                int alt506=4;
            	        	                switch ( LA(1) )
            	        	                {
            	        	                case NULL2_SYMBOL:
            	        	                case NULL_SYMBOL:
            	        	                	{
            	        	                		alt506=1;
            	        	                	}
            	        	                    break;
            	        	                case FALSE_SYMBOL:
            	        	                	{
            	        	                		alt506=2;
            	        	                	}
            	        	                    break;
            	        	                case TRUE_SYMBOL:
            	        	                	{
            	        	                		alt506=3;
            	        	                	}
            	        	                    break;
            	        	                case UNKNOWN_SYMBOL:
            	        	                	{
            	        	                		alt506=4;
            	        	                	}
            	        	                    break;

            	        	                default:
            	        	                    if (BACKTRACKING>0)
            	        	                    {
            	        	                        FAILEDFLAG = ANTLR3_TRUE;
            	        	                        return retval;
            	        	                    }

            	        	                    CONSTRUCTEX();
            	        	                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	        	                    EXCEPTION->message      = (void *)"";
            	        	                    EXCEPTION->decisionNum  = 506;
            	        	                    EXCEPTION->state        = 0;


            	        	                    goto ruleboolean_primary_expressionEx;

            	        	                }

            	        	                switch (alt506)
            	        	                {
            	        	            	case 1:
            	        	            	    // MySQL.g:1531:64: null_literal
            	        	            	    {
            	        	            	        FOLLOWPUSH(FOLLOW_null_literal_in_boolean_primary_expression8534);
            	        	            	        null_literal1703=null_literal(ctx);

            	        	            	        FOLLOWPOP();
            	        	            	        if  (HASEXCEPTION())
            	        	            	        {
            	        	            	            goto ruleboolean_primary_expressionEx;
            	        	            	        }
            	        	            	        if (HASFAILED())
            	        	            	        {
            	        	            	            return retval;
            	        	            	        }

            	        	            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, null_literal1703.tree);

            	        	            	    }
            	        	            	    break;
            	        	            	case 2:
            	        	            	    // MySQL.g:1531:79: FALSE_SYMBOL
            	        	            	    {
            	        	            	        FALSE_SYMBOL1704 = (pANTLR3_COMMON_TOKEN) MATCHT(FALSE_SYMBOL, &FOLLOW_FALSE_SYMBOL_in_boolean_primary_expression8538);
            	        	            	        if  (HASEXCEPTION())
            	        	            	        {
            	        	            	            goto ruleboolean_primary_expressionEx;
            	        	            	        }
            	        	            	        if (HASFAILED())
            	        	            	        {
            	        	            	            return retval;
            	        	            	        }

            	        	            	        if ( BACKTRACKING==0 ) {
            	        	            	        FALSE_SYMBOL1704_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FALSE_SYMBOL1704));
            	        	            	        ADAPTOR->addChild(ADAPTOR, root_0, FALSE_SYMBOL1704_tree);
            	        	            	        }

            	        	            	    }
            	        	            	    break;
            	        	            	case 3:
            	        	            	    // MySQL.g:1531:94: TRUE_SYMBOL
            	        	            	    {
            	        	            	        TRUE_SYMBOL1705 = (pANTLR3_COMMON_TOKEN) MATCHT(TRUE_SYMBOL, &FOLLOW_TRUE_SYMBOL_in_boolean_primary_expression8542);
            	        	            	        if  (HASEXCEPTION())
            	        	            	        {
            	        	            	            goto ruleboolean_primary_expressionEx;
            	        	            	        }
            	        	            	        if (HASFAILED())
            	        	            	        {
            	        	            	            return retval;
            	        	            	        }

            	        	            	        if ( BACKTRACKING==0 ) {
            	        	            	        TRUE_SYMBOL1705_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TRUE_SYMBOL1705));
            	        	            	        ADAPTOR->addChild(ADAPTOR, root_0, TRUE_SYMBOL1705_tree);
            	        	            	        }

            	        	            	    }
            	        	            	    break;
            	        	            	case 4:
            	        	            	    // MySQL.g:1531:108: UNKNOWN_SYMBOL
            	        	            	    {
            	        	            	        UNKNOWN_SYMBOL1706 = (pANTLR3_COMMON_TOKEN) MATCHT(UNKNOWN_SYMBOL, &FOLLOW_UNKNOWN_SYMBOL_in_boolean_primary_expression8546);
            	        	            	        if  (HASEXCEPTION())
            	        	            	        {
            	        	            	            goto ruleboolean_primary_expressionEx;
            	        	            	        }
            	        	            	        if (HASFAILED())
            	        	            	        {
            	        	            	            return retval;
            	        	            	        }

            	        	            	        if ( BACKTRACKING==0 ) {
            	        	            	        UNKNOWN_SYMBOL1706_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNKNOWN_SYMBOL1706));
            	        	            	        ADAPTOR->addChild(ADAPTOR, root_0, UNKNOWN_SYMBOL1706_tree);
            	        	            	        }

            	        	            	    }
            	        	            	    break;

            	        	                }
            	        	            }

            	        	        }
            	        	        break;

            	        	    default:

            	        		if ( cnt507 >= 1 )
            	        		{
            	        		    goto loop507;
            	        		}
            	        		if (BACKTRACKING>0)
            	        		{
            	        		    FAILEDFLAG = ANTLR3_TRUE;
            	        		    return retval;
            	        		}

            	        		/* mismatchedSetEx()
            	        		 */
            	        		CONSTRUCTEX();
            	        		EXCEPTION->type = ANTLR3_EARLY_EXIT_EXCEPTION;
            	        		EXCEPTION->name = (void *)ANTLR3_EARLY_EXIT_NAME;


            	        		goto ruleboolean_primary_expressionEx;
            	        	}
            	        	cnt507++;
            	            }
            	            loop507: ;	/* Jump to here if this rule does not match */
            	        }

            	    }
            	    break;

            	default:
            	    goto loop508;	/* break out of the loop */
            	    break;
                }
            }
            loop508: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto ruleboolean_primary_expressionEx; /* Prevent compiler warnings */
    ruleboolean_primary_expressionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end boolean_primary_expression */

/**
 * $ANTLR start predicate
 * MySQL.g:1535:1: predicate : bitwise_or_expression ( options {greedy=true; } : ( NOT_SYMBOL )? ( BETWEEN_SYMBOL ^ bitwise_or_expression AND_SYMBOL predicate | LIKE_SYMBOL ^ unary_expression ( options {greedy=true; } : ESCAPE_SYMBOL primary )? | REGEXP_SYMBOL ^ bitwise_or_expression | IN_SYMBOL ^ ( subquery | expression_list_with_parentheses ) ) | SOUNDS_SYMBOL ^ LIKE_SYMBOL bitwise_or_expression )? ;
 */
static MySQLParser_predicate_return
predicate(pMySQLParser ctx)
{
    MySQLParser_predicate_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    NOT_SYMBOL1708;
    pANTLR3_COMMON_TOKEN    BETWEEN_SYMBOL1709;
    pANTLR3_COMMON_TOKEN    AND_SYMBOL1711;
    pANTLR3_COMMON_TOKEN    LIKE_SYMBOL1713;
    pANTLR3_COMMON_TOKEN    ESCAPE_SYMBOL1715;
    pANTLR3_COMMON_TOKEN    REGEXP_SYMBOL1717;
    pANTLR3_COMMON_TOKEN    IN_SYMBOL1719;
    pANTLR3_COMMON_TOKEN    SOUNDS_SYMBOL1722;
    pANTLR3_COMMON_TOKEN    LIKE_SYMBOL1723;
    MySQLParser_bitwise_or_expression_return bitwise_or_expression1707;
    #undef	RETURN_TYPE_bitwise_or_expression1707
    #define	RETURN_TYPE_bitwise_or_expression1707 MySQLParser_bitwise_or_expression_return

    MySQLParser_bitwise_or_expression_return bitwise_or_expression1710;
    #undef	RETURN_TYPE_bitwise_or_expression1710
    #define	RETURN_TYPE_bitwise_or_expression1710 MySQLParser_bitwise_or_expression_return

    MySQLParser_predicate_return predicate1712;
    #undef	RETURN_TYPE_predicate1712
    #define	RETURN_TYPE_predicate1712 MySQLParser_predicate_return

    MySQLParser_unary_expression_return unary_expression1714;
    #undef	RETURN_TYPE_unary_expression1714
    #define	RETURN_TYPE_unary_expression1714 MySQLParser_unary_expression_return

    MySQLParser_primary_return primary1716;
    #undef	RETURN_TYPE_primary1716
    #define	RETURN_TYPE_primary1716 MySQLParser_primary_return

    MySQLParser_bitwise_or_expression_return bitwise_or_expression1718;
    #undef	RETURN_TYPE_bitwise_or_expression1718
    #define	RETURN_TYPE_bitwise_or_expression1718 MySQLParser_bitwise_or_expression_return

    MySQLParser_subquery_return subquery1720;
    #undef	RETURN_TYPE_subquery1720
    #define	RETURN_TYPE_subquery1720 MySQLParser_subquery_return

    MySQLParser_expression_list_with_parentheses_return expression_list_with_parentheses1721;
    #undef	RETURN_TYPE_expression_list_with_parentheses1721
    #define	RETURN_TYPE_expression_list_with_parentheses1721 MySQLParser_expression_list_with_parentheses_return

    MySQLParser_bitwise_or_expression_return bitwise_or_expression1724;
    #undef	RETURN_TYPE_bitwise_or_expression1724
    #define	RETURN_TYPE_bitwise_or_expression1724 MySQLParser_bitwise_or_expression_return

    pANTLR3_BASE_TREE NOT_SYMBOL1708_tree;
    pANTLR3_BASE_TREE BETWEEN_SYMBOL1709_tree;
    pANTLR3_BASE_TREE AND_SYMBOL1711_tree;
    pANTLR3_BASE_TREE LIKE_SYMBOL1713_tree;
    pANTLR3_BASE_TREE ESCAPE_SYMBOL1715_tree;
    pANTLR3_BASE_TREE REGEXP_SYMBOL1717_tree;
    pANTLR3_BASE_TREE IN_SYMBOL1719_tree;
    pANTLR3_BASE_TREE SOUNDS_SYMBOL1722_tree;
    pANTLR3_BASE_TREE LIKE_SYMBOL1723_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    NOT_SYMBOL1708       = NULL;
    BETWEEN_SYMBOL1709       = NULL;
    AND_SYMBOL1711       = NULL;
    LIKE_SYMBOL1713       = NULL;
    ESCAPE_SYMBOL1715       = NULL;
    REGEXP_SYMBOL1717       = NULL;
    IN_SYMBOL1719       = NULL;
    SOUNDS_SYMBOL1722       = NULL;
    LIKE_SYMBOL1723       = NULL;
    bitwise_or_expression1707.tree = NULL;

    bitwise_or_expression1710.tree = NULL;

    predicate1712.tree = NULL;

    unary_expression1714.tree = NULL;

    primary1716.tree = NULL;

    bitwise_or_expression1718.tree = NULL;

    subquery1720.tree = NULL;

    expression_list_with_parentheses1721.tree = NULL;

    bitwise_or_expression1724.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    NOT_SYMBOL1708_tree   = NULL;
    BETWEEN_SYMBOL1709_tree   = NULL;
    AND_SYMBOL1711_tree   = NULL;
    LIKE_SYMBOL1713_tree   = NULL;
    ESCAPE_SYMBOL1715_tree   = NULL;
    REGEXP_SYMBOL1717_tree   = NULL;
    IN_SYMBOL1719_tree   = NULL;
    SOUNDS_SYMBOL1722_tree   = NULL;
    LIKE_SYMBOL1723_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1535:10: ( bitwise_or_expression ( options {greedy=true; } : ( NOT_SYMBOL )? ( BETWEEN_SYMBOL ^ bitwise_or_expression AND_SYMBOL predicate | LIKE_SYMBOL ^ unary_expression ( options {greedy=true; } : ESCAPE_SYMBOL primary )? | REGEXP_SYMBOL ^ bitwise_or_expression | IN_SYMBOL ^ ( subquery | expression_list_with_parentheses ) ) | SOUNDS_SYMBOL ^ LIKE_SYMBOL bitwise_or_expression )? )
        // MySQL.g:1536:2: bitwise_or_expression ( options {greedy=true; } : ( NOT_SYMBOL )? ( BETWEEN_SYMBOL ^ bitwise_or_expression AND_SYMBOL predicate | LIKE_SYMBOL ^ unary_expression ( options {greedy=true; } : ESCAPE_SYMBOL primary )? | REGEXP_SYMBOL ^ bitwise_or_expression | IN_SYMBOL ^ ( subquery | expression_list_with_parentheses ) ) | SOUNDS_SYMBOL ^ LIKE_SYMBOL bitwise_or_expression )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_bitwise_or_expression_in_predicate8563);
            bitwise_or_expression1707=bitwise_or_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulepredicateEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, bitwise_or_expression1707.tree);

            // MySQL.g:1537:3: ( options {greedy=true; } : ( NOT_SYMBOL )? ( BETWEEN_SYMBOL ^ bitwise_or_expression AND_SYMBOL predicate | LIKE_SYMBOL ^ unary_expression ( options {greedy=true; } : ESCAPE_SYMBOL primary )? | REGEXP_SYMBOL ^ bitwise_or_expression | IN_SYMBOL ^ ( subquery | expression_list_with_parentheses ) ) | SOUNDS_SYMBOL ^ LIKE_SYMBOL bitwise_or_expression )?
            {
                int alt513=3;
                switch ( LA(1) )
                {
                    case NOT_SYMBOL:
                    	{
                    		alt513=1;
                    	}
                        break;
                    case BETWEEN_SYMBOL:
                    	{
                    		alt513=1;
                    	}
                        break;
                    case LIKE_SYMBOL:
                    	{
                    		alt513=1;
                    	}
                        break;
                    case REGEXP_SYMBOL:
                    	{
                    		alt513=1;
                    	}
                        break;
                    case IN_SYMBOL:
                    	{
                    		alt513=1;
                    	}
                        break;
                    case SOUNDS_SYMBOL:
                    	{
                    		alt513=2;
                    	}
                        break;
                }

                switch (alt513)
                {
            	case 1:
            	    // MySQL.g:1538:4: ( NOT_SYMBOL )? ( BETWEEN_SYMBOL ^ bitwise_or_expression AND_SYMBOL predicate | LIKE_SYMBOL ^ unary_expression ( options {greedy=true; } : ESCAPE_SYMBOL primary )? | REGEXP_SYMBOL ^ bitwise_or_expression | IN_SYMBOL ^ ( subquery | expression_list_with_parentheses ) )
            	    {
            	        // MySQL.g:1538:4: ( NOT_SYMBOL )?
            	        {
            	            int alt509=2;
            	            switch ( LA(1) )
            	            {
            	                case NOT_SYMBOL:
            	                	{
            	                		alt509=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt509)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1538:4: NOT_SYMBOL
            	        	    {
            	        	        NOT_SYMBOL1708 = (pANTLR3_COMMON_TOKEN) MATCHT(NOT_SYMBOL, &FOLLOW_NOT_SYMBOL_in_predicate8584);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepredicateEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        NOT_SYMBOL1708_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NOT_SYMBOL1708));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, NOT_SYMBOL1708_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1539:5: ( BETWEEN_SYMBOL ^ bitwise_or_expression AND_SYMBOL predicate | LIKE_SYMBOL ^ unary_expression ( options {greedy=true; } : ESCAPE_SYMBOL primary )? | REGEXP_SYMBOL ^ bitwise_or_expression | IN_SYMBOL ^ ( subquery | expression_list_with_parentheses ) )
            	        {
            	            int alt512=4;
            	            switch ( LA(1) )
            	            {
            	            case BETWEEN_SYMBOL:
            	            	{
            	            		alt512=1;
            	            	}
            	                break;
            	            case LIKE_SYMBOL:
            	            	{
            	            		alt512=2;
            	            	}
            	                break;
            	            case REGEXP_SYMBOL:
            	            	{
            	            		alt512=3;
            	            	}
            	                break;
            	            case IN_SYMBOL:
            	            	{
            	            		alt512=4;
            	            	}
            	                break;

            	            default:
            	                if (BACKTRACKING>0)
            	                {
            	                    FAILEDFLAG = ANTLR3_TRUE;
            	                    return retval;
            	                }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                EXCEPTION->message      = (void *)"";
            	                EXCEPTION->decisionNum  = 512;
            	                EXCEPTION->state        = 0;


            	                goto rulepredicateEx;

            	            }

            	            switch (alt512)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1540:6: BETWEEN_SYMBOL ^ bitwise_or_expression AND_SYMBOL predicate
            	        	    {
            	        	        BETWEEN_SYMBOL1709 = (pANTLR3_COMMON_TOKEN) MATCHT(BETWEEN_SYMBOL, &FOLLOW_BETWEEN_SYMBOL_in_predicate8598);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepredicateEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        BETWEEN_SYMBOL1709_tree = 
            	        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BETWEEN_SYMBOL1709))
            	        	        ;
            	        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, BETWEEN_SYMBOL1709_tree, root_0));
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_bitwise_or_expression_in_predicate8601);
            	        	        bitwise_or_expression1710=bitwise_or_expression(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepredicateEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, bitwise_or_expression1710.tree);

            	        	        AND_SYMBOL1711 = (pANTLR3_COMMON_TOKEN) MATCHT(AND_SYMBOL, &FOLLOW_AND_SYMBOL_in_predicate8603);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepredicateEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        AND_SYMBOL1711_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AND_SYMBOL1711));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, AND_SYMBOL1711_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_predicate_in_predicate8605);
            	        	        predicate1712=predicate(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepredicateEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, predicate1712.tree);

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:1541:8: LIKE_SYMBOL ^ unary_expression ( options {greedy=true; } : ESCAPE_SYMBOL primary )?
            	        	    {
            	        	        LIKE_SYMBOL1713 = (pANTLR3_COMMON_TOKEN) MATCHT(LIKE_SYMBOL, &FOLLOW_LIKE_SYMBOL_in_predicate8614);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepredicateEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        LIKE_SYMBOL1713_tree = 
            	        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LIKE_SYMBOL1713))
            	        	        ;
            	        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, LIKE_SYMBOL1713_tree, root_0));
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_unary_expression_in_predicate8617);
            	        	        unary_expression1714=unary_expression(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepredicateEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, unary_expression1714.tree);

            	        	        // MySQL.g:1541:38: ( options {greedy=true; } : ESCAPE_SYMBOL primary )?
            	        	        {
            	        	            int alt510=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case ESCAPE_SYMBOL:
            	        	                	{
            	        	                		alt510=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt510)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:1541:68: ESCAPE_SYMBOL primary
            	        	        	    {
            	        	        	        ESCAPE_SYMBOL1715 = (pANTLR3_COMMON_TOKEN) MATCHT(ESCAPE_SYMBOL, &FOLLOW_ESCAPE_SYMBOL_in_predicate8633);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulepredicateEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        ESCAPE_SYMBOL1715_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ESCAPE_SYMBOL1715));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, ESCAPE_SYMBOL1715_tree);
            	        	        	        }

            	        	        	        FOLLOWPUSH(FOLLOW_primary_in_predicate8635);
            	        	        	        primary1716=primary(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulepredicateEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, primary1716.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	    }
            	        	    break;
            	        	case 3:
            	        	    // MySQL.g:1542:8: REGEXP_SYMBOL ^ bitwise_or_expression
            	        	    {
            	        	        REGEXP_SYMBOL1717 = (pANTLR3_COMMON_TOKEN) MATCHT(REGEXP_SYMBOL, &FOLLOW_REGEXP_SYMBOL_in_predicate8646);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepredicateEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        REGEXP_SYMBOL1717_tree = 
            	        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REGEXP_SYMBOL1717))
            	        	        ;
            	        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, REGEXP_SYMBOL1717_tree, root_0));
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_bitwise_or_expression_in_predicate8649);
            	        	        bitwise_or_expression1718=bitwise_or_expression(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepredicateEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, bitwise_or_expression1718.tree);

            	        	    }
            	        	    break;
            	        	case 4:
            	        	    // MySQL.g:1543:8: IN_SYMBOL ^ ( subquery | expression_list_with_parentheses )
            	        	    {
            	        	        IN_SYMBOL1719 = (pANTLR3_COMMON_TOKEN) MATCHT(IN_SYMBOL, &FOLLOW_IN_SYMBOL_in_predicate8658);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepredicateEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        IN_SYMBOL1719_tree = 
            	        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IN_SYMBOL1719))
            	        	        ;
            	        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, IN_SYMBOL1719_tree, root_0));
            	        	        }

            	        	        // MySQL.g:1543:19: ( subquery | expression_list_with_parentheses )
            	        	        {
            	        	            int alt511=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	            case OPEN_PAR_SYMBOL:
            	        	            	{
            	        	            		switch ( LA(2) )
            	        	            		{
            	        	            		case SELECT_SYMBOL:
            	        	            			{
            	        	            				alt511=1;
            	        	            			}
            	        	            		    break;
            	        	            		case ACTION_SYMBOL:
            	        	            		case ADDDATE_SYMBOL:
            	        	            		case AFTER_SYMBOL:
            	        	            		case AGAINST_SYMBOL:
            	        	            		case AGGREGATE_SYMBOL:
            	        	            		case ALGORITHM_SYMBOL:
            	        	            		case ANALYZE_SYMBOL:
            	        	            		case ANY_SYMBOL:
            	        	            		case ASCII_SYMBOL:
            	        	            		case AT_AT_SIGN_SYMBOL:
            	        	            		case AT_SIGN_SYMBOL:
            	        	            		case AT_SYMBOL:
            	        	            		case AUTHORS_SYMBOL:
            	        	            		case AUTOEXTEND_SIZE_SYMBOL:
            	        	            		case AUTO_INCREMENT_SYMBOL:
            	        	            		case AVG_ROW_LENGTH_SYMBOL:
            	        	            		case AVG_SYMBOL:
            	        	            		case BACKUP_SYMBOL:
            	        	            		case BACK_TICK_QUOTED_ID:
            	        	            		case BEGIN_SYMBOL:
            	        	            		case BINARY_SYMBOL:
            	        	            		case BINLOG_SYMBOL:
            	        	            		case BITNUMBER:
            	        	            		case BITSTRING:
            	        	            		case BITWISE_NOT_OPERATOR:
            	        	            		case BIT_AND_SYMBOL:
            	        	            		case BIT_OR_SYMBOL:
            	        	            		case BIT_SYMBOL:
            	        	            		case BIT_XOR_SYMBOL:
            	        	            		case BLOCK_SYMBOL:
            	        	            		case BOOLEAN_SYMBOL:
            	        	            		case BOOL_SYMBOL:
            	        	            		case BTREE_SYMBOL:
            	        	            		case BYTE_SYMBOL:
            	        	            		case CACHE_SYMBOL:
            	        	            		case CASCADED_SYMBOL:
            	        	            		case CASE_SYMBOL:
            	        	            		case CAST_SYMBOL:
            	        	            		case CATALOG_NAME_SYMBOL:
            	        	            		case CHAIN_SYMBOL:
            	        	            		case CHANGED_SYMBOL:
            	        	            		case CHARSET_SYMBOL:
            	        	            		case CHAR_SYMBOL:
            	        	            		case CHECKSUM_SYMBOL:
            	        	            		case CIPHER_SYMBOL:
            	        	            		case CLASS_ORIGIN_SYMBOL:
            	        	            		case CLIENT_SYMBOL:
            	        	            		case CLOSE_SYMBOL:
            	        	            		case COALESCE_SYMBOL:
            	        	            		case CODE_SYMBOL:
            	        	            		case COLLATION_SYMBOL:
            	        	            		case COLUMNS_SYMBOL:
            	        	            		case COLUMN_FORMAT_SYMBOL:
            	        	            		case COLUMN_NAME_SYMBOL:
            	        	            		case COMMENT_SYMBOL:
            	        	            		case COMMITTED_SYMBOL:
            	        	            		case COMMIT_SYMBOL:
            	        	            		case COMPACT_SYMBOL:
            	        	            		case COMPLETION_SYMBOL:
            	        	            		case COMPRESSED_SYMBOL:
            	        	            		case CONCURRENT_SYMBOL:
            	        	            		case CONNECTION_SYMBOL:
            	        	            		case CONSISTENT_SYMBOL:
            	        	            		case CONSTRAINT_CATALOG_SYMBOL:
            	        	            		case CONSTRAINT_NAME_SYMBOL:
            	        	            		case CONSTRAINT_SCHEMA_SYMBOL:
            	        	            		case CONTAINS_SYMBOL:
            	        	            		case CONTEXT_SYMBOL:
            	        	            		case CONTRIBUTORS_SYMBOL:
            	        	            		case CONVERT_SYMBOL:
            	        	            		case COUNT_SYMBOL:
            	        	            		case CPU_SYMBOL:
            	        	            		case CUBE_SYMBOL:
            	        	            		case CURDATE_SYMBOL:
            	        	            		case CURRENT_SYMBOL:
            	        	            		case CURRENT_USER_SYMBOL:
            	        	            		case CURSOR_NAME_SYMBOL:
            	        	            		case CURTIME_SYMBOL:
            	        	            		case DATABASE_SYMBOL:
            	        	            		case DATAFILE_SYMBOL:
            	        	            		case DATA_SYMBOL:
            	        	            		case DATETIME_SYMBOL:
            	        	            		case DATE_ADD_SYMBOL:
            	        	            		case DATE_SUB_SYMBOL:
            	        	            		case DATE_SYMBOL:
            	        	            		case DAY_SYMBOL:
            	        	            		case DEALLOCATE_SYMBOL:
            	        	            		case DEFAULT_AUTH_SYMBOL:
            	        	            		case DEFINER_SYMBOL:
            	        	            		case DELAY_KEY_WRITE_SYMBOL:
            	        	            		case DES_KEY_FILE_SYMBOL:
            	        	            		case DIAGNOSTICS_SYMBOL:
            	        	            		case DIRECTORY_SYMBOL:
            	        	            		case DISABLE_SYMBOL:
            	        	            		case DISCARD_SYMBOL:
            	        	            		case DISK_SYMBOL:
            	        	            		case DOT_SYMBOL:
            	        	            		case DOUBLE_QUOTED_TEXT:
            	        	            		case DO_SYMBOL:
            	        	            		case DUMPFILE_SYMBOL:
            	        	            		case DUPLICATE_SYMBOL:
            	        	            		case DYNAMIC_SYMBOL:
            	        	            		case ENABLE_SYMBOL:
            	        	            		case ENDS_SYMBOL:
            	        	            		case END_SYMBOL:
            	        	            		case ENGINES_SYMBOL:
            	        	            		case ENGINE_SYMBOL:
            	        	            		case ENUM_SYMBOL:
            	        	            		case ERRORS_SYMBOL:
            	        	            		case ERROR_SYMBOL:
            	        	            		case ESCAPE_SYMBOL:
            	        	            		case EVENTS_SYMBOL:
            	        	            		case EVENT_SYMBOL:
            	        	            		case EVERY_SYMBOL:
            	        	            		case EXECUTE_SYMBOL:
            	        	            		case EXISTS_SYMBOL:
            	        	            		case EXPANSION_SYMBOL:
            	        	            		case EXPORT_SYMBOL:
            	        	            		case EXTENDED_SYMBOL:
            	        	            		case EXTENT_SIZE_SYMBOL:
            	        	            		case EXTRACT_SYMBOL:
            	        	            		case FALSE_SYMBOL:
            	        	            		case FAST_SYMBOL:
            	        	            		case FAULTS_SYMBOL:
            	        	            		case FILE_SYMBOL:
            	        	            		case FIRST_SYMBOL:
            	        	            		case FIXED_SYMBOL:
            	        	            		case FLOAT:
            	        	            		case FLUSH_SYMBOL:
            	        	            		case FORMAT_SYMBOL:
            	        	            		case FOUND_SYMBOL:
            	        	            		case FULL_SYMBOL:
            	        	            		case FUNCTION_SYMBOL:
            	        	            		case GENERAL_SYMBOL:
            	        	            		case GEOMETRYCOLLECTION_SYMBOL:
            	        	            		case GEOMETRY_SYMBOL:
            	        	            		case GET_FORMAT_SYMBOL:
            	        	            		case GLOBAL_SYMBOL:
            	        	            		case GRANTS_SYMBOL:
            	        	            		case GROUP_CONCAT_SYMBOL:
            	        	            		case HANDLER_SYMBOL:
            	        	            		case HASH_SYMBOL:
            	        	            		case HELP_SYMBOL:
            	        	            		case HEXNUMBER:
            	        	            		case HEXSTRING:
            	        	            		case HOSTS_SYMBOL:
            	        	            		case HOST_SYMBOL:
            	        	            		case HOUR_SYMBOL:
            	        	            		case IDENTIFIED_SYMBOL:
            	        	            		case IDENTIFIER:
            	        	            		case IF_SYMBOL:
            	        	            		case IGNORE_SERVER_IDS_SYMBOL:
            	        	            		case IMPORT_SYMBOL:
            	        	            		case INDEXES_SYMBOL:
            	        	            		case INITIAL_SIZE_SYMBOL:
            	        	            		case INNODB_SYMBOL:
            	        	            		case INSERT_METHOD_SYMBOL:
            	        	            		case INSERT_SYMBOL:
            	        	            		case INSTALL_SYMBOL:
            	        	            		case INTEGER:
            	        	            		case INTERVAL_SYMBOL:
            	        	            		case INVOKER_SYMBOL:
            	        	            		case IO_SYMBOL:
            	        	            		case IPC_SYMBOL:
            	        	            		case ISOLATION_SYMBOL:
            	        	            		case ISSUER_SYMBOL:
            	        	            		case KEY_BLOCK_SIZE_SYMBOL:
            	        	            		case LANGUAGE_SYMBOL:
            	        	            		case LAST_SYMBOL:
            	        	            		case LEAVES_SYMBOL:
            	        	            		case LEFT_SYMBOL:
            	        	            		case LESS_SYMBOL:
            	        	            		case LEVEL_SYMBOL:
            	        	            		case LINESTRING_SYMBOL:
            	        	            		case LIST_SYMBOL:
            	        	            		case LOCAL_SYMBOL:
            	        	            		case LOCKS_SYMBOL:
            	        	            		case LOGFILE_SYMBOL:
            	        	            		case LOGICAL_NOT_OPERATOR:
            	        	            		case LOGS_SYMBOL:
            	        	            		case MASTER_AUTO_POSITION_SYMBOL:
            	        	            		case MASTER_CONNECT_RETRY_SYMBOL:
            	        	            		case MASTER_DELAY_SYMBOL:
            	        	            		case MASTER_HEARTBEAT_PERIOD_SYMBOL:
            	        	            		case MASTER_HOST_SYMBOL:
            	        	            		case MASTER_LOG_FILE_SYMBOL:
            	        	            		case MASTER_LOG_POS_SYMBOL:
            	        	            		case MASTER_PASSWORD_SYMBOL:
            	        	            		case MASTER_PORT_SYMBOL:
            	        	            		case MASTER_RETRY_COUNT_SYMBOL:
            	        	            		case MASTER_SERVER_ID_SYMBOL:
            	        	            		case MASTER_SSL_CAPATH_SYMBOL:
            	        	            		case MASTER_SSL_CA_SYMBOL:
            	        	            		case MASTER_SSL_CERT_SYMBOL:
            	        	            		case MASTER_SSL_CIPHER_SYMBOL:
            	        	            		case MASTER_SSL_CRLPATH_SYMBOL:
            	        	            		case MASTER_SSL_CRL_SYMBOL:
            	        	            		case MASTER_SSL_KEY_SYMBOL:
            	        	            		case MASTER_SSL_SYMBOL:
            	        	            		case MASTER_SYMBOL:
            	        	            		case MASTER_USER_SYMBOL:
            	        	            		case MATCH_SYMBOL:
            	        	            		case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
            	        	            		case MAX_QUERIES_PER_HOUR_SYMBOL:
            	        	            		case MAX_ROWS_SYMBOL:
            	        	            		case MAX_SIZE_SYMBOL:
            	        	            		case MAX_SYMBOL:
            	        	            		case MAX_UPDATES_PER_HOUR_SYMBOL:
            	        	            		case MAX_USER_CONNECTIONS_SYMBOL:
            	        	            		case MEDIUM_SYMBOL:
            	        	            		case MEMORY_SYMBOL:
            	        	            		case MERGE_SYMBOL:
            	        	            		case MESSAGE_TEXT_SYMBOL:
            	        	            		case MICROSECOND_SYMBOL:
            	        	            		case MIGRATE_SYMBOL:
            	        	            		case MINUS_OPERATOR:
            	        	            		case MINUTE_SYMBOL:
            	        	            		case MIN_ROWS_SYMBOL:
            	        	            		case MIN_SYMBOL:
            	        	            		case MODE_SYMBOL:
            	        	            		case MODIFY_SYMBOL:
            	        	            		case MOD_SYMBOL:
            	        	            		case MONTH_SYMBOL:
            	        	            		case MULTILINESTRING_SYMBOL:
            	        	            		case MULTIPOINT_SYMBOL:
            	        	            		case MULTIPOLYGON_SYMBOL:
            	        	            		case MUTEX_SYMBOL:
            	        	            		case MYSQL_ERRNO_SYMBOL:
            	        	            		case NAMES_SYMBOL:
            	        	            		case NAME_SYMBOL:
            	        	            		case NATIONAL_SYMBOL:
            	        	            		case NCHAR_SYMBOL:
            	        	            		case NCHAR_TEXT:
            	        	            		case NDBCLUSTER_SYMBOL:
            	        	            		case NEW_SYMBOL:
            	        	            		case NEXT_SYMBOL:
            	        	            		case NODEGROUP_SYMBOL:
            	        	            		case NONE_SYMBOL:
            	        	            		case NOT2_SYMBOL:
            	        	            		case NOT_SYMBOL:
            	        	            		case NOW_SYMBOL:
            	        	            		case NO_SYMBOL:
            	        	            		case NO_WAIT_SYMBOL:
            	        	            		case NULL2_SYMBOL:
            	        	            		case NULL_SYMBOL:
            	        	            		case NUMBER_SYMBOL:
            	        	            		case NVARCHAR_SYMBOL:
            	        	            		case OFFSET_SYMBOL:
            	        	            		case OLD_PASSWORD_SYMBOL:
            	        	            		case ONE_SHOT_SYMBOL:
            	        	            		case ONE_SYMBOL:
            	        	            		case OPEN_PAR_SYMBOL:
            	        	            		case OPEN_SYMBOL:
            	        	            		case OPTIONS_SYMBOL:
            	        	            		case OWNER_SYMBOL:
            	        	            		case PACK_KEYS_SYMBOL:
            	        	            		case PAGE_SYMBOL:
            	        	            		case PARAM_MARKER:
            	        	            		case PARSER_SYMBOL:
            	        	            		case PARTIAL_SYMBOL:
            	        	            		case PARTITIONING_SYMBOL:
            	        	            		case PARTITIONS_SYMBOL:
            	        	            		case PARTITION_SYMBOL:
            	        	            		case PASSWORD_SYMBOL:
            	        	            		case PHASE_SYMBOL:
            	        	            		case PLUGINS_SYMBOL:
            	        	            		case PLUGIN_DIR_SYMBOL:
            	        	            		case PLUGIN_SYMBOL:
            	        	            		case PLUS_OPERATOR:
            	        	            		case POINT_SYMBOL:
            	        	            		case POLYGON_SYMBOL:
            	        	            		case PORT_SYMBOL:
            	        	            		case POSITION_SYMBOL:
            	        	            		case PREPARE_SYMBOL:
            	        	            		case PRESERVE_SYMBOL:
            	        	            		case PREV_SYMBOL:
            	        	            		case PRIVILEGES_SYMBOL:
            	        	            		case PROCESSLIST_SYMBOL:
            	        	            		case PROCESS_SYMBOL:
            	        	            		case PROFILES_SYMBOL:
            	        	            		case PROFILE_SYMBOL:
            	        	            		case PROXY_SYMBOL:
            	        	            		case QUARTER_SYMBOL:
            	        	            		case QUERY_SYMBOL:
            	        	            		case QUICK_SYMBOL:
            	        	            		case READ_ONLY_SYMBOL:
            	        	            		case REBUILD_SYMBOL:
            	        	            		case RECOVER_SYMBOL:
            	        	            		case REDOFILE_SYMBOL:
            	        	            		case REDO_BUFFER_SIZE_SYMBOL:
            	        	            		case REDUNDANT_SYMBOL:
            	        	            		case RELAYLOG_SYMBOL:
            	        	            		case RELAY_LOG_FILE_SYMBOL:
            	        	            		case RELAY_LOG_POS_SYMBOL:
            	        	            		case RELAY_SYMBOL:
            	        	            		case RELAY_THREAD_SYMBOL:
            	        	            		case RELOAD_SYMBOL:
            	        	            		case REMOVE_SYMBOL:
            	        	            		case REORGANIZE_SYMBOL:
            	        	            		case REPAIR_SYMBOL:
            	        	            		case REPEATABLE_SYMBOL:
            	        	            		case REPEAT_SYMBOL:
            	        	            		case REPLACE_SYMBOL:
            	        	            		case REPLICATION_SYMBOL:
            	        	            		case RESET_SYMBOL:
            	        	            		case RESTORE_SYMBOL:
            	        	            		case RESUME_SYMBOL:
            	        	            		case RETURNED_SQLSTATE_SYMBOL:
            	        	            		case RETURNS_SYMBOL:
            	        	            		case REVERSE_SYMBOL:
            	        	            		case RIGHT_SYMBOL:
            	        	            		case ROLLBACK_SYMBOL:
            	        	            		case ROLLUP_SYMBOL:
            	        	            		case ROUTINE_SYMBOL:
            	        	            		case ROWS_SYMBOL:
            	        	            		case ROW_COUNT_SYMBOL:
            	        	            		case ROW_FORMAT_SYMBOL:
            	        	            		case ROW_SYMBOL:
            	        	            		case RTREE_SYMBOL:
            	        	            		case SAVEPOINT_SYMBOL:
            	        	            		case SCHEDULE_SYMBOL:
            	        	            		case SCHEMA_NAME_SYMBOL:
            	        	            		case SECOND_SYMBOL:
            	        	            		case SECURITY_SYMBOL:
            	        	            		case SERIALIZABLE_SYMBOL:
            	        	            		case SERIAL_SYMBOL:
            	        	            		case SERVER_SYMBOL:
            	        	            		case SESSION_SYMBOL:
            	        	            		case SHARE_SYMBOL:
            	        	            		case SHUTDOWN_SYMBOL:
            	        	            		case SIGNED_SYMBOL:
            	        	            		case SIMPLE_SYMBOL:
            	        	            		case SINGLE_QUOTED_TEXT:
            	        	            		case SLAVE_SYMBOL:
            	        	            		case SLOW_SYMBOL:
            	        	            		case SNAPSHOT_SYMBOL:
            	        	            		case SOCKET_SYMBOL:
            	        	            		case SONAME_SYMBOL:
            	        	            		case SOUNDS_SYMBOL:
            	        	            		case SOURCE_SYMBOL:
            	        	            		case SQL_AFTER_GTIDS_SYMBOL:
            	        	            		case SQL_AFTER_MTS_GAPS_SYMBOL:
            	        	            		case SQL_BEFORE_GTIDS_SYMBOL:
            	        	            		case SQL_BUFFER_RESULT_SYMBOL:
            	        	            		case SQL_CACHE_SYMBOL:
            	        	            		case SQL_NO_CACHE_SYMBOL:
            	        	            		case SQL_THREAD_SYMBOL:
            	        	            		case STARTS_SYMBOL:
            	        	            		case START_SYMBOL:
            	        	            		case STATS_AUTO_RECALC_SYMBOL:
            	        	            		case STATS_PERSISTENT_SYMBOL:
            	        	            		case STATS_SAMPLE_PAGES_SYMBOL:
            	        	            		case STATUS_SYMBOL:
            	        	            		case STDDEV_SAMP_SYMBOL:
            	        	            		case STD_SYMBOL:
            	        	            		case STOP_SYMBOL:
            	        	            		case STORAGE_SYMBOL:
            	        	            		case STRING_SYMBOL:
            	        	            		case SUBCLASS_ORIGIN_SYMBOL:
            	        	            		case SUBDATE_SYMBOL:
            	        	            		case SUBJECT_SYMBOL:
            	        	            		case SUBPARTITIONS_SYMBOL:
            	        	            		case SUBPARTITION_SYMBOL:
            	        	            		case SUBSTRING_SYMBOL:
            	        	            		case SUM_SYMBOL:
            	        	            		case SUPER_SYMBOL:
            	        	            		case SUSPEND_SYMBOL:
            	        	            		case SWAPS_SYMBOL:
            	        	            		case SWITCHES_SYMBOL:
            	        	            		case SYSDATE_SYMBOL:
            	        	            		case TABLESPACE_SYMBOL:
            	        	            		case TABLES_SYMBOL:
            	        	            		case TABLE_CHECKSUM_SYMBOL:
            	        	            		case TABLE_NAME_SYMBOL:
            	        	            		case TEMPORARY_SYMBOL:
            	        	            		case TEMPTABLE_SYMBOL:
            	        	            		case TEXT_SYMBOL:
            	        	            		case THAN_SYMBOL:
            	        	            		case TIMESTAMP_ADD_SYMBOL:
            	        	            		case TIMESTAMP_DIFF_SYMBOL:
            	        	            		case TIMESTAMP_SYMBOL:
            	        	            		case TIME_SYMBOL:
            	        	            		case TRANSACTION_SYMBOL:
            	        	            		case TRIGGERS_SYMBOL:
            	        	            		case TRIM_SYMBOL:
            	        	            		case TRUE_SYMBOL:
            	        	            		case TRUNCATE_SYMBOL:
            	        	            		case TYPES_SYMBOL:
            	        	            		case TYPE_SYMBOL:
            	        	            		case UDF_RETURNS_SYMBOL:
            	        	            		case UNCOMMITTED_SYMBOL:
            	        	            		case UNDEFINED_SYMBOL:
            	        	            		case UNDERSCORE_CHARSET:
            	        	            		case UNDOFILE_SYMBOL:
            	        	            		case UNDO_BUFFER_SIZE_SYMBOL:
            	        	            		case UNICODE_SYMBOL:
            	        	            		case UNINSTALL_SYMBOL:
            	        	            		case UNKNOWN_SYMBOL:
            	        	            		case UNTIL_SYMBOL:
            	        	            		case UPGRADE_SYMBOL:
            	        	            		case USER_RESOURCES_SYMBOL:
            	        	            		case USER_SYMBOL:
            	        	            		case USE_FRM_SYMBOL:
            	        	            		case UTC_DATE_SYMBOL:
            	        	            		case UTC_TIMESTAMP_SYMBOL:
            	        	            		case UTC_TIME_SYMBOL:
            	        	            		case VALUES_SYMBOL:
            	        	            		case VALUE_SYMBOL:
            	        	            		case VARIABLES_SYMBOL:
            	        	            		case VARIANCE_SYMBOL:
            	        	            		case VAR_SAMP_SYMBOL:
            	        	            		case VIEW_SYMBOL:
            	        	            		case WAIT_SYMBOL:
            	        	            		case WARNINGS_SYMBOL:
            	        	            		case WEEK_SYMBOL:
            	        	            		case WEIGHT_STRING_SYMBOL:
            	        	            		case WORK_SYMBOL:
            	        	            		case WRAPPER_SYMBOL:
            	        	            		case X509_SYMBOL:
            	        	            		case XA_SYMBOL:
            	        	            		case XML_SYMBOL:
            	        	            		case YEAR_SYMBOL:
            	        	            		case 732:
            	        	            			{
            	        	            				alt511=2;
            	        	            			}
            	        	            		    break;

            	        	            		default:
            	        	            		    if (BACKTRACKING>0)
            	        	            		    {
            	        	            		        FAILEDFLAG = ANTLR3_TRUE;
            	        	            		        return retval;
            	        	            		    }

            	        	            		    CONSTRUCTEX();
            	        	            		    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	        	            		    EXCEPTION->message      = (void *)"";
            	        	            		    EXCEPTION->decisionNum  = 511;
            	        	            		    EXCEPTION->state        = 1;


            	        	            		    goto rulepredicateEx;

            	        	            		}

            	        	            	}
            	        	                break;

            	        	            default:
            	        	                if (BACKTRACKING>0)
            	        	                {
            	        	                    FAILEDFLAG = ANTLR3_TRUE;
            	        	                    return retval;
            	        	                }

            	        	                CONSTRUCTEX();
            	        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	        	                EXCEPTION->message      = (void *)"";
            	        	                EXCEPTION->decisionNum  = 511;
            	        	                EXCEPTION->state        = 0;


            	        	                goto rulepredicateEx;

            	        	            }

            	        	            switch (alt511)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:1543:21: subquery
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_subquery_in_predicate8663);
            	        	        	        subquery1720=subquery(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulepredicateEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, subquery1720.tree);

            	        	        	    }
            	        	        	    break;
            	        	        	case 2:
            	        	        	    // MySQL.g:1543:32: expression_list_with_parentheses
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_expression_list_with_parentheses_in_predicate8667);
            	        	        	        expression_list_with_parentheses1721=expression_list_with_parentheses(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulepredicateEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression_list_with_parentheses1721.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1545:9: SOUNDS_SYMBOL ^ LIKE_SYMBOL bitwise_or_expression
            	    {
            	        SOUNDS_SYMBOL1722 = (pANTLR3_COMMON_TOKEN) MATCHT(SOUNDS_SYMBOL, &FOLLOW_SOUNDS_SYMBOL_in_predicate8687);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepredicateEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SOUNDS_SYMBOL1722_tree = 
            	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SOUNDS_SYMBOL1722))
            	        ;
            	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, SOUNDS_SYMBOL1722_tree, root_0));
            	        }

            	        LIKE_SYMBOL1723 = (pANTLR3_COMMON_TOKEN) MATCHT(LIKE_SYMBOL, &FOLLOW_LIKE_SYMBOL_in_predicate8690);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepredicateEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        LIKE_SYMBOL1723_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LIKE_SYMBOL1723));
            	        ADAPTOR->addChild(ADAPTOR, root_0, LIKE_SYMBOL1723_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_bitwise_or_expression_in_predicate8692);
            	        bitwise_or_expression1724=bitwise_or_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepredicateEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, bitwise_or_expression1724.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulepredicateEx; /* Prevent compiler warnings */
    rulepredicateEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end predicate */

/**
 * $ANTLR start bitwise_or_expression
 * MySQL.g:1549:1: bitwise_or_expression : bitwise_and_expression ( options {greedy=true; } : BITWISE_OR_OPERATOR ^ bitwise_and_expression )* ;
 */
static MySQLParser_bitwise_or_expression_return
bitwise_or_expression(pMySQLParser ctx)
{
    MySQLParser_bitwise_or_expression_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    BITWISE_OR_OPERATOR1726;
    MySQLParser_bitwise_and_expression_return bitwise_and_expression1725;
    #undef	RETURN_TYPE_bitwise_and_expression1725
    #define	RETURN_TYPE_bitwise_and_expression1725 MySQLParser_bitwise_and_expression_return

    MySQLParser_bitwise_and_expression_return bitwise_and_expression1727;
    #undef	RETURN_TYPE_bitwise_and_expression1727
    #define	RETURN_TYPE_bitwise_and_expression1727 MySQLParser_bitwise_and_expression_return

    pANTLR3_BASE_TREE BITWISE_OR_OPERATOR1726_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    BITWISE_OR_OPERATOR1726       = NULL;
    bitwise_and_expression1725.tree = NULL;

    bitwise_and_expression1727.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    BITWISE_OR_OPERATOR1726_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1549:22: ( bitwise_and_expression ( options {greedy=true; } : BITWISE_OR_OPERATOR ^ bitwise_and_expression )* )
        // MySQL.g:1550:2: bitwise_and_expression ( options {greedy=true; } : BITWISE_OR_OPERATOR ^ bitwise_and_expression )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_bitwise_and_expression_in_bitwise_or_expression8706);
            bitwise_and_expression1725=bitwise_and_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulebitwise_or_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, bitwise_and_expression1725.tree);

            // MySQL.g:1550:25: ( options {greedy=true; } : BITWISE_OR_OPERATOR ^ bitwise_and_expression )*

            for (;;)
            {
                int alt514=2;
                switch ( LA(1) )
                {
                case BITWISE_OR_OPERATOR:
                	{
                		alt514=1;
                	}
                    break;

                }

                switch (alt514)
                {
            	case 1:
            	    // MySQL.g:1550:55: BITWISE_OR_OPERATOR ^ bitwise_and_expression
            	    {
            	        BITWISE_OR_OPERATOR1726 = (pANTLR3_COMMON_TOKEN) MATCHT(BITWISE_OR_OPERATOR, &FOLLOW_BITWISE_OR_OPERATOR_in_bitwise_or_expression8722);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulebitwise_or_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        BITWISE_OR_OPERATOR1726_tree = 
            	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BITWISE_OR_OPERATOR1726))
            	        ;
            	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, BITWISE_OR_OPERATOR1726_tree, root_0));
            	        }

            	        FOLLOWPUSH(FOLLOW_bitwise_and_expression_in_bitwise_or_expression8725);
            	        bitwise_and_expression1727=bitwise_and_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulebitwise_or_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, bitwise_and_expression1727.tree);

            	    }
            	    break;

            	default:
            	    goto loop514;	/* break out of the loop */
            	    break;
                }
            }
            loop514: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto rulebitwise_or_expressionEx; /* Prevent compiler warnings */
    rulebitwise_or_expressionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end bitwise_or_expression */

/**
 * $ANTLR start bitwise_and_expression
 * MySQL.g:1553:1: bitwise_and_expression : shift_expression ( options {greedy=true; } : BITWISE_AND_OPERATOR ^ shift_expression )* ;
 */
static MySQLParser_bitwise_and_expression_return
bitwise_and_expression(pMySQLParser ctx)
{
    MySQLParser_bitwise_and_expression_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    BITWISE_AND_OPERATOR1729;
    MySQLParser_shift_expression_return shift_expression1728;
    #undef	RETURN_TYPE_shift_expression1728
    #define	RETURN_TYPE_shift_expression1728 MySQLParser_shift_expression_return

    MySQLParser_shift_expression_return shift_expression1730;
    #undef	RETURN_TYPE_shift_expression1730
    #define	RETURN_TYPE_shift_expression1730 MySQLParser_shift_expression_return

    pANTLR3_BASE_TREE BITWISE_AND_OPERATOR1729_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    BITWISE_AND_OPERATOR1729       = NULL;
    shift_expression1728.tree = NULL;

    shift_expression1730.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    BITWISE_AND_OPERATOR1729_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1553:23: ( shift_expression ( options {greedy=true; } : BITWISE_AND_OPERATOR ^ shift_expression )* )
        // MySQL.g:1554:2: shift_expression ( options {greedy=true; } : BITWISE_AND_OPERATOR ^ shift_expression )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_shift_expression_in_bitwise_and_expression8736);
            shift_expression1728=shift_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulebitwise_and_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, shift_expression1728.tree);

            // MySQL.g:1554:19: ( options {greedy=true; } : BITWISE_AND_OPERATOR ^ shift_expression )*

            for (;;)
            {
                int alt515=2;
                switch ( LA(1) )
                {
                case BITWISE_AND_OPERATOR:
                	{
                		alt515=1;
                	}
                    break;

                }

                switch (alt515)
                {
            	case 1:
            	    // MySQL.g:1554:49: BITWISE_AND_OPERATOR ^ shift_expression
            	    {
            	        BITWISE_AND_OPERATOR1729 = (pANTLR3_COMMON_TOKEN) MATCHT(BITWISE_AND_OPERATOR, &FOLLOW_BITWISE_AND_OPERATOR_in_bitwise_and_expression8752);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulebitwise_and_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        BITWISE_AND_OPERATOR1729_tree = 
            	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BITWISE_AND_OPERATOR1729))
            	        ;
            	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, BITWISE_AND_OPERATOR1729_tree, root_0));
            	        }

            	        FOLLOWPUSH(FOLLOW_shift_expression_in_bitwise_and_expression8755);
            	        shift_expression1730=shift_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulebitwise_and_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, shift_expression1730.tree);

            	    }
            	    break;

            	default:
            	    goto loop515;	/* break out of the loop */
            	    break;
                }
            }
            loop515: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto rulebitwise_and_expressionEx; /* Prevent compiler warnings */
    rulebitwise_and_expressionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end bitwise_and_expression */

/**
 * $ANTLR start shift_expression
 * MySQL.g:1557:1: shift_expression : additive_expression ( options {greedy=true; } : ( SHIFT_LEFT_OPERATOR | SHIFT_RIGHT_OPERATOR ) ^ additive_expression )* ;
 */
static MySQLParser_shift_expression_return
shift_expression(pMySQLParser ctx)
{
    MySQLParser_shift_expression_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set1732;
    MySQLParser_additive_expression_return additive_expression1731;
    #undef	RETURN_TYPE_additive_expression1731
    #define	RETURN_TYPE_additive_expression1731 MySQLParser_additive_expression_return

    MySQLParser_additive_expression_return additive_expression1733;
    #undef	RETURN_TYPE_additive_expression1733
    #define	RETURN_TYPE_additive_expression1733 MySQLParser_additive_expression_return

    pANTLR3_BASE_TREE set1732_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1732       = NULL;
    additive_expression1731.tree = NULL;

    additive_expression1733.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1732_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1557:17: ( additive_expression ( options {greedy=true; } : ( SHIFT_LEFT_OPERATOR | SHIFT_RIGHT_OPERATOR ) ^ additive_expression )* )
        // MySQL.g:1558:2: additive_expression ( options {greedy=true; } : ( SHIFT_LEFT_OPERATOR | SHIFT_RIGHT_OPERATOR ) ^ additive_expression )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_additive_expression_in_shift_expression8766);
            additive_expression1731=additive_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleshift_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, additive_expression1731.tree);

            // MySQL.g:1558:22: ( options {greedy=true; } : ( SHIFT_LEFT_OPERATOR | SHIFT_RIGHT_OPERATOR ) ^ additive_expression )*

            for (;;)
            {
                int alt516=2;
                switch ( LA(1) )
                {
                case SHIFT_LEFT_OPERATOR:
                case SHIFT_RIGHT_OPERATOR:
                	{
                		alt516=1;
                	}
                    break;

                }

                switch (alt516)
                {
            	case 1:
            	    // MySQL.g:1558:52: ( SHIFT_LEFT_OPERATOR | SHIFT_RIGHT_OPERATOR ) ^ additive_expression
            	    {
            	        set1732=(pANTLR3_COMMON_TOKEN)LT(1);

            	        set1732=(pANTLR3_COMMON_TOKEN)LT(1);

            	        if ( ((LA(1) >= SHIFT_LEFT_OPERATOR) && (LA(1) <= SHIFT_RIGHT_OPERATOR)) )
            	        {
            	            CONSUME();
            	            if ( BACKTRACKING==0 ) root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, 
            	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1732))
            	            , root_0));
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	            CONSTRUCTEX();
            	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	            EXCEPTION->expectingSet = NULL;

            	            goto ruleshift_expressionEx;
            	        }


            	        FOLLOWPUSH(FOLLOW_additive_expression_in_shift_expression8791);
            	        additive_expression1733=additive_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshift_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, additive_expression1733.tree);

            	    }
            	    break;

            	default:
            	    goto loop516;	/* break out of the loop */
            	    break;
                }
            }
            loop516: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto ruleshift_expressionEx; /* Prevent compiler warnings */
    ruleshift_expressionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end shift_expression */

/**
 * $ANTLR start additive_expression
 * MySQL.g:1561:1: additive_expression : multiplicative_expression ( options {greedy=true; } : ( PLUS_OPERATOR | MINUS_OPERATOR ) ^ multiplicative_expression )* ;
 */
static MySQLParser_additive_expression_return
additive_expression(pMySQLParser ctx)
{
    MySQLParser_additive_expression_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set1735;
    MySQLParser_multiplicative_expression_return multiplicative_expression1734;
    #undef	RETURN_TYPE_multiplicative_expression1734
    #define	RETURN_TYPE_multiplicative_expression1734 MySQLParser_multiplicative_expression_return

    MySQLParser_multiplicative_expression_return multiplicative_expression1736;
    #undef	RETURN_TYPE_multiplicative_expression1736
    #define	RETURN_TYPE_multiplicative_expression1736 MySQLParser_multiplicative_expression_return

    pANTLR3_BASE_TREE set1735_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1735       = NULL;
    multiplicative_expression1734.tree = NULL;

    multiplicative_expression1736.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1735_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1561:20: ( multiplicative_expression ( options {greedy=true; } : ( PLUS_OPERATOR | MINUS_OPERATOR ) ^ multiplicative_expression )* )
        // MySQL.g:1562:2: multiplicative_expression ( options {greedy=true; } : ( PLUS_OPERATOR | MINUS_OPERATOR ) ^ multiplicative_expression )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_multiplicative_expression_in_additive_expression8802);
            multiplicative_expression1734=multiplicative_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleadditive_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, multiplicative_expression1734.tree);

            // MySQL.g:1562:28: ( options {greedy=true; } : ( PLUS_OPERATOR | MINUS_OPERATOR ) ^ multiplicative_expression )*

            for (;;)
            {
                int alt517=2;
                switch ( LA(1) )
                {
                case PLUS_OPERATOR:
                	{
                		alt517=1;
                	}
                    break;
                case MINUS_OPERATOR:
                	{
                		alt517=1;
                	}
                    break;

                }

                switch (alt517)
                {
            	case 1:
            	    // MySQL.g:1562:57: ( PLUS_OPERATOR | MINUS_OPERATOR ) ^ multiplicative_expression
            	    {
            	        set1735=(pANTLR3_COMMON_TOKEN)LT(1);

            	        set1735=(pANTLR3_COMMON_TOKEN)LT(1);

            	        if ( LA(1) == MINUS_OPERATOR || LA(1) == PLUS_OPERATOR )
            	        {
            	            CONSUME();
            	            if ( BACKTRACKING==0 ) root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, 
            	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1735))
            	            , root_0));
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	            CONSTRUCTEX();
            	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	            EXCEPTION->expectingSet = NULL;

            	            goto ruleadditive_expressionEx;
            	        }


            	        FOLLOWPUSH(FOLLOW_multiplicative_expression_in_additive_expression8827);
            	        multiplicative_expression1736=multiplicative_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleadditive_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, multiplicative_expression1736.tree);

            	    }
            	    break;

            	default:
            	    goto loop517;	/* break out of the loop */
            	    break;
                }
            }
            loop517: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto ruleadditive_expressionEx; /* Prevent compiler warnings */
    ruleadditive_expressionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end additive_expression */

/**
 * $ANTLR start multiplicative_expression
 * MySQL.g:1565:1: multiplicative_expression : bitwise_xor_expression ( options {greedy=true; } : multiplication_operator ^ bitwise_xor_expression )* ;
 */
static MySQLParser_multiplicative_expression_return
multiplicative_expression(pMySQLParser ctx)
{
    MySQLParser_multiplicative_expression_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_bitwise_xor_expression_return bitwise_xor_expression1737;
    #undef	RETURN_TYPE_bitwise_xor_expression1737
    #define	RETURN_TYPE_bitwise_xor_expression1737 MySQLParser_bitwise_xor_expression_return

    MySQLParser_multiplication_operator_return multiplication_operator1738;
    #undef	RETURN_TYPE_multiplication_operator1738
    #define	RETURN_TYPE_multiplication_operator1738 MySQLParser_multiplication_operator_return

    MySQLParser_bitwise_xor_expression_return bitwise_xor_expression1739;
    #undef	RETURN_TYPE_bitwise_xor_expression1739
    #define	RETURN_TYPE_bitwise_xor_expression1739 MySQLParser_bitwise_xor_expression_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    bitwise_xor_expression1737.tree = NULL;

    multiplication_operator1738.tree = NULL;

    bitwise_xor_expression1739.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:1565:26: ( bitwise_xor_expression ( options {greedy=true; } : multiplication_operator ^ bitwise_xor_expression )* )
        // MySQL.g:1566:2: bitwise_xor_expression ( options {greedy=true; } : multiplication_operator ^ bitwise_xor_expression )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_bitwise_xor_expression_in_multiplicative_expression8838);
            bitwise_xor_expression1737=bitwise_xor_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulemultiplicative_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, bitwise_xor_expression1737.tree);

            // MySQL.g:1566:25: ( options {greedy=true; } : multiplication_operator ^ bitwise_xor_expression )*

            for (;;)
            {
                int alt518=2;
                switch ( LA(1) )
                {
                case DIV_OPERATOR:
                case DIV_SYMBOL:
                case MOD_OPERATOR:
                case MOD_SYMBOL:
                case MULT_OPERATOR:
                	{
                		alt518=1;
                	}
                    break;

                }

                switch (alt518)
                {
            	case 1:
            	    // MySQL.g:1566:55: multiplication_operator ^ bitwise_xor_expression
            	    {
            	        FOLLOWPUSH(FOLLOW_multiplication_operator_in_multiplicative_expression8854);
            	        multiplication_operator1738=multiplication_operator(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulemultiplicative_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, multiplication_operator1738.tree, root_0));

            	        FOLLOWPUSH(FOLLOW_bitwise_xor_expression_in_multiplicative_expression8857);
            	        bitwise_xor_expression1739=bitwise_xor_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulemultiplicative_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, bitwise_xor_expression1739.tree);

            	    }
            	    break;

            	default:
            	    goto loop518;	/* break out of the loop */
            	    break;
                }
            }
            loop518: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto rulemultiplicative_expressionEx; /* Prevent compiler warnings */
    rulemultiplicative_expressionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end multiplicative_expression */

/**
 * $ANTLR start bitwise_xor_expression
 * MySQL.g:1569:1: bitwise_xor_expression : concat_expression ( options {greedy=true; } : BITWISE_XOR_OPERATOR ^ concat_expression )* ;
 */
static MySQLParser_bitwise_xor_expression_return
bitwise_xor_expression(pMySQLParser ctx)
{
    MySQLParser_bitwise_xor_expression_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    BITWISE_XOR_OPERATOR1741;
    MySQLParser_concat_expression_return concat_expression1740;
    #undef	RETURN_TYPE_concat_expression1740
    #define	RETURN_TYPE_concat_expression1740 MySQLParser_concat_expression_return

    MySQLParser_concat_expression_return concat_expression1742;
    #undef	RETURN_TYPE_concat_expression1742
    #define	RETURN_TYPE_concat_expression1742 MySQLParser_concat_expression_return

    pANTLR3_BASE_TREE BITWISE_XOR_OPERATOR1741_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    BITWISE_XOR_OPERATOR1741       = NULL;
    concat_expression1740.tree = NULL;

    concat_expression1742.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    BITWISE_XOR_OPERATOR1741_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1569:23: ( concat_expression ( options {greedy=true; } : BITWISE_XOR_OPERATOR ^ concat_expression )* )
        // MySQL.g:1570:2: concat_expression ( options {greedy=true; } : BITWISE_XOR_OPERATOR ^ concat_expression )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_concat_expression_in_bitwise_xor_expression8868);
            concat_expression1740=concat_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulebitwise_xor_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, concat_expression1740.tree);

            // MySQL.g:1570:20: ( options {greedy=true; } : BITWISE_XOR_OPERATOR ^ concat_expression )*

            for (;;)
            {
                int alt519=2;
                switch ( LA(1) )
                {
                case BITWISE_XOR_OPERATOR:
                	{
                		alt519=1;
                	}
                    break;

                }

                switch (alt519)
                {
            	case 1:
            	    // MySQL.g:1570:50: BITWISE_XOR_OPERATOR ^ concat_expression
            	    {
            	        BITWISE_XOR_OPERATOR1741 = (pANTLR3_COMMON_TOKEN) MATCHT(BITWISE_XOR_OPERATOR, &FOLLOW_BITWISE_XOR_OPERATOR_in_bitwise_xor_expression8884);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulebitwise_xor_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        BITWISE_XOR_OPERATOR1741_tree = 
            	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BITWISE_XOR_OPERATOR1741))
            	        ;
            	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, BITWISE_XOR_OPERATOR1741_tree, root_0));
            	        }

            	        FOLLOWPUSH(FOLLOW_concat_expression_in_bitwise_xor_expression8887);
            	        concat_expression1742=concat_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulebitwise_xor_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, concat_expression1742.tree);

            	    }
            	    break;

            	default:
            	    goto loop519;	/* break out of the loop */
            	    break;
                }
            }
            loop519: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto rulebitwise_xor_expressionEx; /* Prevent compiler warnings */
    rulebitwise_xor_expressionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end bitwise_xor_expression */

/**
 * $ANTLR start concat_expression
 * MySQL.g:1574:1: concat_expression : unary_expression ( options {greedy=true; } : CONCAT_PIPES_SYMBOL ^ unary_expression )* ;
 */
static MySQLParser_concat_expression_return
concat_expression(pMySQLParser ctx)
{
    MySQLParser_concat_expression_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    CONCAT_PIPES_SYMBOL1744;
    MySQLParser_unary_expression_return unary_expression1743;
    #undef	RETURN_TYPE_unary_expression1743
    #define	RETURN_TYPE_unary_expression1743 MySQLParser_unary_expression_return

    MySQLParser_unary_expression_return unary_expression1745;
    #undef	RETURN_TYPE_unary_expression1745
    #define	RETURN_TYPE_unary_expression1745 MySQLParser_unary_expression_return

    pANTLR3_BASE_TREE CONCAT_PIPES_SYMBOL1744_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CONCAT_PIPES_SYMBOL1744       = NULL;
    unary_expression1743.tree = NULL;

    unary_expression1745.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CONCAT_PIPES_SYMBOL1744_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1574:18: ( unary_expression ( options {greedy=true; } : CONCAT_PIPES_SYMBOL ^ unary_expression )* )
        // MySQL.g:1575:2: unary_expression ( options {greedy=true; } : CONCAT_PIPES_SYMBOL ^ unary_expression )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_unary_expression_in_concat_expression8899);
            unary_expression1743=unary_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleconcat_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, unary_expression1743.tree);

            // MySQL.g:1575:19: ( options {greedy=true; } : CONCAT_PIPES_SYMBOL ^ unary_expression )*

            for (;;)
            {
                int alt520=2;
                switch ( LA(1) )
                {
                case CONCAT_PIPES_SYMBOL:
                	{
                		alt520=1;
                	}
                    break;

                }

                switch (alt520)
                {
            	case 1:
            	    // MySQL.g:1575:49: CONCAT_PIPES_SYMBOL ^ unary_expression
            	    {
            	        CONCAT_PIPES_SYMBOL1744 = (pANTLR3_COMMON_TOKEN) MATCHT(CONCAT_PIPES_SYMBOL, &FOLLOW_CONCAT_PIPES_SYMBOL_in_concat_expression8915);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleconcat_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CONCAT_PIPES_SYMBOL1744_tree = 
            	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CONCAT_PIPES_SYMBOL1744))
            	        ;
            	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, CONCAT_PIPES_SYMBOL1744_tree, root_0));
            	        }

            	        FOLLOWPUSH(FOLLOW_unary_expression_in_concat_expression8918);
            	        unary_expression1745=unary_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleconcat_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, unary_expression1745.tree);

            	    }
            	    break;

            	default:
            	    goto loop520;	/* break out of the loop */
            	    break;
                }
            }
            loop520: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto ruleconcat_expressionEx; /* Prevent compiler warnings */
    ruleconcat_expressionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end concat_expression */

/**
 * $ANTLR start unary_expression
 * MySQL.g:1578:1: unary_expression : ( ( PLUS_OPERATOR | MINUS_OPERATOR | BITWISE_NOT_OPERATOR ) ^ unary_expression | not_expression );
 */
static MySQLParser_unary_expression_return
unary_expression(pMySQLParser ctx)
{
    MySQLParser_unary_expression_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set1746;
    MySQLParser_unary_expression_return unary_expression1747;
    #undef	RETURN_TYPE_unary_expression1747
    #define	RETURN_TYPE_unary_expression1747 MySQLParser_unary_expression_return

    MySQLParser_not_expression_return not_expression1748;
    #undef	RETURN_TYPE_not_expression1748
    #define	RETURN_TYPE_not_expression1748 MySQLParser_not_expression_return

    pANTLR3_BASE_TREE set1746_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1746       = NULL;
    unary_expression1747.tree = NULL;

    not_expression1748.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1746_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1578:17: ( ( PLUS_OPERATOR | MINUS_OPERATOR | BITWISE_NOT_OPERATOR ) ^ unary_expression | not_expression )

            ANTLR3_UINT32 alt521;

            alt521=2;

            {
                int LA521_0 = LA(1);
                if ( (LA521_0 == BITWISE_NOT_OPERATOR || LA521_0 == MINUS_OPERATOR || LA521_0 == PLUS_OPERATOR))
                {
                    alt521=1;
                }
                else if ( (LA521_0 == DATE_SYMBOL || LA521_0 == INTERVAL_SYMBOL || LA521_0 == LOGICAL_NOT_OPERATOR || LA521_0 == NCHAR_TEXT || LA521_0 == NOT2_SYMBOL || LA521_0 == SINGLE_QUOTED_TEXT || ((LA521_0 >= TIMESTAMP_SYMBOL) && (LA521_0 <= TIME_SYMBOL)) || LA521_0 == UNDERSCORE_CHARSET))
                {
                    alt521=2;
                }
                else if ( ((((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)))||((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))) && (LA521_0 == DOUBLE_QUOTED_TEXT))
                {
                    alt521=2;
                }
                else if ( (LA521_0 == FALSE_SYMBOL || LA521_0 == FLOAT || ((LA521_0 >= HEXNUMBER) && (LA521_0 <= HEXSTRING)) || LA521_0 == INTEGER || LA521_0 == TRUE_SYMBOL))
                {
                    alt521=2;
                }
                else if ( ((SERVER_VERSION >= 50003)) && (((LA521_0 >= BITNUMBER) && (LA521_0 <= BITSTRING))))
                {
                    alt521=2;
                }
                else if ( (((LA521_0 >= ACTION_SYMBOL) && (LA521_0 <= ADDDATE_SYMBOL)) || ((LA521_0 >= AFTER_SYMBOL) && (LA521_0 <= ALGORITHM_SYMBOL)) || LA521_0 == ANALYZE_SYMBOL || ((LA521_0 >= ANY_SYMBOL) && (LA521_0 <= ASCII_SYMBOL)) || ((LA521_0 >= AT_AT_SIGN_SYMBOL) && (LA521_0 <= BACKUP_SYMBOL)) || LA521_0 == BACK_TICK_QUOTED_ID || LA521_0 == BEGIN_SYMBOL || ((LA521_0 >= BINARY_SYMBOL) && (LA521_0 <= BINLOG_SYMBOL)) || ((LA521_0 >= BIT_AND_SYMBOL) && (LA521_0 <= BIT_XOR_SYMBOL)) || ((LA521_0 >= BLOCK_SYMBOL) && (LA521_0 <= BOOL_SYMBOL)) || ((LA521_0 >= BTREE_SYMBOL) && (LA521_0 <= BYTE_SYMBOL)) || LA521_0 == CACHE_SYMBOL || LA521_0 == CASCADED_SYMBOL || ((LA521_0 >= CASE_SYMBOL) && (LA521_0 <= CHANGED_SYMBOL)) || ((LA521_0 >= CHARSET_SYMBOL) && (LA521_0 <= CHECKSUM_SYMBOL)) || ((LA521_0 >= CIPHER_SYMBOL) && (LA521_0 <= CLIENT_SYMBOL)) || ((LA521_0 >= CLOSE_SYMBOL) && (LA521_0 <= CODE_SYMBOL)) || LA521_0 == COLLATION_SYMBOL || ((LA521_0 >= COLUMNS_SYMBOL) && (LA521_0 <= COLUMN_NAME_SYMBOL)) || ((LA521_0 >= COMMENT_SYMBOL) && (LA521_0 <= COMPRESSED_SYMBOL)) || LA521_0 == CONCURRENT_SYMBOL || ((LA521_0 >= CONNECTION_SYMBOL) && (LA521_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA521_0 >= CONTAINS_SYMBOL) && (LA521_0 <= CONTEXT_SYMBOL)) || ((LA521_0 >= CONTRIBUTORS_SYMBOL) && (LA521_0 <= CPU_SYMBOL)) || ((LA521_0 >= CUBE_SYMBOL) && (LA521_0 <= CURRENT_SYMBOL)) || ((LA521_0 >= CURRENT_USER_SYMBOL) && (LA521_0 <= CURSOR_NAME_SYMBOL)) || LA521_0 == CURTIME_SYMBOL || ((LA521_0 >= DATABASE_SYMBOL) && (LA521_0 <= DATETIME_SYMBOL)) || LA521_0 == DATE_ADD_SYMBOL || LA521_0 == DATE_SUB_SYMBOL || ((LA521_0 >= DAY_SYMBOL) && (LA521_0 <= DEALLOCATE_SYMBOL)) || LA521_0 == DEFAULT_AUTH_SYMBOL || LA521_0 == DEFINER_SYMBOL || LA521_0 == DELAY_KEY_WRITE_SYMBOL || LA521_0 == DES_KEY_FILE_SYMBOL || LA521_0 == DIAGNOSTICS_SYMBOL || ((LA521_0 >= DIRECTORY_SYMBOL) && (LA521_0 <= DISK_SYMBOL)) || LA521_0 == DOT_SYMBOL || LA521_0 == DO_SYMBOL || ((LA521_0 >= DUMPFILE_SYMBOL) && (LA521_0 <= DYNAMIC_SYMBOL)) || LA521_0 == ENABLE_SYMBOL || LA521_0 == ENDS_SYMBOL || ((LA521_0 >= END_SYMBOL) && (LA521_0 <= ENUM_SYMBOL)) || ((LA521_0 >= ERRORS_SYMBOL) && (LA521_0 <= ERROR_SYMBOL)) || ((LA521_0 >= ESCAPE_SYMBOL) && (LA521_0 <= EVERY_SYMBOL)) || ((LA521_0 >= EXECUTE_SYMBOL) && (LA521_0 <= EXISTS_SYMBOL)) || LA521_0 == EXPANSION_SYMBOL || LA521_0 == EXPORT_SYMBOL || ((LA521_0 >= EXTENDED_SYMBOL) && (LA521_0 <= EXTRACT_SYMBOL)) || ((LA521_0 >= FAST_SYMBOL) && (LA521_0 <= FAULTS_SYMBOL)) || ((LA521_0 >= FILE_SYMBOL) && (LA521_0 <= FIXED_SYMBOL)) || LA521_0 == FLUSH_SYMBOL || LA521_0 == FORMAT_SYMBOL || LA521_0 == FOUND_SYMBOL || LA521_0 == FULL_SYMBOL || ((LA521_0 >= FUNCTION_SYMBOL) && (LA521_0 <= GET_FORMAT_SYMBOL)) || ((LA521_0 >= GLOBAL_SYMBOL) && (LA521_0 <= GRANTS_SYMBOL)) || LA521_0 == GROUP_CONCAT_SYMBOL || ((LA521_0 >= HANDLER_SYMBOL) && (LA521_0 <= HASH_SYMBOL)) || LA521_0 == HELP_SYMBOL || ((LA521_0 >= HOSTS_SYMBOL) && (LA521_0 <= HOST_SYMBOL)) || ((LA521_0 >= HOUR_SYMBOL) && (LA521_0 <= IGNORE_SERVER_IDS_SYMBOL)) || ((LA521_0 >= IMPORT_SYMBOL) && (LA521_0 <= INDEXES_SYMBOL)) || LA521_0 == INITIAL_SIZE_SYMBOL || LA521_0 == INNODB_SYMBOL || ((LA521_0 >= INSERT_METHOD_SYMBOL) && (LA521_0 <= INSTALL_SYMBOL)) || LA521_0 == INVOKER_SYMBOL || LA521_0 == IO_SYMBOL || ((LA521_0 >= IPC_SYMBOL) && (LA521_0 <= ISSUER_SYMBOL)) || LA521_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA521_0 >= LANGUAGE_SYMBOL) && (LA521_0 <= LAST_SYMBOL)) || LA521_0 == LEAVES_SYMBOL || LA521_0 == LEFT_SYMBOL || LA521_0 == LESS_SYMBOL || LA521_0 == LEVEL_SYMBOL || LA521_0 == LINESTRING_SYMBOL || LA521_0 == LIST_SYMBOL || LA521_0 == LOCAL_SYMBOL || LA521_0 == LOCKS_SYMBOL || LA521_0 == LOGFILE_SYMBOL || LA521_0 == LOGS_SYMBOL || LA521_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA521_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA521_0 <= MASTER_SSL_SYMBOL)) || ((LA521_0 >= MASTER_SYMBOL) && (LA521_0 <= MATCH_SYMBOL)) || ((LA521_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA521_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA521_0 >= MEDIUM_SYMBOL) && (LA521_0 <= MICROSECOND_SYMBOL)) || LA521_0 == MIGRATE_SYMBOL || ((LA521_0 >= MINUTE_SYMBOL) && (LA521_0 <= MIN_SYMBOL)) || LA521_0 == MODE_SYMBOL || LA521_0 == MODIFY_SYMBOL || ((LA521_0 >= MOD_SYMBOL) && (LA521_0 <= MULTILINESTRING_SYMBOL)) || ((LA521_0 >= MULTIPOINT_SYMBOL) && (LA521_0 <= MULTIPOLYGON_SYMBOL)) || ((LA521_0 >= MUTEX_SYMBOL) && (LA521_0 <= NATIONAL_SYMBOL)) || LA521_0 == NCHAR_SYMBOL || LA521_0 == NDBCLUSTER_SYMBOL || ((LA521_0 >= NEW_SYMBOL) && (LA521_0 <= NONE_SYMBOL)) || ((LA521_0 >= NOW_SYMBOL) && (LA521_0 <= NO_WAIT_SYMBOL)) || LA521_0 == NULL2_SYMBOL || ((LA521_0 >= NULL_SYMBOL) && (LA521_0 <= NUMBER_SYMBOL)) || LA521_0 == NVARCHAR_SYMBOL || ((LA521_0 >= OFFSET_SYMBOL) && (LA521_0 <= ONE_SYMBOL)) || ((LA521_0 >= OPEN_PAR_SYMBOL) && (LA521_0 <= OPEN_SYMBOL)) || LA521_0 == OPTIONS_SYMBOL || ((LA521_0 >= OWNER_SYMBOL) && (LA521_0 <= PARAM_MARKER)) || ((LA521_0 >= PARSER_SYMBOL) && (LA521_0 <= PARTITION_SYMBOL)) || ((LA521_0 >= PASSWORD_SYMBOL) && (LA521_0 <= PLUGIN_SYMBOL)) || ((LA521_0 >= POINT_SYMBOL) && (LA521_0 <= POSITION_SYMBOL)) || ((LA521_0 >= PREPARE_SYMBOL) && (LA521_0 <= PREV_SYMBOL)) || LA521_0 == PRIVILEGES_SYMBOL || ((LA521_0 >= PROCESSLIST_SYMBOL) && (LA521_0 <= PROXY_SYMBOL)) || ((LA521_0 >= QUARTER_SYMBOL) && (LA521_0 <= QUICK_SYMBOL)) || LA521_0 == READ_ONLY_SYMBOL || ((LA521_0 >= REBUILD_SYMBOL) && (LA521_0 <= REDUNDANT_SYMBOL)) || ((LA521_0 >= RELAYLOG_SYMBOL) && (LA521_0 <= RELAY_THREAD_SYMBOL)) || ((LA521_0 >= RELOAD_SYMBOL) && (LA521_0 <= REMOVE_SYMBOL)) || ((LA521_0 >= REORGANIZE_SYMBOL) && (LA521_0 <= REPLICATION_SYMBOL)) || LA521_0 == RESET_SYMBOL || LA521_0 == RESTORE_SYMBOL || ((LA521_0 >= RESUME_SYMBOL) && (LA521_0 <= RETURNS_SYMBOL)) || LA521_0 == REVERSE_SYMBOL || LA521_0 == RIGHT_SYMBOL || ((LA521_0 >= ROLLBACK_SYMBOL) && (LA521_0 <= SCHEDULE_SYMBOL)) || LA521_0 == SCHEMA_NAME_SYMBOL || ((LA521_0 >= SECOND_SYMBOL) && (LA521_0 <= SECURITY_SYMBOL)) || ((LA521_0 >= SERIALIZABLE_SYMBOL) && (LA521_0 <= SERIAL_SYMBOL)) || ((LA521_0 >= SERVER_SYMBOL) && (LA521_0 <= SESSION_SYMBOL)) || LA521_0 == SHARE_SYMBOL || LA521_0 == SHUTDOWN_SYMBOL || ((LA521_0 >= SIGNED_SYMBOL) && (LA521_0 <= SIMPLE_SYMBOL)) || ((LA521_0 >= SLAVE_SYMBOL) && (LA521_0 <= SLOW_SYMBOL)) || ((LA521_0 >= SNAPSHOT_SYMBOL) && (LA521_0 <= SOURCE_SYMBOL)) || ((LA521_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA521_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA521_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA521_0 <= SQL_CACHE_SYMBOL)) || LA521_0 == SQL_NO_CACHE_SYMBOL || LA521_0 == SQL_THREAD_SYMBOL || ((LA521_0 >= STARTS_SYMBOL) && (LA521_0 <= STATUS_SYMBOL)) || LA521_0 == STDDEV_SAMP_SYMBOL || ((LA521_0 >= STD_SYMBOL) && (LA521_0 <= STORAGE_SYMBOL)) || ((LA521_0 >= STRING_SYMBOL) && (LA521_0 <= SUBPARTITION_SYMBOL)) || LA521_0 == SUBSTRING_SYMBOL || ((LA521_0 >= SUM_SYMBOL) && (LA521_0 <= SYSDATE_SYMBOL)) || ((LA521_0 >= TABLESPACE_SYMBOL) && (LA521_0 <= TABLE_NAME_SYMBOL)) || ((LA521_0 >= TEMPORARY_SYMBOL) && (LA521_0 <= TEMPTABLE_SYMBOL)) || ((LA521_0 >= TEXT_SYMBOL) && (LA521_0 <= THAN_SYMBOL)) || ((LA521_0 >= TIMESTAMP_ADD_SYMBOL) && (LA521_0 <= TIMESTAMP_DIFF_SYMBOL)) || ((LA521_0 >= TRANSACTION_SYMBOL) && (LA521_0 <= TRIGGERS_SYMBOL)) || LA521_0 == TRIM_SYMBOL || ((LA521_0 >= TRUNCATE_SYMBOL) && (LA521_0 <= UDF_RETURNS_SYMBOL)) || ((LA521_0 >= UNCOMMITTED_SYMBOL) && (LA521_0 <= UNDEFINED_SYMBOL)) || ((LA521_0 >= UNDOFILE_SYMBOL) && (LA521_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA521_0 >= UNICODE_SYMBOL) && (LA521_0 <= UNINSTALL_SYMBOL)) || LA521_0 == UNKNOWN_SYMBOL || LA521_0 == UNTIL_SYMBOL || LA521_0 == UPGRADE_SYMBOL || ((LA521_0 >= USER_RESOURCES_SYMBOL) && (LA521_0 <= USE_FRM_SYMBOL)) || ((LA521_0 >= UTC_DATE_SYMBOL) && (LA521_0 <= VALUE_SYMBOL)) || ((LA521_0 >= VARIABLES_SYMBOL) && (LA521_0 <= VARIANCE_SYMBOL)) || LA521_0 == VAR_SAMP_SYMBOL || ((LA521_0 >= VIEW_SYMBOL) && (LA521_0 <= WEIGHT_STRING_SYMBOL)) || ((LA521_0 >= WORK_SYMBOL) && (LA521_0 <= WRAPPER_SYMBOL)) || LA521_0 == X509_SYMBOL || ((LA521_0 >= XA_SYMBOL) && (LA521_0 <= XML_SYMBOL)) || LA521_0 == YEAR_SYMBOL || LA521_0 == 732))
                {
                    alt521=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 521;
                    EXCEPTION->state        = 0;


                    goto ruleunary_expressionEx;

                }
            }
            switch (alt521)
            {
        	case 1:
        	    // MySQL.g:1579:2: ( PLUS_OPERATOR | MINUS_OPERATOR | BITWISE_NOT_OPERATOR ) ^ unary_expression
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set1746=(pANTLR3_COMMON_TOKEN)LT(1);

        	        set1746=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == BITWISE_NOT_OPERATOR || LA(1) == MINUS_OPERATOR || LA(1) == PLUS_OPERATOR )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1746))
        	            , root_0));
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	            CONSTRUCTEX();
        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
        	            EXCEPTION->expectingSet = NULL;

        	            goto ruleunary_expressionEx;
        	        }


        	        FOLLOWPUSH(FOLLOW_unary_expression_in_unary_expression8942);
        	        unary_expression1747=unary_expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleunary_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, unary_expression1747.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1580:4: not_expression
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_not_expression_in_unary_expression8947);
        	        not_expression1748=not_expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleunary_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, not_expression1748.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleunary_expressionEx; /* Prevent compiler warnings */
    ruleunary_expressionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end unary_expression */

/**
 * $ANTLR start not_expression
 * MySQL.g:1583:1: not_expression : ( not2_rule )? interval_expression ;
 */
static MySQLParser_not_expression_return
not_expression(pMySQLParser ctx)
{
    MySQLParser_not_expression_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_not2_rule_return not2_rule1749;
    #undef	RETURN_TYPE_not2_rule1749
    #define	RETURN_TYPE_not2_rule1749 MySQLParser_not2_rule_return

    MySQLParser_interval_expression_return interval_expression1750;
    #undef	RETURN_TYPE_interval_expression1750
    #define	RETURN_TYPE_interval_expression1750 MySQLParser_interval_expression_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    not2_rule1749.tree = NULL;

    interval_expression1750.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:1583:15: ( ( not2_rule )? interval_expression )
        // MySQL.g:1584:2: ( not2_rule )? interval_expression
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:1584:2: ( not2_rule )?
            {
                int alt522=2;
                switch ( LA(1) )
                {
                    case LOGICAL_NOT_OPERATOR:
                    case NOT2_SYMBOL:
                    	{
                    		alt522=1;
                    	}
                        break;
                }

                switch (alt522)
                {
            	case 1:
            	    // MySQL.g:1584:2: not2_rule
            	    {
            	        FOLLOWPUSH(FOLLOW_not2_rule_in_not_expression8956);
            	        not2_rule1749=not2_rule(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulenot_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, not2_rule1749.tree);

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_interval_expression_in_not_expression8959);
            interval_expression1750=interval_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulenot_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, interval_expression1750.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto rulenot_expressionEx; /* Prevent compiler warnings */
    rulenot_expressionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end not_expression */

/**
 * $ANTLR start interval_expression
 * MySQL.g:1587:1: interval_expression : ( INTERVAL_SYMBOL ! ( ( OPEN_PAR_SYMBOL expression COMMA_SYMBOL )=> interval_function | interval_time_span ) | primary );
 */
static MySQLParser_interval_expression_return
interval_expression(pMySQLParser ctx)
{
    MySQLParser_interval_expression_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    INTERVAL_SYMBOL1751;
    MySQLParser_interval_function_return interval_function1752;
    #undef	RETURN_TYPE_interval_function1752
    #define	RETURN_TYPE_interval_function1752 MySQLParser_interval_function_return

    MySQLParser_interval_time_span_return interval_time_span1753;
    #undef	RETURN_TYPE_interval_time_span1753
    #define	RETURN_TYPE_interval_time_span1753 MySQLParser_interval_time_span_return

    MySQLParser_primary_return primary1754;
    #undef	RETURN_TYPE_primary1754
    #define	RETURN_TYPE_primary1754 MySQLParser_primary_return

    pANTLR3_BASE_TREE INTERVAL_SYMBOL1751_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    INTERVAL_SYMBOL1751       = NULL;
    interval_function1752.tree = NULL;

    interval_time_span1753.tree = NULL;

    primary1754.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    INTERVAL_SYMBOL1751_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1587:20: ( INTERVAL_SYMBOL ! ( ( OPEN_PAR_SYMBOL expression COMMA_SYMBOL )=> interval_function | interval_time_span ) | primary )

            ANTLR3_UINT32 alt524;

            alt524=2;

            {
                int LA524_0 = LA(1);
                if ( (LA524_0 == INTERVAL_SYMBOL))
                {
                    alt524=1;
                }
                else if ( (LA524_0 == DATE_SYMBOL || LA524_0 == NCHAR_TEXT || LA524_0 == SINGLE_QUOTED_TEXT || ((LA524_0 >= TIMESTAMP_SYMBOL) && (LA524_0 <= TIME_SYMBOL)) || LA524_0 == UNDERSCORE_CHARSET))
                {
                    alt524=2;
                }
                else if ( ((((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)))||((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))) && (LA524_0 == DOUBLE_QUOTED_TEXT))
                {
                    alt524=2;
                }
                else if ( (LA524_0 == FALSE_SYMBOL || LA524_0 == FLOAT || ((LA524_0 >= HEXNUMBER) && (LA524_0 <= HEXSTRING)) || LA524_0 == INTEGER || LA524_0 == TRUE_SYMBOL))
                {
                    alt524=2;
                }
                else if ( ((SERVER_VERSION >= 50003)) && (((LA524_0 >= BITNUMBER) && (LA524_0 <= BITSTRING))))
                {
                    alt524=2;
                }
                else if ( (((LA524_0 >= ACTION_SYMBOL) && (LA524_0 <= ADDDATE_SYMBOL)) || ((LA524_0 >= AFTER_SYMBOL) && (LA524_0 <= ALGORITHM_SYMBOL)) || LA524_0 == ANALYZE_SYMBOL || ((LA524_0 >= ANY_SYMBOL) && (LA524_0 <= ASCII_SYMBOL)) || ((LA524_0 >= AT_AT_SIGN_SYMBOL) && (LA524_0 <= BACKUP_SYMBOL)) || LA524_0 == BACK_TICK_QUOTED_ID || LA524_0 == BEGIN_SYMBOL || ((LA524_0 >= BINARY_SYMBOL) && (LA524_0 <= BINLOG_SYMBOL)) || ((LA524_0 >= BIT_AND_SYMBOL) && (LA524_0 <= BIT_XOR_SYMBOL)) || ((LA524_0 >= BLOCK_SYMBOL) && (LA524_0 <= BOOL_SYMBOL)) || ((LA524_0 >= BTREE_SYMBOL) && (LA524_0 <= BYTE_SYMBOL)) || LA524_0 == CACHE_SYMBOL || LA524_0 == CASCADED_SYMBOL || ((LA524_0 >= CASE_SYMBOL) && (LA524_0 <= CHANGED_SYMBOL)) || ((LA524_0 >= CHARSET_SYMBOL) && (LA524_0 <= CHECKSUM_SYMBOL)) || ((LA524_0 >= CIPHER_SYMBOL) && (LA524_0 <= CLIENT_SYMBOL)) || ((LA524_0 >= CLOSE_SYMBOL) && (LA524_0 <= CODE_SYMBOL)) || LA524_0 == COLLATION_SYMBOL || ((LA524_0 >= COLUMNS_SYMBOL) && (LA524_0 <= COLUMN_NAME_SYMBOL)) || ((LA524_0 >= COMMENT_SYMBOL) && (LA524_0 <= COMPRESSED_SYMBOL)) || LA524_0 == CONCURRENT_SYMBOL || ((LA524_0 >= CONNECTION_SYMBOL) && (LA524_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA524_0 >= CONTAINS_SYMBOL) && (LA524_0 <= CONTEXT_SYMBOL)) || ((LA524_0 >= CONTRIBUTORS_SYMBOL) && (LA524_0 <= CPU_SYMBOL)) || ((LA524_0 >= CUBE_SYMBOL) && (LA524_0 <= CURRENT_SYMBOL)) || ((LA524_0 >= CURRENT_USER_SYMBOL) && (LA524_0 <= CURSOR_NAME_SYMBOL)) || LA524_0 == CURTIME_SYMBOL || ((LA524_0 >= DATABASE_SYMBOL) && (LA524_0 <= DATETIME_SYMBOL)) || LA524_0 == DATE_ADD_SYMBOL || LA524_0 == DATE_SUB_SYMBOL || ((LA524_0 >= DAY_SYMBOL) && (LA524_0 <= DEALLOCATE_SYMBOL)) || LA524_0 == DEFAULT_AUTH_SYMBOL || LA524_0 == DEFINER_SYMBOL || LA524_0 == DELAY_KEY_WRITE_SYMBOL || LA524_0 == DES_KEY_FILE_SYMBOL || LA524_0 == DIAGNOSTICS_SYMBOL || ((LA524_0 >= DIRECTORY_SYMBOL) && (LA524_0 <= DISK_SYMBOL)) || LA524_0 == DOT_SYMBOL || LA524_0 == DO_SYMBOL || ((LA524_0 >= DUMPFILE_SYMBOL) && (LA524_0 <= DYNAMIC_SYMBOL)) || LA524_0 == ENABLE_SYMBOL || LA524_0 == ENDS_SYMBOL || ((LA524_0 >= END_SYMBOL) && (LA524_0 <= ENUM_SYMBOL)) || ((LA524_0 >= ERRORS_SYMBOL) && (LA524_0 <= ERROR_SYMBOL)) || ((LA524_0 >= ESCAPE_SYMBOL) && (LA524_0 <= EVERY_SYMBOL)) || ((LA524_0 >= EXECUTE_SYMBOL) && (LA524_0 <= EXISTS_SYMBOL)) || LA524_0 == EXPANSION_SYMBOL || LA524_0 == EXPORT_SYMBOL || ((LA524_0 >= EXTENDED_SYMBOL) && (LA524_0 <= EXTRACT_SYMBOL)) || ((LA524_0 >= FAST_SYMBOL) && (LA524_0 <= FAULTS_SYMBOL)) || ((LA524_0 >= FILE_SYMBOL) && (LA524_0 <= FIXED_SYMBOL)) || LA524_0 == FLUSH_SYMBOL || LA524_0 == FORMAT_SYMBOL || LA524_0 == FOUND_SYMBOL || LA524_0 == FULL_SYMBOL || ((LA524_0 >= FUNCTION_SYMBOL) && (LA524_0 <= GET_FORMAT_SYMBOL)) || ((LA524_0 >= GLOBAL_SYMBOL) && (LA524_0 <= GRANTS_SYMBOL)) || LA524_0 == GROUP_CONCAT_SYMBOL || ((LA524_0 >= HANDLER_SYMBOL) && (LA524_0 <= HASH_SYMBOL)) || LA524_0 == HELP_SYMBOL || ((LA524_0 >= HOSTS_SYMBOL) && (LA524_0 <= HOST_SYMBOL)) || ((LA524_0 >= HOUR_SYMBOL) && (LA524_0 <= IGNORE_SERVER_IDS_SYMBOL)) || ((LA524_0 >= IMPORT_SYMBOL) && (LA524_0 <= INDEXES_SYMBOL)) || LA524_0 == INITIAL_SIZE_SYMBOL || LA524_0 == INNODB_SYMBOL || ((LA524_0 >= INSERT_METHOD_SYMBOL) && (LA524_0 <= INSTALL_SYMBOL)) || LA524_0 == INVOKER_SYMBOL || LA524_0 == IO_SYMBOL || ((LA524_0 >= IPC_SYMBOL) && (LA524_0 <= ISSUER_SYMBOL)) || LA524_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA524_0 >= LANGUAGE_SYMBOL) && (LA524_0 <= LAST_SYMBOL)) || LA524_0 == LEAVES_SYMBOL || LA524_0 == LEFT_SYMBOL || LA524_0 == LESS_SYMBOL || LA524_0 == LEVEL_SYMBOL || LA524_0 == LINESTRING_SYMBOL || LA524_0 == LIST_SYMBOL || LA524_0 == LOCAL_SYMBOL || LA524_0 == LOCKS_SYMBOL || LA524_0 == LOGFILE_SYMBOL || LA524_0 == LOGS_SYMBOL || LA524_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA524_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA524_0 <= MASTER_SSL_SYMBOL)) || ((LA524_0 >= MASTER_SYMBOL) && (LA524_0 <= MATCH_SYMBOL)) || ((LA524_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA524_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA524_0 >= MEDIUM_SYMBOL) && (LA524_0 <= MICROSECOND_SYMBOL)) || LA524_0 == MIGRATE_SYMBOL || ((LA524_0 >= MINUTE_SYMBOL) && (LA524_0 <= MIN_SYMBOL)) || LA524_0 == MODE_SYMBOL || LA524_0 == MODIFY_SYMBOL || ((LA524_0 >= MOD_SYMBOL) && (LA524_0 <= MULTILINESTRING_SYMBOL)) || ((LA524_0 >= MULTIPOINT_SYMBOL) && (LA524_0 <= MULTIPOLYGON_SYMBOL)) || ((LA524_0 >= MUTEX_SYMBOL) && (LA524_0 <= NATIONAL_SYMBOL)) || LA524_0 == NCHAR_SYMBOL || LA524_0 == NDBCLUSTER_SYMBOL || ((LA524_0 >= NEW_SYMBOL) && (LA524_0 <= NONE_SYMBOL)) || ((LA524_0 >= NOW_SYMBOL) && (LA524_0 <= NO_WAIT_SYMBOL)) || LA524_0 == NULL2_SYMBOL || ((LA524_0 >= NULL_SYMBOL) && (LA524_0 <= NUMBER_SYMBOL)) || LA524_0 == NVARCHAR_SYMBOL || ((LA524_0 >= OFFSET_SYMBOL) && (LA524_0 <= ONE_SYMBOL)) || ((LA524_0 >= OPEN_PAR_SYMBOL) && (LA524_0 <= OPEN_SYMBOL)) || LA524_0 == OPTIONS_SYMBOL || ((LA524_0 >= OWNER_SYMBOL) && (LA524_0 <= PARAM_MARKER)) || ((LA524_0 >= PARSER_SYMBOL) && (LA524_0 <= PARTITION_SYMBOL)) || ((LA524_0 >= PASSWORD_SYMBOL) && (LA524_0 <= PLUGIN_SYMBOL)) || ((LA524_0 >= POINT_SYMBOL) && (LA524_0 <= POSITION_SYMBOL)) || ((LA524_0 >= PREPARE_SYMBOL) && (LA524_0 <= PREV_SYMBOL)) || LA524_0 == PRIVILEGES_SYMBOL || ((LA524_0 >= PROCESSLIST_SYMBOL) && (LA524_0 <= PROXY_SYMBOL)) || ((LA524_0 >= QUARTER_SYMBOL) && (LA524_0 <= QUICK_SYMBOL)) || LA524_0 == READ_ONLY_SYMBOL || ((LA524_0 >= REBUILD_SYMBOL) && (LA524_0 <= REDUNDANT_SYMBOL)) || ((LA524_0 >= RELAYLOG_SYMBOL) && (LA524_0 <= RELAY_THREAD_SYMBOL)) || ((LA524_0 >= RELOAD_SYMBOL) && (LA524_0 <= REMOVE_SYMBOL)) || ((LA524_0 >= REORGANIZE_SYMBOL) && (LA524_0 <= REPLICATION_SYMBOL)) || LA524_0 == RESET_SYMBOL || LA524_0 == RESTORE_SYMBOL || ((LA524_0 >= RESUME_SYMBOL) && (LA524_0 <= RETURNS_SYMBOL)) || LA524_0 == REVERSE_SYMBOL || LA524_0 == RIGHT_SYMBOL || ((LA524_0 >= ROLLBACK_SYMBOL) && (LA524_0 <= SCHEDULE_SYMBOL)) || LA524_0 == SCHEMA_NAME_SYMBOL || ((LA524_0 >= SECOND_SYMBOL) && (LA524_0 <= SECURITY_SYMBOL)) || ((LA524_0 >= SERIALIZABLE_SYMBOL) && (LA524_0 <= SERIAL_SYMBOL)) || ((LA524_0 >= SERVER_SYMBOL) && (LA524_0 <= SESSION_SYMBOL)) || LA524_0 == SHARE_SYMBOL || LA524_0 == SHUTDOWN_SYMBOL || ((LA524_0 >= SIGNED_SYMBOL) && (LA524_0 <= SIMPLE_SYMBOL)) || ((LA524_0 >= SLAVE_SYMBOL) && (LA524_0 <= SLOW_SYMBOL)) || ((LA524_0 >= SNAPSHOT_SYMBOL) && (LA524_0 <= SOURCE_SYMBOL)) || ((LA524_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA524_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA524_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA524_0 <= SQL_CACHE_SYMBOL)) || LA524_0 == SQL_NO_CACHE_SYMBOL || LA524_0 == SQL_THREAD_SYMBOL || ((LA524_0 >= STARTS_SYMBOL) && (LA524_0 <= STATUS_SYMBOL)) || LA524_0 == STDDEV_SAMP_SYMBOL || ((LA524_0 >= STD_SYMBOL) && (LA524_0 <= STORAGE_SYMBOL)) || ((LA524_0 >= STRING_SYMBOL) && (LA524_0 <= SUBPARTITION_SYMBOL)) || LA524_0 == SUBSTRING_SYMBOL || ((LA524_0 >= SUM_SYMBOL) && (LA524_0 <= SYSDATE_SYMBOL)) || ((LA524_0 >= TABLESPACE_SYMBOL) && (LA524_0 <= TABLE_NAME_SYMBOL)) || ((LA524_0 >= TEMPORARY_SYMBOL) && (LA524_0 <= TEMPTABLE_SYMBOL)) || ((LA524_0 >= TEXT_SYMBOL) && (LA524_0 <= THAN_SYMBOL)) || ((LA524_0 >= TIMESTAMP_ADD_SYMBOL) && (LA524_0 <= TIMESTAMP_DIFF_SYMBOL)) || ((LA524_0 >= TRANSACTION_SYMBOL) && (LA524_0 <= TRIGGERS_SYMBOL)) || LA524_0 == TRIM_SYMBOL || ((LA524_0 >= TRUNCATE_SYMBOL) && (LA524_0 <= UDF_RETURNS_SYMBOL)) || ((LA524_0 >= UNCOMMITTED_SYMBOL) && (LA524_0 <= UNDEFINED_SYMBOL)) || ((LA524_0 >= UNDOFILE_SYMBOL) && (LA524_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA524_0 >= UNICODE_SYMBOL) && (LA524_0 <= UNINSTALL_SYMBOL)) || LA524_0 == UNKNOWN_SYMBOL || LA524_0 == UNTIL_SYMBOL || LA524_0 == UPGRADE_SYMBOL || ((LA524_0 >= USER_RESOURCES_SYMBOL) && (LA524_0 <= USE_FRM_SYMBOL)) || ((LA524_0 >= UTC_DATE_SYMBOL) && (LA524_0 <= VALUE_SYMBOL)) || ((LA524_0 >= VARIABLES_SYMBOL) && (LA524_0 <= VARIANCE_SYMBOL)) || LA524_0 == VAR_SAMP_SYMBOL || ((LA524_0 >= VIEW_SYMBOL) && (LA524_0 <= WEIGHT_STRING_SYMBOL)) || ((LA524_0 >= WORK_SYMBOL) && (LA524_0 <= WRAPPER_SYMBOL)) || LA524_0 == X509_SYMBOL || ((LA524_0 >= XA_SYMBOL) && (LA524_0 <= XML_SYMBOL)) || LA524_0 == YEAR_SYMBOL || LA524_0 == 732))
                {
                    alt524=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 524;
                    EXCEPTION->state        = 0;


                    goto ruleinterval_expressionEx;

                }
            }
            switch (alt524)
            {
        	case 1:
        	    // MySQL.g:1588:2: INTERVAL_SYMBOL ! ( ( OPEN_PAR_SYMBOL expression COMMA_SYMBOL )=> interval_function | interval_time_span )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        INTERVAL_SYMBOL1751 = (pANTLR3_COMMON_TOKEN) MATCHT(INTERVAL_SYMBOL, &FOLLOW_INTERVAL_SYMBOL_in_interval_expression8968);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }


        	        // MySQL.g:1589:3: ( ( OPEN_PAR_SYMBOL expression COMMA_SYMBOL )=> interval_function | interval_time_span )
        	        {
        	            int alt523=2;
        	            {
        	                int LA523_0 = LA(1);
        	                if ( (LA523_0 == OPEN_PAR_SYMBOL))
        	                {
        	                    switch ( LA(2) )
        	                    {
        	                    case SELECT_SYMBOL:
        	                    	{
        	                    		alt523=2;
        	                    	}
        	                        break;
        	                    case NOT_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_103 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 103;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case BITWISE_NOT_OPERATOR:
        	                    case MINUS_OPERATOR:
        	                    case PLUS_OPERATOR:
        	                    	{
        	                    		{
        	                    		    int LA523_104 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 104;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case LOGICAL_NOT_OPERATOR:
        	                    case NOT2_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_105 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 105;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case INTERVAL_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_106 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 106;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case DATE_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_107 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 107;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case TIME_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_108 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 108;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case TIMESTAMP_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_109 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 109;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case NCHAR_TEXT:
        	                    	{
        	                    		{
        	                    		    int LA523_110 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 110;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case UNDERSCORE_CHARSET:
        	                    	{
        	                    		{
        	                    		    int LA523_111 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 111;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case SINGLE_QUOTED_TEXT:
        	                    	{
        	                    		{
        	                    		    int LA523_112 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 112;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case DOUBLE_QUOTED_TEXT:
        	                    	{
        	                    		{
        	                    		    int LA523_113 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 113;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case FLOAT:
        	                    case INTEGER:
        	                    	{
        	                    		{
        	                    		    int LA523_114 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 114;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case HEXNUMBER:
        	                    case HEXSTRING:
        	                    	{
        	                    		{
        	                    		    int LA523_115 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 115;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case FALSE_SYMBOL:
        	                    case TRUE_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_116 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 116;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case BITNUMBER:
        	                    case BITSTRING:
        	                    	{
        	                    		{
        	                    		    int LA523_117 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 117;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case NULL2_SYMBOL:
        	                    case NULL_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_118 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 118;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case IDENTIFIER:
        	                    	{
        	                    		{
        	                    		    int LA523_119 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 119;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case BACK_TICK_QUOTED_ID:
        	                    	{
        	                    		{
        	                    		    int LA523_120 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 120;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case DAY_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_121 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 121;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case ASCII_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_122 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 122;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case DOT_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_123 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 123;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case CHAR_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_124 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 124;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case CURRENT_USER_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_125 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 125;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case HOUR_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_126 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 126;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case MINUTE_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_127 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 127;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case INSERT_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_128 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 128;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case LEFT_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_129 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 129;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case MONTH_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_130 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 130;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case SECOND_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_131 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 131;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case RIGHT_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_132 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 132;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case USER_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_133 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 133;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case TRIM_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_134 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 134;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case YEAR_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_135 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 135;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case VALUES_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_136 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 136;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case ADDDATE_SYMBOL:
        	                    case SUBDATE_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_137 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 137;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case GET_FORMAT_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_138 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 138;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case CURDATE_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_139 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 139;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case CURTIME_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_140 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 140;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case DATE_ADD_SYMBOL:
        	                    case DATE_SUB_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_141 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 141;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case EXTRACT_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_142 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 142;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case TIMESTAMP_ADD_SYMBOL:
        	                    case TIMESTAMP_DIFF_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_143 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 143;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case NOW_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_144 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 144;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case POSITION_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_145 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 145;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case SUBSTRING_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_146 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 146;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case SYSDATE_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_147 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 147;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case COALESCE_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_148 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 148;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case UTC_DATE_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_149 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 149;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case UTC_TIME_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_150 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 150;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case UTC_TIMESTAMP_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_151 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 151;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case CHARSET_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_152 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 152;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case FORMAT_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_153 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 153;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case COLLATION_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_154 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 154;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case MICROSECOND_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_155 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 155;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case DATABASE_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_156 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 156;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case IF_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_157 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 157;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case TRUNCATE_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_158 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 158;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case OLD_PASSWORD_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_159 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 159;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case MOD_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_160 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 160;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case PASSWORD_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_161 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 161;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case QUARTER_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_162 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 162;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case REVERSE_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_163 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 163;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case REPEAT_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_164 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 164;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case REPLACE_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_165 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 165;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case ROW_COUNT_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_166 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 166;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case WEEK_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_167 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 167;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case CONTAINS_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_168 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 168;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case WEIGHT_STRING_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_169 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 169;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case GEOMETRYCOLLECTION_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_170 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 170;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case BACKUP_SYMBOL:
        	                    case BEGIN_SYMBOL:
        	                    case BYTE_SYMBOL:
        	                    case CACHE_SYMBOL:
        	                    case CHECKSUM_SYMBOL:
        	                    case CLOSE_SYMBOL:
        	                    case COMMENT_SYMBOL:
        	                    case COMMIT_SYMBOL:
        	                    case DEALLOCATE_SYMBOL:
        	                    case DO_SYMBOL:
        	                    case END_SYMBOL:
        	                    case EXECUTE_SYMBOL:
        	                    case FLUSH_SYMBOL:
        	                    case HANDLER_SYMBOL:
        	                    case HELP_SYMBOL:
        	                    case HOST_SYMBOL:
        	                    case INSTALL_SYMBOL:
        	                    case LANGUAGE_SYMBOL:
        	                    case NO_SYMBOL:
        	                    case OPEN_SYMBOL:
        	                    case OPTIONS_SYMBOL:
        	                    case OWNER_SYMBOL:
        	                    case PARSER_SYMBOL:
        	                    case PARTITION_SYMBOL:
        	                    case PORT_SYMBOL:
        	                    case PREPARE_SYMBOL:
        	                    case REMOVE_SYMBOL:
        	                    case REPAIR_SYMBOL:
        	                    case RESET_SYMBOL:
        	                    case RESTORE_SYMBOL:
        	                    case ROLLBACK_SYMBOL:
        	                    case SAVEPOINT_SYMBOL:
        	                    case SECURITY_SYMBOL:
        	                    case SERVER_SYMBOL:
        	                    case SIGNED_SYMBOL:
        	                    case SLAVE_SYMBOL:
        	                    case SOCKET_SYMBOL:
        	                    case SONAME_SYMBOL:
        	                    case START_SYMBOL:
        	                    case STOP_SYMBOL:
        	                    case UNICODE_SYMBOL:
        	                    case UNINSTALL_SYMBOL:
        	                    case UPGRADE_SYMBOL:
        	                    case WRAPPER_SYMBOL:
        	                    case XA_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_171 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 171;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case LINESTRING_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_172 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 172;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case MULTILINESTRING_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_173 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 173;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case MULTIPOINT_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_174 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 174;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case MULTIPOLYGON_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_175 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 175;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case POINT_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_176 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 176;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case POLYGON_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_177 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 177;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case AVG_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_178 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 178;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case ROW_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_179 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 179;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case BIT_AND_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_180 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 180;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case BIT_OR_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_181 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 181;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case BIT_XOR_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_182 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 182;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case COUNT_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_183 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 183;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case MIN_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_184 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 184;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case MAX_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_185 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 185;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case STD_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_186 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 186;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case VARIANCE_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_187 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 187;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case STDDEV_SAMP_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_188 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 188;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case VAR_SAMP_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_189 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 189;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case SUM_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_190 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 190;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case GROUP_CONCAT_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_191 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 191;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case PARAM_MARKER:
        	                    	{
        	                    		{
        	                    		    int LA523_192 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 192;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case AT_SIGN_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_193 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 193;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case AT_AT_SIGN_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_194 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 194;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case OPEN_PAR_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_195 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 195;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case EXISTS_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_196 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 196;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case ACTION_SYMBOL:
        	                    case AFTER_SYMBOL:
        	                    case AGAINST_SYMBOL:
        	                    case AGGREGATE_SYMBOL:
        	                    case ALGORITHM_SYMBOL:
        	                    case ANALYZE_SYMBOL:
        	                    case ANY_SYMBOL:
        	                    case AT_SYMBOL:
        	                    case AUTHORS_SYMBOL:
        	                    case AUTOEXTEND_SIZE_SYMBOL:
        	                    case AUTO_INCREMENT_SYMBOL:
        	                    case AVG_ROW_LENGTH_SYMBOL:
        	                    case BINLOG_SYMBOL:
        	                    case BIT_SYMBOL:
        	                    case BLOCK_SYMBOL:
        	                    case BOOLEAN_SYMBOL:
        	                    case BOOL_SYMBOL:
        	                    case BTREE_SYMBOL:
        	                    case CASCADED_SYMBOL:
        	                    case CATALOG_NAME_SYMBOL:
        	                    case CHAIN_SYMBOL:
        	                    case CHANGED_SYMBOL:
        	                    case CIPHER_SYMBOL:
        	                    case CLASS_ORIGIN_SYMBOL:
        	                    case CLIENT_SYMBOL:
        	                    case CODE_SYMBOL:
        	                    case COLUMNS_SYMBOL:
        	                    case COLUMN_FORMAT_SYMBOL:
        	                    case COLUMN_NAME_SYMBOL:
        	                    case COMMITTED_SYMBOL:
        	                    case COMPACT_SYMBOL:
        	                    case COMPLETION_SYMBOL:
        	                    case COMPRESSED_SYMBOL:
        	                    case CONCURRENT_SYMBOL:
        	                    case CONNECTION_SYMBOL:
        	                    case CONSISTENT_SYMBOL:
        	                    case CONSTRAINT_CATALOG_SYMBOL:
        	                    case CONSTRAINT_NAME_SYMBOL:
        	                    case CONSTRAINT_SCHEMA_SYMBOL:
        	                    case CONTEXT_SYMBOL:
        	                    case CONTRIBUTORS_SYMBOL:
        	                    case CPU_SYMBOL:
        	                    case CUBE_SYMBOL:
        	                    case CURRENT_SYMBOL:
        	                    case CURSOR_NAME_SYMBOL:
        	                    case DATAFILE_SYMBOL:
        	                    case DATA_SYMBOL:
        	                    case DATETIME_SYMBOL:
        	                    case DEFAULT_AUTH_SYMBOL:
        	                    case DEFINER_SYMBOL:
        	                    case DELAY_KEY_WRITE_SYMBOL:
        	                    case DES_KEY_FILE_SYMBOL:
        	                    case DIAGNOSTICS_SYMBOL:
        	                    case DIRECTORY_SYMBOL:
        	                    case DISABLE_SYMBOL:
        	                    case DISCARD_SYMBOL:
        	                    case DISK_SYMBOL:
        	                    case DUMPFILE_SYMBOL:
        	                    case DUPLICATE_SYMBOL:
        	                    case DYNAMIC_SYMBOL:
        	                    case ENABLE_SYMBOL:
        	                    case ENDS_SYMBOL:
        	                    case ENGINES_SYMBOL:
        	                    case ENGINE_SYMBOL:
        	                    case ENUM_SYMBOL:
        	                    case ERRORS_SYMBOL:
        	                    case ERROR_SYMBOL:
        	                    case ESCAPE_SYMBOL:
        	                    case EVENTS_SYMBOL:
        	                    case EVENT_SYMBOL:
        	                    case EVERY_SYMBOL:
        	                    case EXPANSION_SYMBOL:
        	                    case EXPORT_SYMBOL:
        	                    case EXTENDED_SYMBOL:
        	                    case EXTENT_SIZE_SYMBOL:
        	                    case FAST_SYMBOL:
        	                    case FAULTS_SYMBOL:
        	                    case FILE_SYMBOL:
        	                    case FIRST_SYMBOL:
        	                    case FIXED_SYMBOL:
        	                    case FOUND_SYMBOL:
        	                    case FULL_SYMBOL:
        	                    case FUNCTION_SYMBOL:
        	                    case GENERAL_SYMBOL:
        	                    case GEOMETRY_SYMBOL:
        	                    case GLOBAL_SYMBOL:
        	                    case GRANTS_SYMBOL:
        	                    case HASH_SYMBOL:
        	                    case HOSTS_SYMBOL:
        	                    case IDENTIFIED_SYMBOL:
        	                    case IGNORE_SERVER_IDS_SYMBOL:
        	                    case IMPORT_SYMBOL:
        	                    case INDEXES_SYMBOL:
        	                    case INITIAL_SIZE_SYMBOL:
        	                    case INNODB_SYMBOL:
        	                    case INSERT_METHOD_SYMBOL:
        	                    case INVOKER_SYMBOL:
        	                    case IO_SYMBOL:
        	                    case IPC_SYMBOL:
        	                    case ISOLATION_SYMBOL:
        	                    case ISSUER_SYMBOL:
        	                    case KEY_BLOCK_SIZE_SYMBOL:
        	                    case LAST_SYMBOL:
        	                    case LEAVES_SYMBOL:
        	                    case LESS_SYMBOL:
        	                    case LEVEL_SYMBOL:
        	                    case LIST_SYMBOL:
        	                    case LOCAL_SYMBOL:
        	                    case LOCKS_SYMBOL:
        	                    case LOGFILE_SYMBOL:
        	                    case LOGS_SYMBOL:
        	                    case MASTER_AUTO_POSITION_SYMBOL:
        	                    case MASTER_CONNECT_RETRY_SYMBOL:
        	                    case MASTER_DELAY_SYMBOL:
        	                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
        	                    case MASTER_HOST_SYMBOL:
        	                    case MASTER_LOG_FILE_SYMBOL:
        	                    case MASTER_LOG_POS_SYMBOL:
        	                    case MASTER_PASSWORD_SYMBOL:
        	                    case MASTER_PORT_SYMBOL:
        	                    case MASTER_RETRY_COUNT_SYMBOL:
        	                    case MASTER_SERVER_ID_SYMBOL:
        	                    case MASTER_SSL_CAPATH_SYMBOL:
        	                    case MASTER_SSL_CA_SYMBOL:
        	                    case MASTER_SSL_CERT_SYMBOL:
        	                    case MASTER_SSL_CIPHER_SYMBOL:
        	                    case MASTER_SSL_CRLPATH_SYMBOL:
        	                    case MASTER_SSL_CRL_SYMBOL:
        	                    case MASTER_SSL_KEY_SYMBOL:
        	                    case MASTER_SSL_SYMBOL:
        	                    case MASTER_SYMBOL:
        	                    case MASTER_USER_SYMBOL:
        	                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
        	                    case MAX_QUERIES_PER_HOUR_SYMBOL:
        	                    case MAX_ROWS_SYMBOL:
        	                    case MAX_SIZE_SYMBOL:
        	                    case MAX_UPDATES_PER_HOUR_SYMBOL:
        	                    case MAX_USER_CONNECTIONS_SYMBOL:
        	                    case MEDIUM_SYMBOL:
        	                    case MEMORY_SYMBOL:
        	                    case MERGE_SYMBOL:
        	                    case MESSAGE_TEXT_SYMBOL:
        	                    case MIGRATE_SYMBOL:
        	                    case MIN_ROWS_SYMBOL:
        	                    case MODE_SYMBOL:
        	                    case MODIFY_SYMBOL:
        	                    case MUTEX_SYMBOL:
        	                    case MYSQL_ERRNO_SYMBOL:
        	                    case NAMES_SYMBOL:
        	                    case NAME_SYMBOL:
        	                    case NATIONAL_SYMBOL:
        	                    case NCHAR_SYMBOL:
        	                    case NDBCLUSTER_SYMBOL:
        	                    case NEW_SYMBOL:
        	                    case NEXT_SYMBOL:
        	                    case NODEGROUP_SYMBOL:
        	                    case NONE_SYMBOL:
        	                    case NO_WAIT_SYMBOL:
        	                    case NUMBER_SYMBOL:
        	                    case NVARCHAR_SYMBOL:
        	                    case OFFSET_SYMBOL:
        	                    case ONE_SHOT_SYMBOL:
        	                    case ONE_SYMBOL:
        	                    case PACK_KEYS_SYMBOL:
        	                    case PAGE_SYMBOL:
        	                    case PARTIAL_SYMBOL:
        	                    case PARTITIONING_SYMBOL:
        	                    case PARTITIONS_SYMBOL:
        	                    case PHASE_SYMBOL:
        	                    case PLUGINS_SYMBOL:
        	                    case PLUGIN_DIR_SYMBOL:
        	                    case PLUGIN_SYMBOL:
        	                    case PRESERVE_SYMBOL:
        	                    case PREV_SYMBOL:
        	                    case PRIVILEGES_SYMBOL:
        	                    case PROCESSLIST_SYMBOL:
        	                    case PROCESS_SYMBOL:
        	                    case PROFILES_SYMBOL:
        	                    case PROFILE_SYMBOL:
        	                    case PROXY_SYMBOL:
        	                    case QUERY_SYMBOL:
        	                    case QUICK_SYMBOL:
        	                    case READ_ONLY_SYMBOL:
        	                    case REBUILD_SYMBOL:
        	                    case RECOVER_SYMBOL:
        	                    case REDOFILE_SYMBOL:
        	                    case REDO_BUFFER_SIZE_SYMBOL:
        	                    case REDUNDANT_SYMBOL:
        	                    case RELAYLOG_SYMBOL:
        	                    case RELAY_LOG_FILE_SYMBOL:
        	                    case RELAY_LOG_POS_SYMBOL:
        	                    case RELAY_SYMBOL:
        	                    case RELAY_THREAD_SYMBOL:
        	                    case RELOAD_SYMBOL:
        	                    case REORGANIZE_SYMBOL:
        	                    case REPEATABLE_SYMBOL:
        	                    case REPLICATION_SYMBOL:
        	                    case RESUME_SYMBOL:
        	                    case RETURNED_SQLSTATE_SYMBOL:
        	                    case RETURNS_SYMBOL:
        	                    case ROLLUP_SYMBOL:
        	                    case ROUTINE_SYMBOL:
        	                    case ROWS_SYMBOL:
        	                    case ROW_FORMAT_SYMBOL:
        	                    case RTREE_SYMBOL:
        	                    case SCHEDULE_SYMBOL:
        	                    case SCHEMA_NAME_SYMBOL:
        	                    case SERIALIZABLE_SYMBOL:
        	                    case SERIAL_SYMBOL:
        	                    case SESSION_SYMBOL:
        	                    case SHARE_SYMBOL:
        	                    case SHUTDOWN_SYMBOL:
        	                    case SIMPLE_SYMBOL:
        	                    case SLOW_SYMBOL:
        	                    case SNAPSHOT_SYMBOL:
        	                    case SOUNDS_SYMBOL:
        	                    case SOURCE_SYMBOL:
        	                    case SQL_AFTER_GTIDS_SYMBOL:
        	                    case SQL_AFTER_MTS_GAPS_SYMBOL:
        	                    case SQL_BEFORE_GTIDS_SYMBOL:
        	                    case SQL_BUFFER_RESULT_SYMBOL:
        	                    case SQL_CACHE_SYMBOL:
        	                    case SQL_NO_CACHE_SYMBOL:
        	                    case SQL_THREAD_SYMBOL:
        	                    case STARTS_SYMBOL:
        	                    case STATS_AUTO_RECALC_SYMBOL:
        	                    case STATS_PERSISTENT_SYMBOL:
        	                    case STATS_SAMPLE_PAGES_SYMBOL:
        	                    case STATUS_SYMBOL:
        	                    case STORAGE_SYMBOL:
        	                    case STRING_SYMBOL:
        	                    case SUBCLASS_ORIGIN_SYMBOL:
        	                    case SUBJECT_SYMBOL:
        	                    case SUBPARTITIONS_SYMBOL:
        	                    case SUBPARTITION_SYMBOL:
        	                    case SUPER_SYMBOL:
        	                    case SUSPEND_SYMBOL:
        	                    case SWAPS_SYMBOL:
        	                    case SWITCHES_SYMBOL:
        	                    case TABLESPACE_SYMBOL:
        	                    case TABLES_SYMBOL:
        	                    case TABLE_CHECKSUM_SYMBOL:
        	                    case TABLE_NAME_SYMBOL:
        	                    case TEMPORARY_SYMBOL:
        	                    case TEMPTABLE_SYMBOL:
        	                    case TEXT_SYMBOL:
        	                    case THAN_SYMBOL:
        	                    case TRANSACTION_SYMBOL:
        	                    case TRIGGERS_SYMBOL:
        	                    case TYPES_SYMBOL:
        	                    case TYPE_SYMBOL:
        	                    case UDF_RETURNS_SYMBOL:
        	                    case UNCOMMITTED_SYMBOL:
        	                    case UNDEFINED_SYMBOL:
        	                    case UNDOFILE_SYMBOL:
        	                    case UNDO_BUFFER_SIZE_SYMBOL:
        	                    case UNKNOWN_SYMBOL:
        	                    case UNTIL_SYMBOL:
        	                    case USER_RESOURCES_SYMBOL:
        	                    case USE_FRM_SYMBOL:
        	                    case VALUE_SYMBOL:
        	                    case VARIABLES_SYMBOL:
        	                    case VIEW_SYMBOL:
        	                    case WAIT_SYMBOL:
        	                    case WARNINGS_SYMBOL:
        	                    case WORK_SYMBOL:
        	                    case X509_SYMBOL:
        	                    case XML_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_197 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 197;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case 732:
        	                    	{
        	                    		{
        	                    		    int LA523_198 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 198;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case MATCH_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_199 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 199;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case CASE_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_200 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 200;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case BINARY_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_201 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 201;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case CAST_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_202 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 202;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;
        	                    case CONVERT_SYMBOL:
        	                    	{
        	                    		{
        	                    		    int LA523_203 = LA(3);
        	                    		    if ( (synpred2_MySQL(ctx)))
        	                    		    {
        	                    		        alt523=1;
        	                    		    }
        	                    		    else if ( (ANTLR3_TRUE))
        	                    		    {
        	                    		        alt523=2;
        	                    		    }
        	                    		    else
        	                    		    {
        	                    		        if (BACKTRACKING>0)
        	                    		        {
        	                    		            FAILEDFLAG = ANTLR3_TRUE;
        	                    		            return retval;
        	                    		        }


        	                    		        CONSTRUCTEX();
        	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    		        EXCEPTION->message      = (void *)"";
        	                    		        EXCEPTION->decisionNum  = 523;
        	                    		        EXCEPTION->state        = 203;


        	                    		        goto ruleinterval_expressionEx;

        	                    		    }
        	                    		}
        	                    	}
        	                        break;

        	                    default:
        	                        if (BACKTRACKING>0)
        	                        {
        	                            FAILEDFLAG = ANTLR3_TRUE;
        	                            return retval;
        	                        }

        	                        CONSTRUCTEX();
        	                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                        EXCEPTION->message      = (void *)"";
        	                        EXCEPTION->decisionNum  = 523;
        	                        EXCEPTION->state        = 1;


        	                        goto ruleinterval_expressionEx;

        	                    }

        	                }
        	                else if ( (LA523_0 == BITWISE_NOT_OPERATOR || LA523_0 == DATE_SYMBOL || LA523_0 == INTERVAL_SYMBOL || LA523_0 == LOGICAL_NOT_OPERATOR || LA523_0 == MINUS_OPERATOR || LA523_0 == NCHAR_TEXT || LA523_0 == NOT2_SYMBOL || LA523_0 == NOT_SYMBOL || LA523_0 == PLUS_OPERATOR || LA523_0 == SINGLE_QUOTED_TEXT || ((LA523_0 >= TIMESTAMP_SYMBOL) && (LA523_0 <= TIME_SYMBOL)) || LA523_0 == UNDERSCORE_CHARSET))
        	                {
        	                    alt523=2;
        	                }
        	                else if ( ((((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)))||((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))) && (LA523_0 == DOUBLE_QUOTED_TEXT))
        	                {
        	                    alt523=2;
        	                }
        	                else if ( (LA523_0 == FALSE_SYMBOL || LA523_0 == FLOAT || ((LA523_0 >= HEXNUMBER) && (LA523_0 <= HEXSTRING)) || LA523_0 == INTEGER || LA523_0 == TRUE_SYMBOL))
        	                {
        	                    alt523=2;
        	                }
        	                else if ( ((SERVER_VERSION >= 50003)) && (((LA523_0 >= BITNUMBER) && (LA523_0 <= BITSTRING))))
        	                {
        	                    alt523=2;
        	                }
        	                else if ( (((LA523_0 >= ACTION_SYMBOL) && (LA523_0 <= ADDDATE_SYMBOL)) || ((LA523_0 >= AFTER_SYMBOL) && (LA523_0 <= ALGORITHM_SYMBOL)) || LA523_0 == ANALYZE_SYMBOL || ((LA523_0 >= ANY_SYMBOL) && (LA523_0 <= ASCII_SYMBOL)) || ((LA523_0 >= AT_AT_SIGN_SYMBOL) && (LA523_0 <= BACKUP_SYMBOL)) || LA523_0 == BACK_TICK_QUOTED_ID || LA523_0 == BEGIN_SYMBOL || ((LA523_0 >= BINARY_SYMBOL) && (LA523_0 <= BINLOG_SYMBOL)) || ((LA523_0 >= BIT_AND_SYMBOL) && (LA523_0 <= BIT_XOR_SYMBOL)) || ((LA523_0 >= BLOCK_SYMBOL) && (LA523_0 <= BOOL_SYMBOL)) || ((LA523_0 >= BTREE_SYMBOL) && (LA523_0 <= BYTE_SYMBOL)) || LA523_0 == CACHE_SYMBOL || LA523_0 == CASCADED_SYMBOL || ((LA523_0 >= CASE_SYMBOL) && (LA523_0 <= CHANGED_SYMBOL)) || ((LA523_0 >= CHARSET_SYMBOL) && (LA523_0 <= CHECKSUM_SYMBOL)) || ((LA523_0 >= CIPHER_SYMBOL) && (LA523_0 <= CLIENT_SYMBOL)) || ((LA523_0 >= CLOSE_SYMBOL) && (LA523_0 <= CODE_SYMBOL)) || LA523_0 == COLLATION_SYMBOL || ((LA523_0 >= COLUMNS_SYMBOL) && (LA523_0 <= COLUMN_NAME_SYMBOL)) || ((LA523_0 >= COMMENT_SYMBOL) && (LA523_0 <= COMPRESSED_SYMBOL)) || LA523_0 == CONCURRENT_SYMBOL || ((LA523_0 >= CONNECTION_SYMBOL) && (LA523_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA523_0 >= CONTAINS_SYMBOL) && (LA523_0 <= CONTEXT_SYMBOL)) || ((LA523_0 >= CONTRIBUTORS_SYMBOL) && (LA523_0 <= CPU_SYMBOL)) || ((LA523_0 >= CUBE_SYMBOL) && (LA523_0 <= CURRENT_SYMBOL)) || ((LA523_0 >= CURRENT_USER_SYMBOL) && (LA523_0 <= CURSOR_NAME_SYMBOL)) || LA523_0 == CURTIME_SYMBOL || ((LA523_0 >= DATABASE_SYMBOL) && (LA523_0 <= DATETIME_SYMBOL)) || LA523_0 == DATE_ADD_SYMBOL || LA523_0 == DATE_SUB_SYMBOL || ((LA523_0 >= DAY_SYMBOL) && (LA523_0 <= DEALLOCATE_SYMBOL)) || LA523_0 == DEFAULT_AUTH_SYMBOL || LA523_0 == DEFINER_SYMBOL || LA523_0 == DELAY_KEY_WRITE_SYMBOL || LA523_0 == DES_KEY_FILE_SYMBOL || LA523_0 == DIAGNOSTICS_SYMBOL || ((LA523_0 >= DIRECTORY_SYMBOL) && (LA523_0 <= DISK_SYMBOL)) || LA523_0 == DOT_SYMBOL || LA523_0 == DO_SYMBOL || ((LA523_0 >= DUMPFILE_SYMBOL) && (LA523_0 <= DYNAMIC_SYMBOL)) || LA523_0 == ENABLE_SYMBOL || LA523_0 == ENDS_SYMBOL || ((LA523_0 >= END_SYMBOL) && (LA523_0 <= ENUM_SYMBOL)) || ((LA523_0 >= ERRORS_SYMBOL) && (LA523_0 <= ERROR_SYMBOL)) || ((LA523_0 >= ESCAPE_SYMBOL) && (LA523_0 <= EVERY_SYMBOL)) || ((LA523_0 >= EXECUTE_SYMBOL) && (LA523_0 <= EXISTS_SYMBOL)) || LA523_0 == EXPANSION_SYMBOL || LA523_0 == EXPORT_SYMBOL || ((LA523_0 >= EXTENDED_SYMBOL) && (LA523_0 <= EXTRACT_SYMBOL)) || ((LA523_0 >= FAST_SYMBOL) && (LA523_0 <= FAULTS_SYMBOL)) || ((LA523_0 >= FILE_SYMBOL) && (LA523_0 <= FIXED_SYMBOL)) || LA523_0 == FLUSH_SYMBOL || LA523_0 == FORMAT_SYMBOL || LA523_0 == FOUND_SYMBOL || LA523_0 == FULL_SYMBOL || ((LA523_0 >= FUNCTION_SYMBOL) && (LA523_0 <= GET_FORMAT_SYMBOL)) || ((LA523_0 >= GLOBAL_SYMBOL) && (LA523_0 <= GRANTS_SYMBOL)) || LA523_0 == GROUP_CONCAT_SYMBOL || ((LA523_0 >= HANDLER_SYMBOL) && (LA523_0 <= HASH_SYMBOL)) || LA523_0 == HELP_SYMBOL || ((LA523_0 >= HOSTS_SYMBOL) && (LA523_0 <= HOST_SYMBOL)) || ((LA523_0 >= HOUR_SYMBOL) && (LA523_0 <= IGNORE_SERVER_IDS_SYMBOL)) || ((LA523_0 >= IMPORT_SYMBOL) && (LA523_0 <= INDEXES_SYMBOL)) || LA523_0 == INITIAL_SIZE_SYMBOL || LA523_0 == INNODB_SYMBOL || ((LA523_0 >= INSERT_METHOD_SYMBOL) && (LA523_0 <= INSTALL_SYMBOL)) || LA523_0 == INVOKER_SYMBOL || LA523_0 == IO_SYMBOL || ((LA523_0 >= IPC_SYMBOL) && (LA523_0 <= ISSUER_SYMBOL)) || LA523_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA523_0 >= LANGUAGE_SYMBOL) && (LA523_0 <= LAST_SYMBOL)) || LA523_0 == LEAVES_SYMBOL || LA523_0 == LEFT_SYMBOL || LA523_0 == LESS_SYMBOL || LA523_0 == LEVEL_SYMBOL || LA523_0 == LINESTRING_SYMBOL || LA523_0 == LIST_SYMBOL || LA523_0 == LOCAL_SYMBOL || LA523_0 == LOCKS_SYMBOL || LA523_0 == LOGFILE_SYMBOL || LA523_0 == LOGS_SYMBOL || LA523_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA523_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA523_0 <= MASTER_SSL_SYMBOL)) || ((LA523_0 >= MASTER_SYMBOL) && (LA523_0 <= MATCH_SYMBOL)) || ((LA523_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA523_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA523_0 >= MEDIUM_SYMBOL) && (LA523_0 <= MICROSECOND_SYMBOL)) || LA523_0 == MIGRATE_SYMBOL || ((LA523_0 >= MINUTE_SYMBOL) && (LA523_0 <= MIN_SYMBOL)) || LA523_0 == MODE_SYMBOL || LA523_0 == MODIFY_SYMBOL || ((LA523_0 >= MOD_SYMBOL) && (LA523_0 <= MULTILINESTRING_SYMBOL)) || ((LA523_0 >= MULTIPOINT_SYMBOL) && (LA523_0 <= MULTIPOLYGON_SYMBOL)) || ((LA523_0 >= MUTEX_SYMBOL) && (LA523_0 <= NATIONAL_SYMBOL)) || LA523_0 == NCHAR_SYMBOL || LA523_0 == NDBCLUSTER_SYMBOL || ((LA523_0 >= NEW_SYMBOL) && (LA523_0 <= NONE_SYMBOL)) || ((LA523_0 >= NOW_SYMBOL) && (LA523_0 <= NO_WAIT_SYMBOL)) || LA523_0 == NULL2_SYMBOL || ((LA523_0 >= NULL_SYMBOL) && (LA523_0 <= NUMBER_SYMBOL)) || LA523_0 == NVARCHAR_SYMBOL || ((LA523_0 >= OFFSET_SYMBOL) && (LA523_0 <= ONE_SYMBOL)) || LA523_0 == OPEN_SYMBOL || LA523_0 == OPTIONS_SYMBOL || ((LA523_0 >= OWNER_SYMBOL) && (LA523_0 <= PARAM_MARKER)) || ((LA523_0 >= PARSER_SYMBOL) && (LA523_0 <= PARTITION_SYMBOL)) || ((LA523_0 >= PASSWORD_SYMBOL) && (LA523_0 <= PLUGIN_SYMBOL)) || ((LA523_0 >= POINT_SYMBOL) && (LA523_0 <= POSITION_SYMBOL)) || ((LA523_0 >= PREPARE_SYMBOL) && (LA523_0 <= PREV_SYMBOL)) || LA523_0 == PRIVILEGES_SYMBOL || ((LA523_0 >= PROCESSLIST_SYMBOL) && (LA523_0 <= PROXY_SYMBOL)) || ((LA523_0 >= QUARTER_SYMBOL) && (LA523_0 <= QUICK_SYMBOL)) || LA523_0 == READ_ONLY_SYMBOL || ((LA523_0 >= REBUILD_SYMBOL) && (LA523_0 <= REDUNDANT_SYMBOL)) || ((LA523_0 >= RELAYLOG_SYMBOL) && (LA523_0 <= RELAY_THREAD_SYMBOL)) || ((LA523_0 >= RELOAD_SYMBOL) && (LA523_0 <= REMOVE_SYMBOL)) || ((LA523_0 >= REORGANIZE_SYMBOL) && (LA523_0 <= REPLICATION_SYMBOL)) || LA523_0 == RESET_SYMBOL || LA523_0 == RESTORE_SYMBOL || ((LA523_0 >= RESUME_SYMBOL) && (LA523_0 <= RETURNS_SYMBOL)) || LA523_0 == REVERSE_SYMBOL || LA523_0 == RIGHT_SYMBOL || ((LA523_0 >= ROLLBACK_SYMBOL) && (LA523_0 <= SCHEDULE_SYMBOL)) || LA523_0 == SCHEMA_NAME_SYMBOL || ((LA523_0 >= SECOND_SYMBOL) && (LA523_0 <= SECURITY_SYMBOL)) || ((LA523_0 >= SERIALIZABLE_SYMBOL) && (LA523_0 <= SERIAL_SYMBOL)) || ((LA523_0 >= SERVER_SYMBOL) && (LA523_0 <= SESSION_SYMBOL)) || LA523_0 == SHARE_SYMBOL || LA523_0 == SHUTDOWN_SYMBOL || ((LA523_0 >= SIGNED_SYMBOL) && (LA523_0 <= SIMPLE_SYMBOL)) || ((LA523_0 >= SLAVE_SYMBOL) && (LA523_0 <= SLOW_SYMBOL)) || ((LA523_0 >= SNAPSHOT_SYMBOL) && (LA523_0 <= SOURCE_SYMBOL)) || ((LA523_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA523_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA523_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA523_0 <= SQL_CACHE_SYMBOL)) || LA523_0 == SQL_NO_CACHE_SYMBOL || LA523_0 == SQL_THREAD_SYMBOL || ((LA523_0 >= STARTS_SYMBOL) && (LA523_0 <= STATUS_SYMBOL)) || LA523_0 == STDDEV_SAMP_SYMBOL || ((LA523_0 >= STD_SYMBOL) && (LA523_0 <= STORAGE_SYMBOL)) || ((LA523_0 >= STRING_SYMBOL) && (LA523_0 <= SUBPARTITION_SYMBOL)) || LA523_0 == SUBSTRING_SYMBOL || ((LA523_0 >= SUM_SYMBOL) && (LA523_0 <= SYSDATE_SYMBOL)) || ((LA523_0 >= TABLESPACE_SYMBOL) && (LA523_0 <= TABLE_NAME_SYMBOL)) || ((LA523_0 >= TEMPORARY_SYMBOL) && (LA523_0 <= TEMPTABLE_SYMBOL)) || ((LA523_0 >= TEXT_SYMBOL) && (LA523_0 <= THAN_SYMBOL)) || ((LA523_0 >= TIMESTAMP_ADD_SYMBOL) && (LA523_0 <= TIMESTAMP_DIFF_SYMBOL)) || ((LA523_0 >= TRANSACTION_SYMBOL) && (LA523_0 <= TRIGGERS_SYMBOL)) || LA523_0 == TRIM_SYMBOL || ((LA523_0 >= TRUNCATE_SYMBOL) && (LA523_0 <= UDF_RETURNS_SYMBOL)) || ((LA523_0 >= UNCOMMITTED_SYMBOL) && (LA523_0 <= UNDEFINED_SYMBOL)) || ((LA523_0 >= UNDOFILE_SYMBOL) && (LA523_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA523_0 >= UNICODE_SYMBOL) && (LA523_0 <= UNINSTALL_SYMBOL)) || LA523_0 == UNKNOWN_SYMBOL || LA523_0 == UNTIL_SYMBOL || LA523_0 == UPGRADE_SYMBOL || ((LA523_0 >= USER_RESOURCES_SYMBOL) && (LA523_0 <= USE_FRM_SYMBOL)) || ((LA523_0 >= UTC_DATE_SYMBOL) && (LA523_0 <= VALUE_SYMBOL)) || ((LA523_0 >= VARIABLES_SYMBOL) && (LA523_0 <= VARIANCE_SYMBOL)) || LA523_0 == VAR_SAMP_SYMBOL || ((LA523_0 >= VIEW_SYMBOL) && (LA523_0 <= WEIGHT_STRING_SYMBOL)) || ((LA523_0 >= WORK_SYMBOL) && (LA523_0 <= WRAPPER_SYMBOL)) || LA523_0 == X509_SYMBOL || ((LA523_0 >= XA_SYMBOL) && (LA523_0 <= XML_SYMBOL)) || LA523_0 == YEAR_SYMBOL || LA523_0 == 732))
        	                {
        	                    alt523=2;
        	                }
        	                else
        	                {
        	                    if (BACKTRACKING>0)
        	                    {
        	                        FAILEDFLAG = ANTLR3_TRUE;
        	                        return retval;
        	                    }


        	                    CONSTRUCTEX();
        	                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    EXCEPTION->message      = (void *)"";
        	                    EXCEPTION->decisionNum  = 523;
        	                    EXCEPTION->state        = 0;


        	                    goto ruleinterval_expressionEx;

        	                }
        	            }
        	            switch (alt523)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1593:4: ( OPEN_PAR_SYMBOL expression COMMA_SYMBOL )=> interval_function
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_interval_function_in_interval_expression9000);
        	        	        interval_function1752=interval_function(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleinterval_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, interval_function1752.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:1594:6: interval_time_span
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_interval_time_span_in_interval_expression9007);
        	        	        interval_time_span1753=interval_time_span(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleinterval_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, interval_time_span1753.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1596:4: primary
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_primary_in_interval_expression9016);
        	        primary1754=primary(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, primary1754.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleinterval_expressionEx; /* Prevent compiler warnings */
    ruleinterval_expressionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end interval_expression */

/**
 * $ANTLR start interval_function
 * MySQL.g:1599:1: interval_function : OPEN_PAR_SYMBOL expression ( COMMA_SYMBOL expression )+ CLOSE_PAR_SYMBOL -> ^( FUNCTION_CALL INTERVAL_SYMBOL OPEN_PAR_SYMBOL expression ( COMMA_SYMBOL expression )+ CLOSE_PAR_SYMBOL ) ;
 */
static MySQLParser_interval_function_return
interval_function(pMySQLParser ctx)
{
    MySQLParser_interval_function_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1755;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1757;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1759;
    MySQLParser_expression_return expression1756;
    #undef	RETURN_TYPE_expression1756
    #define	RETURN_TYPE_expression1756 MySQLParser_expression_return

    MySQLParser_expression_return expression1758;
    #undef	RETURN_TYPE_expression1758
    #define	RETURN_TYPE_expression1758 MySQLParser_expression_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1755_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1757_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1759_tree;
    pANTLR3_REWRITE_RULE_TOKEN_STREAM stream_CLOSE_PAR_SYMBOL;
    pANTLR3_REWRITE_RULE_TOKEN_STREAM stream_OPEN_PAR_SYMBOL;
    pANTLR3_REWRITE_RULE_TOKEN_STREAM stream_COMMA_SYMBOL;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_expression;
    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL1755       = NULL;
    COMMA_SYMBOL1757       = NULL;
    CLOSE_PAR_SYMBOL1759       = NULL;
    expression1756.tree = NULL;

    expression1758.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL1755_tree   = NULL;
    COMMA_SYMBOL1757_tree   = NULL;
    CLOSE_PAR_SYMBOL1759_tree   = NULL;

    stream_CLOSE_PAR_SYMBOL   = NULL;
    #define CREATE_stream_CLOSE_PAR_SYMBOL  if (stream_CLOSE_PAR_SYMBOL == NULL) {stream_CLOSE_PAR_SYMBOL = antlr3RewriteRuleTOKENStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"token CLOSE_PAR_SYMBOL"); } 
    stream_OPEN_PAR_SYMBOL   = NULL;
    #define CREATE_stream_OPEN_PAR_SYMBOL  if (stream_OPEN_PAR_SYMBOL == NULL) {stream_OPEN_PAR_SYMBOL = antlr3RewriteRuleTOKENStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"token OPEN_PAR_SYMBOL"); } 
    stream_COMMA_SYMBOL   = NULL;
    #define CREATE_stream_COMMA_SYMBOL  if (stream_COMMA_SYMBOL == NULL) {stream_COMMA_SYMBOL = antlr3RewriteRuleTOKENStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"token COMMA_SYMBOL"); } 
    stream_expression   = NULL;
    #define CREATE_stream_expression  if (stream_expression == NULL) {stream_expression = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule expression"); }

    retval.tree  = NULL;

    {
        // MySQL.g:1599:18: ( OPEN_PAR_SYMBOL expression ( COMMA_SYMBOL expression )+ CLOSE_PAR_SYMBOL -> ^( FUNCTION_CALL INTERVAL_SYMBOL OPEN_PAR_SYMBOL expression ( COMMA_SYMBOL expression )+ CLOSE_PAR_SYMBOL ) )
        // MySQL.g:1600:2: OPEN_PAR_SYMBOL expression ( COMMA_SYMBOL expression )+ CLOSE_PAR_SYMBOL
        {
            OPEN_PAR_SYMBOL1755 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_interval_function9025);
            if  (HASEXCEPTION())
            {
                goto ruleinterval_functionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }
             
            if ( BACKTRACKING==0 ) { CREATE_stream_OPEN_PAR_SYMBOL; stream_OPEN_PAR_SYMBOL->add(stream_OPEN_PAR_SYMBOL, OPEN_PAR_SYMBOL1755, NULL); }


            FOLLOWPUSH(FOLLOW_expression_in_interval_function9027);
            expression1756=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleinterval_functionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_expression; stream_expression->add(stream_expression, expression1756.tree, NULL); }

            // MySQL.g:1600:29: ( COMMA_SYMBOL expression )+
            {
                int cnt525=0;

                for (;;)
                {
                    int alt525=2;
            	switch ( LA(1) )
            	{
            	case COMMA_SYMBOL:
            		{
            			alt525=1;
            		}
            	    break;

            	}

            	switch (alt525)
            	{
            	    case 1:
            	        // MySQL.g:1600:30: COMMA_SYMBOL expression
            	        {
            	            COMMA_SYMBOL1757 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_interval_function9030);
            	            if  (HASEXCEPTION())
            	            {
            	                goto ruleinterval_functionEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }
            	             
            	            if ( BACKTRACKING==0 ) { CREATE_stream_COMMA_SYMBOL; stream_COMMA_SYMBOL->add(stream_COMMA_SYMBOL, COMMA_SYMBOL1757, NULL); }


            	            FOLLOWPUSH(FOLLOW_expression_in_interval_function9032);
            	            expression1758=expression(ctx);

            	            FOLLOWPOP();
            	            if  (HASEXCEPTION())
            	            {
            	                goto ruleinterval_functionEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) { CREATE_stream_expression; stream_expression->add(stream_expression, expression1758.tree, NULL); }

            	        }
            	        break;

            	    default:

            		if ( cnt525 >= 1 )
            		{
            		    goto loop525;
            		}
            		if (BACKTRACKING>0)
            		{
            		    FAILEDFLAG = ANTLR3_TRUE;
            		    return retval;
            		}

            		/* mismatchedSetEx()
            		 */
            		CONSTRUCTEX();
            		EXCEPTION->type = ANTLR3_EARLY_EXIT_EXCEPTION;
            		EXCEPTION->name = (void *)ANTLR3_EARLY_EXIT_NAME;


            		goto ruleinterval_functionEx;
            	}
            	cnt525++;
                }
                loop525: ;	/* Jump to here if this rule does not match */
            }

            CLOSE_PAR_SYMBOL1759 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_interval_function9036);
            if  (HASEXCEPTION())
            {
                goto ruleinterval_functionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }
             
            if ( BACKTRACKING==0 ) { CREATE_stream_CLOSE_PAR_SYMBOL; stream_CLOSE_PAR_SYMBOL->add(stream_CLOSE_PAR_SYMBOL, CLOSE_PAR_SYMBOL1759, NULL); }


            /* AST REWRITE
             * elements          : COMMA_SYMBOL, OPEN_PAR_SYMBOL, expression, expression, CLOSE_PAR_SYMBOL
             * token labels      : 
             * rule labels       : retval
             * token list labels : 
             * rule list labels  : 
             */
            if ( BACKTRACKING==0 ) 

            {
            	pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_retval;

            	stream_retval=antlr3RewriteRuleSubtreeStreamNewAEE(ADAPTOR,  RECOGNIZER, (pANTLR3_UINT8)"token retval", retval.tree != NULL ? retval.tree : NULL);

            	root_0			    = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
            	retval.tree    = root_0;
            	// 1601:3: -> ^( FUNCTION_CALL INTERVAL_SYMBOL OPEN_PAR_SYMBOL expression ( COMMA_SYMBOL expression )+ CLOSE_PAR_SYMBOL )
            	{
            	    // MySQL.g:1601:6: ^( FUNCTION_CALL INTERVAL_SYMBOL OPEN_PAR_SYMBOL expression ( COMMA_SYMBOL expression )+ CLOSE_PAR_SYMBOL )
            	    {
            	        pANTLR3_BASE_TREE root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
            	        root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, 
            	        (pANTLR3_BASE_TREE)ADAPTOR->createTypeText(ADAPTOR, FUNCTION_CALL, (pANTLR3_UINT8)"FUNCTION_CALL")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, 
            	        (pANTLR3_BASE_TREE)ADAPTOR->createTypeText(ADAPTOR, INTERVAL_SYMBOL, (pANTLR3_UINT8)"INTERVAL_SYMBOL")
            	        );

            	        ADAPTOR->addChild(ADAPTOR, root_1, 
            	        stream_OPEN_PAR_SYMBOL == NULL ? NULL : stream_OPEN_PAR_SYMBOL->nextNode(stream_OPEN_PAR_SYMBOL)
            	        );

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_expression == NULL ? NULL : stream_expression->nextTree(stream_expression));

            	        if ((stream_COMMA_SYMBOL == NULL || !stream_COMMA_SYMBOL->hasNext(stream_COMMA_SYMBOL)) || (stream_expression == NULL || !stream_expression->hasNext(stream_expression))  )
            	        {
            	            CONSTRUCTEX();
            	            EXCEPTION->type         = ANTLR3_REWRITE_EARLY_EXCEPTION;
            	            EXCEPTION->name         = (void *)ANTLR3_REWRITE_EARLY_EXCEPTION_NAME;
            	        }
            	        else
            	        {
            	        	while ( (stream_COMMA_SYMBOL->hasNext(stream_COMMA_SYMBOL)) || (stream_expression->hasNext(stream_expression))  ) {
            	        		ADAPTOR->addChild(ADAPTOR, root_1, 
            	        		stream_COMMA_SYMBOL == NULL ? NULL : stream_COMMA_SYMBOL->nextNode(stream_COMMA_SYMBOL)
            	        		);

            	        		ADAPTOR->addChild(ADAPTOR, root_1, stream_expression == NULL ? NULL : stream_expression->nextTree(stream_expression));

            	        	}
            	        	stream_COMMA_SYMBOL->reset(stream_COMMA_SYMBOL);
            	        	stream_expression->reset(stream_expression);

            	        }
            	        ADAPTOR->addChild(ADAPTOR, root_1, 
            	        stream_CLOSE_PAR_SYMBOL == NULL ? NULL : stream_CLOSE_PAR_SYMBOL->nextNode(stream_CLOSE_PAR_SYMBOL)
            	        );

            	        ADAPTOR->addChild(ADAPTOR, root_0, root_1);
            	    }

            	}


            	retval.tree = root_0; // set result root
            	if (stream_retval != NULL) stream_retval->free(stream_retval);


            }
        }

    }

    // This is where rules clean up and exit
    //
    goto ruleinterval_functionEx; /* Prevent compiler warnings */
    ruleinterval_functionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
        if (stream_CLOSE_PAR_SYMBOL != NULL) stream_CLOSE_PAR_SYMBOL->free(stream_CLOSE_PAR_SYMBOL);
        if (stream_OPEN_PAR_SYMBOL != NULL) stream_OPEN_PAR_SYMBOL->free(stream_OPEN_PAR_SYMBOL);
        if (stream_COMMA_SYMBOL != NULL) stream_COMMA_SYMBOL->free(stream_COMMA_SYMBOL);
        if (stream_expression != NULL) stream_expression->free(stream_expression);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end interval_function */

/**
 * $ANTLR start interval_time_span
 * MySQL.g:1604:1: interval_time_span : interval -> ^( INTERVAL_SYMBOL interval ) ;
 */
static MySQLParser_interval_time_span_return
interval_time_span(pMySQLParser ctx)
{
    MySQLParser_interval_time_span_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_interval_return interval1760;
    #undef	RETURN_TYPE_interval1760
    #define	RETURN_TYPE_interval1760 MySQLParser_interval_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_interval;
    /* Initialize rule variables
     */

    root_0 = NULL;

    interval1760.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;



    stream_interval   = NULL;
    #define CREATE_stream_interval  if (stream_interval == NULL) {stream_interval = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule interval"); }

    retval.tree  = NULL;

    {
        // MySQL.g:1604:19: ( interval -> ^( INTERVAL_SYMBOL interval ) )
        // MySQL.g:1605:2: interval
        {
            FOLLOWPUSH(FOLLOW_interval_in_interval_time_span9068);
            interval1760=interval(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleinterval_time_spanEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_interval; stream_interval->add(stream_interval, interval1760.tree, NULL); }

            /* AST REWRITE
             * elements          : interval
             * token labels      : 
             * rule labels       : retval
             * token list labels : 
             * rule list labels  : 
             */
            if ( BACKTRACKING==0 ) 

            {
            	pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_retval;

            	stream_retval=antlr3RewriteRuleSubtreeStreamNewAEE(ADAPTOR,  RECOGNIZER, (pANTLR3_UINT8)"token retval", retval.tree != NULL ? retval.tree : NULL);

            	root_0			    = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
            	retval.tree    = root_0;
            	// 1605:11: -> ^( INTERVAL_SYMBOL interval )
            	{
            	    // MySQL.g:1605:14: ^( INTERVAL_SYMBOL interval )
            	    {
            	        pANTLR3_BASE_TREE root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
            	        root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, 
            	        (pANTLR3_BASE_TREE)ADAPTOR->createTypeText(ADAPTOR, INTERVAL_SYMBOL, (pANTLR3_UINT8)"INTERVAL_SYMBOL")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_interval == NULL ? NULL : stream_interval->nextTree(stream_interval));

            	        ADAPTOR->addChild(ADAPTOR, root_0, root_1);
            	    }

            	}


            	retval.tree = root_0; // set result root
            	if (stream_retval != NULL) stream_retval->free(stream_retval);


            }
        }

    }

    // This is where rules clean up and exit
    //
    goto ruleinterval_time_spanEx; /* Prevent compiler warnings */
    ruleinterval_time_spanEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
        if (stream_interval != NULL) stream_interval->free(stream_interval);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end interval_time_span */

/**
 * $ANTLR start primary
 * MySQL.g:1608:1: primary : ({...}? temporal_literal | literal | field_name | function_call_expression | ( qualified_identifier OPEN_PAR_SYMBOL )=> generic_function_call | PARAM_MARKER | variable |{...}? subquery | EXISTS_SYMBOL subquery | ( ROW_SYMBOL )? expression_list_with_parentheses | '{' identifier expression '}' | match_expression | case_expression | cast_expression ) ( options {greedy=true; } : COLLATE_SYMBOL text_or_identifier )* ;
 */
static MySQLParser_primary_return
primary(pMySQLParser ctx)
{
    MySQLParser_primary_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    PARAM_MARKER1766;
    pANTLR3_COMMON_TOKEN    EXISTS_SYMBOL1769;
    pANTLR3_COMMON_TOKEN    ROW_SYMBOL1771;
    pANTLR3_COMMON_TOKEN    char_literal1773;
    pANTLR3_COMMON_TOKEN    char_literal1776;
    pANTLR3_COMMON_TOKEN    COLLATE_SYMBOL1780;
    MySQLParser_temporal_literal_return temporal_literal1761;
    #undef	RETURN_TYPE_temporal_literal1761
    #define	RETURN_TYPE_temporal_literal1761 MySQLParser_temporal_literal_return

    MySQLParser_literal_return literal1762;
    #undef	RETURN_TYPE_literal1762
    #define	RETURN_TYPE_literal1762 MySQLParser_literal_return

    MySQLParser_field_name_return field_name1763;
    #undef	RETURN_TYPE_field_name1763
    #define	RETURN_TYPE_field_name1763 MySQLParser_field_name_return

    MySQLParser_function_call_expression_return function_call_expression1764;
    #undef	RETURN_TYPE_function_call_expression1764
    #define	RETURN_TYPE_function_call_expression1764 MySQLParser_function_call_expression_return

    MySQLParser_generic_function_call_return generic_function_call1765;
    #undef	RETURN_TYPE_generic_function_call1765
    #define	RETURN_TYPE_generic_function_call1765 MySQLParser_generic_function_call_return

    MySQLParser_variable_return variable1767;
    #undef	RETURN_TYPE_variable1767
    #define	RETURN_TYPE_variable1767 MySQLParser_variable_return

    MySQLParser_subquery_return subquery1768;
    #undef	RETURN_TYPE_subquery1768
    #define	RETURN_TYPE_subquery1768 MySQLParser_subquery_return

    MySQLParser_subquery_return subquery1770;
    #undef	RETURN_TYPE_subquery1770
    #define	RETURN_TYPE_subquery1770 MySQLParser_subquery_return

    MySQLParser_expression_list_with_parentheses_return expression_list_with_parentheses1772;
    #undef	RETURN_TYPE_expression_list_with_parentheses1772
    #define	RETURN_TYPE_expression_list_with_parentheses1772 MySQLParser_expression_list_with_parentheses_return

    MySQLParser_identifier_return identifier1774;
    #undef	RETURN_TYPE_identifier1774
    #define	RETURN_TYPE_identifier1774 MySQLParser_identifier_return

    MySQLParser_expression_return expression1775;
    #undef	RETURN_TYPE_expression1775
    #define	RETURN_TYPE_expression1775 MySQLParser_expression_return

    MySQLParser_match_expression_return match_expression1777;
    #undef	RETURN_TYPE_match_expression1777
    #define	RETURN_TYPE_match_expression1777 MySQLParser_match_expression_return

    MySQLParser_case_expression_return case_expression1778;
    #undef	RETURN_TYPE_case_expression1778
    #define	RETURN_TYPE_case_expression1778 MySQLParser_case_expression_return

    MySQLParser_cast_expression_return cast_expression1779;
    #undef	RETURN_TYPE_cast_expression1779
    #define	RETURN_TYPE_cast_expression1779 MySQLParser_cast_expression_return

    MySQLParser_text_or_identifier_return text_or_identifier1781;
    #undef	RETURN_TYPE_text_or_identifier1781
    #define	RETURN_TYPE_text_or_identifier1781 MySQLParser_text_or_identifier_return

    pANTLR3_BASE_TREE PARAM_MARKER1766_tree;
    pANTLR3_BASE_TREE EXISTS_SYMBOL1769_tree;
    pANTLR3_BASE_TREE ROW_SYMBOL1771_tree;
    pANTLR3_BASE_TREE char_literal1773_tree;
    pANTLR3_BASE_TREE char_literal1776_tree;
    pANTLR3_BASE_TREE COLLATE_SYMBOL1780_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PARAM_MARKER1766       = NULL;
    EXISTS_SYMBOL1769       = NULL;
    ROW_SYMBOL1771       = NULL;
    char_literal1773       = NULL;
    char_literal1776       = NULL;
    COLLATE_SYMBOL1780       = NULL;
    temporal_literal1761.tree = NULL;

    literal1762.tree = NULL;

    field_name1763.tree = NULL;

    function_call_expression1764.tree = NULL;

    generic_function_call1765.tree = NULL;

    variable1767.tree = NULL;

    subquery1768.tree = NULL;

    subquery1770.tree = NULL;

    expression_list_with_parentheses1772.tree = NULL;

    identifier1774.tree = NULL;

    expression1775.tree = NULL;

    match_expression1777.tree = NULL;

    case_expression1778.tree = NULL;

    cast_expression1779.tree = NULL;

    text_or_identifier1781.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PARAM_MARKER1766_tree   = NULL;
    EXISTS_SYMBOL1769_tree   = NULL;
    ROW_SYMBOL1771_tree   = NULL;
    char_literal1773_tree   = NULL;
    char_literal1776_tree   = NULL;
    COLLATE_SYMBOL1780_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1608:8: ( ({...}? temporal_literal | literal | field_name | function_call_expression | ( qualified_identifier OPEN_PAR_SYMBOL )=> generic_function_call | PARAM_MARKER | variable |{...}? subquery | EXISTS_SYMBOL subquery | ( ROW_SYMBOL )? expression_list_with_parentheses | '{' identifier expression '}' | match_expression | case_expression | cast_expression ) ( options {greedy=true; } : COLLATE_SYMBOL text_or_identifier )* )
        // MySQL.g:1609:5: ({...}? temporal_literal | literal | field_name | function_call_expression | ( qualified_identifier OPEN_PAR_SYMBOL )=> generic_function_call | PARAM_MARKER | variable |{...}? subquery | EXISTS_SYMBOL subquery | ( ROW_SYMBOL )? expression_list_with_parentheses | '{' identifier expression '}' | match_expression | case_expression | cast_expression ) ( options {greedy=true; } : COLLATE_SYMBOL text_or_identifier )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:1609:5: ({...}? temporal_literal | literal | field_name | function_call_expression | ( qualified_identifier OPEN_PAR_SYMBOL )=> generic_function_call | PARAM_MARKER | variable |{...}? subquery | EXISTS_SYMBOL subquery | ( ROW_SYMBOL )? expression_list_with_parentheses | '{' identifier expression '}' | match_expression | case_expression | cast_expression )
            {
                int alt527=14;
                {
                    int LA527_0 = LA(1);
                    if ( (LA527_0 == DATE_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case OPEN_PAR_SYMBOL:
                        	{
                        		{
                        		    int LA527_98 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=4;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 98;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case NCHAR_TEXT:
                        	{
                        		{
                        		    int LA527_99 = LA(3);
                        		    if ( ((LA(1) == DATE_SYMBOL || LA(1) == TIME_SYMBOL || LA(1) == TIMESTAMP_SYMBOL)))
                        		    {
                        		        alt527=1;
                        		    }
                        		    else if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 99;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case UNDERSCORE_CHARSET:
                        	{
                        		{
                        		    int LA527_100 = LA(3);
                        		    if ( ((LA(1) == DATE_SYMBOL || LA(1) == TIME_SYMBOL || LA(1) == TIMESTAMP_SYMBOL)))
                        		    {
                        		        alt527=1;
                        		    }
                        		    else if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 100;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case SINGLE_QUOTED_TEXT:
                        	{
                        		{
                        		    int LA527_101 = LA(3);
                        		    if ( ((LA(1) == DATE_SYMBOL || LA(1) == TIME_SYMBOL || LA(1) == TIMESTAMP_SYMBOL)))
                        		    {
                        		        alt527=1;
                        		    }
                        		    else if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 101;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case DOUBLE_QUOTED_TEXT:
                        	{
                        		{
                        		    int LA527_102 = LA(3);
                        		    if ( ((LA(1) == DATE_SYMBOL || LA(1) == TIME_SYMBOL || LA(1) == TIMESTAMP_SYMBOL)))
                        		    {
                        		        alt527=1;
                        		    }
                        		    else if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 102;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case DOT_SYMBOL:
                        	{
                        		{
                        		    int LA527_103 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 103;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case EOF:
                        case ACTION_SYMBOL:
                        case ADDDATE_SYMBOL:
                        case AFTER_SYMBOL:
                        case AGAINST_SYMBOL:
                        case AGGREGATE_SYMBOL:
                        case ALGORITHM_SYMBOL:
                        case ANALYZE_SYMBOL:
                        case AND_SYMBOL:
                        case ANY_SYMBOL:
                        case ASCII_SYMBOL:
                        case ASC_SYMBOL:
                        case AS_SYMBOL:
                        case AT_SYMBOL:
                        case AUTHORS_SYMBOL:
                        case AUTOEXTEND_SIZE_SYMBOL:
                        case AUTO_INCREMENT_SYMBOL:
                        case AVG_ROW_LENGTH_SYMBOL:
                        case AVG_SYMBOL:
                        case BACKUP_SYMBOL:
                        case BACK_TICK_QUOTED_ID:
                        case BEGIN_SYMBOL:
                        case BETWEEN_SYMBOL:
                        case BINLOG_SYMBOL:
                        case BITWISE_AND_OPERATOR:
                        case BITWISE_OR_OPERATOR:
                        case BITWISE_XOR_OPERATOR:
                        case BIT_SYMBOL:
                        case BLOCK_SYMBOL:
                        case BOOLEAN_SYMBOL:
                        case BOOL_SYMBOL:
                        case BTREE_SYMBOL:
                        case BYTE_SYMBOL:
                        case CACHE_SYMBOL:
                        case CASCADED_SYMBOL:
                        case CATALOG_NAME_SYMBOL:
                        case CHAIN_SYMBOL:
                        case CHANGED_SYMBOL:
                        case CHARSET_SYMBOL:
                        case CHECKSUM_SYMBOL:
                        case CIPHER_SYMBOL:
                        case CLASS_ORIGIN_SYMBOL:
                        case CLIENT_SYMBOL:
                        case CLOSE_PAR_SYMBOL:
                        case CLOSE_SYMBOL:
                        case COALESCE_SYMBOL:
                        case CODE_SYMBOL:
                        case COLLATE_SYMBOL:
                        case COLLATION_SYMBOL:
                        case COLUMNS_SYMBOL:
                        case COLUMN_FORMAT_SYMBOL:
                        case COLUMN_NAME_SYMBOL:
                        case COMMA_SYMBOL:
                        case COMMENT_SYMBOL:
                        case COMMITTED_SYMBOL:
                        case COMMIT_SYMBOL:
                        case COMPACT_SYMBOL:
                        case COMPLETION_SYMBOL:
                        case COMPRESSED_SYMBOL:
                        case CONCAT_PIPES_SYMBOL:
                        case CONCURRENT_SYMBOL:
                        case CONNECTION_SYMBOL:
                        case CONSISTENT_SYMBOL:
                        case CONSTRAINT_CATALOG_SYMBOL:
                        case CONSTRAINT_NAME_SYMBOL:
                        case CONSTRAINT_SCHEMA_SYMBOL:
                        case CONTAINS_SYMBOL:
                        case CONTEXT_SYMBOL:
                        case CONTRIBUTORS_SYMBOL:
                        case CPU_SYMBOL:
                        case CROSS_SYMBOL:
                        case CUBE_SYMBOL:
                        case CURRENT_SYMBOL:
                        case CURSOR_NAME_SYMBOL:
                        case DATAFILE_SYMBOL:
                        case DATA_SYMBOL:
                        case DATETIME_SYMBOL:
                        case DATE_SYMBOL:
                        case DAY_HOUR_SYMBOL:
                        case DAY_MICROSECOND_SYMBOL:
                        case DAY_MINUTE_SYMBOL:
                        case DAY_SECOND_SYMBOL:
                        case DAY_SYMBOL:
                        case DEALLOCATE_SYMBOL:
                        case DEFAULT_AUTH_SYMBOL:
                        case DEFINER_SYMBOL:
                        case DELAY_KEY_WRITE_SYMBOL:
                        case DESC_SYMBOL:
                        case DES_KEY_FILE_SYMBOL:
                        case DIAGNOSTICS_SYMBOL:
                        case DIRECTORY_SYMBOL:
                        case DISABLE_SYMBOL:
                        case DISCARD_SYMBOL:
                        case DISK_SYMBOL:
                        case DIV_OPERATOR:
                        case DIV_SYMBOL:
                        case DO_SYMBOL:
                        case DUMPFILE_SYMBOL:
                        case DUPLICATE_SYMBOL:
                        case DYNAMIC_SYMBOL:
                        case ELSE_SYMBOL:
                        case ENABLE_SYMBOL:
                        case ENDS_SYMBOL:
                        case END_SYMBOL:
                        case ENGINES_SYMBOL:
                        case ENGINE_SYMBOL:
                        case ENUM_SYMBOL:
                        case EQUAL_OPERATOR:
                        case ERRORS_SYMBOL:
                        case ERROR_SYMBOL:
                        case ESCAPE_SYMBOL:
                        case EVENTS_SYMBOL:
                        case EVENT_SYMBOL:
                        case EVERY_SYMBOL:
                        case EXECUTE_SYMBOL:
                        case EXPANSION_SYMBOL:
                        case EXPORT_SYMBOL:
                        case EXTENDED_SYMBOL:
                        case EXTENT_SIZE_SYMBOL:
                        case FAST_SYMBOL:
                        case FAULTS_SYMBOL:
                        case FILE_SYMBOL:
                        case FIRST_SYMBOL:
                        case FIXED_SYMBOL:
                        case FLUSH_SYMBOL:
                        case FORMAT_SYMBOL:
                        case FOR_SYMBOL:
                        case FOUND_SYMBOL:
                        case FRAC_SECOND_SYMBOL:
                        case FROM_SYMBOL:
                        case FULL_SYMBOL:
                        case FUNCTION_SYMBOL:
                        case GENERAL_SYMBOL:
                        case GEOMETRYCOLLECTION_SYMBOL:
                        case GEOMETRY_SYMBOL:
                        case GET_FORMAT_SYMBOL:
                        case GLOBAL_SYMBOL:
                        case GRANTS_SYMBOL:
                        case GREATER_OR_EQUAL_OPERATOR:
                        case GREATER_THAN_OPERATOR:
                        case GROUP_SYMBOL:
                        case HANDLER_SYMBOL:
                        case HASH_SYMBOL:
                        case HAVING_SYMBOL:
                        case HELP_SYMBOL:
                        case HOSTS_SYMBOL:
                        case HOST_SYMBOL:
                        case HOUR_MICROSECOND_SYMBOL:
                        case HOUR_MINUTE_SYMBOL:
                        case HOUR_SECOND_SYMBOL:
                        case HOUR_SYMBOL:
                        case IDENTIFIED_SYMBOL:
                        case IDENTIFIER:
                        case IGNORE_SERVER_IDS_SYMBOL:
                        case IMPORT_SYMBOL:
                        case INDEXES_SYMBOL:
                        case INITIAL_SIZE_SYMBOL:
                        case INNER_SYMBOL:
                        case INNODB_SYMBOL:
                        case INSERT_METHOD_SYMBOL:
                        case INSTALL_SYMBOL:
                        case INTO_SYMBOL:
                        case INVOKER_SYMBOL:
                        case IN_SYMBOL:
                        case IO_SYMBOL:
                        case IPC_SYMBOL:
                        case ISOLATION_SYMBOL:
                        case ISSUER_SYMBOL:
                        case IS_SYMBOL:
                        case JOIN_SYMBOL:
                        case KEY_BLOCK_SIZE_SYMBOL:
                        case LANGUAGE_SYMBOL:
                        case LAST_SYMBOL:
                        case LEAVES_SYMBOL:
                        case LEFT_SYMBOL:
                        case LESS_OR_EQUAL_OPERATOR:
                        case LESS_SYMBOL:
                        case LESS_THAN_OPERATOR:
                        case LEVEL_SYMBOL:
                        case LIKE_SYMBOL:
                        case LIMIT_SYMBOL:
                        case LINESTRING_SYMBOL:
                        case LIST_SYMBOL:
                        case LOCAL_SYMBOL:
                        case LOCKS_SYMBOL:
                        case LOCK_SYMBOL:
                        case LOGFILE_SYMBOL:
                        case LOGICAL_AND_OPERATOR:
                        case LOGICAL_OR_OPERATOR:
                        case LOGS_SYMBOL:
                        case MASTER_AUTO_POSITION_SYMBOL:
                        case MASTER_CONNECT_RETRY_SYMBOL:
                        case MASTER_DELAY_SYMBOL:
                        case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                        case MASTER_HOST_SYMBOL:
                        case MASTER_LOG_FILE_SYMBOL:
                        case MASTER_LOG_POS_SYMBOL:
                        case MASTER_PASSWORD_SYMBOL:
                        case MASTER_PORT_SYMBOL:
                        case MASTER_RETRY_COUNT_SYMBOL:
                        case MASTER_SERVER_ID_SYMBOL:
                        case MASTER_SSL_CAPATH_SYMBOL:
                        case MASTER_SSL_CA_SYMBOL:
                        case MASTER_SSL_CERT_SYMBOL:
                        case MASTER_SSL_CIPHER_SYMBOL:
                        case MASTER_SSL_CRLPATH_SYMBOL:
                        case MASTER_SSL_CRL_SYMBOL:
                        case MASTER_SSL_KEY_SYMBOL:
                        case MASTER_SSL_SYMBOL:
                        case MASTER_SYMBOL:
                        case MASTER_USER_SYMBOL:
                        case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                        case MAX_QUERIES_PER_HOUR_SYMBOL:
                        case MAX_ROWS_SYMBOL:
                        case MAX_SIZE_SYMBOL:
                        case MAX_UPDATES_PER_HOUR_SYMBOL:
                        case MAX_USER_CONNECTIONS_SYMBOL:
                        case MEDIUM_SYMBOL:
                        case MEMORY_SYMBOL:
                        case MERGE_SYMBOL:
                        case MESSAGE_TEXT_SYMBOL:
                        case MICROSECOND_SYMBOL:
                        case MIGRATE_SYMBOL:
                        case MINUS_OPERATOR:
                        case MINUTE_MICROSECOND_SYMBOL:
                        case MINUTE_SECOND_SYMBOL:
                        case MINUTE_SYMBOL:
                        case MIN_ROWS_SYMBOL:
                        case MODE_SYMBOL:
                        case MODIFY_SYMBOL:
                        case MOD_OPERATOR:
                        case MOD_SYMBOL:
                        case MONTH_SYMBOL:
                        case MULTILINESTRING_SYMBOL:
                        case MULTIPOINT_SYMBOL:
                        case MULTIPOLYGON_SYMBOL:
                        case MULT_OPERATOR:
                        case MUTEX_SYMBOL:
                        case MYSQL_ERRNO_SYMBOL:
                        case NAMES_SYMBOL:
                        case NAME_SYMBOL:
                        case NATIONAL_SYMBOL:
                        case NATURAL_SYMBOL:
                        case NCHAR_SYMBOL:
                        case NDBCLUSTER_SYMBOL:
                        case NEW_SYMBOL:
                        case NEXT_SYMBOL:
                        case NODEGROUP_SYMBOL:
                        case NONE_SYMBOL:
                        case NOT_EQUAL2_OPERATOR:
                        case NOT_EQUAL_OPERATOR:
                        case NOT_SYMBOL:
                        case NO_SYMBOL:
                        case NO_WAIT_SYMBOL:
                        case NULL_SAFE_EQUAL_OPERATOR:
                        case NUMBER_SYMBOL:
                        case NVARCHAR_SYMBOL:
                        case OFFSET_SYMBOL:
                        case OLD_PASSWORD_SYMBOL:
                        case ONE_SHOT_SYMBOL:
                        case ONE_SYMBOL:
                        case ON_SYMBOL:
                        case OPEN_SYMBOL:
                        case OPTIONS_SYMBOL:
                        case ORDER_SYMBOL:
                        case OR_SYMBOL:
                        case OWNER_SYMBOL:
                        case PACK_KEYS_SYMBOL:
                        case PAGE_SYMBOL:
                        case PARSER_SYMBOL:
                        case PARTIAL_SYMBOL:
                        case PARTITIONING_SYMBOL:
                        case PARTITIONS_SYMBOL:
                        case PARTITION_SYMBOL:
                        case PASSWORD_SYMBOL:
                        case PHASE_SYMBOL:
                        case PLUGINS_SYMBOL:
                        case PLUGIN_DIR_SYMBOL:
                        case PLUGIN_SYMBOL:
                        case PLUS_OPERATOR:
                        case POINT_SYMBOL:
                        case POLYGON_SYMBOL:
                        case PORT_SYMBOL:
                        case PREPARE_SYMBOL:
                        case PRESERVE_SYMBOL:
                        case PREV_SYMBOL:
                        case PRIVILEGES_SYMBOL:
                        case PROCEDURE_SYMBOL:
                        case PROCESSLIST_SYMBOL:
                        case PROCESS_SYMBOL:
                        case PROFILES_SYMBOL:
                        case PROFILE_SYMBOL:
                        case PROXY_SYMBOL:
                        case QUARTER_SYMBOL:
                        case QUERY_SYMBOL:
                        case QUICK_SYMBOL:
                        case READ_ONLY_SYMBOL:
                        case REBUILD_SYMBOL:
                        case RECOVER_SYMBOL:
                        case REDOFILE_SYMBOL:
                        case REDO_BUFFER_SIZE_SYMBOL:
                        case REDUNDANT_SYMBOL:
                        case REGEXP_SYMBOL:
                        case RELAYLOG_SYMBOL:
                        case RELAY_LOG_FILE_SYMBOL:
                        case RELAY_LOG_POS_SYMBOL:
                        case RELAY_SYMBOL:
                        case RELAY_THREAD_SYMBOL:
                        case RELOAD_SYMBOL:
                        case REMOVE_SYMBOL:
                        case RENAME_SYMBOL:
                        case REORGANIZE_SYMBOL:
                        case REPAIR_SYMBOL:
                        case REPEATABLE_SYMBOL:
                        case REPLICATION_SYMBOL:
                        case RESET_SYMBOL:
                        case RESTORE_SYMBOL:
                        case RESUME_SYMBOL:
                        case RETURNED_SQLSTATE_SYMBOL:
                        case RETURNS_SYMBOL:
                        case REVERSE_SYMBOL:
                        case RIGHT_SYMBOL:
                        case ROLLBACK_SYMBOL:
                        case ROLLUP_SYMBOL:
                        case ROUTINE_SYMBOL:
                        case ROWS_SYMBOL:
                        case ROW_COUNT_SYMBOL:
                        case ROW_FORMAT_SYMBOL:
                        case ROW_SYMBOL:
                        case RTREE_SYMBOL:
                        case SAVEPOINT_SYMBOL:
                        case SCHEDULE_SYMBOL:
                        case SCHEMA_NAME_SYMBOL:
                        case SECOND_MICROSECOND_SYMBOL:
                        case SECOND_SYMBOL:
                        case SECURITY_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        case SEPARATOR_SYMBOL:
                        case SERIALIZABLE_SYMBOL:
                        case SERIAL_SYMBOL:
                        case SERVER_SYMBOL:
                        case SESSION_SYMBOL:
                        case SET_SYMBOL:
                        case SHARE_SYMBOL:
                        case SHIFT_LEFT_OPERATOR:
                        case SHIFT_RIGHT_OPERATOR:
                        case SHUTDOWN_SYMBOL:
                        case SIGNED_SYMBOL:
                        case SIMPLE_SYMBOL:
                        case SLAVE_SYMBOL:
                        case SLOW_SYMBOL:
                        case SNAPSHOT_SYMBOL:
                        case SOCKET_SYMBOL:
                        case SONAME_SYMBOL:
                        case SOUNDS_SYMBOL:
                        case SOURCE_SYMBOL:
                        case SQL_AFTER_GTIDS_SYMBOL:
                        case SQL_AFTER_MTS_GAPS_SYMBOL:
                        case SQL_BEFORE_GTIDS_SYMBOL:
                        case SQL_BUFFER_RESULT_SYMBOL:
                        case SQL_CACHE_SYMBOL:
                        case SQL_NO_CACHE_SYMBOL:
                        case SQL_THREAD_SYMBOL:
                        case STARTS_SYMBOL:
                        case START_SYMBOL:
                        case STATS_AUTO_RECALC_SYMBOL:
                        case STATS_PERSISTENT_SYMBOL:
                        case STATS_SAMPLE_PAGES_SYMBOL:
                        case STATUS_SYMBOL:
                        case STOP_SYMBOL:
                        case STORAGE_SYMBOL:
                        case STRAIGHT_JOIN_SYMBOL:
                        case STRING_SYMBOL:
                        case SUBCLASS_ORIGIN_SYMBOL:
                        case SUBDATE_SYMBOL:
                        case SUBJECT_SYMBOL:
                        case SUBPARTITIONS_SYMBOL:
                        case SUBPARTITION_SYMBOL:
                        case SUPER_SYMBOL:
                        case SUSPEND_SYMBOL:
                        case SWAPS_SYMBOL:
                        case SWITCHES_SYMBOL:
                        case TABLESPACE_SYMBOL:
                        case TABLES_SYMBOL:
                        case TABLE_CHECKSUM_SYMBOL:
                        case TABLE_NAME_SYMBOL:
                        case TEMPORARY_SYMBOL:
                        case TEMPTABLE_SYMBOL:
                        case TEXT_SYMBOL:
                        case THAN_SYMBOL:
                        case THEN_SYMBOL:
                        case TIMESTAMP_ADD_SYMBOL:
                        case TIMESTAMP_DIFF_SYMBOL:
                        case TIMESTAMP_SYMBOL:
                        case TIME_SYMBOL:
                        case TRANSACTION_SYMBOL:
                        case TRIGGERS_SYMBOL:
                        case TRUNCATE_SYMBOL:
                        case TYPES_SYMBOL:
                        case TYPE_SYMBOL:
                        case UDF_RETURNS_SYMBOL:
                        case UNCOMMITTED_SYMBOL:
                        case UNDEFINED_SYMBOL:
                        case UNDOFILE_SYMBOL:
                        case UNDO_BUFFER_SIZE_SYMBOL:
                        case UNICODE_SYMBOL:
                        case UNINSTALL_SYMBOL:
                        case UNION_SYMBOL:
                        case UNKNOWN_SYMBOL:
                        case UNTIL_SYMBOL:
                        case UPGRADE_SYMBOL:
                        case USER_RESOURCES_SYMBOL:
                        case USER_SYMBOL:
                        case USE_FRM_SYMBOL:
                        case USING_SYMBOL:
                        case VALUE_SYMBOL:
                        case VARIABLES_SYMBOL:
                        case VIEW_SYMBOL:
                        case WAIT_SYMBOL:
                        case WARNINGS_SYMBOL:
                        case WEEK_SYMBOL:
                        case WEIGHT_STRING_SYMBOL:
                        case WHEN_SYMBOL:
                        case WHERE_SYMBOL:
                        case WITH_SYMBOL:
                        case WORK_SYMBOL:
                        case WRAPPER_SYMBOL:
                        case X509_SYMBOL:
                        case XA_SYMBOL:
                        case XML_SYMBOL:
                        case XOR_SYMBOL:
                        case YEAR_MONTH_SYMBOL:
                        case YEAR_SYMBOL:
                        case 733:
                        	{
                        		alt527=3;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 527;
                            EXCEPTION->state        = 1;


                            goto ruleprimaryEx;

                        }

                    }
                    else if ( (LA527_0 == TIME_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case OPEN_PAR_SYMBOL:
                        	{
                        		{
                        		    int LA527_191 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=4;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 191;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case NCHAR_TEXT:
                        	{
                        		{
                        		    int LA527_192 = LA(3);
                        		    if ( ((LA(1) == DATE_SYMBOL || LA(1) == TIME_SYMBOL || LA(1) == TIMESTAMP_SYMBOL)))
                        		    {
                        		        alt527=1;
                        		    }
                        		    else if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 192;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case UNDERSCORE_CHARSET:
                        	{
                        		{
                        		    int LA527_193 = LA(3);
                        		    if ( ((LA(1) == DATE_SYMBOL || LA(1) == TIME_SYMBOL || LA(1) == TIMESTAMP_SYMBOL)))
                        		    {
                        		        alt527=1;
                        		    }
                        		    else if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 193;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case SINGLE_QUOTED_TEXT:
                        	{
                        		{
                        		    int LA527_194 = LA(3);
                        		    if ( ((LA(1) == DATE_SYMBOL || LA(1) == TIME_SYMBOL || LA(1) == TIMESTAMP_SYMBOL)))
                        		    {
                        		        alt527=1;
                        		    }
                        		    else if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 194;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case DOUBLE_QUOTED_TEXT:
                        	{
                        		{
                        		    int LA527_195 = LA(3);
                        		    if ( ((LA(1) == DATE_SYMBOL || LA(1) == TIME_SYMBOL || LA(1) == TIMESTAMP_SYMBOL)))
                        		    {
                        		        alt527=1;
                        		    }
                        		    else if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 195;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case DOT_SYMBOL:
                        	{
                        		{
                        		    int LA527_196 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 196;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case EOF:
                        case ACTION_SYMBOL:
                        case ADDDATE_SYMBOL:
                        case AFTER_SYMBOL:
                        case AGAINST_SYMBOL:
                        case AGGREGATE_SYMBOL:
                        case ALGORITHM_SYMBOL:
                        case ANALYZE_SYMBOL:
                        case AND_SYMBOL:
                        case ANY_SYMBOL:
                        case ASCII_SYMBOL:
                        case ASC_SYMBOL:
                        case AS_SYMBOL:
                        case AT_SYMBOL:
                        case AUTHORS_SYMBOL:
                        case AUTOEXTEND_SIZE_SYMBOL:
                        case AUTO_INCREMENT_SYMBOL:
                        case AVG_ROW_LENGTH_SYMBOL:
                        case AVG_SYMBOL:
                        case BACKUP_SYMBOL:
                        case BACK_TICK_QUOTED_ID:
                        case BEGIN_SYMBOL:
                        case BETWEEN_SYMBOL:
                        case BINLOG_SYMBOL:
                        case BITWISE_AND_OPERATOR:
                        case BITWISE_OR_OPERATOR:
                        case BITWISE_XOR_OPERATOR:
                        case BIT_SYMBOL:
                        case BLOCK_SYMBOL:
                        case BOOLEAN_SYMBOL:
                        case BOOL_SYMBOL:
                        case BTREE_SYMBOL:
                        case BYTE_SYMBOL:
                        case CACHE_SYMBOL:
                        case CASCADED_SYMBOL:
                        case CATALOG_NAME_SYMBOL:
                        case CHAIN_SYMBOL:
                        case CHANGED_SYMBOL:
                        case CHARSET_SYMBOL:
                        case CHECKSUM_SYMBOL:
                        case CIPHER_SYMBOL:
                        case CLASS_ORIGIN_SYMBOL:
                        case CLIENT_SYMBOL:
                        case CLOSE_PAR_SYMBOL:
                        case CLOSE_SYMBOL:
                        case COALESCE_SYMBOL:
                        case CODE_SYMBOL:
                        case COLLATE_SYMBOL:
                        case COLLATION_SYMBOL:
                        case COLUMNS_SYMBOL:
                        case COLUMN_FORMAT_SYMBOL:
                        case COLUMN_NAME_SYMBOL:
                        case COMMA_SYMBOL:
                        case COMMENT_SYMBOL:
                        case COMMITTED_SYMBOL:
                        case COMMIT_SYMBOL:
                        case COMPACT_SYMBOL:
                        case COMPLETION_SYMBOL:
                        case COMPRESSED_SYMBOL:
                        case CONCAT_PIPES_SYMBOL:
                        case CONCURRENT_SYMBOL:
                        case CONNECTION_SYMBOL:
                        case CONSISTENT_SYMBOL:
                        case CONSTRAINT_CATALOG_SYMBOL:
                        case CONSTRAINT_NAME_SYMBOL:
                        case CONSTRAINT_SCHEMA_SYMBOL:
                        case CONTAINS_SYMBOL:
                        case CONTEXT_SYMBOL:
                        case CONTRIBUTORS_SYMBOL:
                        case CPU_SYMBOL:
                        case CROSS_SYMBOL:
                        case CUBE_SYMBOL:
                        case CURRENT_SYMBOL:
                        case CURSOR_NAME_SYMBOL:
                        case DATAFILE_SYMBOL:
                        case DATA_SYMBOL:
                        case DATETIME_SYMBOL:
                        case DATE_SYMBOL:
                        case DAY_HOUR_SYMBOL:
                        case DAY_MICROSECOND_SYMBOL:
                        case DAY_MINUTE_SYMBOL:
                        case DAY_SECOND_SYMBOL:
                        case DAY_SYMBOL:
                        case DEALLOCATE_SYMBOL:
                        case DEFAULT_AUTH_SYMBOL:
                        case DEFINER_SYMBOL:
                        case DELAY_KEY_WRITE_SYMBOL:
                        case DESC_SYMBOL:
                        case DES_KEY_FILE_SYMBOL:
                        case DIAGNOSTICS_SYMBOL:
                        case DIRECTORY_SYMBOL:
                        case DISABLE_SYMBOL:
                        case DISCARD_SYMBOL:
                        case DISK_SYMBOL:
                        case DIV_OPERATOR:
                        case DIV_SYMBOL:
                        case DO_SYMBOL:
                        case DUMPFILE_SYMBOL:
                        case DUPLICATE_SYMBOL:
                        case DYNAMIC_SYMBOL:
                        case ELSE_SYMBOL:
                        case ENABLE_SYMBOL:
                        case ENDS_SYMBOL:
                        case END_SYMBOL:
                        case ENGINES_SYMBOL:
                        case ENGINE_SYMBOL:
                        case ENUM_SYMBOL:
                        case EQUAL_OPERATOR:
                        case ERRORS_SYMBOL:
                        case ERROR_SYMBOL:
                        case ESCAPE_SYMBOL:
                        case EVENTS_SYMBOL:
                        case EVENT_SYMBOL:
                        case EVERY_SYMBOL:
                        case EXECUTE_SYMBOL:
                        case EXPANSION_SYMBOL:
                        case EXPORT_SYMBOL:
                        case EXTENDED_SYMBOL:
                        case EXTENT_SIZE_SYMBOL:
                        case FAST_SYMBOL:
                        case FAULTS_SYMBOL:
                        case FILE_SYMBOL:
                        case FIRST_SYMBOL:
                        case FIXED_SYMBOL:
                        case FLUSH_SYMBOL:
                        case FORMAT_SYMBOL:
                        case FOR_SYMBOL:
                        case FOUND_SYMBOL:
                        case FRAC_SECOND_SYMBOL:
                        case FROM_SYMBOL:
                        case FULL_SYMBOL:
                        case FUNCTION_SYMBOL:
                        case GENERAL_SYMBOL:
                        case GEOMETRYCOLLECTION_SYMBOL:
                        case GEOMETRY_SYMBOL:
                        case GET_FORMAT_SYMBOL:
                        case GLOBAL_SYMBOL:
                        case GRANTS_SYMBOL:
                        case GREATER_OR_EQUAL_OPERATOR:
                        case GREATER_THAN_OPERATOR:
                        case GROUP_SYMBOL:
                        case HANDLER_SYMBOL:
                        case HASH_SYMBOL:
                        case HAVING_SYMBOL:
                        case HELP_SYMBOL:
                        case HOSTS_SYMBOL:
                        case HOST_SYMBOL:
                        case HOUR_MICROSECOND_SYMBOL:
                        case HOUR_MINUTE_SYMBOL:
                        case HOUR_SECOND_SYMBOL:
                        case HOUR_SYMBOL:
                        case IDENTIFIED_SYMBOL:
                        case IDENTIFIER:
                        case IGNORE_SERVER_IDS_SYMBOL:
                        case IMPORT_SYMBOL:
                        case INDEXES_SYMBOL:
                        case INITIAL_SIZE_SYMBOL:
                        case INNER_SYMBOL:
                        case INNODB_SYMBOL:
                        case INSERT_METHOD_SYMBOL:
                        case INSTALL_SYMBOL:
                        case INTO_SYMBOL:
                        case INVOKER_SYMBOL:
                        case IN_SYMBOL:
                        case IO_SYMBOL:
                        case IPC_SYMBOL:
                        case ISOLATION_SYMBOL:
                        case ISSUER_SYMBOL:
                        case IS_SYMBOL:
                        case JOIN_SYMBOL:
                        case KEY_BLOCK_SIZE_SYMBOL:
                        case LANGUAGE_SYMBOL:
                        case LAST_SYMBOL:
                        case LEAVES_SYMBOL:
                        case LEFT_SYMBOL:
                        case LESS_OR_EQUAL_OPERATOR:
                        case LESS_SYMBOL:
                        case LESS_THAN_OPERATOR:
                        case LEVEL_SYMBOL:
                        case LIKE_SYMBOL:
                        case LIMIT_SYMBOL:
                        case LINESTRING_SYMBOL:
                        case LIST_SYMBOL:
                        case LOCAL_SYMBOL:
                        case LOCKS_SYMBOL:
                        case LOCK_SYMBOL:
                        case LOGFILE_SYMBOL:
                        case LOGICAL_AND_OPERATOR:
                        case LOGICAL_OR_OPERATOR:
                        case LOGS_SYMBOL:
                        case MASTER_AUTO_POSITION_SYMBOL:
                        case MASTER_CONNECT_RETRY_SYMBOL:
                        case MASTER_DELAY_SYMBOL:
                        case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                        case MASTER_HOST_SYMBOL:
                        case MASTER_LOG_FILE_SYMBOL:
                        case MASTER_LOG_POS_SYMBOL:
                        case MASTER_PASSWORD_SYMBOL:
                        case MASTER_PORT_SYMBOL:
                        case MASTER_RETRY_COUNT_SYMBOL:
                        case MASTER_SERVER_ID_SYMBOL:
                        case MASTER_SSL_CAPATH_SYMBOL:
                        case MASTER_SSL_CA_SYMBOL:
                        case MASTER_SSL_CERT_SYMBOL:
                        case MASTER_SSL_CIPHER_SYMBOL:
                        case MASTER_SSL_CRLPATH_SYMBOL:
                        case MASTER_SSL_CRL_SYMBOL:
                        case MASTER_SSL_KEY_SYMBOL:
                        case MASTER_SSL_SYMBOL:
                        case MASTER_SYMBOL:
                        case MASTER_USER_SYMBOL:
                        case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                        case MAX_QUERIES_PER_HOUR_SYMBOL:
                        case MAX_ROWS_SYMBOL:
                        case MAX_SIZE_SYMBOL:
                        case MAX_UPDATES_PER_HOUR_SYMBOL:
                        case MAX_USER_CONNECTIONS_SYMBOL:
                        case MEDIUM_SYMBOL:
                        case MEMORY_SYMBOL:
                        case MERGE_SYMBOL:
                        case MESSAGE_TEXT_SYMBOL:
                        case MICROSECOND_SYMBOL:
                        case MIGRATE_SYMBOL:
                        case MINUS_OPERATOR:
                        case MINUTE_MICROSECOND_SYMBOL:
                        case MINUTE_SECOND_SYMBOL:
                        case MINUTE_SYMBOL:
                        case MIN_ROWS_SYMBOL:
                        case MODE_SYMBOL:
                        case MODIFY_SYMBOL:
                        case MOD_OPERATOR:
                        case MOD_SYMBOL:
                        case MONTH_SYMBOL:
                        case MULTILINESTRING_SYMBOL:
                        case MULTIPOINT_SYMBOL:
                        case MULTIPOLYGON_SYMBOL:
                        case MULT_OPERATOR:
                        case MUTEX_SYMBOL:
                        case MYSQL_ERRNO_SYMBOL:
                        case NAMES_SYMBOL:
                        case NAME_SYMBOL:
                        case NATIONAL_SYMBOL:
                        case NATURAL_SYMBOL:
                        case NCHAR_SYMBOL:
                        case NDBCLUSTER_SYMBOL:
                        case NEW_SYMBOL:
                        case NEXT_SYMBOL:
                        case NODEGROUP_SYMBOL:
                        case NONE_SYMBOL:
                        case NOT_EQUAL2_OPERATOR:
                        case NOT_EQUAL_OPERATOR:
                        case NOT_SYMBOL:
                        case NO_SYMBOL:
                        case NO_WAIT_SYMBOL:
                        case NULL_SAFE_EQUAL_OPERATOR:
                        case NUMBER_SYMBOL:
                        case NVARCHAR_SYMBOL:
                        case OFFSET_SYMBOL:
                        case OLD_PASSWORD_SYMBOL:
                        case ONE_SHOT_SYMBOL:
                        case ONE_SYMBOL:
                        case ON_SYMBOL:
                        case OPEN_SYMBOL:
                        case OPTIONS_SYMBOL:
                        case ORDER_SYMBOL:
                        case OR_SYMBOL:
                        case OWNER_SYMBOL:
                        case PACK_KEYS_SYMBOL:
                        case PAGE_SYMBOL:
                        case PARSER_SYMBOL:
                        case PARTIAL_SYMBOL:
                        case PARTITIONING_SYMBOL:
                        case PARTITIONS_SYMBOL:
                        case PARTITION_SYMBOL:
                        case PASSWORD_SYMBOL:
                        case PHASE_SYMBOL:
                        case PLUGINS_SYMBOL:
                        case PLUGIN_DIR_SYMBOL:
                        case PLUGIN_SYMBOL:
                        case PLUS_OPERATOR:
                        case POINT_SYMBOL:
                        case POLYGON_SYMBOL:
                        case PORT_SYMBOL:
                        case PREPARE_SYMBOL:
                        case PRESERVE_SYMBOL:
                        case PREV_SYMBOL:
                        case PRIVILEGES_SYMBOL:
                        case PROCEDURE_SYMBOL:
                        case PROCESSLIST_SYMBOL:
                        case PROCESS_SYMBOL:
                        case PROFILES_SYMBOL:
                        case PROFILE_SYMBOL:
                        case PROXY_SYMBOL:
                        case QUARTER_SYMBOL:
                        case QUERY_SYMBOL:
                        case QUICK_SYMBOL:
                        case READ_ONLY_SYMBOL:
                        case REBUILD_SYMBOL:
                        case RECOVER_SYMBOL:
                        case REDOFILE_SYMBOL:
                        case REDO_BUFFER_SIZE_SYMBOL:
                        case REDUNDANT_SYMBOL:
                        case REGEXP_SYMBOL:
                        case RELAYLOG_SYMBOL:
                        case RELAY_LOG_FILE_SYMBOL:
                        case RELAY_LOG_POS_SYMBOL:
                        case RELAY_SYMBOL:
                        case RELAY_THREAD_SYMBOL:
                        case RELOAD_SYMBOL:
                        case REMOVE_SYMBOL:
                        case RENAME_SYMBOL:
                        case REORGANIZE_SYMBOL:
                        case REPAIR_SYMBOL:
                        case REPEATABLE_SYMBOL:
                        case REPLICATION_SYMBOL:
                        case RESET_SYMBOL:
                        case RESTORE_SYMBOL:
                        case RESUME_SYMBOL:
                        case RETURNED_SQLSTATE_SYMBOL:
                        case RETURNS_SYMBOL:
                        case REVERSE_SYMBOL:
                        case RIGHT_SYMBOL:
                        case ROLLBACK_SYMBOL:
                        case ROLLUP_SYMBOL:
                        case ROUTINE_SYMBOL:
                        case ROWS_SYMBOL:
                        case ROW_COUNT_SYMBOL:
                        case ROW_FORMAT_SYMBOL:
                        case ROW_SYMBOL:
                        case RTREE_SYMBOL:
                        case SAVEPOINT_SYMBOL:
                        case SCHEDULE_SYMBOL:
                        case SCHEMA_NAME_SYMBOL:
                        case SECOND_MICROSECOND_SYMBOL:
                        case SECOND_SYMBOL:
                        case SECURITY_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        case SEPARATOR_SYMBOL:
                        case SERIALIZABLE_SYMBOL:
                        case SERIAL_SYMBOL:
                        case SERVER_SYMBOL:
                        case SESSION_SYMBOL:
                        case SET_SYMBOL:
                        case SHARE_SYMBOL:
                        case SHIFT_LEFT_OPERATOR:
                        case SHIFT_RIGHT_OPERATOR:
                        case SHUTDOWN_SYMBOL:
                        case SIGNED_SYMBOL:
                        case SIMPLE_SYMBOL:
                        case SLAVE_SYMBOL:
                        case SLOW_SYMBOL:
                        case SNAPSHOT_SYMBOL:
                        case SOCKET_SYMBOL:
                        case SONAME_SYMBOL:
                        case SOUNDS_SYMBOL:
                        case SOURCE_SYMBOL:
                        case SQL_AFTER_GTIDS_SYMBOL:
                        case SQL_AFTER_MTS_GAPS_SYMBOL:
                        case SQL_BEFORE_GTIDS_SYMBOL:
                        case SQL_BUFFER_RESULT_SYMBOL:
                        case SQL_CACHE_SYMBOL:
                        case SQL_NO_CACHE_SYMBOL:
                        case SQL_THREAD_SYMBOL:
                        case STARTS_SYMBOL:
                        case START_SYMBOL:
                        case STATS_AUTO_RECALC_SYMBOL:
                        case STATS_PERSISTENT_SYMBOL:
                        case STATS_SAMPLE_PAGES_SYMBOL:
                        case STATUS_SYMBOL:
                        case STOP_SYMBOL:
                        case STORAGE_SYMBOL:
                        case STRAIGHT_JOIN_SYMBOL:
                        case STRING_SYMBOL:
                        case SUBCLASS_ORIGIN_SYMBOL:
                        case SUBDATE_SYMBOL:
                        case SUBJECT_SYMBOL:
                        case SUBPARTITIONS_SYMBOL:
                        case SUBPARTITION_SYMBOL:
                        case SUPER_SYMBOL:
                        case SUSPEND_SYMBOL:
                        case SWAPS_SYMBOL:
                        case SWITCHES_SYMBOL:
                        case TABLESPACE_SYMBOL:
                        case TABLES_SYMBOL:
                        case TABLE_CHECKSUM_SYMBOL:
                        case TABLE_NAME_SYMBOL:
                        case TEMPORARY_SYMBOL:
                        case TEMPTABLE_SYMBOL:
                        case TEXT_SYMBOL:
                        case THAN_SYMBOL:
                        case THEN_SYMBOL:
                        case TIMESTAMP_ADD_SYMBOL:
                        case TIMESTAMP_DIFF_SYMBOL:
                        case TIMESTAMP_SYMBOL:
                        case TIME_SYMBOL:
                        case TRANSACTION_SYMBOL:
                        case TRIGGERS_SYMBOL:
                        case TRUNCATE_SYMBOL:
                        case TYPES_SYMBOL:
                        case TYPE_SYMBOL:
                        case UDF_RETURNS_SYMBOL:
                        case UNCOMMITTED_SYMBOL:
                        case UNDEFINED_SYMBOL:
                        case UNDOFILE_SYMBOL:
                        case UNDO_BUFFER_SIZE_SYMBOL:
                        case UNICODE_SYMBOL:
                        case UNINSTALL_SYMBOL:
                        case UNION_SYMBOL:
                        case UNKNOWN_SYMBOL:
                        case UNTIL_SYMBOL:
                        case UPGRADE_SYMBOL:
                        case USER_RESOURCES_SYMBOL:
                        case USER_SYMBOL:
                        case USE_FRM_SYMBOL:
                        case USING_SYMBOL:
                        case VALUE_SYMBOL:
                        case VARIABLES_SYMBOL:
                        case VIEW_SYMBOL:
                        case WAIT_SYMBOL:
                        case WARNINGS_SYMBOL:
                        case WEEK_SYMBOL:
                        case WEIGHT_STRING_SYMBOL:
                        case WHEN_SYMBOL:
                        case WHERE_SYMBOL:
                        case WITH_SYMBOL:
                        case WORK_SYMBOL:
                        case WRAPPER_SYMBOL:
                        case X509_SYMBOL:
                        case XA_SYMBOL:
                        case XML_SYMBOL:
                        case XOR_SYMBOL:
                        case YEAR_MONTH_SYMBOL:
                        case YEAR_SYMBOL:
                        case 733:
                        	{
                        		alt527=3;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 527;
                            EXCEPTION->state        = 2;


                            goto ruleprimaryEx;

                        }

                    }
                    else if ( (LA527_0 == TIMESTAMP_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case OPEN_PAR_SYMBOL:
                        	{
                        		{
                        		    int LA527_284 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=4;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 284;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case NCHAR_TEXT:
                        	{
                        		{
                        		    int LA527_285 = LA(3);
                        		    if ( ((LA(1) == DATE_SYMBOL || LA(1) == TIME_SYMBOL || LA(1) == TIMESTAMP_SYMBOL)))
                        		    {
                        		        alt527=1;
                        		    }
                        		    else if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 285;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case UNDERSCORE_CHARSET:
                        	{
                        		{
                        		    int LA527_286 = LA(3);
                        		    if ( ((LA(1) == DATE_SYMBOL || LA(1) == TIME_SYMBOL || LA(1) == TIMESTAMP_SYMBOL)))
                        		    {
                        		        alt527=1;
                        		    }
                        		    else if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 286;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case SINGLE_QUOTED_TEXT:
                        	{
                        		{
                        		    int LA527_287 = LA(3);
                        		    if ( ((LA(1) == DATE_SYMBOL || LA(1) == TIME_SYMBOL || LA(1) == TIMESTAMP_SYMBOL)))
                        		    {
                        		        alt527=1;
                        		    }
                        		    else if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 287;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case DOUBLE_QUOTED_TEXT:
                        	{
                        		{
                        		    int LA527_288 = LA(3);
                        		    if ( ((LA(1) == DATE_SYMBOL || LA(1) == TIME_SYMBOL || LA(1) == TIMESTAMP_SYMBOL)))
                        		    {
                        		        alt527=1;
                        		    }
                        		    else if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 288;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case DOT_SYMBOL:
                        	{
                        		{
                        		    int LA527_289 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 289;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case EOF:
                        case ACTION_SYMBOL:
                        case ADDDATE_SYMBOL:
                        case AFTER_SYMBOL:
                        case AGAINST_SYMBOL:
                        case AGGREGATE_SYMBOL:
                        case ALGORITHM_SYMBOL:
                        case ANALYZE_SYMBOL:
                        case AND_SYMBOL:
                        case ANY_SYMBOL:
                        case ASCII_SYMBOL:
                        case ASC_SYMBOL:
                        case AS_SYMBOL:
                        case AT_SYMBOL:
                        case AUTHORS_SYMBOL:
                        case AUTOEXTEND_SIZE_SYMBOL:
                        case AUTO_INCREMENT_SYMBOL:
                        case AVG_ROW_LENGTH_SYMBOL:
                        case AVG_SYMBOL:
                        case BACKUP_SYMBOL:
                        case BACK_TICK_QUOTED_ID:
                        case BEGIN_SYMBOL:
                        case BETWEEN_SYMBOL:
                        case BINLOG_SYMBOL:
                        case BITWISE_AND_OPERATOR:
                        case BITWISE_OR_OPERATOR:
                        case BITWISE_XOR_OPERATOR:
                        case BIT_SYMBOL:
                        case BLOCK_SYMBOL:
                        case BOOLEAN_SYMBOL:
                        case BOOL_SYMBOL:
                        case BTREE_SYMBOL:
                        case BYTE_SYMBOL:
                        case CACHE_SYMBOL:
                        case CASCADED_SYMBOL:
                        case CATALOG_NAME_SYMBOL:
                        case CHAIN_SYMBOL:
                        case CHANGED_SYMBOL:
                        case CHARSET_SYMBOL:
                        case CHECKSUM_SYMBOL:
                        case CIPHER_SYMBOL:
                        case CLASS_ORIGIN_SYMBOL:
                        case CLIENT_SYMBOL:
                        case CLOSE_PAR_SYMBOL:
                        case CLOSE_SYMBOL:
                        case COALESCE_SYMBOL:
                        case CODE_SYMBOL:
                        case COLLATE_SYMBOL:
                        case COLLATION_SYMBOL:
                        case COLUMNS_SYMBOL:
                        case COLUMN_FORMAT_SYMBOL:
                        case COLUMN_NAME_SYMBOL:
                        case COMMA_SYMBOL:
                        case COMMENT_SYMBOL:
                        case COMMITTED_SYMBOL:
                        case COMMIT_SYMBOL:
                        case COMPACT_SYMBOL:
                        case COMPLETION_SYMBOL:
                        case COMPRESSED_SYMBOL:
                        case CONCAT_PIPES_SYMBOL:
                        case CONCURRENT_SYMBOL:
                        case CONNECTION_SYMBOL:
                        case CONSISTENT_SYMBOL:
                        case CONSTRAINT_CATALOG_SYMBOL:
                        case CONSTRAINT_NAME_SYMBOL:
                        case CONSTRAINT_SCHEMA_SYMBOL:
                        case CONTAINS_SYMBOL:
                        case CONTEXT_SYMBOL:
                        case CONTRIBUTORS_SYMBOL:
                        case CPU_SYMBOL:
                        case CROSS_SYMBOL:
                        case CUBE_SYMBOL:
                        case CURRENT_SYMBOL:
                        case CURSOR_NAME_SYMBOL:
                        case DATAFILE_SYMBOL:
                        case DATA_SYMBOL:
                        case DATETIME_SYMBOL:
                        case DATE_SYMBOL:
                        case DAY_HOUR_SYMBOL:
                        case DAY_MICROSECOND_SYMBOL:
                        case DAY_MINUTE_SYMBOL:
                        case DAY_SECOND_SYMBOL:
                        case DAY_SYMBOL:
                        case DEALLOCATE_SYMBOL:
                        case DEFAULT_AUTH_SYMBOL:
                        case DEFINER_SYMBOL:
                        case DELAY_KEY_WRITE_SYMBOL:
                        case DESC_SYMBOL:
                        case DES_KEY_FILE_SYMBOL:
                        case DIAGNOSTICS_SYMBOL:
                        case DIRECTORY_SYMBOL:
                        case DISABLE_SYMBOL:
                        case DISCARD_SYMBOL:
                        case DISK_SYMBOL:
                        case DIV_OPERATOR:
                        case DIV_SYMBOL:
                        case DO_SYMBOL:
                        case DUMPFILE_SYMBOL:
                        case DUPLICATE_SYMBOL:
                        case DYNAMIC_SYMBOL:
                        case ELSE_SYMBOL:
                        case ENABLE_SYMBOL:
                        case ENDS_SYMBOL:
                        case END_SYMBOL:
                        case ENGINES_SYMBOL:
                        case ENGINE_SYMBOL:
                        case ENUM_SYMBOL:
                        case EQUAL_OPERATOR:
                        case ERRORS_SYMBOL:
                        case ERROR_SYMBOL:
                        case ESCAPE_SYMBOL:
                        case EVENTS_SYMBOL:
                        case EVENT_SYMBOL:
                        case EVERY_SYMBOL:
                        case EXECUTE_SYMBOL:
                        case EXPANSION_SYMBOL:
                        case EXPORT_SYMBOL:
                        case EXTENDED_SYMBOL:
                        case EXTENT_SIZE_SYMBOL:
                        case FAST_SYMBOL:
                        case FAULTS_SYMBOL:
                        case FILE_SYMBOL:
                        case FIRST_SYMBOL:
                        case FIXED_SYMBOL:
                        case FLUSH_SYMBOL:
                        case FORMAT_SYMBOL:
                        case FOR_SYMBOL:
                        case FOUND_SYMBOL:
                        case FRAC_SECOND_SYMBOL:
                        case FROM_SYMBOL:
                        case FULL_SYMBOL:
                        case FUNCTION_SYMBOL:
                        case GENERAL_SYMBOL:
                        case GEOMETRYCOLLECTION_SYMBOL:
                        case GEOMETRY_SYMBOL:
                        case GET_FORMAT_SYMBOL:
                        case GLOBAL_SYMBOL:
                        case GRANTS_SYMBOL:
                        case GREATER_OR_EQUAL_OPERATOR:
                        case GREATER_THAN_OPERATOR:
                        case GROUP_SYMBOL:
                        case HANDLER_SYMBOL:
                        case HASH_SYMBOL:
                        case HAVING_SYMBOL:
                        case HELP_SYMBOL:
                        case HOSTS_SYMBOL:
                        case HOST_SYMBOL:
                        case HOUR_MICROSECOND_SYMBOL:
                        case HOUR_MINUTE_SYMBOL:
                        case HOUR_SECOND_SYMBOL:
                        case HOUR_SYMBOL:
                        case IDENTIFIED_SYMBOL:
                        case IDENTIFIER:
                        case IGNORE_SERVER_IDS_SYMBOL:
                        case IMPORT_SYMBOL:
                        case INDEXES_SYMBOL:
                        case INITIAL_SIZE_SYMBOL:
                        case INNER_SYMBOL:
                        case INNODB_SYMBOL:
                        case INSERT_METHOD_SYMBOL:
                        case INSTALL_SYMBOL:
                        case INTO_SYMBOL:
                        case INVOKER_SYMBOL:
                        case IN_SYMBOL:
                        case IO_SYMBOL:
                        case IPC_SYMBOL:
                        case ISOLATION_SYMBOL:
                        case ISSUER_SYMBOL:
                        case IS_SYMBOL:
                        case JOIN_SYMBOL:
                        case KEY_BLOCK_SIZE_SYMBOL:
                        case LANGUAGE_SYMBOL:
                        case LAST_SYMBOL:
                        case LEAVES_SYMBOL:
                        case LEFT_SYMBOL:
                        case LESS_OR_EQUAL_OPERATOR:
                        case LESS_SYMBOL:
                        case LESS_THAN_OPERATOR:
                        case LEVEL_SYMBOL:
                        case LIKE_SYMBOL:
                        case LIMIT_SYMBOL:
                        case LINESTRING_SYMBOL:
                        case LIST_SYMBOL:
                        case LOCAL_SYMBOL:
                        case LOCKS_SYMBOL:
                        case LOCK_SYMBOL:
                        case LOGFILE_SYMBOL:
                        case LOGICAL_AND_OPERATOR:
                        case LOGICAL_OR_OPERATOR:
                        case LOGS_SYMBOL:
                        case MASTER_AUTO_POSITION_SYMBOL:
                        case MASTER_CONNECT_RETRY_SYMBOL:
                        case MASTER_DELAY_SYMBOL:
                        case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                        case MASTER_HOST_SYMBOL:
                        case MASTER_LOG_FILE_SYMBOL:
                        case MASTER_LOG_POS_SYMBOL:
                        case MASTER_PASSWORD_SYMBOL:
                        case MASTER_PORT_SYMBOL:
                        case MASTER_RETRY_COUNT_SYMBOL:
                        case MASTER_SERVER_ID_SYMBOL:
                        case MASTER_SSL_CAPATH_SYMBOL:
                        case MASTER_SSL_CA_SYMBOL:
                        case MASTER_SSL_CERT_SYMBOL:
                        case MASTER_SSL_CIPHER_SYMBOL:
                        case MASTER_SSL_CRLPATH_SYMBOL:
                        case MASTER_SSL_CRL_SYMBOL:
                        case MASTER_SSL_KEY_SYMBOL:
                        case MASTER_SSL_SYMBOL:
                        case MASTER_SYMBOL:
                        case MASTER_USER_SYMBOL:
                        case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                        case MAX_QUERIES_PER_HOUR_SYMBOL:
                        case MAX_ROWS_SYMBOL:
                        case MAX_SIZE_SYMBOL:
                        case MAX_UPDATES_PER_HOUR_SYMBOL:
                        case MAX_USER_CONNECTIONS_SYMBOL:
                        case MEDIUM_SYMBOL:
                        case MEMORY_SYMBOL:
                        case MERGE_SYMBOL:
                        case MESSAGE_TEXT_SYMBOL:
                        case MICROSECOND_SYMBOL:
                        case MIGRATE_SYMBOL:
                        case MINUS_OPERATOR:
                        case MINUTE_MICROSECOND_SYMBOL:
                        case MINUTE_SECOND_SYMBOL:
                        case MINUTE_SYMBOL:
                        case MIN_ROWS_SYMBOL:
                        case MODE_SYMBOL:
                        case MODIFY_SYMBOL:
                        case MOD_OPERATOR:
                        case MOD_SYMBOL:
                        case MONTH_SYMBOL:
                        case MULTILINESTRING_SYMBOL:
                        case MULTIPOINT_SYMBOL:
                        case MULTIPOLYGON_SYMBOL:
                        case MULT_OPERATOR:
                        case MUTEX_SYMBOL:
                        case MYSQL_ERRNO_SYMBOL:
                        case NAMES_SYMBOL:
                        case NAME_SYMBOL:
                        case NATIONAL_SYMBOL:
                        case NATURAL_SYMBOL:
                        case NCHAR_SYMBOL:
                        case NDBCLUSTER_SYMBOL:
                        case NEW_SYMBOL:
                        case NEXT_SYMBOL:
                        case NODEGROUP_SYMBOL:
                        case NONE_SYMBOL:
                        case NOT_EQUAL2_OPERATOR:
                        case NOT_EQUAL_OPERATOR:
                        case NOT_SYMBOL:
                        case NO_SYMBOL:
                        case NO_WAIT_SYMBOL:
                        case NULL_SAFE_EQUAL_OPERATOR:
                        case NUMBER_SYMBOL:
                        case NVARCHAR_SYMBOL:
                        case OFFSET_SYMBOL:
                        case OLD_PASSWORD_SYMBOL:
                        case ONE_SHOT_SYMBOL:
                        case ONE_SYMBOL:
                        case ON_SYMBOL:
                        case OPEN_SYMBOL:
                        case OPTIONS_SYMBOL:
                        case ORDER_SYMBOL:
                        case OR_SYMBOL:
                        case OWNER_SYMBOL:
                        case PACK_KEYS_SYMBOL:
                        case PAGE_SYMBOL:
                        case PARSER_SYMBOL:
                        case PARTIAL_SYMBOL:
                        case PARTITIONING_SYMBOL:
                        case PARTITIONS_SYMBOL:
                        case PARTITION_SYMBOL:
                        case PASSWORD_SYMBOL:
                        case PHASE_SYMBOL:
                        case PLUGINS_SYMBOL:
                        case PLUGIN_DIR_SYMBOL:
                        case PLUGIN_SYMBOL:
                        case PLUS_OPERATOR:
                        case POINT_SYMBOL:
                        case POLYGON_SYMBOL:
                        case PORT_SYMBOL:
                        case PREPARE_SYMBOL:
                        case PRESERVE_SYMBOL:
                        case PREV_SYMBOL:
                        case PRIVILEGES_SYMBOL:
                        case PROCEDURE_SYMBOL:
                        case PROCESSLIST_SYMBOL:
                        case PROCESS_SYMBOL:
                        case PROFILES_SYMBOL:
                        case PROFILE_SYMBOL:
                        case PROXY_SYMBOL:
                        case QUARTER_SYMBOL:
                        case QUERY_SYMBOL:
                        case QUICK_SYMBOL:
                        case READ_ONLY_SYMBOL:
                        case REBUILD_SYMBOL:
                        case RECOVER_SYMBOL:
                        case REDOFILE_SYMBOL:
                        case REDO_BUFFER_SIZE_SYMBOL:
                        case REDUNDANT_SYMBOL:
                        case REGEXP_SYMBOL:
                        case RELAYLOG_SYMBOL:
                        case RELAY_LOG_FILE_SYMBOL:
                        case RELAY_LOG_POS_SYMBOL:
                        case RELAY_SYMBOL:
                        case RELAY_THREAD_SYMBOL:
                        case RELOAD_SYMBOL:
                        case REMOVE_SYMBOL:
                        case RENAME_SYMBOL:
                        case REORGANIZE_SYMBOL:
                        case REPAIR_SYMBOL:
                        case REPEATABLE_SYMBOL:
                        case REPLICATION_SYMBOL:
                        case RESET_SYMBOL:
                        case RESTORE_SYMBOL:
                        case RESUME_SYMBOL:
                        case RETURNED_SQLSTATE_SYMBOL:
                        case RETURNS_SYMBOL:
                        case REVERSE_SYMBOL:
                        case RIGHT_SYMBOL:
                        case ROLLBACK_SYMBOL:
                        case ROLLUP_SYMBOL:
                        case ROUTINE_SYMBOL:
                        case ROWS_SYMBOL:
                        case ROW_COUNT_SYMBOL:
                        case ROW_FORMAT_SYMBOL:
                        case ROW_SYMBOL:
                        case RTREE_SYMBOL:
                        case SAVEPOINT_SYMBOL:
                        case SCHEDULE_SYMBOL:
                        case SCHEMA_NAME_SYMBOL:
                        case SECOND_MICROSECOND_SYMBOL:
                        case SECOND_SYMBOL:
                        case SECURITY_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        case SEPARATOR_SYMBOL:
                        case SERIALIZABLE_SYMBOL:
                        case SERIAL_SYMBOL:
                        case SERVER_SYMBOL:
                        case SESSION_SYMBOL:
                        case SET_SYMBOL:
                        case SHARE_SYMBOL:
                        case SHIFT_LEFT_OPERATOR:
                        case SHIFT_RIGHT_OPERATOR:
                        case SHUTDOWN_SYMBOL:
                        case SIGNED_SYMBOL:
                        case SIMPLE_SYMBOL:
                        case SLAVE_SYMBOL:
                        case SLOW_SYMBOL:
                        case SNAPSHOT_SYMBOL:
                        case SOCKET_SYMBOL:
                        case SONAME_SYMBOL:
                        case SOUNDS_SYMBOL:
                        case SOURCE_SYMBOL:
                        case SQL_AFTER_GTIDS_SYMBOL:
                        case SQL_AFTER_MTS_GAPS_SYMBOL:
                        case SQL_BEFORE_GTIDS_SYMBOL:
                        case SQL_BUFFER_RESULT_SYMBOL:
                        case SQL_CACHE_SYMBOL:
                        case SQL_NO_CACHE_SYMBOL:
                        case SQL_THREAD_SYMBOL:
                        case STARTS_SYMBOL:
                        case START_SYMBOL:
                        case STATS_AUTO_RECALC_SYMBOL:
                        case STATS_PERSISTENT_SYMBOL:
                        case STATS_SAMPLE_PAGES_SYMBOL:
                        case STATUS_SYMBOL:
                        case STOP_SYMBOL:
                        case STORAGE_SYMBOL:
                        case STRAIGHT_JOIN_SYMBOL:
                        case STRING_SYMBOL:
                        case SUBCLASS_ORIGIN_SYMBOL:
                        case SUBDATE_SYMBOL:
                        case SUBJECT_SYMBOL:
                        case SUBPARTITIONS_SYMBOL:
                        case SUBPARTITION_SYMBOL:
                        case SUPER_SYMBOL:
                        case SUSPEND_SYMBOL:
                        case SWAPS_SYMBOL:
                        case SWITCHES_SYMBOL:
                        case TABLESPACE_SYMBOL:
                        case TABLES_SYMBOL:
                        case TABLE_CHECKSUM_SYMBOL:
                        case TABLE_NAME_SYMBOL:
                        case TEMPORARY_SYMBOL:
                        case TEMPTABLE_SYMBOL:
                        case TEXT_SYMBOL:
                        case THAN_SYMBOL:
                        case THEN_SYMBOL:
                        case TIMESTAMP_ADD_SYMBOL:
                        case TIMESTAMP_DIFF_SYMBOL:
                        case TIMESTAMP_SYMBOL:
                        case TIME_SYMBOL:
                        case TRANSACTION_SYMBOL:
                        case TRIGGERS_SYMBOL:
                        case TRUNCATE_SYMBOL:
                        case TYPES_SYMBOL:
                        case TYPE_SYMBOL:
                        case UDF_RETURNS_SYMBOL:
                        case UNCOMMITTED_SYMBOL:
                        case UNDEFINED_SYMBOL:
                        case UNDOFILE_SYMBOL:
                        case UNDO_BUFFER_SIZE_SYMBOL:
                        case UNICODE_SYMBOL:
                        case UNINSTALL_SYMBOL:
                        case UNION_SYMBOL:
                        case UNKNOWN_SYMBOL:
                        case UNTIL_SYMBOL:
                        case UPGRADE_SYMBOL:
                        case USER_RESOURCES_SYMBOL:
                        case USER_SYMBOL:
                        case USE_FRM_SYMBOL:
                        case USING_SYMBOL:
                        case VALUE_SYMBOL:
                        case VARIABLES_SYMBOL:
                        case VIEW_SYMBOL:
                        case WAIT_SYMBOL:
                        case WARNINGS_SYMBOL:
                        case WEEK_SYMBOL:
                        case WEIGHT_STRING_SYMBOL:
                        case WHEN_SYMBOL:
                        case WHERE_SYMBOL:
                        case WITH_SYMBOL:
                        case WORK_SYMBOL:
                        case WRAPPER_SYMBOL:
                        case X509_SYMBOL:
                        case XA_SYMBOL:
                        case XML_SYMBOL:
                        case XOR_SYMBOL:
                        case YEAR_MONTH_SYMBOL:
                        case YEAR_SYMBOL:
                        case 733:
                        	{
                        		alt527=3;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 527;
                            EXCEPTION->state        = 3;


                            goto ruleprimaryEx;

                        }

                    }
                    else if ( (LA527_0 == FALSE_SYMBOL || LA527_0 == FLOAT || ((LA527_0 >= HEXNUMBER) && (LA527_0 <= HEXSTRING)) || LA527_0 == INTEGER || LA527_0 == NCHAR_TEXT || LA527_0 == SINGLE_QUOTED_TEXT || LA527_0 == TRUE_SYMBOL || LA527_0 == UNDERSCORE_CHARSET))
                    {
                        alt527=2;
                    }
                    else if ( ((((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)))||((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))) && (LA527_0 == DOUBLE_QUOTED_TEXT))
                    {
                        {
                            int LA527_7 = LA(2);
                            if ( (( (( (synpred3_MySQL(ctx)) && (synpred3_MySQL(ctx)) )) && ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) )) && (LA527_7 == DOT_SYMBOL))
                            {
                                alt527=5;
                            }
                            else if ( (( (( (synpred3_MySQL(ctx)) && (synpred3_MySQL(ctx)) )) && ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) )) && (LA527_7 == OPEN_PAR_SYMBOL))
                            {
                                alt527=5;
                            }
                            else if ( ((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))
                            {
                                alt527=2;
                            }
                            else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))
                            {
                                alt527=3;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 527;
                                EXCEPTION->state        = 7;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( ((SERVER_VERSION >= 50003)) && (((LA527_0 >= BITNUMBER) && (LA527_0 <= BITSTRING))))
                    {
                        alt527=2;
                    }
                    else if ( (LA527_0 == NULL2_SYMBOL || LA527_0 == NULL_SYMBOL))
                    {
                        alt527=2;
                    }
                    else if ( (LA527_0 == IDENTIFIER))
                    {
                        {
                            int LA527_13 = LA(2);
                            if ( (LA527_13 == DOT_SYMBOL))
                            {
                                {
                                    int LA527_470 = LA(3);
                                    if ( (ANTLR3_TRUE))
                                    {
                                        alt527=3;
                                    }
                                    else if ( (synpred3_MySQL(ctx)))
                                    {
                                        alt527=5;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 527;
                                        EXCEPTION->state        = 470;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA527_13 == EOF || ((LA527_13 >= ACTION_SYMBOL) && (LA527_13 <= ADDDATE_SYMBOL)) || ((LA527_13 >= AFTER_SYMBOL) && (LA527_13 <= ALGORITHM_SYMBOL)) || ((LA527_13 >= ANALYZE_SYMBOL) && (LA527_13 <= ASC_SYMBOL)) || LA527_13 == AS_SYMBOL || ((LA527_13 >= AT_SYMBOL) && (LA527_13 <= BACKUP_SYMBOL)) || LA527_13 == BACK_TICK_QUOTED_ID || ((LA527_13 >= BEGIN_SYMBOL) && (LA527_13 <= BETWEEN_SYMBOL)) || LA527_13 == BINLOG_SYMBOL || LA527_13 == BITWISE_AND_OPERATOR || ((LA527_13 >= BITWISE_OR_OPERATOR) && (LA527_13 <= BITWISE_XOR_OPERATOR)) || LA527_13 == BIT_SYMBOL || ((LA527_13 >= BLOCK_SYMBOL) && (LA527_13 <= BOOL_SYMBOL)) || ((LA527_13 >= BTREE_SYMBOL) && (LA527_13 <= BYTE_SYMBOL)) || LA527_13 == CACHE_SYMBOL || LA527_13 == CASCADED_SYMBOL || ((LA527_13 >= CATALOG_NAME_SYMBOL) && (LA527_13 <= CHANGED_SYMBOL)) || LA527_13 == CHARSET_SYMBOL || LA527_13 == CHECKSUM_SYMBOL || ((LA527_13 >= CIPHER_SYMBOL) && (LA527_13 <= COLLATION_SYMBOL)) || ((LA527_13 >= COLUMNS_SYMBOL) && (LA527_13 <= COLUMN_NAME_SYMBOL)) || LA527_13 == COMMA_SYMBOL || ((LA527_13 >= COMMENT_SYMBOL) && (LA527_13 <= CONCURRENT_SYMBOL)) || ((LA527_13 >= CONNECTION_SYMBOL) && (LA527_13 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA527_13 >= CONTAINS_SYMBOL) && (LA527_13 <= CONTEXT_SYMBOL)) || LA527_13 == CONTRIBUTORS_SYMBOL || LA527_13 == CPU_SYMBOL || ((LA527_13 >= CROSS_SYMBOL) && (LA527_13 <= CUBE_SYMBOL)) || LA527_13 == CURRENT_SYMBOL || LA527_13 == CURSOR_NAME_SYMBOL || ((LA527_13 >= DATAFILE_SYMBOL) && (LA527_13 <= DATETIME_SYMBOL)) || LA527_13 == DATE_SYMBOL || ((LA527_13 >= DAY_HOUR_SYMBOL) && (LA527_13 <= DEALLOCATE_SYMBOL)) || LA527_13 == DEFAULT_AUTH_SYMBOL || LA527_13 == DEFINER_SYMBOL || LA527_13 == DELAY_KEY_WRITE_SYMBOL || ((LA527_13 >= DESC_SYMBOL) && (LA527_13 <= DES_KEY_FILE_SYMBOL)) || LA527_13 == DIAGNOSTICS_SYMBOL || ((LA527_13 >= DIRECTORY_SYMBOL) && (LA527_13 <= DISK_SYMBOL)) || ((LA527_13 >= DIV_OPERATOR) && (LA527_13 <= DIV_SYMBOL)) || LA527_13 == DOUBLE_QUOTED_TEXT || LA527_13 == DO_SYMBOL || ((LA527_13 >= DUMPFILE_SYMBOL) && (LA527_13 <= DYNAMIC_SYMBOL)) || ((LA527_13 >= ELSE_SYMBOL) && (LA527_13 <= ENABLE_SYMBOL)) || LA527_13 == ENDS_SYMBOL || ((LA527_13 >= END_SYMBOL) && (LA527_13 <= ERROR_SYMBOL)) || ((LA527_13 >= ESCAPE_SYMBOL) && (LA527_13 <= EVERY_SYMBOL)) || LA527_13 == EXECUTE_SYMBOL || LA527_13 == EXPANSION_SYMBOL || LA527_13 == EXPORT_SYMBOL || ((LA527_13 >= EXTENDED_SYMBOL) && (LA527_13 <= EXTENT_SIZE_SYMBOL)) || ((LA527_13 >= FAST_SYMBOL) && (LA527_13 <= FAULTS_SYMBOL)) || ((LA527_13 >= FILE_SYMBOL) && (LA527_13 <= FIXED_SYMBOL)) || LA527_13 == FLUSH_SYMBOL || ((LA527_13 >= FORMAT_SYMBOL) && (LA527_13 <= FROM_SYMBOL)) || LA527_13 == FULL_SYMBOL || ((LA527_13 >= FUNCTION_SYMBOL) && (LA527_13 <= GET_FORMAT_SYMBOL)) || ((LA527_13 >= GLOBAL_SYMBOL) && (LA527_13 <= GRANTS_SYMBOL)) || ((LA527_13 >= GREATER_OR_EQUAL_OPERATOR) && (LA527_13 <= GREATER_THAN_OPERATOR)) || ((LA527_13 >= GROUP_SYMBOL) && (LA527_13 <= HELP_SYMBOL)) || ((LA527_13 >= HOSTS_SYMBOL) && (LA527_13 <= IDENTIFIER)) || LA527_13 == IGNORE_SERVER_IDS_SYMBOL || ((LA527_13 >= IMPORT_SYMBOL) && (LA527_13 <= INDEXES_SYMBOL)) || ((LA527_13 >= INITIAL_SIZE_SYMBOL) && (LA527_13 <= INNODB_SYMBOL)) || LA527_13 == INSERT_METHOD_SYMBOL || LA527_13 == INSTALL_SYMBOL || LA527_13 == INTO_SYMBOL || ((LA527_13 >= INVOKER_SYMBOL) && (LA527_13 <= IN_SYMBOL)) || LA527_13 == IO_SYMBOL || ((LA527_13 >= IPC_SYMBOL) && (LA527_13 <= IS_SYMBOL)) || LA527_13 == JOIN_SYMBOL || LA527_13 == KEY_BLOCK_SIZE_SYMBOL || ((LA527_13 >= LANGUAGE_SYMBOL) && (LA527_13 <= LAST_SYMBOL)) || LA527_13 == LEAVES_SYMBOL || ((LA527_13 >= LEFT_SYMBOL) && (LA527_13 <= LESS_THAN_OPERATOR)) || LA527_13 == LEVEL_SYMBOL || ((LA527_13 >= LIKE_SYMBOL) && (LA527_13 <= LIMIT_SYMBOL)) || LA527_13 == LINESTRING_SYMBOL || LA527_13 == LIST_SYMBOL || LA527_13 == LOCAL_SYMBOL || ((LA527_13 >= LOCKS_SYMBOL) && (LA527_13 <= LOGICAL_AND_OPERATOR)) || ((LA527_13 >= LOGICAL_OR_OPERATOR) && (LA527_13 <= LOGS_SYMBOL)) || LA527_13 == MASTER_AUTO_POSITION_SYMBOL || ((LA527_13 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA527_13 <= MASTER_SSL_SYMBOL)) || ((LA527_13 >= MASTER_SYMBOL) && (LA527_13 <= MASTER_USER_SYMBOL)) || ((LA527_13 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA527_13 <= MAX_SIZE_SYMBOL)) || ((LA527_13 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA527_13 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA527_13 >= MEDIUM_SYMBOL) && (LA527_13 <= MICROSECOND_SYMBOL)) || ((LA527_13 >= MIGRATE_SYMBOL) && (LA527_13 <= MIN_ROWS_SYMBOL)) || LA527_13 == MODE_SYMBOL || ((LA527_13 >= MODIFY_SYMBOL) && (LA527_13 <= MULTILINESTRING_SYMBOL)) || ((LA527_13 >= MULTIPOINT_SYMBOL) && (LA527_13 <= NATURAL_SYMBOL)) || ((LA527_13 >= NCHAR_SYMBOL) && (LA527_13 <= NDBCLUSTER_SYMBOL)) || ((LA527_13 >= NEW_SYMBOL) && (LA527_13 <= NONE_SYMBOL)) || ((LA527_13 >= NOT_EQUAL2_OPERATOR) && (LA527_13 <= NOT_SYMBOL)) || ((LA527_13 >= NO_SYMBOL) && (LA527_13 <= NO_WAIT_SYMBOL)) || LA527_13 == NULL_SAFE_EQUAL_OPERATOR || LA527_13 == NUMBER_SYMBOL || LA527_13 == NVARCHAR_SYMBOL || ((LA527_13 >= OFFSET_SYMBOL) && (LA527_13 <= ONE_SYMBOL)) || LA527_13 == ON_SYMBOL || LA527_13 == OPEN_SYMBOL || LA527_13 == OPTIONS_SYMBOL || ((LA527_13 >= ORDER_SYMBOL) && (LA527_13 <= OR_SYMBOL)) || ((LA527_13 >= OWNER_SYMBOL) && (LA527_13 <= PAGE_SYMBOL)) || ((LA527_13 >= PARSER_SYMBOL) && (LA527_13 <= PARTITION_SYMBOL)) || ((LA527_13 >= PASSWORD_SYMBOL) && (LA527_13 <= PORT_SYMBOL)) || ((LA527_13 >= PREPARE_SYMBOL) && (LA527_13 <= PREV_SYMBOL)) || ((LA527_13 >= PRIVILEGES_SYMBOL) && (LA527_13 <= PROXY_SYMBOL)) || ((LA527_13 >= QUARTER_SYMBOL) && (LA527_13 <= QUICK_SYMBOL)) || LA527_13 == READ_ONLY_SYMBOL || ((LA527_13 >= REBUILD_SYMBOL) && (LA527_13 <= REDUNDANT_SYMBOL)) || ((LA527_13 >= REGEXP_SYMBOL) && (LA527_13 <= RELAY_THREAD_SYMBOL)) || ((LA527_13 >= RELOAD_SYMBOL) && (LA527_13 <= REPEATABLE_SYMBOL)) || LA527_13 == REPLICATION_SYMBOL || LA527_13 == RESET_SYMBOL || LA527_13 == RESTORE_SYMBOL || ((LA527_13 >= RESUME_SYMBOL) && (LA527_13 <= RETURNS_SYMBOL)) || LA527_13 == REVERSE_SYMBOL || LA527_13 == RIGHT_SYMBOL || ((LA527_13 >= ROLLBACK_SYMBOL) && (LA527_13 <= SCHEDULE_SYMBOL)) || LA527_13 == SCHEMA_NAME_SYMBOL || ((LA527_13 >= SECOND_MICROSECOND_SYMBOL) && (LA527_13 <= SECURITY_SYMBOL)) || LA527_13 == SEMICOLON_SYMBOL || ((LA527_13 >= SEPARATOR_SYMBOL) && (LA527_13 <= SERIAL_SYMBOL)) || ((LA527_13 >= SERVER_SYMBOL) && (LA527_13 <= SESSION_SYMBOL)) || LA527_13 == SET_SYMBOL || ((LA527_13 >= SHARE_SYMBOL) && (LA527_13 <= SHIFT_RIGHT_OPERATOR)) || LA527_13 == SHUTDOWN_SYMBOL || ((LA527_13 >= SIGNED_SYMBOL) && (LA527_13 <= SIMPLE_SYMBOL)) || ((LA527_13 >= SINGLE_QUOTED_TEXT) && (LA527_13 <= SLOW_SYMBOL)) || ((LA527_13 >= SNAPSHOT_SYMBOL) && (LA527_13 <= SOURCE_SYMBOL)) || ((LA527_13 >= SQL_AFTER_GTIDS_SYMBOL) && (LA527_13 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA527_13 >= SQL_BUFFER_RESULT_SYMBOL) && (LA527_13 <= SQL_CACHE_SYMBOL)) || LA527_13 == SQL_NO_CACHE_SYMBOL || LA527_13 == SQL_THREAD_SYMBOL || ((LA527_13 >= STARTS_SYMBOL) && (LA527_13 <= STATUS_SYMBOL)) || ((LA527_13 >= STOP_SYMBOL) && (LA527_13 <= STRAIGHT_JOIN_SYMBOL)) || ((LA527_13 >= STRING_SYMBOL) && (LA527_13 <= SUBPARTITION_SYMBOL)) || ((LA527_13 >= SUPER_SYMBOL) && (LA527_13 <= SWITCHES_SYMBOL)) || ((LA527_13 >= TABLESPACE_SYMBOL) && (LA527_13 <= TABLE_NAME_SYMBOL)) || ((LA527_13 >= TEMPORARY_SYMBOL) && (LA527_13 <= TEMPTABLE_SYMBOL)) || ((LA527_13 >= TEXT_SYMBOL) && (LA527_13 <= TIME_SYMBOL)) || ((LA527_13 >= TRANSACTION_SYMBOL) && (LA527_13 <= TRIGGERS_SYMBOL)) || ((LA527_13 >= TRUNCATE_SYMBOL) && (LA527_13 <= UDF_RETURNS_SYMBOL)) || ((LA527_13 >= UNCOMMITTED_SYMBOL) && (LA527_13 <= UNDEFINED_SYMBOL)) || ((LA527_13 >= UNDERSCORE_CHARSET) && (LA527_13 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA527_13 >= UNICODE_SYMBOL) && (LA527_13 <= UNION_SYMBOL)) || LA527_13 == UNKNOWN_SYMBOL || LA527_13 == UNTIL_SYMBOL || LA527_13 == UPGRADE_SYMBOL || ((LA527_13 >= USER_RESOURCES_SYMBOL) && (LA527_13 <= USE_FRM_SYMBOL)) || LA527_13 == USING_SYMBOL || LA527_13 == VALUE_SYMBOL || LA527_13 == VARIABLES_SYMBOL || ((LA527_13 >= VIEW_SYMBOL) && (LA527_13 <= WHERE_SYMBOL)) || ((LA527_13 >= WITH_SYMBOL) && (LA527_13 <= WRAPPER_SYMBOL)) || LA527_13 == X509_SYMBOL || ((LA527_13 >= XA_SYMBOL) && (LA527_13 <= YEAR_SYMBOL)) || LA527_13 == 733))
                            {
                                alt527=3;
                            }
                            else if ( (synpred3_MySQL(ctx)) && (LA527_13 == OPEN_PAR_SYMBOL))
                            {
                                alt527=5;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 527;
                                EXCEPTION->state        = 13;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA527_0 == BACK_TICK_QUOTED_ID))
                    {
                        {
                            int LA527_14 = LA(2);
                            if ( (LA527_14 == DOT_SYMBOL))
                            {
                                {
                                    int LA527_563 = LA(3);
                                    if ( (ANTLR3_TRUE))
                                    {
                                        alt527=3;
                                    }
                                    else if ( (synpred3_MySQL(ctx)))
                                    {
                                        alt527=5;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 527;
                                        EXCEPTION->state        = 563;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA527_14 == EOF || ((LA527_14 >= ACTION_SYMBOL) && (LA527_14 <= ADDDATE_SYMBOL)) || ((LA527_14 >= AFTER_SYMBOL) && (LA527_14 <= ALGORITHM_SYMBOL)) || ((LA527_14 >= ANALYZE_SYMBOL) && (LA527_14 <= ASC_SYMBOL)) || LA527_14 == AS_SYMBOL || ((LA527_14 >= AT_SYMBOL) && (LA527_14 <= BACKUP_SYMBOL)) || LA527_14 == BACK_TICK_QUOTED_ID || ((LA527_14 >= BEGIN_SYMBOL) && (LA527_14 <= BETWEEN_SYMBOL)) || LA527_14 == BINLOG_SYMBOL || LA527_14 == BITWISE_AND_OPERATOR || ((LA527_14 >= BITWISE_OR_OPERATOR) && (LA527_14 <= BITWISE_XOR_OPERATOR)) || LA527_14 == BIT_SYMBOL || ((LA527_14 >= BLOCK_SYMBOL) && (LA527_14 <= BOOL_SYMBOL)) || ((LA527_14 >= BTREE_SYMBOL) && (LA527_14 <= BYTE_SYMBOL)) || LA527_14 == CACHE_SYMBOL || LA527_14 == CASCADED_SYMBOL || ((LA527_14 >= CATALOG_NAME_SYMBOL) && (LA527_14 <= CHANGED_SYMBOL)) || LA527_14 == CHARSET_SYMBOL || LA527_14 == CHECKSUM_SYMBOL || ((LA527_14 >= CIPHER_SYMBOL) && (LA527_14 <= COLLATION_SYMBOL)) || ((LA527_14 >= COLUMNS_SYMBOL) && (LA527_14 <= COLUMN_NAME_SYMBOL)) || LA527_14 == COMMA_SYMBOL || ((LA527_14 >= COMMENT_SYMBOL) && (LA527_14 <= CONCURRENT_SYMBOL)) || ((LA527_14 >= CONNECTION_SYMBOL) && (LA527_14 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA527_14 >= CONTAINS_SYMBOL) && (LA527_14 <= CONTEXT_SYMBOL)) || LA527_14 == CONTRIBUTORS_SYMBOL || LA527_14 == CPU_SYMBOL || ((LA527_14 >= CROSS_SYMBOL) && (LA527_14 <= CUBE_SYMBOL)) || LA527_14 == CURRENT_SYMBOL || LA527_14 == CURSOR_NAME_SYMBOL || ((LA527_14 >= DATAFILE_SYMBOL) && (LA527_14 <= DATETIME_SYMBOL)) || LA527_14 == DATE_SYMBOL || ((LA527_14 >= DAY_HOUR_SYMBOL) && (LA527_14 <= DEALLOCATE_SYMBOL)) || LA527_14 == DEFAULT_AUTH_SYMBOL || LA527_14 == DEFINER_SYMBOL || LA527_14 == DELAY_KEY_WRITE_SYMBOL || ((LA527_14 >= DESC_SYMBOL) && (LA527_14 <= DES_KEY_FILE_SYMBOL)) || LA527_14 == DIAGNOSTICS_SYMBOL || ((LA527_14 >= DIRECTORY_SYMBOL) && (LA527_14 <= DISK_SYMBOL)) || ((LA527_14 >= DIV_OPERATOR) && (LA527_14 <= DIV_SYMBOL)) || LA527_14 == DOUBLE_QUOTED_TEXT || LA527_14 == DO_SYMBOL || ((LA527_14 >= DUMPFILE_SYMBOL) && (LA527_14 <= DYNAMIC_SYMBOL)) || ((LA527_14 >= ELSE_SYMBOL) && (LA527_14 <= ENABLE_SYMBOL)) || LA527_14 == ENDS_SYMBOL || ((LA527_14 >= END_SYMBOL) && (LA527_14 <= ERROR_SYMBOL)) || ((LA527_14 >= ESCAPE_SYMBOL) && (LA527_14 <= EVERY_SYMBOL)) || LA527_14 == EXECUTE_SYMBOL || LA527_14 == EXPANSION_SYMBOL || LA527_14 == EXPORT_SYMBOL || ((LA527_14 >= EXTENDED_SYMBOL) && (LA527_14 <= EXTENT_SIZE_SYMBOL)) || ((LA527_14 >= FAST_SYMBOL) && (LA527_14 <= FAULTS_SYMBOL)) || ((LA527_14 >= FILE_SYMBOL) && (LA527_14 <= FIXED_SYMBOL)) || LA527_14 == FLUSH_SYMBOL || ((LA527_14 >= FORMAT_SYMBOL) && (LA527_14 <= FROM_SYMBOL)) || LA527_14 == FULL_SYMBOL || ((LA527_14 >= FUNCTION_SYMBOL) && (LA527_14 <= GET_FORMAT_SYMBOL)) || ((LA527_14 >= GLOBAL_SYMBOL) && (LA527_14 <= GRANTS_SYMBOL)) || ((LA527_14 >= GREATER_OR_EQUAL_OPERATOR) && (LA527_14 <= GREATER_THAN_OPERATOR)) || ((LA527_14 >= GROUP_SYMBOL) && (LA527_14 <= HELP_SYMBOL)) || ((LA527_14 >= HOSTS_SYMBOL) && (LA527_14 <= IDENTIFIER)) || LA527_14 == IGNORE_SERVER_IDS_SYMBOL || ((LA527_14 >= IMPORT_SYMBOL) && (LA527_14 <= INDEXES_SYMBOL)) || ((LA527_14 >= INITIAL_SIZE_SYMBOL) && (LA527_14 <= INNODB_SYMBOL)) || LA527_14 == INSERT_METHOD_SYMBOL || LA527_14 == INSTALL_SYMBOL || LA527_14 == INTO_SYMBOL || ((LA527_14 >= INVOKER_SYMBOL) && (LA527_14 <= IN_SYMBOL)) || LA527_14 == IO_SYMBOL || ((LA527_14 >= IPC_SYMBOL) && (LA527_14 <= IS_SYMBOL)) || LA527_14 == JOIN_SYMBOL || LA527_14 == KEY_BLOCK_SIZE_SYMBOL || ((LA527_14 >= LANGUAGE_SYMBOL) && (LA527_14 <= LAST_SYMBOL)) || LA527_14 == LEAVES_SYMBOL || ((LA527_14 >= LEFT_SYMBOL) && (LA527_14 <= LESS_THAN_OPERATOR)) || LA527_14 == LEVEL_SYMBOL || ((LA527_14 >= LIKE_SYMBOL) && (LA527_14 <= LIMIT_SYMBOL)) || LA527_14 == LINESTRING_SYMBOL || LA527_14 == LIST_SYMBOL || LA527_14 == LOCAL_SYMBOL || ((LA527_14 >= LOCKS_SYMBOL) && (LA527_14 <= LOGICAL_AND_OPERATOR)) || ((LA527_14 >= LOGICAL_OR_OPERATOR) && (LA527_14 <= LOGS_SYMBOL)) || LA527_14 == MASTER_AUTO_POSITION_SYMBOL || ((LA527_14 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA527_14 <= MASTER_SSL_SYMBOL)) || ((LA527_14 >= MASTER_SYMBOL) && (LA527_14 <= MASTER_USER_SYMBOL)) || ((LA527_14 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA527_14 <= MAX_SIZE_SYMBOL)) || ((LA527_14 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA527_14 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA527_14 >= MEDIUM_SYMBOL) && (LA527_14 <= MICROSECOND_SYMBOL)) || ((LA527_14 >= MIGRATE_SYMBOL) && (LA527_14 <= MIN_ROWS_SYMBOL)) || LA527_14 == MODE_SYMBOL || ((LA527_14 >= MODIFY_SYMBOL) && (LA527_14 <= MULTILINESTRING_SYMBOL)) || ((LA527_14 >= MULTIPOINT_SYMBOL) && (LA527_14 <= NATURAL_SYMBOL)) || ((LA527_14 >= NCHAR_SYMBOL) && (LA527_14 <= NDBCLUSTER_SYMBOL)) || ((LA527_14 >= NEW_SYMBOL) && (LA527_14 <= NONE_SYMBOL)) || ((LA527_14 >= NOT_EQUAL2_OPERATOR) && (LA527_14 <= NOT_SYMBOL)) || ((LA527_14 >= NO_SYMBOL) && (LA527_14 <= NO_WAIT_SYMBOL)) || LA527_14 == NULL_SAFE_EQUAL_OPERATOR || LA527_14 == NUMBER_SYMBOL || LA527_14 == NVARCHAR_SYMBOL || ((LA527_14 >= OFFSET_SYMBOL) && (LA527_14 <= ONE_SYMBOL)) || LA527_14 == ON_SYMBOL || LA527_14 == OPEN_SYMBOL || LA527_14 == OPTIONS_SYMBOL || ((LA527_14 >= ORDER_SYMBOL) && (LA527_14 <= OR_SYMBOL)) || ((LA527_14 >= OWNER_SYMBOL) && (LA527_14 <= PAGE_SYMBOL)) || ((LA527_14 >= PARSER_SYMBOL) && (LA527_14 <= PARTITION_SYMBOL)) || ((LA527_14 >= PASSWORD_SYMBOL) && (LA527_14 <= PORT_SYMBOL)) || ((LA527_14 >= PREPARE_SYMBOL) && (LA527_14 <= PREV_SYMBOL)) || ((LA527_14 >= PRIVILEGES_SYMBOL) && (LA527_14 <= PROXY_SYMBOL)) || ((LA527_14 >= QUARTER_SYMBOL) && (LA527_14 <= QUICK_SYMBOL)) || LA527_14 == READ_ONLY_SYMBOL || ((LA527_14 >= REBUILD_SYMBOL) && (LA527_14 <= REDUNDANT_SYMBOL)) || ((LA527_14 >= REGEXP_SYMBOL) && (LA527_14 <= RELAY_THREAD_SYMBOL)) || ((LA527_14 >= RELOAD_SYMBOL) && (LA527_14 <= REPEATABLE_SYMBOL)) || LA527_14 == REPLICATION_SYMBOL || LA527_14 == RESET_SYMBOL || LA527_14 == RESTORE_SYMBOL || ((LA527_14 >= RESUME_SYMBOL) && (LA527_14 <= RETURNS_SYMBOL)) || LA527_14 == REVERSE_SYMBOL || LA527_14 == RIGHT_SYMBOL || ((LA527_14 >= ROLLBACK_SYMBOL) && (LA527_14 <= SCHEDULE_SYMBOL)) || LA527_14 == SCHEMA_NAME_SYMBOL || ((LA527_14 >= SECOND_MICROSECOND_SYMBOL) && (LA527_14 <= SECURITY_SYMBOL)) || LA527_14 == SEMICOLON_SYMBOL || ((LA527_14 >= SEPARATOR_SYMBOL) && (LA527_14 <= SERIAL_SYMBOL)) || ((LA527_14 >= SERVER_SYMBOL) && (LA527_14 <= SESSION_SYMBOL)) || LA527_14 == SET_SYMBOL || ((LA527_14 >= SHARE_SYMBOL) && (LA527_14 <= SHIFT_RIGHT_OPERATOR)) || LA527_14 == SHUTDOWN_SYMBOL || ((LA527_14 >= SIGNED_SYMBOL) && (LA527_14 <= SIMPLE_SYMBOL)) || ((LA527_14 >= SINGLE_QUOTED_TEXT) && (LA527_14 <= SLOW_SYMBOL)) || ((LA527_14 >= SNAPSHOT_SYMBOL) && (LA527_14 <= SOURCE_SYMBOL)) || ((LA527_14 >= SQL_AFTER_GTIDS_SYMBOL) && (LA527_14 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA527_14 >= SQL_BUFFER_RESULT_SYMBOL) && (LA527_14 <= SQL_CACHE_SYMBOL)) || LA527_14 == SQL_NO_CACHE_SYMBOL || LA527_14 == SQL_THREAD_SYMBOL || ((LA527_14 >= STARTS_SYMBOL) && (LA527_14 <= STATUS_SYMBOL)) || ((LA527_14 >= STOP_SYMBOL) && (LA527_14 <= STRAIGHT_JOIN_SYMBOL)) || ((LA527_14 >= STRING_SYMBOL) && (LA527_14 <= SUBPARTITION_SYMBOL)) || ((LA527_14 >= SUPER_SYMBOL) && (LA527_14 <= SWITCHES_SYMBOL)) || ((LA527_14 >= TABLESPACE_SYMBOL) && (LA527_14 <= TABLE_NAME_SYMBOL)) || ((LA527_14 >= TEMPORARY_SYMBOL) && (LA527_14 <= TEMPTABLE_SYMBOL)) || ((LA527_14 >= TEXT_SYMBOL) && (LA527_14 <= TIME_SYMBOL)) || ((LA527_14 >= TRANSACTION_SYMBOL) && (LA527_14 <= TRIGGERS_SYMBOL)) || ((LA527_14 >= TRUNCATE_SYMBOL) && (LA527_14 <= UDF_RETURNS_SYMBOL)) || ((LA527_14 >= UNCOMMITTED_SYMBOL) && (LA527_14 <= UNDEFINED_SYMBOL)) || ((LA527_14 >= UNDERSCORE_CHARSET) && (LA527_14 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA527_14 >= UNICODE_SYMBOL) && (LA527_14 <= UNION_SYMBOL)) || LA527_14 == UNKNOWN_SYMBOL || LA527_14 == UNTIL_SYMBOL || LA527_14 == UPGRADE_SYMBOL || ((LA527_14 >= USER_RESOURCES_SYMBOL) && (LA527_14 <= USE_FRM_SYMBOL)) || LA527_14 == USING_SYMBOL || LA527_14 == VALUE_SYMBOL || LA527_14 == VARIABLES_SYMBOL || ((LA527_14 >= VIEW_SYMBOL) && (LA527_14 <= WHERE_SYMBOL)) || ((LA527_14 >= WITH_SYMBOL) && (LA527_14 <= WRAPPER_SYMBOL)) || LA527_14 == X509_SYMBOL || ((LA527_14 >= XA_SYMBOL) && (LA527_14 <= YEAR_SYMBOL)) || LA527_14 == 733))
                            {
                                alt527=3;
                            }
                            else if ( (synpred3_MySQL(ctx)) && (LA527_14 == OPEN_PAR_SYMBOL))
                            {
                                alt527=5;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 527;
                                EXCEPTION->state        = 14;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA527_0 == DAY_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case OPEN_PAR_SYMBOL:
                        	{
                        		{
                        		    int LA527_656 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=4;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 656;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case DOT_SYMBOL:
                        	{
                        		{
                        		    int LA527_657 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 657;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case EOF:
                        case ACTION_SYMBOL:
                        case ADDDATE_SYMBOL:
                        case AFTER_SYMBOL:
                        case AGAINST_SYMBOL:
                        case AGGREGATE_SYMBOL:
                        case ALGORITHM_SYMBOL:
                        case ANALYZE_SYMBOL:
                        case AND_SYMBOL:
                        case ANY_SYMBOL:
                        case ASCII_SYMBOL:
                        case ASC_SYMBOL:
                        case AS_SYMBOL:
                        case AT_SYMBOL:
                        case AUTHORS_SYMBOL:
                        case AUTOEXTEND_SIZE_SYMBOL:
                        case AUTO_INCREMENT_SYMBOL:
                        case AVG_ROW_LENGTH_SYMBOL:
                        case AVG_SYMBOL:
                        case BACKUP_SYMBOL:
                        case BACK_TICK_QUOTED_ID:
                        case BEGIN_SYMBOL:
                        case BETWEEN_SYMBOL:
                        case BINLOG_SYMBOL:
                        case BITWISE_AND_OPERATOR:
                        case BITWISE_OR_OPERATOR:
                        case BITWISE_XOR_OPERATOR:
                        case BIT_SYMBOL:
                        case BLOCK_SYMBOL:
                        case BOOLEAN_SYMBOL:
                        case BOOL_SYMBOL:
                        case BTREE_SYMBOL:
                        case BYTE_SYMBOL:
                        case CACHE_SYMBOL:
                        case CASCADED_SYMBOL:
                        case CATALOG_NAME_SYMBOL:
                        case CHAIN_SYMBOL:
                        case CHANGED_SYMBOL:
                        case CHARSET_SYMBOL:
                        case CHECKSUM_SYMBOL:
                        case CIPHER_SYMBOL:
                        case CLASS_ORIGIN_SYMBOL:
                        case CLIENT_SYMBOL:
                        case CLOSE_PAR_SYMBOL:
                        case CLOSE_SYMBOL:
                        case COALESCE_SYMBOL:
                        case CODE_SYMBOL:
                        case COLLATE_SYMBOL:
                        case COLLATION_SYMBOL:
                        case COLUMNS_SYMBOL:
                        case COLUMN_FORMAT_SYMBOL:
                        case COLUMN_NAME_SYMBOL:
                        case COMMA_SYMBOL:
                        case COMMENT_SYMBOL:
                        case COMMITTED_SYMBOL:
                        case COMMIT_SYMBOL:
                        case COMPACT_SYMBOL:
                        case COMPLETION_SYMBOL:
                        case COMPRESSED_SYMBOL:
                        case CONCAT_PIPES_SYMBOL:
                        case CONCURRENT_SYMBOL:
                        case CONNECTION_SYMBOL:
                        case CONSISTENT_SYMBOL:
                        case CONSTRAINT_CATALOG_SYMBOL:
                        case CONSTRAINT_NAME_SYMBOL:
                        case CONSTRAINT_SCHEMA_SYMBOL:
                        case CONTAINS_SYMBOL:
                        case CONTEXT_SYMBOL:
                        case CONTRIBUTORS_SYMBOL:
                        case CPU_SYMBOL:
                        case CROSS_SYMBOL:
                        case CUBE_SYMBOL:
                        case CURRENT_SYMBOL:
                        case CURSOR_NAME_SYMBOL:
                        case DATAFILE_SYMBOL:
                        case DATA_SYMBOL:
                        case DATETIME_SYMBOL:
                        case DATE_SYMBOL:
                        case DAY_HOUR_SYMBOL:
                        case DAY_MICROSECOND_SYMBOL:
                        case DAY_MINUTE_SYMBOL:
                        case DAY_SECOND_SYMBOL:
                        case DAY_SYMBOL:
                        case DEALLOCATE_SYMBOL:
                        case DEFAULT_AUTH_SYMBOL:
                        case DEFINER_SYMBOL:
                        case DELAY_KEY_WRITE_SYMBOL:
                        case DESC_SYMBOL:
                        case DES_KEY_FILE_SYMBOL:
                        case DIAGNOSTICS_SYMBOL:
                        case DIRECTORY_SYMBOL:
                        case DISABLE_SYMBOL:
                        case DISCARD_SYMBOL:
                        case DISK_SYMBOL:
                        case DIV_OPERATOR:
                        case DIV_SYMBOL:
                        case DOUBLE_QUOTED_TEXT:
                        case DO_SYMBOL:
                        case DUMPFILE_SYMBOL:
                        case DUPLICATE_SYMBOL:
                        case DYNAMIC_SYMBOL:
                        case ELSE_SYMBOL:
                        case ENABLE_SYMBOL:
                        case ENDS_SYMBOL:
                        case END_SYMBOL:
                        case ENGINES_SYMBOL:
                        case ENGINE_SYMBOL:
                        case ENUM_SYMBOL:
                        case EQUAL_OPERATOR:
                        case ERRORS_SYMBOL:
                        case ERROR_SYMBOL:
                        case ESCAPE_SYMBOL:
                        case EVENTS_SYMBOL:
                        case EVENT_SYMBOL:
                        case EVERY_SYMBOL:
                        case EXECUTE_SYMBOL:
                        case EXPANSION_SYMBOL:
                        case EXPORT_SYMBOL:
                        case EXTENDED_SYMBOL:
                        case EXTENT_SIZE_SYMBOL:
                        case FAST_SYMBOL:
                        case FAULTS_SYMBOL:
                        case FILE_SYMBOL:
                        case FIRST_SYMBOL:
                        case FIXED_SYMBOL:
                        case FLUSH_SYMBOL:
                        case FORMAT_SYMBOL:
                        case FOR_SYMBOL:
                        case FOUND_SYMBOL:
                        case FRAC_SECOND_SYMBOL:
                        case FROM_SYMBOL:
                        case FULL_SYMBOL:
                        case FUNCTION_SYMBOL:
                        case GENERAL_SYMBOL:
                        case GEOMETRYCOLLECTION_SYMBOL:
                        case GEOMETRY_SYMBOL:
                        case GET_FORMAT_SYMBOL:
                        case GLOBAL_SYMBOL:
                        case GRANTS_SYMBOL:
                        case GREATER_OR_EQUAL_OPERATOR:
                        case GREATER_THAN_OPERATOR:
                        case GROUP_SYMBOL:
                        case HANDLER_SYMBOL:
                        case HASH_SYMBOL:
                        case HAVING_SYMBOL:
                        case HELP_SYMBOL:
                        case HOSTS_SYMBOL:
                        case HOST_SYMBOL:
                        case HOUR_MICROSECOND_SYMBOL:
                        case HOUR_MINUTE_SYMBOL:
                        case HOUR_SECOND_SYMBOL:
                        case HOUR_SYMBOL:
                        case IDENTIFIED_SYMBOL:
                        case IDENTIFIER:
                        case IGNORE_SERVER_IDS_SYMBOL:
                        case IMPORT_SYMBOL:
                        case INDEXES_SYMBOL:
                        case INITIAL_SIZE_SYMBOL:
                        case INNER_SYMBOL:
                        case INNODB_SYMBOL:
                        case INSERT_METHOD_SYMBOL:
                        case INSTALL_SYMBOL:
                        case INTO_SYMBOL:
                        case INVOKER_SYMBOL:
                        case IN_SYMBOL:
                        case IO_SYMBOL:
                        case IPC_SYMBOL:
                        case ISOLATION_SYMBOL:
                        case ISSUER_SYMBOL:
                        case IS_SYMBOL:
                        case JOIN_SYMBOL:
                        case KEY_BLOCK_SIZE_SYMBOL:
                        case LANGUAGE_SYMBOL:
                        case LAST_SYMBOL:
                        case LEAVES_SYMBOL:
                        case LEFT_SYMBOL:
                        case LESS_OR_EQUAL_OPERATOR:
                        case LESS_SYMBOL:
                        case LESS_THAN_OPERATOR:
                        case LEVEL_SYMBOL:
                        case LIKE_SYMBOL:
                        case LIMIT_SYMBOL:
                        case LINESTRING_SYMBOL:
                        case LIST_SYMBOL:
                        case LOCAL_SYMBOL:
                        case LOCKS_SYMBOL:
                        case LOCK_SYMBOL:
                        case LOGFILE_SYMBOL:
                        case LOGICAL_AND_OPERATOR:
                        case LOGICAL_OR_OPERATOR:
                        case LOGS_SYMBOL:
                        case MASTER_AUTO_POSITION_SYMBOL:
                        case MASTER_CONNECT_RETRY_SYMBOL:
                        case MASTER_DELAY_SYMBOL:
                        case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                        case MASTER_HOST_SYMBOL:
                        case MASTER_LOG_FILE_SYMBOL:
                        case MASTER_LOG_POS_SYMBOL:
                        case MASTER_PASSWORD_SYMBOL:
                        case MASTER_PORT_SYMBOL:
                        case MASTER_RETRY_COUNT_SYMBOL:
                        case MASTER_SERVER_ID_SYMBOL:
                        case MASTER_SSL_CAPATH_SYMBOL:
                        case MASTER_SSL_CA_SYMBOL:
                        case MASTER_SSL_CERT_SYMBOL:
                        case MASTER_SSL_CIPHER_SYMBOL:
                        case MASTER_SSL_CRLPATH_SYMBOL:
                        case MASTER_SSL_CRL_SYMBOL:
                        case MASTER_SSL_KEY_SYMBOL:
                        case MASTER_SSL_SYMBOL:
                        case MASTER_SYMBOL:
                        case MASTER_USER_SYMBOL:
                        case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                        case MAX_QUERIES_PER_HOUR_SYMBOL:
                        case MAX_ROWS_SYMBOL:
                        case MAX_SIZE_SYMBOL:
                        case MAX_UPDATES_PER_HOUR_SYMBOL:
                        case MAX_USER_CONNECTIONS_SYMBOL:
                        case MEDIUM_SYMBOL:
                        case MEMORY_SYMBOL:
                        case MERGE_SYMBOL:
                        case MESSAGE_TEXT_SYMBOL:
                        case MICROSECOND_SYMBOL:
                        case MIGRATE_SYMBOL:
                        case MINUS_OPERATOR:
                        case MINUTE_MICROSECOND_SYMBOL:
                        case MINUTE_SECOND_SYMBOL:
                        case MINUTE_SYMBOL:
                        case MIN_ROWS_SYMBOL:
                        case MODE_SYMBOL:
                        case MODIFY_SYMBOL:
                        case MOD_OPERATOR:
                        case MOD_SYMBOL:
                        case MONTH_SYMBOL:
                        case MULTILINESTRING_SYMBOL:
                        case MULTIPOINT_SYMBOL:
                        case MULTIPOLYGON_SYMBOL:
                        case MULT_OPERATOR:
                        case MUTEX_SYMBOL:
                        case MYSQL_ERRNO_SYMBOL:
                        case NAMES_SYMBOL:
                        case NAME_SYMBOL:
                        case NATIONAL_SYMBOL:
                        case NATURAL_SYMBOL:
                        case NCHAR_SYMBOL:
                        case NCHAR_TEXT:
                        case NDBCLUSTER_SYMBOL:
                        case NEW_SYMBOL:
                        case NEXT_SYMBOL:
                        case NODEGROUP_SYMBOL:
                        case NONE_SYMBOL:
                        case NOT_EQUAL2_OPERATOR:
                        case NOT_EQUAL_OPERATOR:
                        case NOT_SYMBOL:
                        case NO_SYMBOL:
                        case NO_WAIT_SYMBOL:
                        case NULL_SAFE_EQUAL_OPERATOR:
                        case NUMBER_SYMBOL:
                        case NVARCHAR_SYMBOL:
                        case OFFSET_SYMBOL:
                        case OLD_PASSWORD_SYMBOL:
                        case ONE_SHOT_SYMBOL:
                        case ONE_SYMBOL:
                        case ON_SYMBOL:
                        case OPEN_SYMBOL:
                        case OPTIONS_SYMBOL:
                        case ORDER_SYMBOL:
                        case OR_SYMBOL:
                        case OWNER_SYMBOL:
                        case PACK_KEYS_SYMBOL:
                        case PAGE_SYMBOL:
                        case PARSER_SYMBOL:
                        case PARTIAL_SYMBOL:
                        case PARTITIONING_SYMBOL:
                        case PARTITIONS_SYMBOL:
                        case PARTITION_SYMBOL:
                        case PASSWORD_SYMBOL:
                        case PHASE_SYMBOL:
                        case PLUGINS_SYMBOL:
                        case PLUGIN_DIR_SYMBOL:
                        case PLUGIN_SYMBOL:
                        case PLUS_OPERATOR:
                        case POINT_SYMBOL:
                        case POLYGON_SYMBOL:
                        case PORT_SYMBOL:
                        case PREPARE_SYMBOL:
                        case PRESERVE_SYMBOL:
                        case PREV_SYMBOL:
                        case PRIVILEGES_SYMBOL:
                        case PROCEDURE_SYMBOL:
                        case PROCESSLIST_SYMBOL:
                        case PROCESS_SYMBOL:
                        case PROFILES_SYMBOL:
                        case PROFILE_SYMBOL:
                        case PROXY_SYMBOL:
                        case QUARTER_SYMBOL:
                        case QUERY_SYMBOL:
                        case QUICK_SYMBOL:
                        case READ_ONLY_SYMBOL:
                        case REBUILD_SYMBOL:
                        case RECOVER_SYMBOL:
                        case REDOFILE_SYMBOL:
                        case REDO_BUFFER_SIZE_SYMBOL:
                        case REDUNDANT_SYMBOL:
                        case REGEXP_SYMBOL:
                        case RELAYLOG_SYMBOL:
                        case RELAY_LOG_FILE_SYMBOL:
                        case RELAY_LOG_POS_SYMBOL:
                        case RELAY_SYMBOL:
                        case RELAY_THREAD_SYMBOL:
                        case RELOAD_SYMBOL:
                        case REMOVE_SYMBOL:
                        case RENAME_SYMBOL:
                        case REORGANIZE_SYMBOL:
                        case REPAIR_SYMBOL:
                        case REPEATABLE_SYMBOL:
                        case REPLICATION_SYMBOL:
                        case RESET_SYMBOL:
                        case RESTORE_SYMBOL:
                        case RESUME_SYMBOL:
                        case RETURNED_SQLSTATE_SYMBOL:
                        case RETURNS_SYMBOL:
                        case REVERSE_SYMBOL:
                        case RIGHT_SYMBOL:
                        case ROLLBACK_SYMBOL:
                        case ROLLUP_SYMBOL:
                        case ROUTINE_SYMBOL:
                        case ROWS_SYMBOL:
                        case ROW_COUNT_SYMBOL:
                        case ROW_FORMAT_SYMBOL:
                        case ROW_SYMBOL:
                        case RTREE_SYMBOL:
                        case SAVEPOINT_SYMBOL:
                        case SCHEDULE_SYMBOL:
                        case SCHEMA_NAME_SYMBOL:
                        case SECOND_MICROSECOND_SYMBOL:
                        case SECOND_SYMBOL:
                        case SECURITY_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        case SEPARATOR_SYMBOL:
                        case SERIALIZABLE_SYMBOL:
                        case SERIAL_SYMBOL:
                        case SERVER_SYMBOL:
                        case SESSION_SYMBOL:
                        case SET_SYMBOL:
                        case SHARE_SYMBOL:
                        case SHIFT_LEFT_OPERATOR:
                        case SHIFT_RIGHT_OPERATOR:
                        case SHUTDOWN_SYMBOL:
                        case SIGNED_SYMBOL:
                        case SIMPLE_SYMBOL:
                        case SINGLE_QUOTED_TEXT:
                        case SLAVE_SYMBOL:
                        case SLOW_SYMBOL:
                        case SNAPSHOT_SYMBOL:
                        case SOCKET_SYMBOL:
                        case SONAME_SYMBOL:
                        case SOUNDS_SYMBOL:
                        case SOURCE_SYMBOL:
                        case SQL_AFTER_GTIDS_SYMBOL:
                        case SQL_AFTER_MTS_GAPS_SYMBOL:
                        case SQL_BEFORE_GTIDS_SYMBOL:
                        case SQL_BUFFER_RESULT_SYMBOL:
                        case SQL_CACHE_SYMBOL:
                        case SQL_NO_CACHE_SYMBOL:
                        case SQL_THREAD_SYMBOL:
                        case STARTS_SYMBOL:
                        case START_SYMBOL:
                        case STATS_AUTO_RECALC_SYMBOL:
                        case STATS_PERSISTENT_SYMBOL:
                        case STATS_SAMPLE_PAGES_SYMBOL:
                        case STATUS_SYMBOL:
                        case STOP_SYMBOL:
                        case STORAGE_SYMBOL:
                        case STRAIGHT_JOIN_SYMBOL:
                        case STRING_SYMBOL:
                        case SUBCLASS_ORIGIN_SYMBOL:
                        case SUBDATE_SYMBOL:
                        case SUBJECT_SYMBOL:
                        case SUBPARTITIONS_SYMBOL:
                        case SUBPARTITION_SYMBOL:
                        case SUPER_SYMBOL:
                        case SUSPEND_SYMBOL:
                        case SWAPS_SYMBOL:
                        case SWITCHES_SYMBOL:
                        case TABLESPACE_SYMBOL:
                        case TABLES_SYMBOL:
                        case TABLE_CHECKSUM_SYMBOL:
                        case TABLE_NAME_SYMBOL:
                        case TEMPORARY_SYMBOL:
                        case TEMPTABLE_SYMBOL:
                        case TEXT_SYMBOL:
                        case THAN_SYMBOL:
                        case THEN_SYMBOL:
                        case TIMESTAMP_ADD_SYMBOL:
                        case TIMESTAMP_DIFF_SYMBOL:
                        case TIMESTAMP_SYMBOL:
                        case TIME_SYMBOL:
                        case TRANSACTION_SYMBOL:
                        case TRIGGERS_SYMBOL:
                        case TRUNCATE_SYMBOL:
                        case TYPES_SYMBOL:
                        case TYPE_SYMBOL:
                        case UDF_RETURNS_SYMBOL:
                        case UNCOMMITTED_SYMBOL:
                        case UNDEFINED_SYMBOL:
                        case UNDERSCORE_CHARSET:
                        case UNDOFILE_SYMBOL:
                        case UNDO_BUFFER_SIZE_SYMBOL:
                        case UNICODE_SYMBOL:
                        case UNINSTALL_SYMBOL:
                        case UNION_SYMBOL:
                        case UNKNOWN_SYMBOL:
                        case UNTIL_SYMBOL:
                        case UPGRADE_SYMBOL:
                        case USER_RESOURCES_SYMBOL:
                        case USER_SYMBOL:
                        case USE_FRM_SYMBOL:
                        case USING_SYMBOL:
                        case VALUE_SYMBOL:
                        case VARIABLES_SYMBOL:
                        case VIEW_SYMBOL:
                        case WAIT_SYMBOL:
                        case WARNINGS_SYMBOL:
                        case WEEK_SYMBOL:
                        case WEIGHT_STRING_SYMBOL:
                        case WHEN_SYMBOL:
                        case WHERE_SYMBOL:
                        case WITH_SYMBOL:
                        case WORK_SYMBOL:
                        case WRAPPER_SYMBOL:
                        case X509_SYMBOL:
                        case XA_SYMBOL:
                        case XML_SYMBOL:
                        case XOR_SYMBOL:
                        case YEAR_MONTH_SYMBOL:
                        case YEAR_SYMBOL:
                        case 733:
                        	{
                        		alt527=3;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 527;
                            EXCEPTION->state        = 15;


                            goto ruleprimaryEx;

                        }

                    }
                    else if ( (LA527_0 == ASCII_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case OPEN_PAR_SYMBOL:
                        	{
                        		{
                        		    int LA527_749 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=4;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 749;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case DOT_SYMBOL:
                        	{
                        		{
                        		    int LA527_750 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 750;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case EOF:
                        case ACTION_SYMBOL:
                        case ADDDATE_SYMBOL:
                        case AFTER_SYMBOL:
                        case AGAINST_SYMBOL:
                        case AGGREGATE_SYMBOL:
                        case ALGORITHM_SYMBOL:
                        case ANALYZE_SYMBOL:
                        case AND_SYMBOL:
                        case ANY_SYMBOL:
                        case ASCII_SYMBOL:
                        case ASC_SYMBOL:
                        case AS_SYMBOL:
                        case AT_SYMBOL:
                        case AUTHORS_SYMBOL:
                        case AUTOEXTEND_SIZE_SYMBOL:
                        case AUTO_INCREMENT_SYMBOL:
                        case AVG_ROW_LENGTH_SYMBOL:
                        case AVG_SYMBOL:
                        case BACKUP_SYMBOL:
                        case BACK_TICK_QUOTED_ID:
                        case BEGIN_SYMBOL:
                        case BETWEEN_SYMBOL:
                        case BINLOG_SYMBOL:
                        case BITWISE_AND_OPERATOR:
                        case BITWISE_OR_OPERATOR:
                        case BITWISE_XOR_OPERATOR:
                        case BIT_SYMBOL:
                        case BLOCK_SYMBOL:
                        case BOOLEAN_SYMBOL:
                        case BOOL_SYMBOL:
                        case BTREE_SYMBOL:
                        case BYTE_SYMBOL:
                        case CACHE_SYMBOL:
                        case CASCADED_SYMBOL:
                        case CATALOG_NAME_SYMBOL:
                        case CHAIN_SYMBOL:
                        case CHANGED_SYMBOL:
                        case CHARSET_SYMBOL:
                        case CHECKSUM_SYMBOL:
                        case CIPHER_SYMBOL:
                        case CLASS_ORIGIN_SYMBOL:
                        case CLIENT_SYMBOL:
                        case CLOSE_PAR_SYMBOL:
                        case CLOSE_SYMBOL:
                        case COALESCE_SYMBOL:
                        case CODE_SYMBOL:
                        case COLLATE_SYMBOL:
                        case COLLATION_SYMBOL:
                        case COLUMNS_SYMBOL:
                        case COLUMN_FORMAT_SYMBOL:
                        case COLUMN_NAME_SYMBOL:
                        case COMMA_SYMBOL:
                        case COMMENT_SYMBOL:
                        case COMMITTED_SYMBOL:
                        case COMMIT_SYMBOL:
                        case COMPACT_SYMBOL:
                        case COMPLETION_SYMBOL:
                        case COMPRESSED_SYMBOL:
                        case CONCAT_PIPES_SYMBOL:
                        case CONCURRENT_SYMBOL:
                        case CONNECTION_SYMBOL:
                        case CONSISTENT_SYMBOL:
                        case CONSTRAINT_CATALOG_SYMBOL:
                        case CONSTRAINT_NAME_SYMBOL:
                        case CONSTRAINT_SCHEMA_SYMBOL:
                        case CONTAINS_SYMBOL:
                        case CONTEXT_SYMBOL:
                        case CONTRIBUTORS_SYMBOL:
                        case CPU_SYMBOL:
                        case CROSS_SYMBOL:
                        case CUBE_SYMBOL:
                        case CURRENT_SYMBOL:
                        case CURSOR_NAME_SYMBOL:
                        case DATAFILE_SYMBOL:
                        case DATA_SYMBOL:
                        case DATETIME_SYMBOL:
                        case DATE_SYMBOL:
                        case DAY_HOUR_SYMBOL:
                        case DAY_MICROSECOND_SYMBOL:
                        case DAY_MINUTE_SYMBOL:
                        case DAY_SECOND_SYMBOL:
                        case DAY_SYMBOL:
                        case DEALLOCATE_SYMBOL:
                        case DEFAULT_AUTH_SYMBOL:
                        case DEFINER_SYMBOL:
                        case DELAY_KEY_WRITE_SYMBOL:
                        case DESC_SYMBOL:
                        case DES_KEY_FILE_SYMBOL:
                        case DIAGNOSTICS_SYMBOL:
                        case DIRECTORY_SYMBOL:
                        case DISABLE_SYMBOL:
                        case DISCARD_SYMBOL:
                        case DISK_SYMBOL:
                        case DIV_OPERATOR:
                        case DIV_SYMBOL:
                        case DOUBLE_QUOTED_TEXT:
                        case DO_SYMBOL:
                        case DUMPFILE_SYMBOL:
                        case DUPLICATE_SYMBOL:
                        case DYNAMIC_SYMBOL:
                        case ELSE_SYMBOL:
                        case ENABLE_SYMBOL:
                        case ENDS_SYMBOL:
                        case END_SYMBOL:
                        case ENGINES_SYMBOL:
                        case ENGINE_SYMBOL:
                        case ENUM_SYMBOL:
                        case EQUAL_OPERATOR:
                        case ERRORS_SYMBOL:
                        case ERROR_SYMBOL:
                        case ESCAPE_SYMBOL:
                        case EVENTS_SYMBOL:
                        case EVENT_SYMBOL:
                        case EVERY_SYMBOL:
                        case EXECUTE_SYMBOL:
                        case EXPANSION_SYMBOL:
                        case EXPORT_SYMBOL:
                        case EXTENDED_SYMBOL:
                        case EXTENT_SIZE_SYMBOL:
                        case FAST_SYMBOL:
                        case FAULTS_SYMBOL:
                        case FILE_SYMBOL:
                        case FIRST_SYMBOL:
                        case FIXED_SYMBOL:
                        case FLUSH_SYMBOL:
                        case FORMAT_SYMBOL:
                        case FOR_SYMBOL:
                        case FOUND_SYMBOL:
                        case FRAC_SECOND_SYMBOL:
                        case FROM_SYMBOL:
                        case FULL_SYMBOL:
                        case FUNCTION_SYMBOL:
                        case GENERAL_SYMBOL:
                        case GEOMETRYCOLLECTION_SYMBOL:
                        case GEOMETRY_SYMBOL:
                        case GET_FORMAT_SYMBOL:
                        case GLOBAL_SYMBOL:
                        case GRANTS_SYMBOL:
                        case GREATER_OR_EQUAL_OPERATOR:
                        case GREATER_THAN_OPERATOR:
                        case GROUP_SYMBOL:
                        case HANDLER_SYMBOL:
                        case HASH_SYMBOL:
                        case HAVING_SYMBOL:
                        case HELP_SYMBOL:
                        case HOSTS_SYMBOL:
                        case HOST_SYMBOL:
                        case HOUR_MICROSECOND_SYMBOL:
                        case HOUR_MINUTE_SYMBOL:
                        case HOUR_SECOND_SYMBOL:
                        case HOUR_SYMBOL:
                        case IDENTIFIED_SYMBOL:
                        case IDENTIFIER:
                        case IGNORE_SERVER_IDS_SYMBOL:
                        case IMPORT_SYMBOL:
                        case INDEXES_SYMBOL:
                        case INITIAL_SIZE_SYMBOL:
                        case INNER_SYMBOL:
                        case INNODB_SYMBOL:
                        case INSERT_METHOD_SYMBOL:
                        case INSTALL_SYMBOL:
                        case INTO_SYMBOL:
                        case INVOKER_SYMBOL:
                        case IN_SYMBOL:
                        case IO_SYMBOL:
                        case IPC_SYMBOL:
                        case ISOLATION_SYMBOL:
                        case ISSUER_SYMBOL:
                        case IS_SYMBOL:
                        case JOIN_SYMBOL:
                        case KEY_BLOCK_SIZE_SYMBOL:
                        case LANGUAGE_SYMBOL:
                        case LAST_SYMBOL:
                        case LEAVES_SYMBOL:
                        case LEFT_SYMBOL:
                        case LESS_OR_EQUAL_OPERATOR:
                        case LESS_SYMBOL:
                        case LESS_THAN_OPERATOR:
                        case LEVEL_SYMBOL:
                        case LIKE_SYMBOL:
                        case LIMIT_SYMBOL:
                        case LINESTRING_SYMBOL:
                        case LIST_SYMBOL:
                        case LOCAL_SYMBOL:
                        case LOCKS_SYMBOL:
                        case LOCK_SYMBOL:
                        case LOGFILE_SYMBOL:
                        case LOGICAL_AND_OPERATOR:
                        case LOGICAL_OR_OPERATOR:
                        case LOGS_SYMBOL:
                        case MASTER_AUTO_POSITION_SYMBOL:
                        case MASTER_CONNECT_RETRY_SYMBOL:
                        case MASTER_DELAY_SYMBOL:
                        case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                        case MASTER_HOST_SYMBOL:
                        case MASTER_LOG_FILE_SYMBOL:
                        case MASTER_LOG_POS_SYMBOL:
                        case MASTER_PASSWORD_SYMBOL:
                        case MASTER_PORT_SYMBOL:
                        case MASTER_RETRY_COUNT_SYMBOL:
                        case MASTER_SERVER_ID_SYMBOL:
                        case MASTER_SSL_CAPATH_SYMBOL:
                        case MASTER_SSL_CA_SYMBOL:
                        case MASTER_SSL_CERT_SYMBOL:
                        case MASTER_SSL_CIPHER_SYMBOL:
                        case MASTER_SSL_CRLPATH_SYMBOL:
                        case MASTER_SSL_CRL_SYMBOL:
                        case MASTER_SSL_KEY_SYMBOL:
                        case MASTER_SSL_SYMBOL:
                        case MASTER_SYMBOL:
                        case MASTER_USER_SYMBOL:
                        case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                        case MAX_QUERIES_PER_HOUR_SYMBOL:
                        case MAX_ROWS_SYMBOL:
                        case MAX_SIZE_SYMBOL:
                        case MAX_UPDATES_PER_HOUR_SYMBOL:
                        case MAX_USER_CONNECTIONS_SYMBOL:
                        case MEDIUM_SYMBOL:
                        case MEMORY_SYMBOL:
                        case MERGE_SYMBOL:
                        case MESSAGE_TEXT_SYMBOL:
                        case MICROSECOND_SYMBOL:
                        case MIGRATE_SYMBOL:
                        case MINUS_OPERATOR:
                        case MINUTE_MICROSECOND_SYMBOL:
                        case MINUTE_SECOND_SYMBOL:
                        case MINUTE_SYMBOL:
                        case MIN_ROWS_SYMBOL:
                        case MODE_SYMBOL:
                        case MODIFY_SYMBOL:
                        case MOD_OPERATOR:
                        case MOD_SYMBOL:
                        case MONTH_SYMBOL:
                        case MULTILINESTRING_SYMBOL:
                        case MULTIPOINT_SYMBOL:
                        case MULTIPOLYGON_SYMBOL:
                        case MULT_OPERATOR:
                        case MUTEX_SYMBOL:
                        case MYSQL_ERRNO_SYMBOL:
                        case NAMES_SYMBOL:
                        case NAME_SYMBOL:
                        case NATIONAL_SYMBOL:
                        case NATURAL_SYMBOL:
                        case NCHAR_SYMBOL:
                        case NCHAR_TEXT:
                        case NDBCLUSTER_SYMBOL:
                        case NEW_SYMBOL:
                        case NEXT_SYMBOL:
                        case NODEGROUP_SYMBOL:
                        case NONE_SYMBOL:
                        case NOT_EQUAL2_OPERATOR:
                        case NOT_EQUAL_OPERATOR:
                        case NOT_SYMBOL:
                        case NO_SYMBOL:
                        case NO_WAIT_SYMBOL:
                        case NULL_SAFE_EQUAL_OPERATOR:
                        case NUMBER_SYMBOL:
                        case NVARCHAR_SYMBOL:
                        case OFFSET_SYMBOL:
                        case OLD_PASSWORD_SYMBOL:
                        case ONE_SHOT_SYMBOL:
                        case ONE_SYMBOL:
                        case ON_SYMBOL:
                        case OPEN_SYMBOL:
                        case OPTIONS_SYMBOL:
                        case ORDER_SYMBOL:
                        case OR_SYMBOL:
                        case OWNER_SYMBOL:
                        case PACK_KEYS_SYMBOL:
                        case PAGE_SYMBOL:
                        case PARSER_SYMBOL:
                        case PARTIAL_SYMBOL:
                        case PARTITIONING_SYMBOL:
                        case PARTITIONS_SYMBOL:
                        case PARTITION_SYMBOL:
                        case PASSWORD_SYMBOL:
                        case PHASE_SYMBOL:
                        case PLUGINS_SYMBOL:
                        case PLUGIN_DIR_SYMBOL:
                        case PLUGIN_SYMBOL:
                        case PLUS_OPERATOR:
                        case POINT_SYMBOL:
                        case POLYGON_SYMBOL:
                        case PORT_SYMBOL:
                        case PREPARE_SYMBOL:
                        case PRESERVE_SYMBOL:
                        case PREV_SYMBOL:
                        case PRIVILEGES_SYMBOL:
                        case PROCEDURE_SYMBOL:
                        case PROCESSLIST_SYMBOL:
                        case PROCESS_SYMBOL:
                        case PROFILES_SYMBOL:
                        case PROFILE_SYMBOL:
                        case PROXY_SYMBOL:
                        case QUARTER_SYMBOL:
                        case QUERY_SYMBOL:
                        case QUICK_SYMBOL:
                        case READ_ONLY_SYMBOL:
                        case REBUILD_SYMBOL:
                        case RECOVER_SYMBOL:
                        case REDOFILE_SYMBOL:
                        case REDO_BUFFER_SIZE_SYMBOL:
                        case REDUNDANT_SYMBOL:
                        case REGEXP_SYMBOL:
                        case RELAYLOG_SYMBOL:
                        case RELAY_LOG_FILE_SYMBOL:
                        case RELAY_LOG_POS_SYMBOL:
                        case RELAY_SYMBOL:
                        case RELAY_THREAD_SYMBOL:
                        case RELOAD_SYMBOL:
                        case REMOVE_SYMBOL:
                        case RENAME_SYMBOL:
                        case REORGANIZE_SYMBOL:
                        case REPAIR_SYMBOL:
                        case REPEATABLE_SYMBOL:
                        case REPLICATION_SYMBOL:
                        case RESET_SYMBOL:
                        case RESTORE_SYMBOL:
                        case RESUME_SYMBOL:
                        case RETURNED_SQLSTATE_SYMBOL:
                        case RETURNS_SYMBOL:
                        case REVERSE_SYMBOL:
                        case RIGHT_SYMBOL:
                        case ROLLBACK_SYMBOL:
                        case ROLLUP_SYMBOL:
                        case ROUTINE_SYMBOL:
                        case ROWS_SYMBOL:
                        case ROW_COUNT_SYMBOL:
                        case ROW_FORMAT_SYMBOL:
                        case ROW_SYMBOL:
                        case RTREE_SYMBOL:
                        case SAVEPOINT_SYMBOL:
                        case SCHEDULE_SYMBOL:
                        case SCHEMA_NAME_SYMBOL:
                        case SECOND_MICROSECOND_SYMBOL:
                        case SECOND_SYMBOL:
                        case SECURITY_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        case SEPARATOR_SYMBOL:
                        case SERIALIZABLE_SYMBOL:
                        case SERIAL_SYMBOL:
                        case SERVER_SYMBOL:
                        case SESSION_SYMBOL:
                        case SET_SYMBOL:
                        case SHARE_SYMBOL:
                        case SHIFT_LEFT_OPERATOR:
                        case SHIFT_RIGHT_OPERATOR:
                        case SHUTDOWN_SYMBOL:
                        case SIGNED_SYMBOL:
                        case SIMPLE_SYMBOL:
                        case SINGLE_QUOTED_TEXT:
                        case SLAVE_SYMBOL:
                        case SLOW_SYMBOL:
                        case SNAPSHOT_SYMBOL:
                        case SOCKET_SYMBOL:
                        case SONAME_SYMBOL:
                        case SOUNDS_SYMBOL:
                        case SOURCE_SYMBOL:
                        case SQL_AFTER_GTIDS_SYMBOL:
                        case SQL_AFTER_MTS_GAPS_SYMBOL:
                        case SQL_BEFORE_GTIDS_SYMBOL:
                        case SQL_BUFFER_RESULT_SYMBOL:
                        case SQL_CACHE_SYMBOL:
                        case SQL_NO_CACHE_SYMBOL:
                        case SQL_THREAD_SYMBOL:
                        case STARTS_SYMBOL:
                        case START_SYMBOL:
                        case STATS_AUTO_RECALC_SYMBOL:
                        case STATS_PERSISTENT_SYMBOL:
                        case STATS_SAMPLE_PAGES_SYMBOL:
                        case STATUS_SYMBOL:
                        case STOP_SYMBOL:
                        case STORAGE_SYMBOL:
                        case STRAIGHT_JOIN_SYMBOL:
                        case STRING_SYMBOL:
                        case SUBCLASS_ORIGIN_SYMBOL:
                        case SUBDATE_SYMBOL:
                        case SUBJECT_SYMBOL:
                        case SUBPARTITIONS_SYMBOL:
                        case SUBPARTITION_SYMBOL:
                        case SUPER_SYMBOL:
                        case SUSPEND_SYMBOL:
                        case SWAPS_SYMBOL:
                        case SWITCHES_SYMBOL:
                        case TABLESPACE_SYMBOL:
                        case TABLES_SYMBOL:
                        case TABLE_CHECKSUM_SYMBOL:
                        case TABLE_NAME_SYMBOL:
                        case TEMPORARY_SYMBOL:
                        case TEMPTABLE_SYMBOL:
                        case TEXT_SYMBOL:
                        case THAN_SYMBOL:
                        case THEN_SYMBOL:
                        case TIMESTAMP_ADD_SYMBOL:
                        case TIMESTAMP_DIFF_SYMBOL:
                        case TIMESTAMP_SYMBOL:
                        case TIME_SYMBOL:
                        case TRANSACTION_SYMBOL:
                        case TRIGGERS_SYMBOL:
                        case TRUNCATE_SYMBOL:
                        case TYPES_SYMBOL:
                        case TYPE_SYMBOL:
                        case UDF_RETURNS_SYMBOL:
                        case UNCOMMITTED_SYMBOL:
                        case UNDEFINED_SYMBOL:
                        case UNDERSCORE_CHARSET:
                        case UNDOFILE_SYMBOL:
                        case UNDO_BUFFER_SIZE_SYMBOL:
                        case UNICODE_SYMBOL:
                        case UNINSTALL_SYMBOL:
                        case UNION_SYMBOL:
                        case UNKNOWN_SYMBOL:
                        case UNTIL_SYMBOL:
                        case UPGRADE_SYMBOL:
                        case USER_RESOURCES_SYMBOL:
                        case USER_SYMBOL:
                        case USE_FRM_SYMBOL:
                        case USING_SYMBOL:
                        case VALUE_SYMBOL:
                        case VARIABLES_SYMBOL:
                        case VIEW_SYMBOL:
                        case WAIT_SYMBOL:
                        case WARNINGS_SYMBOL:
                        case WEEK_SYMBOL:
                        case WEIGHT_STRING_SYMBOL:
                        case WHEN_SYMBOL:
                        case WHERE_SYMBOL:
                        case WITH_SYMBOL:
                        case WORK_SYMBOL:
                        case WRAPPER_SYMBOL:
                        case X509_SYMBOL:
                        case XA_SYMBOL:
                        case XML_SYMBOL:
                        case XOR_SYMBOL:
                        case YEAR_MONTH_SYMBOL:
                        case YEAR_SYMBOL:
                        case 733:
                        	{
                        		alt527=3;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 527;
                            EXCEPTION->state        = 16;


                            goto ruleprimaryEx;

                        }

                    }
                    else if ( (LA527_0 == DOT_SYMBOL))
                    {
                        alt527=3;
                    }
                    else if ( (((LA527_0 >= BIT_AND_SYMBOL) && (LA527_0 <= BIT_OR_SYMBOL)) || LA527_0 == BIT_XOR_SYMBOL || LA527_0 == CHAR_SYMBOL || LA527_0 == COUNT_SYMBOL || LA527_0 == CURDATE_SYMBOL || LA527_0 == CURRENT_USER_SYMBOL || LA527_0 == CURTIME_SYMBOL || LA527_0 == DATABASE_SYMBOL || LA527_0 == DATE_ADD_SYMBOL || LA527_0 == DATE_SUB_SYMBOL || LA527_0 == EXTRACT_SYMBOL || LA527_0 == GROUP_CONCAT_SYMBOL || LA527_0 == IF_SYMBOL || LA527_0 == INSERT_SYMBOL || LA527_0 == LEFT_SYMBOL || LA527_0 == MAX_SYMBOL || LA527_0 == MIN_SYMBOL || LA527_0 == MOD_SYMBOL || LA527_0 == NOW_SYMBOL || LA527_0 == POSITION_SYMBOL || ((LA527_0 >= REPEAT_SYMBOL) && (LA527_0 <= REPLACE_SYMBOL)) || LA527_0 == RIGHT_SYMBOL || LA527_0 == STDDEV_SAMP_SYMBOL || LA527_0 == STD_SYMBOL || LA527_0 == SUBSTRING_SYMBOL || LA527_0 == SUM_SYMBOL || LA527_0 == SYSDATE_SYMBOL || LA527_0 == TRIM_SYMBOL || ((LA527_0 >= UTC_DATE_SYMBOL) && (LA527_0 <= VALUES_SYMBOL)) || LA527_0 == VARIANCE_SYMBOL || LA527_0 == VAR_SAMP_SYMBOL))
                    {
                        alt527=4;
                    }
                    else if ( (LA527_0 == HOUR_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case OPEN_PAR_SYMBOL:
                        	{
                        		{
                        		    int LA527_842 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=4;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 842;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case DOT_SYMBOL:
                        	{
                        		{
                        		    int LA527_843 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 843;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case EOF:
                        case ACTION_SYMBOL:
                        case ADDDATE_SYMBOL:
                        case AFTER_SYMBOL:
                        case AGAINST_SYMBOL:
                        case AGGREGATE_SYMBOL:
                        case ALGORITHM_SYMBOL:
                        case ANALYZE_SYMBOL:
                        case AND_SYMBOL:
                        case ANY_SYMBOL:
                        case ASCII_SYMBOL:
                        case ASC_SYMBOL:
                        case AS_SYMBOL:
                        case AT_SYMBOL:
                        case AUTHORS_SYMBOL:
                        case AUTOEXTEND_SIZE_SYMBOL:
                        case AUTO_INCREMENT_SYMBOL:
                        case AVG_ROW_LENGTH_SYMBOL:
                        case AVG_SYMBOL:
                        case BACKUP_SYMBOL:
                        case BACK_TICK_QUOTED_ID:
                        case BEGIN_SYMBOL:
                        case BETWEEN_SYMBOL:
                        case BINLOG_SYMBOL:
                        case BITWISE_AND_OPERATOR:
                        case BITWISE_OR_OPERATOR:
                        case BITWISE_XOR_OPERATOR:
                        case BIT_SYMBOL:
                        case BLOCK_SYMBOL:
                        case BOOLEAN_SYMBOL:
                        case BOOL_SYMBOL:
                        case BTREE_SYMBOL:
                        case BYTE_SYMBOL:
                        case CACHE_SYMBOL:
                        case CASCADED_SYMBOL:
                        case CATALOG_NAME_SYMBOL:
                        case CHAIN_SYMBOL:
                        case CHANGED_SYMBOL:
                        case CHARSET_SYMBOL:
                        case CHECKSUM_SYMBOL:
                        case CIPHER_SYMBOL:
                        case CLASS_ORIGIN_SYMBOL:
                        case CLIENT_SYMBOL:
                        case CLOSE_PAR_SYMBOL:
                        case CLOSE_SYMBOL:
                        case COALESCE_SYMBOL:
                        case CODE_SYMBOL:
                        case COLLATE_SYMBOL:
                        case COLLATION_SYMBOL:
                        case COLUMNS_SYMBOL:
                        case COLUMN_FORMAT_SYMBOL:
                        case COLUMN_NAME_SYMBOL:
                        case COMMA_SYMBOL:
                        case COMMENT_SYMBOL:
                        case COMMITTED_SYMBOL:
                        case COMMIT_SYMBOL:
                        case COMPACT_SYMBOL:
                        case COMPLETION_SYMBOL:
                        case COMPRESSED_SYMBOL:
                        case CONCAT_PIPES_SYMBOL:
                        case CONCURRENT_SYMBOL:
                        case CONNECTION_SYMBOL:
                        case CONSISTENT_SYMBOL:
                        case CONSTRAINT_CATALOG_SYMBOL:
                        case CONSTRAINT_NAME_SYMBOL:
                        case CONSTRAINT_SCHEMA_SYMBOL:
                        case CONTAINS_SYMBOL:
                        case CONTEXT_SYMBOL:
                        case CONTRIBUTORS_SYMBOL:
                        case CPU_SYMBOL:
                        case CROSS_SYMBOL:
                        case CUBE_SYMBOL:
                        case CURRENT_SYMBOL:
                        case CURSOR_NAME_SYMBOL:
                        case DATAFILE_SYMBOL:
                        case DATA_SYMBOL:
                        case DATETIME_SYMBOL:
                        case DATE_SYMBOL:
                        case DAY_HOUR_SYMBOL:
                        case DAY_MICROSECOND_SYMBOL:
                        case DAY_MINUTE_SYMBOL:
                        case DAY_SECOND_SYMBOL:
                        case DAY_SYMBOL:
                        case DEALLOCATE_SYMBOL:
                        case DEFAULT_AUTH_SYMBOL:
                        case DEFINER_SYMBOL:
                        case DELAY_KEY_WRITE_SYMBOL:
                        case DESC_SYMBOL:
                        case DES_KEY_FILE_SYMBOL:
                        case DIAGNOSTICS_SYMBOL:
                        case DIRECTORY_SYMBOL:
                        case DISABLE_SYMBOL:
                        case DISCARD_SYMBOL:
                        case DISK_SYMBOL:
                        case DIV_OPERATOR:
                        case DIV_SYMBOL:
                        case DOUBLE_QUOTED_TEXT:
                        case DO_SYMBOL:
                        case DUMPFILE_SYMBOL:
                        case DUPLICATE_SYMBOL:
                        case DYNAMIC_SYMBOL:
                        case ELSE_SYMBOL:
                        case ENABLE_SYMBOL:
                        case ENDS_SYMBOL:
                        case END_SYMBOL:
                        case ENGINES_SYMBOL:
                        case ENGINE_SYMBOL:
                        case ENUM_SYMBOL:
                        case EQUAL_OPERATOR:
                        case ERRORS_SYMBOL:
                        case ERROR_SYMBOL:
                        case ESCAPE_SYMBOL:
                        case EVENTS_SYMBOL:
                        case EVENT_SYMBOL:
                        case EVERY_SYMBOL:
                        case EXECUTE_SYMBOL:
                        case EXPANSION_SYMBOL:
                        case EXPORT_SYMBOL:
                        case EXTENDED_SYMBOL:
                        case EXTENT_SIZE_SYMBOL:
                        case FAST_SYMBOL:
                        case FAULTS_SYMBOL:
                        case FILE_SYMBOL:
                        case FIRST_SYMBOL:
                        case FIXED_SYMBOL:
                        case FLUSH_SYMBOL:
                        case FORMAT_SYMBOL:
                        case FOR_SYMBOL:
                        case FOUND_SYMBOL:
                        case FRAC_SECOND_SYMBOL:
                        case FROM_SYMBOL:
                        case FULL_SYMBOL:
                        case FUNCTION_SYMBOL:
                        case GENERAL_SYMBOL:
                        case GEOMETRYCOLLECTION_SYMBOL:
                        case GEOMETRY_SYMBOL:
                        case GET_FORMAT_SYMBOL:
                        case GLOBAL_SYMBOL:
                        case GRANTS_SYMBOL:
                        case GREATER_OR_EQUAL_OPERATOR:
                        case GREATER_THAN_OPERATOR:
                        case GROUP_SYMBOL:
                        case HANDLER_SYMBOL:
                        case HASH_SYMBOL:
                        case HAVING_SYMBOL:
                        case HELP_SYMBOL:
                        case HOSTS_SYMBOL:
                        case HOST_SYMBOL:
                        case HOUR_MICROSECOND_SYMBOL:
                        case HOUR_MINUTE_SYMBOL:
                        case HOUR_SECOND_SYMBOL:
                        case HOUR_SYMBOL:
                        case IDENTIFIED_SYMBOL:
                        case IDENTIFIER:
                        case IGNORE_SERVER_IDS_SYMBOL:
                        case IMPORT_SYMBOL:
                        case INDEXES_SYMBOL:
                        case INITIAL_SIZE_SYMBOL:
                        case INNER_SYMBOL:
                        case INNODB_SYMBOL:
                        case INSERT_METHOD_SYMBOL:
                        case INSTALL_SYMBOL:
                        case INTO_SYMBOL:
                        case INVOKER_SYMBOL:
                        case IN_SYMBOL:
                        case IO_SYMBOL:
                        case IPC_SYMBOL:
                        case ISOLATION_SYMBOL:
                        case ISSUER_SYMBOL:
                        case IS_SYMBOL:
                        case JOIN_SYMBOL:
                        case KEY_BLOCK_SIZE_SYMBOL:
                        case LANGUAGE_SYMBOL:
                        case LAST_SYMBOL:
                        case LEAVES_SYMBOL:
                        case LEFT_SYMBOL:
                        case LESS_OR_EQUAL_OPERATOR:
                        case LESS_SYMBOL:
                        case LESS_THAN_OPERATOR:
                        case LEVEL_SYMBOL:
                        case LIKE_SYMBOL:
                        case LIMIT_SYMBOL:
                        case LINESTRING_SYMBOL:
                        case LIST_SYMBOL:
                        case LOCAL_SYMBOL:
                        case LOCKS_SYMBOL:
                        case LOCK_SYMBOL:
                        case LOGFILE_SYMBOL:
                        case LOGICAL_AND_OPERATOR:
                        case LOGICAL_OR_OPERATOR:
                        case LOGS_SYMBOL:
                        case MASTER_AUTO_POSITION_SYMBOL:
                        case MASTER_CONNECT_RETRY_SYMBOL:
                        case MASTER_DELAY_SYMBOL:
                        case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                        case MASTER_HOST_SYMBOL:
                        case MASTER_LOG_FILE_SYMBOL:
                        case MASTER_LOG_POS_SYMBOL:
                        case MASTER_PASSWORD_SYMBOL:
                        case MASTER_PORT_SYMBOL:
                        case MASTER_RETRY_COUNT_SYMBOL:
                        case MASTER_SERVER_ID_SYMBOL:
                        case MASTER_SSL_CAPATH_SYMBOL:
                        case MASTER_SSL_CA_SYMBOL:
                        case MASTER_SSL_CERT_SYMBOL:
                        case MASTER_SSL_CIPHER_SYMBOL:
                        case MASTER_SSL_CRLPATH_SYMBOL:
                        case MASTER_SSL_CRL_SYMBOL:
                        case MASTER_SSL_KEY_SYMBOL:
                        case MASTER_SSL_SYMBOL:
                        case MASTER_SYMBOL:
                        case MASTER_USER_SYMBOL:
                        case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                        case MAX_QUERIES_PER_HOUR_SYMBOL:
                        case MAX_ROWS_SYMBOL:
                        case MAX_SIZE_SYMBOL:
                        case MAX_UPDATES_PER_HOUR_SYMBOL:
                        case MAX_USER_CONNECTIONS_SYMBOL:
                        case MEDIUM_SYMBOL:
                        case MEMORY_SYMBOL:
                        case MERGE_SYMBOL:
                        case MESSAGE_TEXT_SYMBOL:
                        case MICROSECOND_SYMBOL:
                        case MIGRATE_SYMBOL:
                        case MINUS_OPERATOR:
                        case MINUTE_MICROSECOND_SYMBOL:
                        case MINUTE_SECOND_SYMBOL:
                        case MINUTE_SYMBOL:
                        case MIN_ROWS_SYMBOL:
                        case MODE_SYMBOL:
                        case MODIFY_SYMBOL:
                        case MOD_OPERATOR:
                        case MOD_SYMBOL:
                        case MONTH_SYMBOL:
                        case MULTILINESTRING_SYMBOL:
                        case MULTIPOINT_SYMBOL:
                        case MULTIPOLYGON_SYMBOL:
                        case MULT_OPERATOR:
                        case MUTEX_SYMBOL:
                        case MYSQL_ERRNO_SYMBOL:
                        case NAMES_SYMBOL:
                        case NAME_SYMBOL:
                        case NATIONAL_SYMBOL:
                        case NATURAL_SYMBOL:
                        case NCHAR_SYMBOL:
                        case NCHAR_TEXT:
                        case NDBCLUSTER_SYMBOL:
                        case NEW_SYMBOL:
                        case NEXT_SYMBOL:
                        case NODEGROUP_SYMBOL:
                        case NONE_SYMBOL:
                        case NOT_EQUAL2_OPERATOR:
                        case NOT_EQUAL_OPERATOR:
                        case NOT_SYMBOL:
                        case NO_SYMBOL:
                        case NO_WAIT_SYMBOL:
                        case NULL_SAFE_EQUAL_OPERATOR:
                        case NUMBER_SYMBOL:
                        case NVARCHAR_SYMBOL:
                        case OFFSET_SYMBOL:
                        case OLD_PASSWORD_SYMBOL:
                        case ONE_SHOT_SYMBOL:
                        case ONE_SYMBOL:
                        case ON_SYMBOL:
                        case OPEN_SYMBOL:
                        case OPTIONS_SYMBOL:
                        case ORDER_SYMBOL:
                        case OR_SYMBOL:
                        case OWNER_SYMBOL:
                        case PACK_KEYS_SYMBOL:
                        case PAGE_SYMBOL:
                        case PARSER_SYMBOL:
                        case PARTIAL_SYMBOL:
                        case PARTITIONING_SYMBOL:
                        case PARTITIONS_SYMBOL:
                        case PARTITION_SYMBOL:
                        case PASSWORD_SYMBOL:
                        case PHASE_SYMBOL:
                        case PLUGINS_SYMBOL:
                        case PLUGIN_DIR_SYMBOL:
                        case PLUGIN_SYMBOL:
                        case PLUS_OPERATOR:
                        case POINT_SYMBOL:
                        case POLYGON_SYMBOL:
                        case PORT_SYMBOL:
                        case PREPARE_SYMBOL:
                        case PRESERVE_SYMBOL:
                        case PREV_SYMBOL:
                        case PRIVILEGES_SYMBOL:
                        case PROCEDURE_SYMBOL:
                        case PROCESSLIST_SYMBOL:
                        case PROCESS_SYMBOL:
                        case PROFILES_SYMBOL:
                        case PROFILE_SYMBOL:
                        case PROXY_SYMBOL:
                        case QUARTER_SYMBOL:
                        case QUERY_SYMBOL:
                        case QUICK_SYMBOL:
                        case READ_ONLY_SYMBOL:
                        case REBUILD_SYMBOL:
                        case RECOVER_SYMBOL:
                        case REDOFILE_SYMBOL:
                        case REDO_BUFFER_SIZE_SYMBOL:
                        case REDUNDANT_SYMBOL:
                        case REGEXP_SYMBOL:
                        case RELAYLOG_SYMBOL:
                        case RELAY_LOG_FILE_SYMBOL:
                        case RELAY_LOG_POS_SYMBOL:
                        case RELAY_SYMBOL:
                        case RELAY_THREAD_SYMBOL:
                        case RELOAD_SYMBOL:
                        case REMOVE_SYMBOL:
                        case RENAME_SYMBOL:
                        case REORGANIZE_SYMBOL:
                        case REPAIR_SYMBOL:
                        case REPEATABLE_SYMBOL:
                        case REPLICATION_SYMBOL:
                        case RESET_SYMBOL:
                        case RESTORE_SYMBOL:
                        case RESUME_SYMBOL:
                        case RETURNED_SQLSTATE_SYMBOL:
                        case RETURNS_SYMBOL:
                        case REVERSE_SYMBOL:
                        case RIGHT_SYMBOL:
                        case ROLLBACK_SYMBOL:
                        case ROLLUP_SYMBOL:
                        case ROUTINE_SYMBOL:
                        case ROWS_SYMBOL:
                        case ROW_COUNT_SYMBOL:
                        case ROW_FORMAT_SYMBOL:
                        case ROW_SYMBOL:
                        case RTREE_SYMBOL:
                        case SAVEPOINT_SYMBOL:
                        case SCHEDULE_SYMBOL:
                        case SCHEMA_NAME_SYMBOL:
                        case SECOND_MICROSECOND_SYMBOL:
                        case SECOND_SYMBOL:
                        case SECURITY_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        case SEPARATOR_SYMBOL:
                        case SERIALIZABLE_SYMBOL:
                        case SERIAL_SYMBOL:
                        case SERVER_SYMBOL:
                        case SESSION_SYMBOL:
                        case SET_SYMBOL:
                        case SHARE_SYMBOL:
                        case SHIFT_LEFT_OPERATOR:
                        case SHIFT_RIGHT_OPERATOR:
                        case SHUTDOWN_SYMBOL:
                        case SIGNED_SYMBOL:
                        case SIMPLE_SYMBOL:
                        case SINGLE_QUOTED_TEXT:
                        case SLAVE_SYMBOL:
                        case SLOW_SYMBOL:
                        case SNAPSHOT_SYMBOL:
                        case SOCKET_SYMBOL:
                        case SONAME_SYMBOL:
                        case SOUNDS_SYMBOL:
                        case SOURCE_SYMBOL:
                        case SQL_AFTER_GTIDS_SYMBOL:
                        case SQL_AFTER_MTS_GAPS_SYMBOL:
                        case SQL_BEFORE_GTIDS_SYMBOL:
                        case SQL_BUFFER_RESULT_SYMBOL:
                        case SQL_CACHE_SYMBOL:
                        case SQL_NO_CACHE_SYMBOL:
                        case SQL_THREAD_SYMBOL:
                        case STARTS_SYMBOL:
                        case START_SYMBOL:
                        case STATS_AUTO_RECALC_SYMBOL:
                        case STATS_PERSISTENT_SYMBOL:
                        case STATS_SAMPLE_PAGES_SYMBOL:
                        case STATUS_SYMBOL:
                        case STOP_SYMBOL:
                        case STORAGE_SYMBOL:
                        case STRAIGHT_JOIN_SYMBOL:
                        case STRING_SYMBOL:
                        case SUBCLASS_ORIGIN_SYMBOL:
                        case SUBDATE_SYMBOL:
                        case SUBJECT_SYMBOL:
                        case SUBPARTITIONS_SYMBOL:
                        case SUBPARTITION_SYMBOL:
                        case SUPER_SYMBOL:
                        case SUSPEND_SYMBOL:
                        case SWAPS_SYMBOL:
                        case SWITCHES_SYMBOL:
                        case TABLESPACE_SYMBOL:
                        case TABLES_SYMBOL:
                        case TABLE_CHECKSUM_SYMBOL:
                        case TABLE_NAME_SYMBOL:
                        case TEMPORARY_SYMBOL:
                        case TEMPTABLE_SYMBOL:
                        case TEXT_SYMBOL:
                        case THAN_SYMBOL:
                        case THEN_SYMBOL:
                        case TIMESTAMP_ADD_SYMBOL:
                        case TIMESTAMP_DIFF_SYMBOL:
                        case TIMESTAMP_SYMBOL:
                        case TIME_SYMBOL:
                        case TRANSACTION_SYMBOL:
                        case TRIGGERS_SYMBOL:
                        case TRUNCATE_SYMBOL:
                        case TYPES_SYMBOL:
                        case TYPE_SYMBOL:
                        case UDF_RETURNS_SYMBOL:
                        case UNCOMMITTED_SYMBOL:
                        case UNDEFINED_SYMBOL:
                        case UNDERSCORE_CHARSET:
                        case UNDOFILE_SYMBOL:
                        case UNDO_BUFFER_SIZE_SYMBOL:
                        case UNICODE_SYMBOL:
                        case UNINSTALL_SYMBOL:
                        case UNION_SYMBOL:
                        case UNKNOWN_SYMBOL:
                        case UNTIL_SYMBOL:
                        case UPGRADE_SYMBOL:
                        case USER_RESOURCES_SYMBOL:
                        case USER_SYMBOL:
                        case USE_FRM_SYMBOL:
                        case USING_SYMBOL:
                        case VALUE_SYMBOL:
                        case VARIABLES_SYMBOL:
                        case VIEW_SYMBOL:
                        case WAIT_SYMBOL:
                        case WARNINGS_SYMBOL:
                        case WEEK_SYMBOL:
                        case WEIGHT_STRING_SYMBOL:
                        case WHEN_SYMBOL:
                        case WHERE_SYMBOL:
                        case WITH_SYMBOL:
                        case WORK_SYMBOL:
                        case WRAPPER_SYMBOL:
                        case X509_SYMBOL:
                        case XA_SYMBOL:
                        case XML_SYMBOL:
                        case XOR_SYMBOL:
                        case YEAR_MONTH_SYMBOL:
                        case YEAR_SYMBOL:
                        case 733:
                        	{
                        		alt527=3;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 527;
                            EXCEPTION->state        = 20;


                            goto ruleprimaryEx;

                        }

                    }
                    else if ( (LA527_0 == MINUTE_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case OPEN_PAR_SYMBOL:
                        	{
                        		{
                        		    int LA527_935 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=4;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 935;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case DOT_SYMBOL:
                        	{
                        		{
                        		    int LA527_936 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 936;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case EOF:
                        case ACTION_SYMBOL:
                        case ADDDATE_SYMBOL:
                        case AFTER_SYMBOL:
                        case AGAINST_SYMBOL:
                        case AGGREGATE_SYMBOL:
                        case ALGORITHM_SYMBOL:
                        case ANALYZE_SYMBOL:
                        case AND_SYMBOL:
                        case ANY_SYMBOL:
                        case ASCII_SYMBOL:
                        case ASC_SYMBOL:
                        case AS_SYMBOL:
                        case AT_SYMBOL:
                        case AUTHORS_SYMBOL:
                        case AUTOEXTEND_SIZE_SYMBOL:
                        case AUTO_INCREMENT_SYMBOL:
                        case AVG_ROW_LENGTH_SYMBOL:
                        case AVG_SYMBOL:
                        case BACKUP_SYMBOL:
                        case BACK_TICK_QUOTED_ID:
                        case BEGIN_SYMBOL:
                        case BETWEEN_SYMBOL:
                        case BINLOG_SYMBOL:
                        case BITWISE_AND_OPERATOR:
                        case BITWISE_OR_OPERATOR:
                        case BITWISE_XOR_OPERATOR:
                        case BIT_SYMBOL:
                        case BLOCK_SYMBOL:
                        case BOOLEAN_SYMBOL:
                        case BOOL_SYMBOL:
                        case BTREE_SYMBOL:
                        case BYTE_SYMBOL:
                        case CACHE_SYMBOL:
                        case CASCADED_SYMBOL:
                        case CATALOG_NAME_SYMBOL:
                        case CHAIN_SYMBOL:
                        case CHANGED_SYMBOL:
                        case CHARSET_SYMBOL:
                        case CHECKSUM_SYMBOL:
                        case CIPHER_SYMBOL:
                        case CLASS_ORIGIN_SYMBOL:
                        case CLIENT_SYMBOL:
                        case CLOSE_PAR_SYMBOL:
                        case CLOSE_SYMBOL:
                        case COALESCE_SYMBOL:
                        case CODE_SYMBOL:
                        case COLLATE_SYMBOL:
                        case COLLATION_SYMBOL:
                        case COLUMNS_SYMBOL:
                        case COLUMN_FORMAT_SYMBOL:
                        case COLUMN_NAME_SYMBOL:
                        case COMMA_SYMBOL:
                        case COMMENT_SYMBOL:
                        case COMMITTED_SYMBOL:
                        case COMMIT_SYMBOL:
                        case COMPACT_SYMBOL:
                        case COMPLETION_SYMBOL:
                        case COMPRESSED_SYMBOL:
                        case CONCAT_PIPES_SYMBOL:
                        case CONCURRENT_SYMBOL:
                        case CONNECTION_SYMBOL:
                        case CONSISTENT_SYMBOL:
                        case CONSTRAINT_CATALOG_SYMBOL:
                        case CONSTRAINT_NAME_SYMBOL:
                        case CONSTRAINT_SCHEMA_SYMBOL:
                        case CONTAINS_SYMBOL:
                        case CONTEXT_SYMBOL:
                        case CONTRIBUTORS_SYMBOL:
                        case CPU_SYMBOL:
                        case CROSS_SYMBOL:
                        case CUBE_SYMBOL:
                        case CURRENT_SYMBOL:
                        case CURSOR_NAME_SYMBOL:
                        case DATAFILE_SYMBOL:
                        case DATA_SYMBOL:
                        case DATETIME_SYMBOL:
                        case DATE_SYMBOL:
                        case DAY_HOUR_SYMBOL:
                        case DAY_MICROSECOND_SYMBOL:
                        case DAY_MINUTE_SYMBOL:
                        case DAY_SECOND_SYMBOL:
                        case DAY_SYMBOL:
                        case DEALLOCATE_SYMBOL:
                        case DEFAULT_AUTH_SYMBOL:
                        case DEFINER_SYMBOL:
                        case DELAY_KEY_WRITE_SYMBOL:
                        case DESC_SYMBOL:
                        case DES_KEY_FILE_SYMBOL:
                        case DIAGNOSTICS_SYMBOL:
                        case DIRECTORY_SYMBOL:
                        case DISABLE_SYMBOL:
                        case DISCARD_SYMBOL:
                        case DISK_SYMBOL:
                        case DIV_OPERATOR:
                        case DIV_SYMBOL:
                        case DOUBLE_QUOTED_TEXT:
                        case DO_SYMBOL:
                        case DUMPFILE_SYMBOL:
                        case DUPLICATE_SYMBOL:
                        case DYNAMIC_SYMBOL:
                        case ELSE_SYMBOL:
                        case ENABLE_SYMBOL:
                        case ENDS_SYMBOL:
                        case END_SYMBOL:
                        case ENGINES_SYMBOL:
                        case ENGINE_SYMBOL:
                        case ENUM_SYMBOL:
                        case EQUAL_OPERATOR:
                        case ERRORS_SYMBOL:
                        case ERROR_SYMBOL:
                        case ESCAPE_SYMBOL:
                        case EVENTS_SYMBOL:
                        case EVENT_SYMBOL:
                        case EVERY_SYMBOL:
                        case EXECUTE_SYMBOL:
                        case EXPANSION_SYMBOL:
                        case EXPORT_SYMBOL:
                        case EXTENDED_SYMBOL:
                        case EXTENT_SIZE_SYMBOL:
                        case FAST_SYMBOL:
                        case FAULTS_SYMBOL:
                        case FILE_SYMBOL:
                        case FIRST_SYMBOL:
                        case FIXED_SYMBOL:
                        case FLUSH_SYMBOL:
                        case FORMAT_SYMBOL:
                        case FOR_SYMBOL:
                        case FOUND_SYMBOL:
                        case FRAC_SECOND_SYMBOL:
                        case FROM_SYMBOL:
                        case FULL_SYMBOL:
                        case FUNCTION_SYMBOL:
                        case GENERAL_SYMBOL:
                        case GEOMETRYCOLLECTION_SYMBOL:
                        case GEOMETRY_SYMBOL:
                        case GET_FORMAT_SYMBOL:
                        case GLOBAL_SYMBOL:
                        case GRANTS_SYMBOL:
                        case GREATER_OR_EQUAL_OPERATOR:
                        case GREATER_THAN_OPERATOR:
                        case GROUP_SYMBOL:
                        case HANDLER_SYMBOL:
                        case HASH_SYMBOL:
                        case HAVING_SYMBOL:
                        case HELP_SYMBOL:
                        case HOSTS_SYMBOL:
                        case HOST_SYMBOL:
                        case HOUR_MICROSECOND_SYMBOL:
                        case HOUR_MINUTE_SYMBOL:
                        case HOUR_SECOND_SYMBOL:
                        case HOUR_SYMBOL:
                        case IDENTIFIED_SYMBOL:
                        case IDENTIFIER:
                        case IGNORE_SERVER_IDS_SYMBOL:
                        case IMPORT_SYMBOL:
                        case INDEXES_SYMBOL:
                        case INITIAL_SIZE_SYMBOL:
                        case INNER_SYMBOL:
                        case INNODB_SYMBOL:
                        case INSERT_METHOD_SYMBOL:
                        case INSTALL_SYMBOL:
                        case INTO_SYMBOL:
                        case INVOKER_SYMBOL:
                        case IN_SYMBOL:
                        case IO_SYMBOL:
                        case IPC_SYMBOL:
                        case ISOLATION_SYMBOL:
                        case ISSUER_SYMBOL:
                        case IS_SYMBOL:
                        case JOIN_SYMBOL:
                        case KEY_BLOCK_SIZE_SYMBOL:
                        case LANGUAGE_SYMBOL:
                        case LAST_SYMBOL:
                        case LEAVES_SYMBOL:
                        case LEFT_SYMBOL:
                        case LESS_OR_EQUAL_OPERATOR:
                        case LESS_SYMBOL:
                        case LESS_THAN_OPERATOR:
                        case LEVEL_SYMBOL:
                        case LIKE_SYMBOL:
                        case LIMIT_SYMBOL:
                        case LINESTRING_SYMBOL:
                        case LIST_SYMBOL:
                        case LOCAL_SYMBOL:
                        case LOCKS_SYMBOL:
                        case LOCK_SYMBOL:
                        case LOGFILE_SYMBOL:
                        case LOGICAL_AND_OPERATOR:
                        case LOGICAL_OR_OPERATOR:
                        case LOGS_SYMBOL:
                        case MASTER_AUTO_POSITION_SYMBOL:
                        case MASTER_CONNECT_RETRY_SYMBOL:
                        case MASTER_DELAY_SYMBOL:
                        case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                        case MASTER_HOST_SYMBOL:
                        case MASTER_LOG_FILE_SYMBOL:
                        case MASTER_LOG_POS_SYMBOL:
                        case MASTER_PASSWORD_SYMBOL:
                        case MASTER_PORT_SYMBOL:
                        case MASTER_RETRY_COUNT_SYMBOL:
                        case MASTER_SERVER_ID_SYMBOL:
                        case MASTER_SSL_CAPATH_SYMBOL:
                        case MASTER_SSL_CA_SYMBOL:
                        case MASTER_SSL_CERT_SYMBOL:
                        case MASTER_SSL_CIPHER_SYMBOL:
                        case MASTER_SSL_CRLPATH_SYMBOL:
                        case MASTER_SSL_CRL_SYMBOL:
                        case MASTER_SSL_KEY_SYMBOL:
                        case MASTER_SSL_SYMBOL:
                        case MASTER_SYMBOL:
                        case MASTER_USER_SYMBOL:
                        case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                        case MAX_QUERIES_PER_HOUR_SYMBOL:
                        case MAX_ROWS_SYMBOL:
                        case MAX_SIZE_SYMBOL:
                        case MAX_UPDATES_PER_HOUR_SYMBOL:
                        case MAX_USER_CONNECTIONS_SYMBOL:
                        case MEDIUM_SYMBOL:
                        case MEMORY_SYMBOL:
                        case MERGE_SYMBOL:
                        case MESSAGE_TEXT_SYMBOL:
                        case MICROSECOND_SYMBOL:
                        case MIGRATE_SYMBOL:
                        case MINUS_OPERATOR:
                        case MINUTE_MICROSECOND_SYMBOL:
                        case MINUTE_SECOND_SYMBOL:
                        case MINUTE_SYMBOL:
                        case MIN_ROWS_SYMBOL:
                        case MODE_SYMBOL:
                        case MODIFY_SYMBOL:
                        case MOD_OPERATOR:
                        case MOD_SYMBOL:
                        case MONTH_SYMBOL:
                        case MULTILINESTRING_SYMBOL:
                        case MULTIPOINT_SYMBOL:
                        case MULTIPOLYGON_SYMBOL:
                        case MULT_OPERATOR:
                        case MUTEX_SYMBOL:
                        case MYSQL_ERRNO_SYMBOL:
                        case NAMES_SYMBOL:
                        case NAME_SYMBOL:
                        case NATIONAL_SYMBOL:
                        case NATURAL_SYMBOL:
                        case NCHAR_SYMBOL:
                        case NCHAR_TEXT:
                        case NDBCLUSTER_SYMBOL:
                        case NEW_SYMBOL:
                        case NEXT_SYMBOL:
                        case NODEGROUP_SYMBOL:
                        case NONE_SYMBOL:
                        case NOT_EQUAL2_OPERATOR:
                        case NOT_EQUAL_OPERATOR:
                        case NOT_SYMBOL:
                        case NO_SYMBOL:
                        case NO_WAIT_SYMBOL:
                        case NULL_SAFE_EQUAL_OPERATOR:
                        case NUMBER_SYMBOL:
                        case NVARCHAR_SYMBOL:
                        case OFFSET_SYMBOL:
                        case OLD_PASSWORD_SYMBOL:
                        case ONE_SHOT_SYMBOL:
                        case ONE_SYMBOL:
                        case ON_SYMBOL:
                        case OPEN_SYMBOL:
                        case OPTIONS_SYMBOL:
                        case ORDER_SYMBOL:
                        case OR_SYMBOL:
                        case OWNER_SYMBOL:
                        case PACK_KEYS_SYMBOL:
                        case PAGE_SYMBOL:
                        case PARSER_SYMBOL:
                        case PARTIAL_SYMBOL:
                        case PARTITIONING_SYMBOL:
                        case PARTITIONS_SYMBOL:
                        case PARTITION_SYMBOL:
                        case PASSWORD_SYMBOL:
                        case PHASE_SYMBOL:
                        case PLUGINS_SYMBOL:
                        case PLUGIN_DIR_SYMBOL:
                        case PLUGIN_SYMBOL:
                        case PLUS_OPERATOR:
                        case POINT_SYMBOL:
                        case POLYGON_SYMBOL:
                        case PORT_SYMBOL:
                        case PREPARE_SYMBOL:
                        case PRESERVE_SYMBOL:
                        case PREV_SYMBOL:
                        case PRIVILEGES_SYMBOL:
                        case PROCEDURE_SYMBOL:
                        case PROCESSLIST_SYMBOL:
                        case PROCESS_SYMBOL:
                        case PROFILES_SYMBOL:
                        case PROFILE_SYMBOL:
                        case PROXY_SYMBOL:
                        case QUARTER_SYMBOL:
                        case QUERY_SYMBOL:
                        case QUICK_SYMBOL:
                        case READ_ONLY_SYMBOL:
                        case REBUILD_SYMBOL:
                        case RECOVER_SYMBOL:
                        case REDOFILE_SYMBOL:
                        case REDO_BUFFER_SIZE_SYMBOL:
                        case REDUNDANT_SYMBOL:
                        case REGEXP_SYMBOL:
                        case RELAYLOG_SYMBOL:
                        case RELAY_LOG_FILE_SYMBOL:
                        case RELAY_LOG_POS_SYMBOL:
                        case RELAY_SYMBOL:
                        case RELAY_THREAD_SYMBOL:
                        case RELOAD_SYMBOL:
                        case REMOVE_SYMBOL:
                        case RENAME_SYMBOL:
                        case REORGANIZE_SYMBOL:
                        case REPAIR_SYMBOL:
                        case REPEATABLE_SYMBOL:
                        case REPLICATION_SYMBOL:
                        case RESET_SYMBOL:
                        case RESTORE_SYMBOL:
                        case RESUME_SYMBOL:
                        case RETURNED_SQLSTATE_SYMBOL:
                        case RETURNS_SYMBOL:
                        case REVERSE_SYMBOL:
                        case RIGHT_SYMBOL:
                        case ROLLBACK_SYMBOL:
                        case ROLLUP_SYMBOL:
                        case ROUTINE_SYMBOL:
                        case ROWS_SYMBOL:
                        case ROW_COUNT_SYMBOL:
                        case ROW_FORMAT_SYMBOL:
                        case ROW_SYMBOL:
                        case RTREE_SYMBOL:
                        case SAVEPOINT_SYMBOL:
                        case SCHEDULE_SYMBOL:
                        case SCHEMA_NAME_SYMBOL:
                        case SECOND_MICROSECOND_SYMBOL:
                        case SECOND_SYMBOL:
                        case SECURITY_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        case SEPARATOR_SYMBOL:
                        case SERIALIZABLE_SYMBOL:
                        case SERIAL_SYMBOL:
                        case SERVER_SYMBOL:
                        case SESSION_SYMBOL:
                        case SET_SYMBOL:
                        case SHARE_SYMBOL:
                        case SHIFT_LEFT_OPERATOR:
                        case SHIFT_RIGHT_OPERATOR:
                        case SHUTDOWN_SYMBOL:
                        case SIGNED_SYMBOL:
                        case SIMPLE_SYMBOL:
                        case SINGLE_QUOTED_TEXT:
                        case SLAVE_SYMBOL:
                        case SLOW_SYMBOL:
                        case SNAPSHOT_SYMBOL:
                        case SOCKET_SYMBOL:
                        case SONAME_SYMBOL:
                        case SOUNDS_SYMBOL:
                        case SOURCE_SYMBOL:
                        case SQL_AFTER_GTIDS_SYMBOL:
                        case SQL_AFTER_MTS_GAPS_SYMBOL:
                        case SQL_BEFORE_GTIDS_SYMBOL:
                        case SQL_BUFFER_RESULT_SYMBOL:
                        case SQL_CACHE_SYMBOL:
                        case SQL_NO_CACHE_SYMBOL:
                        case SQL_THREAD_SYMBOL:
                        case STARTS_SYMBOL:
                        case START_SYMBOL:
                        case STATS_AUTO_RECALC_SYMBOL:
                        case STATS_PERSISTENT_SYMBOL:
                        case STATS_SAMPLE_PAGES_SYMBOL:
                        case STATUS_SYMBOL:
                        case STOP_SYMBOL:
                        case STORAGE_SYMBOL:
                        case STRAIGHT_JOIN_SYMBOL:
                        case STRING_SYMBOL:
                        case SUBCLASS_ORIGIN_SYMBOL:
                        case SUBDATE_SYMBOL:
                        case SUBJECT_SYMBOL:
                        case SUBPARTITIONS_SYMBOL:
                        case SUBPARTITION_SYMBOL:
                        case SUPER_SYMBOL:
                        case SUSPEND_SYMBOL:
                        case SWAPS_SYMBOL:
                        case SWITCHES_SYMBOL:
                        case TABLESPACE_SYMBOL:
                        case TABLES_SYMBOL:
                        case TABLE_CHECKSUM_SYMBOL:
                        case TABLE_NAME_SYMBOL:
                        case TEMPORARY_SYMBOL:
                        case TEMPTABLE_SYMBOL:
                        case TEXT_SYMBOL:
                        case THAN_SYMBOL:
                        case THEN_SYMBOL:
                        case TIMESTAMP_ADD_SYMBOL:
                        case TIMESTAMP_DIFF_SYMBOL:
                        case TIMESTAMP_SYMBOL:
                        case TIME_SYMBOL:
                        case TRANSACTION_SYMBOL:
                        case TRIGGERS_SYMBOL:
                        case TRUNCATE_SYMBOL:
                        case TYPES_SYMBOL:
                        case TYPE_SYMBOL:
                        case UDF_RETURNS_SYMBOL:
                        case UNCOMMITTED_SYMBOL:
                        case UNDEFINED_SYMBOL:
                        case UNDERSCORE_CHARSET:
                        case UNDOFILE_SYMBOL:
                        case UNDO_BUFFER_SIZE_SYMBOL:
                        case UNICODE_SYMBOL:
                        case UNINSTALL_SYMBOL:
                        case UNION_SYMBOL:
                        case UNKNOWN_SYMBOL:
                        case UNTIL_SYMBOL:
                        case UPGRADE_SYMBOL:
                        case USER_RESOURCES_SYMBOL:
                        case USER_SYMBOL:
                        case USE_FRM_SYMBOL:
                        case USING_SYMBOL:
                        case VALUE_SYMBOL:
                        case VARIABLES_SYMBOL:
                        case VIEW_SYMBOL:
                        case WAIT_SYMBOL:
                        case WARNINGS_SYMBOL:
                        case WEEK_SYMBOL:
                        case WEIGHT_STRING_SYMBOL:
                        case WHEN_SYMBOL:
                        case WHERE_SYMBOL:
                        case WITH_SYMBOL:
                        case WORK_SYMBOL:
                        case WRAPPER_SYMBOL:
                        case X509_SYMBOL:
                        case XA_SYMBOL:
                        case XML_SYMBOL:
                        case XOR_SYMBOL:
                        case YEAR_MONTH_SYMBOL:
                        case YEAR_SYMBOL:
                        case 733:
                        	{
                        		alt527=3;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 527;
                            EXCEPTION->state        = 21;


                            goto ruleprimaryEx;

                        }

                    }
                    else if ( (LA527_0 == MONTH_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case OPEN_PAR_SYMBOL:
                        	{
                        		{
                        		    int LA527_1028 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=4;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 1028;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case DOT_SYMBOL:
                        	{
                        		{
                        		    int LA527_1029 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 1029;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case EOF:
                        case ACTION_SYMBOL:
                        case ADDDATE_SYMBOL:
                        case AFTER_SYMBOL:
                        case AGAINST_SYMBOL:
                        case AGGREGATE_SYMBOL:
                        case ALGORITHM_SYMBOL:
                        case ANALYZE_SYMBOL:
                        case AND_SYMBOL:
                        case ANY_SYMBOL:
                        case ASCII_SYMBOL:
                        case ASC_SYMBOL:
                        case AS_SYMBOL:
                        case AT_SYMBOL:
                        case AUTHORS_SYMBOL:
                        case AUTOEXTEND_SIZE_SYMBOL:
                        case AUTO_INCREMENT_SYMBOL:
                        case AVG_ROW_LENGTH_SYMBOL:
                        case AVG_SYMBOL:
                        case BACKUP_SYMBOL:
                        case BACK_TICK_QUOTED_ID:
                        case BEGIN_SYMBOL:
                        case BETWEEN_SYMBOL:
                        case BINLOG_SYMBOL:
                        case BITWISE_AND_OPERATOR:
                        case BITWISE_OR_OPERATOR:
                        case BITWISE_XOR_OPERATOR:
                        case BIT_SYMBOL:
                        case BLOCK_SYMBOL:
                        case BOOLEAN_SYMBOL:
                        case BOOL_SYMBOL:
                        case BTREE_SYMBOL:
                        case BYTE_SYMBOL:
                        case CACHE_SYMBOL:
                        case CASCADED_SYMBOL:
                        case CATALOG_NAME_SYMBOL:
                        case CHAIN_SYMBOL:
                        case CHANGED_SYMBOL:
                        case CHARSET_SYMBOL:
                        case CHECKSUM_SYMBOL:
                        case CIPHER_SYMBOL:
                        case CLASS_ORIGIN_SYMBOL:
                        case CLIENT_SYMBOL:
                        case CLOSE_PAR_SYMBOL:
                        case CLOSE_SYMBOL:
                        case COALESCE_SYMBOL:
                        case CODE_SYMBOL:
                        case COLLATE_SYMBOL:
                        case COLLATION_SYMBOL:
                        case COLUMNS_SYMBOL:
                        case COLUMN_FORMAT_SYMBOL:
                        case COLUMN_NAME_SYMBOL:
                        case COMMA_SYMBOL:
                        case COMMENT_SYMBOL:
                        case COMMITTED_SYMBOL:
                        case COMMIT_SYMBOL:
                        case COMPACT_SYMBOL:
                        case COMPLETION_SYMBOL:
                        case COMPRESSED_SYMBOL:
                        case CONCAT_PIPES_SYMBOL:
                        case CONCURRENT_SYMBOL:
                        case CONNECTION_SYMBOL:
                        case CONSISTENT_SYMBOL:
                        case CONSTRAINT_CATALOG_SYMBOL:
                        case CONSTRAINT_NAME_SYMBOL:
                        case CONSTRAINT_SCHEMA_SYMBOL:
                        case CONTAINS_SYMBOL:
                        case CONTEXT_SYMBOL:
                        case CONTRIBUTORS_SYMBOL:
                        case CPU_SYMBOL:
                        case CROSS_SYMBOL:
                        case CUBE_SYMBOL:
                        case CURRENT_SYMBOL:
                        case CURSOR_NAME_SYMBOL:
                        case DATAFILE_SYMBOL:
                        case DATA_SYMBOL:
                        case DATETIME_SYMBOL:
                        case DATE_SYMBOL:
                        case DAY_HOUR_SYMBOL:
                        case DAY_MICROSECOND_SYMBOL:
                        case DAY_MINUTE_SYMBOL:
                        case DAY_SECOND_SYMBOL:
                        case DAY_SYMBOL:
                        case DEALLOCATE_SYMBOL:
                        case DEFAULT_AUTH_SYMBOL:
                        case DEFINER_SYMBOL:
                        case DELAY_KEY_WRITE_SYMBOL:
                        case DESC_SYMBOL:
                        case DES_KEY_FILE_SYMBOL:
                        case DIAGNOSTICS_SYMBOL:
                        case DIRECTORY_SYMBOL:
                        case DISABLE_SYMBOL:
                        case DISCARD_SYMBOL:
                        case DISK_SYMBOL:
                        case DIV_OPERATOR:
                        case DIV_SYMBOL:
                        case DOUBLE_QUOTED_TEXT:
                        case DO_SYMBOL:
                        case DUMPFILE_SYMBOL:
                        case DUPLICATE_SYMBOL:
                        case DYNAMIC_SYMBOL:
                        case ELSE_SYMBOL:
                        case ENABLE_SYMBOL:
                        case ENDS_SYMBOL:
                        case END_SYMBOL:
                        case ENGINES_SYMBOL:
                        case ENGINE_SYMBOL:
                        case ENUM_SYMBOL:
                        case EQUAL_OPERATOR:
                        case ERRORS_SYMBOL:
                        case ERROR_SYMBOL:
                        case ESCAPE_SYMBOL:
                        case EVENTS_SYMBOL:
                        case EVENT_SYMBOL:
                        case EVERY_SYMBOL:
                        case EXECUTE_SYMBOL:
                        case EXPANSION_SYMBOL:
                        case EXPORT_SYMBOL:
                        case EXTENDED_SYMBOL:
                        case EXTENT_SIZE_SYMBOL:
                        case FAST_SYMBOL:
                        case FAULTS_SYMBOL:
                        case FILE_SYMBOL:
                        case FIRST_SYMBOL:
                        case FIXED_SYMBOL:
                        case FLUSH_SYMBOL:
                        case FORMAT_SYMBOL:
                        case FOR_SYMBOL:
                        case FOUND_SYMBOL:
                        case FRAC_SECOND_SYMBOL:
                        case FROM_SYMBOL:
                        case FULL_SYMBOL:
                        case FUNCTION_SYMBOL:
                        case GENERAL_SYMBOL:
                        case GEOMETRYCOLLECTION_SYMBOL:
                        case GEOMETRY_SYMBOL:
                        case GET_FORMAT_SYMBOL:
                        case GLOBAL_SYMBOL:
                        case GRANTS_SYMBOL:
                        case GREATER_OR_EQUAL_OPERATOR:
                        case GREATER_THAN_OPERATOR:
                        case GROUP_SYMBOL:
                        case HANDLER_SYMBOL:
                        case HASH_SYMBOL:
                        case HAVING_SYMBOL:
                        case HELP_SYMBOL:
                        case HOSTS_SYMBOL:
                        case HOST_SYMBOL:
                        case HOUR_MICROSECOND_SYMBOL:
                        case HOUR_MINUTE_SYMBOL:
                        case HOUR_SECOND_SYMBOL:
                        case HOUR_SYMBOL:
                        case IDENTIFIED_SYMBOL:
                        case IDENTIFIER:
                        case IGNORE_SERVER_IDS_SYMBOL:
                        case IMPORT_SYMBOL:
                        case INDEXES_SYMBOL:
                        case INITIAL_SIZE_SYMBOL:
                        case INNER_SYMBOL:
                        case INNODB_SYMBOL:
                        case INSERT_METHOD_SYMBOL:
                        case INSTALL_SYMBOL:
                        case INTO_SYMBOL:
                        case INVOKER_SYMBOL:
                        case IN_SYMBOL:
                        case IO_SYMBOL:
                        case IPC_SYMBOL:
                        case ISOLATION_SYMBOL:
                        case ISSUER_SYMBOL:
                        case IS_SYMBOL:
                        case JOIN_SYMBOL:
                        case KEY_BLOCK_SIZE_SYMBOL:
                        case LANGUAGE_SYMBOL:
                        case LAST_SYMBOL:
                        case LEAVES_SYMBOL:
                        case LEFT_SYMBOL:
                        case LESS_OR_EQUAL_OPERATOR:
                        case LESS_SYMBOL:
                        case LESS_THAN_OPERATOR:
                        case LEVEL_SYMBOL:
                        case LIKE_SYMBOL:
                        case LIMIT_SYMBOL:
                        case LINESTRING_SYMBOL:
                        case LIST_SYMBOL:
                        case LOCAL_SYMBOL:
                        case LOCKS_SYMBOL:
                        case LOCK_SYMBOL:
                        case LOGFILE_SYMBOL:
                        case LOGICAL_AND_OPERATOR:
                        case LOGICAL_OR_OPERATOR:
                        case LOGS_SYMBOL:
                        case MASTER_AUTO_POSITION_SYMBOL:
                        case MASTER_CONNECT_RETRY_SYMBOL:
                        case MASTER_DELAY_SYMBOL:
                        case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                        case MASTER_HOST_SYMBOL:
                        case MASTER_LOG_FILE_SYMBOL:
                        case MASTER_LOG_POS_SYMBOL:
                        case MASTER_PASSWORD_SYMBOL:
                        case MASTER_PORT_SYMBOL:
                        case MASTER_RETRY_COUNT_SYMBOL:
                        case MASTER_SERVER_ID_SYMBOL:
                        case MASTER_SSL_CAPATH_SYMBOL:
                        case MASTER_SSL_CA_SYMBOL:
                        case MASTER_SSL_CERT_SYMBOL:
                        case MASTER_SSL_CIPHER_SYMBOL:
                        case MASTER_SSL_CRLPATH_SYMBOL:
                        case MASTER_SSL_CRL_SYMBOL:
                        case MASTER_SSL_KEY_SYMBOL:
                        case MASTER_SSL_SYMBOL:
                        case MASTER_SYMBOL:
                        case MASTER_USER_SYMBOL:
                        case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                        case MAX_QUERIES_PER_HOUR_SYMBOL:
                        case MAX_ROWS_SYMBOL:
                        case MAX_SIZE_SYMBOL:
                        case MAX_UPDATES_PER_HOUR_SYMBOL:
                        case MAX_USER_CONNECTIONS_SYMBOL:
                        case MEDIUM_SYMBOL:
                        case MEMORY_SYMBOL:
                        case MERGE_SYMBOL:
                        case MESSAGE_TEXT_SYMBOL:
                        case MICROSECOND_SYMBOL:
                        case MIGRATE_SYMBOL:
                        case MINUS_OPERATOR:
                        case MINUTE_MICROSECOND_SYMBOL:
                        case MINUTE_SECOND_SYMBOL:
                        case MINUTE_SYMBOL:
                        case MIN_ROWS_SYMBOL:
                        case MODE_SYMBOL:
                        case MODIFY_SYMBOL:
                        case MOD_OPERATOR:
                        case MOD_SYMBOL:
                        case MONTH_SYMBOL:
                        case MULTILINESTRING_SYMBOL:
                        case MULTIPOINT_SYMBOL:
                        case MULTIPOLYGON_SYMBOL:
                        case MULT_OPERATOR:
                        case MUTEX_SYMBOL:
                        case MYSQL_ERRNO_SYMBOL:
                        case NAMES_SYMBOL:
                        case NAME_SYMBOL:
                        case NATIONAL_SYMBOL:
                        case NATURAL_SYMBOL:
                        case NCHAR_SYMBOL:
                        case NCHAR_TEXT:
                        case NDBCLUSTER_SYMBOL:
                        case NEW_SYMBOL:
                        case NEXT_SYMBOL:
                        case NODEGROUP_SYMBOL:
                        case NONE_SYMBOL:
                        case NOT_EQUAL2_OPERATOR:
                        case NOT_EQUAL_OPERATOR:
                        case NOT_SYMBOL:
                        case NO_SYMBOL:
                        case NO_WAIT_SYMBOL:
                        case NULL_SAFE_EQUAL_OPERATOR:
                        case NUMBER_SYMBOL:
                        case NVARCHAR_SYMBOL:
                        case OFFSET_SYMBOL:
                        case OLD_PASSWORD_SYMBOL:
                        case ONE_SHOT_SYMBOL:
                        case ONE_SYMBOL:
                        case ON_SYMBOL:
                        case OPEN_SYMBOL:
                        case OPTIONS_SYMBOL:
                        case ORDER_SYMBOL:
                        case OR_SYMBOL:
                        case OWNER_SYMBOL:
                        case PACK_KEYS_SYMBOL:
                        case PAGE_SYMBOL:
                        case PARSER_SYMBOL:
                        case PARTIAL_SYMBOL:
                        case PARTITIONING_SYMBOL:
                        case PARTITIONS_SYMBOL:
                        case PARTITION_SYMBOL:
                        case PASSWORD_SYMBOL:
                        case PHASE_SYMBOL:
                        case PLUGINS_SYMBOL:
                        case PLUGIN_DIR_SYMBOL:
                        case PLUGIN_SYMBOL:
                        case PLUS_OPERATOR:
                        case POINT_SYMBOL:
                        case POLYGON_SYMBOL:
                        case PORT_SYMBOL:
                        case PREPARE_SYMBOL:
                        case PRESERVE_SYMBOL:
                        case PREV_SYMBOL:
                        case PRIVILEGES_SYMBOL:
                        case PROCEDURE_SYMBOL:
                        case PROCESSLIST_SYMBOL:
                        case PROCESS_SYMBOL:
                        case PROFILES_SYMBOL:
                        case PROFILE_SYMBOL:
                        case PROXY_SYMBOL:
                        case QUARTER_SYMBOL:
                        case QUERY_SYMBOL:
                        case QUICK_SYMBOL:
                        case READ_ONLY_SYMBOL:
                        case REBUILD_SYMBOL:
                        case RECOVER_SYMBOL:
                        case REDOFILE_SYMBOL:
                        case REDO_BUFFER_SIZE_SYMBOL:
                        case REDUNDANT_SYMBOL:
                        case REGEXP_SYMBOL:
                        case RELAYLOG_SYMBOL:
                        case RELAY_LOG_FILE_SYMBOL:
                        case RELAY_LOG_POS_SYMBOL:
                        case RELAY_SYMBOL:
                        case RELAY_THREAD_SYMBOL:
                        case RELOAD_SYMBOL:
                        case REMOVE_SYMBOL:
                        case RENAME_SYMBOL:
                        case REORGANIZE_SYMBOL:
                        case REPAIR_SYMBOL:
                        case REPEATABLE_SYMBOL:
                        case REPLICATION_SYMBOL:
                        case RESET_SYMBOL:
                        case RESTORE_SYMBOL:
                        case RESUME_SYMBOL:
                        case RETURNED_SQLSTATE_SYMBOL:
                        case RETURNS_SYMBOL:
                        case REVERSE_SYMBOL:
                        case RIGHT_SYMBOL:
                        case ROLLBACK_SYMBOL:
                        case ROLLUP_SYMBOL:
                        case ROUTINE_SYMBOL:
                        case ROWS_SYMBOL:
                        case ROW_COUNT_SYMBOL:
                        case ROW_FORMAT_SYMBOL:
                        case ROW_SYMBOL:
                        case RTREE_SYMBOL:
                        case SAVEPOINT_SYMBOL:
                        case SCHEDULE_SYMBOL:
                        case SCHEMA_NAME_SYMBOL:
                        case SECOND_MICROSECOND_SYMBOL:
                        case SECOND_SYMBOL:
                        case SECURITY_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        case SEPARATOR_SYMBOL:
                        case SERIALIZABLE_SYMBOL:
                        case SERIAL_SYMBOL:
                        case SERVER_SYMBOL:
                        case SESSION_SYMBOL:
                        case SET_SYMBOL:
                        case SHARE_SYMBOL:
                        case SHIFT_LEFT_OPERATOR:
                        case SHIFT_RIGHT_OPERATOR:
                        case SHUTDOWN_SYMBOL:
                        case SIGNED_SYMBOL:
                        case SIMPLE_SYMBOL:
                        case SINGLE_QUOTED_TEXT:
                        case SLAVE_SYMBOL:
                        case SLOW_SYMBOL:
                        case SNAPSHOT_SYMBOL:
                        case SOCKET_SYMBOL:
                        case SONAME_SYMBOL:
                        case SOUNDS_SYMBOL:
                        case SOURCE_SYMBOL:
                        case SQL_AFTER_GTIDS_SYMBOL:
                        case SQL_AFTER_MTS_GAPS_SYMBOL:
                        case SQL_BEFORE_GTIDS_SYMBOL:
                        case SQL_BUFFER_RESULT_SYMBOL:
                        case SQL_CACHE_SYMBOL:
                        case SQL_NO_CACHE_SYMBOL:
                        case SQL_THREAD_SYMBOL:
                        case STARTS_SYMBOL:
                        case START_SYMBOL:
                        case STATS_AUTO_RECALC_SYMBOL:
                        case STATS_PERSISTENT_SYMBOL:
                        case STATS_SAMPLE_PAGES_SYMBOL:
                        case STATUS_SYMBOL:
                        case STOP_SYMBOL:
                        case STORAGE_SYMBOL:
                        case STRAIGHT_JOIN_SYMBOL:
                        case STRING_SYMBOL:
                        case SUBCLASS_ORIGIN_SYMBOL:
                        case SUBDATE_SYMBOL:
                        case SUBJECT_SYMBOL:
                        case SUBPARTITIONS_SYMBOL:
                        case SUBPARTITION_SYMBOL:
                        case SUPER_SYMBOL:
                        case SUSPEND_SYMBOL:
                        case SWAPS_SYMBOL:
                        case SWITCHES_SYMBOL:
                        case TABLESPACE_SYMBOL:
                        case TABLES_SYMBOL:
                        case TABLE_CHECKSUM_SYMBOL:
                        case TABLE_NAME_SYMBOL:
                        case TEMPORARY_SYMBOL:
                        case TEMPTABLE_SYMBOL:
                        case TEXT_SYMBOL:
                        case THAN_SYMBOL:
                        case THEN_SYMBOL:
                        case TIMESTAMP_ADD_SYMBOL:
                        case TIMESTAMP_DIFF_SYMBOL:
                        case TIMESTAMP_SYMBOL:
                        case TIME_SYMBOL:
                        case TRANSACTION_SYMBOL:
                        case TRIGGERS_SYMBOL:
                        case TRUNCATE_SYMBOL:
                        case TYPES_SYMBOL:
                        case TYPE_SYMBOL:
                        case UDF_RETURNS_SYMBOL:
                        case UNCOMMITTED_SYMBOL:
                        case UNDEFINED_SYMBOL:
                        case UNDERSCORE_CHARSET:
                        case UNDOFILE_SYMBOL:
                        case UNDO_BUFFER_SIZE_SYMBOL:
                        case UNICODE_SYMBOL:
                        case UNINSTALL_SYMBOL:
                        case UNION_SYMBOL:
                        case UNKNOWN_SYMBOL:
                        case UNTIL_SYMBOL:
                        case UPGRADE_SYMBOL:
                        case USER_RESOURCES_SYMBOL:
                        case USER_SYMBOL:
                        case USE_FRM_SYMBOL:
                        case USING_SYMBOL:
                        case VALUE_SYMBOL:
                        case VARIABLES_SYMBOL:
                        case VIEW_SYMBOL:
                        case WAIT_SYMBOL:
                        case WARNINGS_SYMBOL:
                        case WEEK_SYMBOL:
                        case WEIGHT_STRING_SYMBOL:
                        case WHEN_SYMBOL:
                        case WHERE_SYMBOL:
                        case WITH_SYMBOL:
                        case WORK_SYMBOL:
                        case WRAPPER_SYMBOL:
                        case X509_SYMBOL:
                        case XA_SYMBOL:
                        case XML_SYMBOL:
                        case XOR_SYMBOL:
                        case YEAR_MONTH_SYMBOL:
                        case YEAR_SYMBOL:
                        case 733:
                        	{
                        		alt527=3;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 527;
                            EXCEPTION->state        = 24;


                            goto ruleprimaryEx;

                        }

                    }
                    else if ( (LA527_0 == SECOND_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case OPEN_PAR_SYMBOL:
                        	{
                        		{
                        		    int LA527_1121 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=4;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 1121;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case DOT_SYMBOL:
                        	{
                        		{
                        		    int LA527_1122 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 1122;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case EOF:
                        case ACTION_SYMBOL:
                        case ADDDATE_SYMBOL:
                        case AFTER_SYMBOL:
                        case AGAINST_SYMBOL:
                        case AGGREGATE_SYMBOL:
                        case ALGORITHM_SYMBOL:
                        case ANALYZE_SYMBOL:
                        case AND_SYMBOL:
                        case ANY_SYMBOL:
                        case ASCII_SYMBOL:
                        case ASC_SYMBOL:
                        case AS_SYMBOL:
                        case AT_SYMBOL:
                        case AUTHORS_SYMBOL:
                        case AUTOEXTEND_SIZE_SYMBOL:
                        case AUTO_INCREMENT_SYMBOL:
                        case AVG_ROW_LENGTH_SYMBOL:
                        case AVG_SYMBOL:
                        case BACKUP_SYMBOL:
                        case BACK_TICK_QUOTED_ID:
                        case BEGIN_SYMBOL:
                        case BETWEEN_SYMBOL:
                        case BINLOG_SYMBOL:
                        case BITWISE_AND_OPERATOR:
                        case BITWISE_OR_OPERATOR:
                        case BITWISE_XOR_OPERATOR:
                        case BIT_SYMBOL:
                        case BLOCK_SYMBOL:
                        case BOOLEAN_SYMBOL:
                        case BOOL_SYMBOL:
                        case BTREE_SYMBOL:
                        case BYTE_SYMBOL:
                        case CACHE_SYMBOL:
                        case CASCADED_SYMBOL:
                        case CATALOG_NAME_SYMBOL:
                        case CHAIN_SYMBOL:
                        case CHANGED_SYMBOL:
                        case CHARSET_SYMBOL:
                        case CHECKSUM_SYMBOL:
                        case CIPHER_SYMBOL:
                        case CLASS_ORIGIN_SYMBOL:
                        case CLIENT_SYMBOL:
                        case CLOSE_PAR_SYMBOL:
                        case CLOSE_SYMBOL:
                        case COALESCE_SYMBOL:
                        case CODE_SYMBOL:
                        case COLLATE_SYMBOL:
                        case COLLATION_SYMBOL:
                        case COLUMNS_SYMBOL:
                        case COLUMN_FORMAT_SYMBOL:
                        case COLUMN_NAME_SYMBOL:
                        case COMMA_SYMBOL:
                        case COMMENT_SYMBOL:
                        case COMMITTED_SYMBOL:
                        case COMMIT_SYMBOL:
                        case COMPACT_SYMBOL:
                        case COMPLETION_SYMBOL:
                        case COMPRESSED_SYMBOL:
                        case CONCAT_PIPES_SYMBOL:
                        case CONCURRENT_SYMBOL:
                        case CONNECTION_SYMBOL:
                        case CONSISTENT_SYMBOL:
                        case CONSTRAINT_CATALOG_SYMBOL:
                        case CONSTRAINT_NAME_SYMBOL:
                        case CONSTRAINT_SCHEMA_SYMBOL:
                        case CONTAINS_SYMBOL:
                        case CONTEXT_SYMBOL:
                        case CONTRIBUTORS_SYMBOL:
                        case CPU_SYMBOL:
                        case CROSS_SYMBOL:
                        case CUBE_SYMBOL:
                        case CURRENT_SYMBOL:
                        case CURSOR_NAME_SYMBOL:
                        case DATAFILE_SYMBOL:
                        case DATA_SYMBOL:
                        case DATETIME_SYMBOL:
                        case DATE_SYMBOL:
                        case DAY_HOUR_SYMBOL:
                        case DAY_MICROSECOND_SYMBOL:
                        case DAY_MINUTE_SYMBOL:
                        case DAY_SECOND_SYMBOL:
                        case DAY_SYMBOL:
                        case DEALLOCATE_SYMBOL:
                        case DEFAULT_AUTH_SYMBOL:
                        case DEFINER_SYMBOL:
                        case DELAY_KEY_WRITE_SYMBOL:
                        case DESC_SYMBOL:
                        case DES_KEY_FILE_SYMBOL:
                        case DIAGNOSTICS_SYMBOL:
                        case DIRECTORY_SYMBOL:
                        case DISABLE_SYMBOL:
                        case DISCARD_SYMBOL:
                        case DISK_SYMBOL:
                        case DIV_OPERATOR:
                        case DIV_SYMBOL:
                        case DOUBLE_QUOTED_TEXT:
                        case DO_SYMBOL:
                        case DUMPFILE_SYMBOL:
                        case DUPLICATE_SYMBOL:
                        case DYNAMIC_SYMBOL:
                        case ELSE_SYMBOL:
                        case ENABLE_SYMBOL:
                        case ENDS_SYMBOL:
                        case END_SYMBOL:
                        case ENGINES_SYMBOL:
                        case ENGINE_SYMBOL:
                        case ENUM_SYMBOL:
                        case EQUAL_OPERATOR:
                        case ERRORS_SYMBOL:
                        case ERROR_SYMBOL:
                        case ESCAPE_SYMBOL:
                        case EVENTS_SYMBOL:
                        case EVENT_SYMBOL:
                        case EVERY_SYMBOL:
                        case EXECUTE_SYMBOL:
                        case EXPANSION_SYMBOL:
                        case EXPORT_SYMBOL:
                        case EXTENDED_SYMBOL:
                        case EXTENT_SIZE_SYMBOL:
                        case FAST_SYMBOL:
                        case FAULTS_SYMBOL:
                        case FILE_SYMBOL:
                        case FIRST_SYMBOL:
                        case FIXED_SYMBOL:
                        case FLUSH_SYMBOL:
                        case FORMAT_SYMBOL:
                        case FOR_SYMBOL:
                        case FOUND_SYMBOL:
                        case FRAC_SECOND_SYMBOL:
                        case FROM_SYMBOL:
                        case FULL_SYMBOL:
                        case FUNCTION_SYMBOL:
                        case GENERAL_SYMBOL:
                        case GEOMETRYCOLLECTION_SYMBOL:
                        case GEOMETRY_SYMBOL:
                        case GET_FORMAT_SYMBOL:
                        case GLOBAL_SYMBOL:
                        case GRANTS_SYMBOL:
                        case GREATER_OR_EQUAL_OPERATOR:
                        case GREATER_THAN_OPERATOR:
                        case GROUP_SYMBOL:
                        case HANDLER_SYMBOL:
                        case HASH_SYMBOL:
                        case HAVING_SYMBOL:
                        case HELP_SYMBOL:
                        case HOSTS_SYMBOL:
                        case HOST_SYMBOL:
                        case HOUR_MICROSECOND_SYMBOL:
                        case HOUR_MINUTE_SYMBOL:
                        case HOUR_SECOND_SYMBOL:
                        case HOUR_SYMBOL:
                        case IDENTIFIED_SYMBOL:
                        case IDENTIFIER:
                        case IGNORE_SERVER_IDS_SYMBOL:
                        case IMPORT_SYMBOL:
                        case INDEXES_SYMBOL:
                        case INITIAL_SIZE_SYMBOL:
                        case INNER_SYMBOL:
                        case INNODB_SYMBOL:
                        case INSERT_METHOD_SYMBOL:
                        case INSTALL_SYMBOL:
                        case INTO_SYMBOL:
                        case INVOKER_SYMBOL:
                        case IN_SYMBOL:
                        case IO_SYMBOL:
                        case IPC_SYMBOL:
                        case ISOLATION_SYMBOL:
                        case ISSUER_SYMBOL:
                        case IS_SYMBOL:
                        case JOIN_SYMBOL:
                        case KEY_BLOCK_SIZE_SYMBOL:
                        case LANGUAGE_SYMBOL:
                        case LAST_SYMBOL:
                        case LEAVES_SYMBOL:
                        case LEFT_SYMBOL:
                        case LESS_OR_EQUAL_OPERATOR:
                        case LESS_SYMBOL:
                        case LESS_THAN_OPERATOR:
                        case LEVEL_SYMBOL:
                        case LIKE_SYMBOL:
                        case LIMIT_SYMBOL:
                        case LINESTRING_SYMBOL:
                        case LIST_SYMBOL:
                        case LOCAL_SYMBOL:
                        case LOCKS_SYMBOL:
                        case LOCK_SYMBOL:
                        case LOGFILE_SYMBOL:
                        case LOGICAL_AND_OPERATOR:
                        case LOGICAL_OR_OPERATOR:
                        case LOGS_SYMBOL:
                        case MASTER_AUTO_POSITION_SYMBOL:
                        case MASTER_CONNECT_RETRY_SYMBOL:
                        case MASTER_DELAY_SYMBOL:
                        case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                        case MASTER_HOST_SYMBOL:
                        case MASTER_LOG_FILE_SYMBOL:
                        case MASTER_LOG_POS_SYMBOL:
                        case MASTER_PASSWORD_SYMBOL:
                        case MASTER_PORT_SYMBOL:
                        case MASTER_RETRY_COUNT_SYMBOL:
                        case MASTER_SERVER_ID_SYMBOL:
                        case MASTER_SSL_CAPATH_SYMBOL:
                        case MASTER_SSL_CA_SYMBOL:
                        case MASTER_SSL_CERT_SYMBOL:
                        case MASTER_SSL_CIPHER_SYMBOL:
                        case MASTER_SSL_CRLPATH_SYMBOL:
                        case MASTER_SSL_CRL_SYMBOL:
                        case MASTER_SSL_KEY_SYMBOL:
                        case MASTER_SSL_SYMBOL:
                        case MASTER_SYMBOL:
                        case MASTER_USER_SYMBOL:
                        case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                        case MAX_QUERIES_PER_HOUR_SYMBOL:
                        case MAX_ROWS_SYMBOL:
                        case MAX_SIZE_SYMBOL:
                        case MAX_UPDATES_PER_HOUR_SYMBOL:
                        case MAX_USER_CONNECTIONS_SYMBOL:
                        case MEDIUM_SYMBOL:
                        case MEMORY_SYMBOL:
                        case MERGE_SYMBOL:
                        case MESSAGE_TEXT_SYMBOL:
                        case MICROSECOND_SYMBOL:
                        case MIGRATE_SYMBOL:
                        case MINUS_OPERATOR:
                        case MINUTE_MICROSECOND_SYMBOL:
                        case MINUTE_SECOND_SYMBOL:
                        case MINUTE_SYMBOL:
                        case MIN_ROWS_SYMBOL:
                        case MODE_SYMBOL:
                        case MODIFY_SYMBOL:
                        case MOD_OPERATOR:
                        case MOD_SYMBOL:
                        case MONTH_SYMBOL:
                        case MULTILINESTRING_SYMBOL:
                        case MULTIPOINT_SYMBOL:
                        case MULTIPOLYGON_SYMBOL:
                        case MULT_OPERATOR:
                        case MUTEX_SYMBOL:
                        case MYSQL_ERRNO_SYMBOL:
                        case NAMES_SYMBOL:
                        case NAME_SYMBOL:
                        case NATIONAL_SYMBOL:
                        case NATURAL_SYMBOL:
                        case NCHAR_SYMBOL:
                        case NCHAR_TEXT:
                        case NDBCLUSTER_SYMBOL:
                        case NEW_SYMBOL:
                        case NEXT_SYMBOL:
                        case NODEGROUP_SYMBOL:
                        case NONE_SYMBOL:
                        case NOT_EQUAL2_OPERATOR:
                        case NOT_EQUAL_OPERATOR:
                        case NOT_SYMBOL:
                        case NO_SYMBOL:
                        case NO_WAIT_SYMBOL:
                        case NULL_SAFE_EQUAL_OPERATOR:
                        case NUMBER_SYMBOL:
                        case NVARCHAR_SYMBOL:
                        case OFFSET_SYMBOL:
                        case OLD_PASSWORD_SYMBOL:
                        case ONE_SHOT_SYMBOL:
                        case ONE_SYMBOL:
                        case ON_SYMBOL:
                        case OPEN_SYMBOL:
                        case OPTIONS_SYMBOL:
                        case ORDER_SYMBOL:
                        case OR_SYMBOL:
                        case OWNER_SYMBOL:
                        case PACK_KEYS_SYMBOL:
                        case PAGE_SYMBOL:
                        case PARSER_SYMBOL:
                        case PARTIAL_SYMBOL:
                        case PARTITIONING_SYMBOL:
                        case PARTITIONS_SYMBOL:
                        case PARTITION_SYMBOL:
                        case PASSWORD_SYMBOL:
                        case PHASE_SYMBOL:
                        case PLUGINS_SYMBOL:
                        case PLUGIN_DIR_SYMBOL:
                        case PLUGIN_SYMBOL:
                        case PLUS_OPERATOR:
                        case POINT_SYMBOL:
                        case POLYGON_SYMBOL:
                        case PORT_SYMBOL:
                        case PREPARE_SYMBOL:
                        case PRESERVE_SYMBOL:
                        case PREV_SYMBOL:
                        case PRIVILEGES_SYMBOL:
                        case PROCEDURE_SYMBOL:
                        case PROCESSLIST_SYMBOL:
                        case PROCESS_SYMBOL:
                        case PROFILES_SYMBOL:
                        case PROFILE_SYMBOL:
                        case PROXY_SYMBOL:
                        case QUARTER_SYMBOL:
                        case QUERY_SYMBOL:
                        case QUICK_SYMBOL:
                        case READ_ONLY_SYMBOL:
                        case REBUILD_SYMBOL:
                        case RECOVER_SYMBOL:
                        case REDOFILE_SYMBOL:
                        case REDO_BUFFER_SIZE_SYMBOL:
                        case REDUNDANT_SYMBOL:
                        case REGEXP_SYMBOL:
                        case RELAYLOG_SYMBOL:
                        case RELAY_LOG_FILE_SYMBOL:
                        case RELAY_LOG_POS_SYMBOL:
                        case RELAY_SYMBOL:
                        case RELAY_THREAD_SYMBOL:
                        case RELOAD_SYMBOL:
                        case REMOVE_SYMBOL:
                        case RENAME_SYMBOL:
                        case REORGANIZE_SYMBOL:
                        case REPAIR_SYMBOL:
                        case REPEATABLE_SYMBOL:
                        case REPLICATION_SYMBOL:
                        case RESET_SYMBOL:
                        case RESTORE_SYMBOL:
                        case RESUME_SYMBOL:
                        case RETURNED_SQLSTATE_SYMBOL:
                        case RETURNS_SYMBOL:
                        case REVERSE_SYMBOL:
                        case RIGHT_SYMBOL:
                        case ROLLBACK_SYMBOL:
                        case ROLLUP_SYMBOL:
                        case ROUTINE_SYMBOL:
                        case ROWS_SYMBOL:
                        case ROW_COUNT_SYMBOL:
                        case ROW_FORMAT_SYMBOL:
                        case ROW_SYMBOL:
                        case RTREE_SYMBOL:
                        case SAVEPOINT_SYMBOL:
                        case SCHEDULE_SYMBOL:
                        case SCHEMA_NAME_SYMBOL:
                        case SECOND_MICROSECOND_SYMBOL:
                        case SECOND_SYMBOL:
                        case SECURITY_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        case SEPARATOR_SYMBOL:
                        case SERIALIZABLE_SYMBOL:
                        case SERIAL_SYMBOL:
                        case SERVER_SYMBOL:
                        case SESSION_SYMBOL:
                        case SET_SYMBOL:
                        case SHARE_SYMBOL:
                        case SHIFT_LEFT_OPERATOR:
                        case SHIFT_RIGHT_OPERATOR:
                        case SHUTDOWN_SYMBOL:
                        case SIGNED_SYMBOL:
                        case SIMPLE_SYMBOL:
                        case SINGLE_QUOTED_TEXT:
                        case SLAVE_SYMBOL:
                        case SLOW_SYMBOL:
                        case SNAPSHOT_SYMBOL:
                        case SOCKET_SYMBOL:
                        case SONAME_SYMBOL:
                        case SOUNDS_SYMBOL:
                        case SOURCE_SYMBOL:
                        case SQL_AFTER_GTIDS_SYMBOL:
                        case SQL_AFTER_MTS_GAPS_SYMBOL:
                        case SQL_BEFORE_GTIDS_SYMBOL:
                        case SQL_BUFFER_RESULT_SYMBOL:
                        case SQL_CACHE_SYMBOL:
                        case SQL_NO_CACHE_SYMBOL:
                        case SQL_THREAD_SYMBOL:
                        case STARTS_SYMBOL:
                        case START_SYMBOL:
                        case STATS_AUTO_RECALC_SYMBOL:
                        case STATS_PERSISTENT_SYMBOL:
                        case STATS_SAMPLE_PAGES_SYMBOL:
                        case STATUS_SYMBOL:
                        case STOP_SYMBOL:
                        case STORAGE_SYMBOL:
                        case STRAIGHT_JOIN_SYMBOL:
                        case STRING_SYMBOL:
                        case SUBCLASS_ORIGIN_SYMBOL:
                        case SUBDATE_SYMBOL:
                        case SUBJECT_SYMBOL:
                        case SUBPARTITIONS_SYMBOL:
                        case SUBPARTITION_SYMBOL:
                        case SUPER_SYMBOL:
                        case SUSPEND_SYMBOL:
                        case SWAPS_SYMBOL:
                        case SWITCHES_SYMBOL:
                        case TABLESPACE_SYMBOL:
                        case TABLES_SYMBOL:
                        case TABLE_CHECKSUM_SYMBOL:
                        case TABLE_NAME_SYMBOL:
                        case TEMPORARY_SYMBOL:
                        case TEMPTABLE_SYMBOL:
                        case TEXT_SYMBOL:
                        case THAN_SYMBOL:
                        case THEN_SYMBOL:
                        case TIMESTAMP_ADD_SYMBOL:
                        case TIMESTAMP_DIFF_SYMBOL:
                        case TIMESTAMP_SYMBOL:
                        case TIME_SYMBOL:
                        case TRANSACTION_SYMBOL:
                        case TRIGGERS_SYMBOL:
                        case TRUNCATE_SYMBOL:
                        case TYPES_SYMBOL:
                        case TYPE_SYMBOL:
                        case UDF_RETURNS_SYMBOL:
                        case UNCOMMITTED_SYMBOL:
                        case UNDEFINED_SYMBOL:
                        case UNDERSCORE_CHARSET:
                        case UNDOFILE_SYMBOL:
                        case UNDO_BUFFER_SIZE_SYMBOL:
                        case UNICODE_SYMBOL:
                        case UNINSTALL_SYMBOL:
                        case UNION_SYMBOL:
                        case UNKNOWN_SYMBOL:
                        case UNTIL_SYMBOL:
                        case UPGRADE_SYMBOL:
                        case USER_RESOURCES_SYMBOL:
                        case USER_SYMBOL:
                        case USE_FRM_SYMBOL:
                        case USING_SYMBOL:
                        case VALUE_SYMBOL:
                        case VARIABLES_SYMBOL:
                        case VIEW_SYMBOL:
                        case WAIT_SYMBOL:
                        case WARNINGS_SYMBOL:
                        case WEEK_SYMBOL:
                        case WEIGHT_STRING_SYMBOL:
                        case WHEN_SYMBOL:
                        case WHERE_SYMBOL:
                        case WITH_SYMBOL:
                        case WORK_SYMBOL:
                        case WRAPPER_SYMBOL:
                        case X509_SYMBOL:
                        case XA_SYMBOL:
                        case XML_SYMBOL:
                        case XOR_SYMBOL:
                        case YEAR_MONTH_SYMBOL:
                        case YEAR_SYMBOL:
                        case 733:
                        	{
                        		alt527=3;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 527;
                            EXCEPTION->state        = 25;


                            goto ruleprimaryEx;

                        }

                    }
                    else if ( (LA527_0 == USER_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case DOT_SYMBOL:
                        	{
                        		{
                        		    int LA527_1214 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 1214;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case EOF:
                        case ACTION_SYMBOL:
                        case ADDDATE_SYMBOL:
                        case AFTER_SYMBOL:
                        case AGAINST_SYMBOL:
                        case AGGREGATE_SYMBOL:
                        case ALGORITHM_SYMBOL:
                        case ANALYZE_SYMBOL:
                        case AND_SYMBOL:
                        case ANY_SYMBOL:
                        case ASCII_SYMBOL:
                        case ASC_SYMBOL:
                        case AS_SYMBOL:
                        case AT_SYMBOL:
                        case AUTHORS_SYMBOL:
                        case AUTOEXTEND_SIZE_SYMBOL:
                        case AUTO_INCREMENT_SYMBOL:
                        case AVG_ROW_LENGTH_SYMBOL:
                        case AVG_SYMBOL:
                        case BACKUP_SYMBOL:
                        case BACK_TICK_QUOTED_ID:
                        case BEGIN_SYMBOL:
                        case BETWEEN_SYMBOL:
                        case BINLOG_SYMBOL:
                        case BITWISE_AND_OPERATOR:
                        case BITWISE_OR_OPERATOR:
                        case BITWISE_XOR_OPERATOR:
                        case BIT_SYMBOL:
                        case BLOCK_SYMBOL:
                        case BOOLEAN_SYMBOL:
                        case BOOL_SYMBOL:
                        case BTREE_SYMBOL:
                        case BYTE_SYMBOL:
                        case CACHE_SYMBOL:
                        case CASCADED_SYMBOL:
                        case CATALOG_NAME_SYMBOL:
                        case CHAIN_SYMBOL:
                        case CHANGED_SYMBOL:
                        case CHARSET_SYMBOL:
                        case CHECKSUM_SYMBOL:
                        case CIPHER_SYMBOL:
                        case CLASS_ORIGIN_SYMBOL:
                        case CLIENT_SYMBOL:
                        case CLOSE_PAR_SYMBOL:
                        case CLOSE_SYMBOL:
                        case COALESCE_SYMBOL:
                        case CODE_SYMBOL:
                        case COLLATE_SYMBOL:
                        case COLLATION_SYMBOL:
                        case COLUMNS_SYMBOL:
                        case COLUMN_FORMAT_SYMBOL:
                        case COLUMN_NAME_SYMBOL:
                        case COMMA_SYMBOL:
                        case COMMENT_SYMBOL:
                        case COMMITTED_SYMBOL:
                        case COMMIT_SYMBOL:
                        case COMPACT_SYMBOL:
                        case COMPLETION_SYMBOL:
                        case COMPRESSED_SYMBOL:
                        case CONCAT_PIPES_SYMBOL:
                        case CONCURRENT_SYMBOL:
                        case CONNECTION_SYMBOL:
                        case CONSISTENT_SYMBOL:
                        case CONSTRAINT_CATALOG_SYMBOL:
                        case CONSTRAINT_NAME_SYMBOL:
                        case CONSTRAINT_SCHEMA_SYMBOL:
                        case CONTAINS_SYMBOL:
                        case CONTEXT_SYMBOL:
                        case CONTRIBUTORS_SYMBOL:
                        case CPU_SYMBOL:
                        case CROSS_SYMBOL:
                        case CUBE_SYMBOL:
                        case CURRENT_SYMBOL:
                        case CURSOR_NAME_SYMBOL:
                        case DATAFILE_SYMBOL:
                        case DATA_SYMBOL:
                        case DATETIME_SYMBOL:
                        case DATE_SYMBOL:
                        case DAY_HOUR_SYMBOL:
                        case DAY_MICROSECOND_SYMBOL:
                        case DAY_MINUTE_SYMBOL:
                        case DAY_SECOND_SYMBOL:
                        case DAY_SYMBOL:
                        case DEALLOCATE_SYMBOL:
                        case DEFAULT_AUTH_SYMBOL:
                        case DEFINER_SYMBOL:
                        case DELAY_KEY_WRITE_SYMBOL:
                        case DESC_SYMBOL:
                        case DES_KEY_FILE_SYMBOL:
                        case DIAGNOSTICS_SYMBOL:
                        case DIRECTORY_SYMBOL:
                        case DISABLE_SYMBOL:
                        case DISCARD_SYMBOL:
                        case DISK_SYMBOL:
                        case DIV_OPERATOR:
                        case DIV_SYMBOL:
                        case DOUBLE_QUOTED_TEXT:
                        case DO_SYMBOL:
                        case DUMPFILE_SYMBOL:
                        case DUPLICATE_SYMBOL:
                        case DYNAMIC_SYMBOL:
                        case ELSE_SYMBOL:
                        case ENABLE_SYMBOL:
                        case ENDS_SYMBOL:
                        case END_SYMBOL:
                        case ENGINES_SYMBOL:
                        case ENGINE_SYMBOL:
                        case ENUM_SYMBOL:
                        case EQUAL_OPERATOR:
                        case ERRORS_SYMBOL:
                        case ERROR_SYMBOL:
                        case ESCAPE_SYMBOL:
                        case EVENTS_SYMBOL:
                        case EVENT_SYMBOL:
                        case EVERY_SYMBOL:
                        case EXECUTE_SYMBOL:
                        case EXPANSION_SYMBOL:
                        case EXPORT_SYMBOL:
                        case EXTENDED_SYMBOL:
                        case EXTENT_SIZE_SYMBOL:
                        case FAST_SYMBOL:
                        case FAULTS_SYMBOL:
                        case FILE_SYMBOL:
                        case FIRST_SYMBOL:
                        case FIXED_SYMBOL:
                        case FLUSH_SYMBOL:
                        case FORMAT_SYMBOL:
                        case FOR_SYMBOL:
                        case FOUND_SYMBOL:
                        case FRAC_SECOND_SYMBOL:
                        case FROM_SYMBOL:
                        case FULL_SYMBOL:
                        case FUNCTION_SYMBOL:
                        case GENERAL_SYMBOL:
                        case GEOMETRYCOLLECTION_SYMBOL:
                        case GEOMETRY_SYMBOL:
                        case GET_FORMAT_SYMBOL:
                        case GLOBAL_SYMBOL:
                        case GRANTS_SYMBOL:
                        case GREATER_OR_EQUAL_OPERATOR:
                        case GREATER_THAN_OPERATOR:
                        case GROUP_SYMBOL:
                        case HANDLER_SYMBOL:
                        case HASH_SYMBOL:
                        case HAVING_SYMBOL:
                        case HELP_SYMBOL:
                        case HOSTS_SYMBOL:
                        case HOST_SYMBOL:
                        case HOUR_MICROSECOND_SYMBOL:
                        case HOUR_MINUTE_SYMBOL:
                        case HOUR_SECOND_SYMBOL:
                        case HOUR_SYMBOL:
                        case IDENTIFIED_SYMBOL:
                        case IDENTIFIER:
                        case IGNORE_SERVER_IDS_SYMBOL:
                        case IMPORT_SYMBOL:
                        case INDEXES_SYMBOL:
                        case INITIAL_SIZE_SYMBOL:
                        case INNER_SYMBOL:
                        case INNODB_SYMBOL:
                        case INSERT_METHOD_SYMBOL:
                        case INSTALL_SYMBOL:
                        case INTO_SYMBOL:
                        case INVOKER_SYMBOL:
                        case IN_SYMBOL:
                        case IO_SYMBOL:
                        case IPC_SYMBOL:
                        case ISOLATION_SYMBOL:
                        case ISSUER_SYMBOL:
                        case IS_SYMBOL:
                        case JOIN_SYMBOL:
                        case KEY_BLOCK_SIZE_SYMBOL:
                        case LANGUAGE_SYMBOL:
                        case LAST_SYMBOL:
                        case LEAVES_SYMBOL:
                        case LEFT_SYMBOL:
                        case LESS_OR_EQUAL_OPERATOR:
                        case LESS_SYMBOL:
                        case LESS_THAN_OPERATOR:
                        case LEVEL_SYMBOL:
                        case LIKE_SYMBOL:
                        case LIMIT_SYMBOL:
                        case LINESTRING_SYMBOL:
                        case LIST_SYMBOL:
                        case LOCAL_SYMBOL:
                        case LOCKS_SYMBOL:
                        case LOCK_SYMBOL:
                        case LOGFILE_SYMBOL:
                        case LOGICAL_AND_OPERATOR:
                        case LOGICAL_OR_OPERATOR:
                        case LOGS_SYMBOL:
                        case MASTER_AUTO_POSITION_SYMBOL:
                        case MASTER_CONNECT_RETRY_SYMBOL:
                        case MASTER_DELAY_SYMBOL:
                        case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                        case MASTER_HOST_SYMBOL:
                        case MASTER_LOG_FILE_SYMBOL:
                        case MASTER_LOG_POS_SYMBOL:
                        case MASTER_PASSWORD_SYMBOL:
                        case MASTER_PORT_SYMBOL:
                        case MASTER_RETRY_COUNT_SYMBOL:
                        case MASTER_SERVER_ID_SYMBOL:
                        case MASTER_SSL_CAPATH_SYMBOL:
                        case MASTER_SSL_CA_SYMBOL:
                        case MASTER_SSL_CERT_SYMBOL:
                        case MASTER_SSL_CIPHER_SYMBOL:
                        case MASTER_SSL_CRLPATH_SYMBOL:
                        case MASTER_SSL_CRL_SYMBOL:
                        case MASTER_SSL_KEY_SYMBOL:
                        case MASTER_SSL_SYMBOL:
                        case MASTER_SYMBOL:
                        case MASTER_USER_SYMBOL:
                        case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                        case MAX_QUERIES_PER_HOUR_SYMBOL:
                        case MAX_ROWS_SYMBOL:
                        case MAX_SIZE_SYMBOL:
                        case MAX_UPDATES_PER_HOUR_SYMBOL:
                        case MAX_USER_CONNECTIONS_SYMBOL:
                        case MEDIUM_SYMBOL:
                        case MEMORY_SYMBOL:
                        case MERGE_SYMBOL:
                        case MESSAGE_TEXT_SYMBOL:
                        case MICROSECOND_SYMBOL:
                        case MIGRATE_SYMBOL:
                        case MINUS_OPERATOR:
                        case MINUTE_MICROSECOND_SYMBOL:
                        case MINUTE_SECOND_SYMBOL:
                        case MINUTE_SYMBOL:
                        case MIN_ROWS_SYMBOL:
                        case MODE_SYMBOL:
                        case MODIFY_SYMBOL:
                        case MOD_OPERATOR:
                        case MOD_SYMBOL:
                        case MONTH_SYMBOL:
                        case MULTILINESTRING_SYMBOL:
                        case MULTIPOINT_SYMBOL:
                        case MULTIPOLYGON_SYMBOL:
                        case MULT_OPERATOR:
                        case MUTEX_SYMBOL:
                        case MYSQL_ERRNO_SYMBOL:
                        case NAMES_SYMBOL:
                        case NAME_SYMBOL:
                        case NATIONAL_SYMBOL:
                        case NATURAL_SYMBOL:
                        case NCHAR_SYMBOL:
                        case NCHAR_TEXT:
                        case NDBCLUSTER_SYMBOL:
                        case NEW_SYMBOL:
                        case NEXT_SYMBOL:
                        case NODEGROUP_SYMBOL:
                        case NONE_SYMBOL:
                        case NOT_EQUAL2_OPERATOR:
                        case NOT_EQUAL_OPERATOR:
                        case NOT_SYMBOL:
                        case NO_SYMBOL:
                        case NO_WAIT_SYMBOL:
                        case NULL_SAFE_EQUAL_OPERATOR:
                        case NUMBER_SYMBOL:
                        case NVARCHAR_SYMBOL:
                        case OFFSET_SYMBOL:
                        case OLD_PASSWORD_SYMBOL:
                        case ONE_SHOT_SYMBOL:
                        case ONE_SYMBOL:
                        case ON_SYMBOL:
                        case OPEN_SYMBOL:
                        case OPTIONS_SYMBOL:
                        case ORDER_SYMBOL:
                        case OR_SYMBOL:
                        case OWNER_SYMBOL:
                        case PACK_KEYS_SYMBOL:
                        case PAGE_SYMBOL:
                        case PARSER_SYMBOL:
                        case PARTIAL_SYMBOL:
                        case PARTITIONING_SYMBOL:
                        case PARTITIONS_SYMBOL:
                        case PARTITION_SYMBOL:
                        case PASSWORD_SYMBOL:
                        case PHASE_SYMBOL:
                        case PLUGINS_SYMBOL:
                        case PLUGIN_DIR_SYMBOL:
                        case PLUGIN_SYMBOL:
                        case PLUS_OPERATOR:
                        case POINT_SYMBOL:
                        case POLYGON_SYMBOL:
                        case PORT_SYMBOL:
                        case PREPARE_SYMBOL:
                        case PRESERVE_SYMBOL:
                        case PREV_SYMBOL:
                        case PRIVILEGES_SYMBOL:
                        case PROCEDURE_SYMBOL:
                        case PROCESSLIST_SYMBOL:
                        case PROCESS_SYMBOL:
                        case PROFILES_SYMBOL:
                        case PROFILE_SYMBOL:
                        case PROXY_SYMBOL:
                        case QUARTER_SYMBOL:
                        case QUERY_SYMBOL:
                        case QUICK_SYMBOL:
                        case READ_ONLY_SYMBOL:
                        case REBUILD_SYMBOL:
                        case RECOVER_SYMBOL:
                        case REDOFILE_SYMBOL:
                        case REDO_BUFFER_SIZE_SYMBOL:
                        case REDUNDANT_SYMBOL:
                        case REGEXP_SYMBOL:
                        case RELAYLOG_SYMBOL:
                        case RELAY_LOG_FILE_SYMBOL:
                        case RELAY_LOG_POS_SYMBOL:
                        case RELAY_SYMBOL:
                        case RELAY_THREAD_SYMBOL:
                        case RELOAD_SYMBOL:
                        case REMOVE_SYMBOL:
                        case RENAME_SYMBOL:
                        case REORGANIZE_SYMBOL:
                        case REPAIR_SYMBOL:
                        case REPEATABLE_SYMBOL:
                        case REPLICATION_SYMBOL:
                        case RESET_SYMBOL:
                        case RESTORE_SYMBOL:
                        case RESUME_SYMBOL:
                        case RETURNED_SQLSTATE_SYMBOL:
                        case RETURNS_SYMBOL:
                        case REVERSE_SYMBOL:
                        case RIGHT_SYMBOL:
                        case ROLLBACK_SYMBOL:
                        case ROLLUP_SYMBOL:
                        case ROUTINE_SYMBOL:
                        case ROWS_SYMBOL:
                        case ROW_COUNT_SYMBOL:
                        case ROW_FORMAT_SYMBOL:
                        case ROW_SYMBOL:
                        case RTREE_SYMBOL:
                        case SAVEPOINT_SYMBOL:
                        case SCHEDULE_SYMBOL:
                        case SCHEMA_NAME_SYMBOL:
                        case SECOND_MICROSECOND_SYMBOL:
                        case SECOND_SYMBOL:
                        case SECURITY_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        case SEPARATOR_SYMBOL:
                        case SERIALIZABLE_SYMBOL:
                        case SERIAL_SYMBOL:
                        case SERVER_SYMBOL:
                        case SESSION_SYMBOL:
                        case SET_SYMBOL:
                        case SHARE_SYMBOL:
                        case SHIFT_LEFT_OPERATOR:
                        case SHIFT_RIGHT_OPERATOR:
                        case SHUTDOWN_SYMBOL:
                        case SIGNED_SYMBOL:
                        case SIMPLE_SYMBOL:
                        case SINGLE_QUOTED_TEXT:
                        case SLAVE_SYMBOL:
                        case SLOW_SYMBOL:
                        case SNAPSHOT_SYMBOL:
                        case SOCKET_SYMBOL:
                        case SONAME_SYMBOL:
                        case SOUNDS_SYMBOL:
                        case SOURCE_SYMBOL:
                        case SQL_AFTER_GTIDS_SYMBOL:
                        case SQL_AFTER_MTS_GAPS_SYMBOL:
                        case SQL_BEFORE_GTIDS_SYMBOL:
                        case SQL_BUFFER_RESULT_SYMBOL:
                        case SQL_CACHE_SYMBOL:
                        case SQL_NO_CACHE_SYMBOL:
                        case SQL_THREAD_SYMBOL:
                        case STARTS_SYMBOL:
                        case START_SYMBOL:
                        case STATS_AUTO_RECALC_SYMBOL:
                        case STATS_PERSISTENT_SYMBOL:
                        case STATS_SAMPLE_PAGES_SYMBOL:
                        case STATUS_SYMBOL:
                        case STOP_SYMBOL:
                        case STORAGE_SYMBOL:
                        case STRAIGHT_JOIN_SYMBOL:
                        case STRING_SYMBOL:
                        case SUBCLASS_ORIGIN_SYMBOL:
                        case SUBDATE_SYMBOL:
                        case SUBJECT_SYMBOL:
                        case SUBPARTITIONS_SYMBOL:
                        case SUBPARTITION_SYMBOL:
                        case SUPER_SYMBOL:
                        case SUSPEND_SYMBOL:
                        case SWAPS_SYMBOL:
                        case SWITCHES_SYMBOL:
                        case TABLESPACE_SYMBOL:
                        case TABLES_SYMBOL:
                        case TABLE_CHECKSUM_SYMBOL:
                        case TABLE_NAME_SYMBOL:
                        case TEMPORARY_SYMBOL:
                        case TEMPTABLE_SYMBOL:
                        case TEXT_SYMBOL:
                        case THAN_SYMBOL:
                        case THEN_SYMBOL:
                        case TIMESTAMP_ADD_SYMBOL:
                        case TIMESTAMP_DIFF_SYMBOL:
                        case TIMESTAMP_SYMBOL:
                        case TIME_SYMBOL:
                        case TRANSACTION_SYMBOL:
                        case TRIGGERS_SYMBOL:
                        case TRUNCATE_SYMBOL:
                        case TYPES_SYMBOL:
                        case TYPE_SYMBOL:
                        case UDF_RETURNS_SYMBOL:
                        case UNCOMMITTED_SYMBOL:
                        case UNDEFINED_SYMBOL:
                        case UNDERSCORE_CHARSET:
                        case UNDOFILE_SYMBOL:
                        case UNDO_BUFFER_SIZE_SYMBOL:
                        case UNICODE_SYMBOL:
                        case UNINSTALL_SYMBOL:
                        case UNION_SYMBOL:
                        case UNKNOWN_SYMBOL:
                        case UNTIL_SYMBOL:
                        case UPGRADE_SYMBOL:
                        case USER_RESOURCES_SYMBOL:
                        case USER_SYMBOL:
                        case USE_FRM_SYMBOL:
                        case USING_SYMBOL:
                        case VALUE_SYMBOL:
                        case VARIABLES_SYMBOL:
                        case VIEW_SYMBOL:
                        case WAIT_SYMBOL:
                        case WARNINGS_SYMBOL:
                        case WEEK_SYMBOL:
                        case WEIGHT_STRING_SYMBOL:
                        case WHEN_SYMBOL:
                        case WHERE_SYMBOL:
                        case WITH_SYMBOL:
                        case WORK_SYMBOL:
                        case WRAPPER_SYMBOL:
                        case X509_SYMBOL:
                        case XA_SYMBOL:
                        case XML_SYMBOL:
                        case XOR_SYMBOL:
                        case YEAR_MONTH_SYMBOL:
                        case YEAR_SYMBOL:
                        case 733:
                        	{
                        		alt527=3;
                        	}
                            break;
                        case OPEN_PAR_SYMBOL:
                        	{
                        		{
                        		    int LA527_1306 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=4;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 1306;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 527;
                            EXCEPTION->state        = 27;


                            goto ruleprimaryEx;

                        }

                    }
                    else if ( (LA527_0 == YEAR_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case OPEN_PAR_SYMBOL:
                        	{
                        		{
                        		    int LA527_1307 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=4;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 1307;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case DOT_SYMBOL:
                        	{
                        		{
                        		    int LA527_1308 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 1308;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case EOF:
                        case ACTION_SYMBOL:
                        case ADDDATE_SYMBOL:
                        case AFTER_SYMBOL:
                        case AGAINST_SYMBOL:
                        case AGGREGATE_SYMBOL:
                        case ALGORITHM_SYMBOL:
                        case ANALYZE_SYMBOL:
                        case AND_SYMBOL:
                        case ANY_SYMBOL:
                        case ASCII_SYMBOL:
                        case ASC_SYMBOL:
                        case AS_SYMBOL:
                        case AT_SYMBOL:
                        case AUTHORS_SYMBOL:
                        case AUTOEXTEND_SIZE_SYMBOL:
                        case AUTO_INCREMENT_SYMBOL:
                        case AVG_ROW_LENGTH_SYMBOL:
                        case AVG_SYMBOL:
                        case BACKUP_SYMBOL:
                        case BACK_TICK_QUOTED_ID:
                        case BEGIN_SYMBOL:
                        case BETWEEN_SYMBOL:
                        case BINLOG_SYMBOL:
                        case BITWISE_AND_OPERATOR:
                        case BITWISE_OR_OPERATOR:
                        case BITWISE_XOR_OPERATOR:
                        case BIT_SYMBOL:
                        case BLOCK_SYMBOL:
                        case BOOLEAN_SYMBOL:
                        case BOOL_SYMBOL:
                        case BTREE_SYMBOL:
                        case BYTE_SYMBOL:
                        case CACHE_SYMBOL:
                        case CASCADED_SYMBOL:
                        case CATALOG_NAME_SYMBOL:
                        case CHAIN_SYMBOL:
                        case CHANGED_SYMBOL:
                        case CHARSET_SYMBOL:
                        case CHECKSUM_SYMBOL:
                        case CIPHER_SYMBOL:
                        case CLASS_ORIGIN_SYMBOL:
                        case CLIENT_SYMBOL:
                        case CLOSE_PAR_SYMBOL:
                        case CLOSE_SYMBOL:
                        case COALESCE_SYMBOL:
                        case CODE_SYMBOL:
                        case COLLATE_SYMBOL:
                        case COLLATION_SYMBOL:
                        case COLUMNS_SYMBOL:
                        case COLUMN_FORMAT_SYMBOL:
                        case COLUMN_NAME_SYMBOL:
                        case COMMA_SYMBOL:
                        case COMMENT_SYMBOL:
                        case COMMITTED_SYMBOL:
                        case COMMIT_SYMBOL:
                        case COMPACT_SYMBOL:
                        case COMPLETION_SYMBOL:
                        case COMPRESSED_SYMBOL:
                        case CONCAT_PIPES_SYMBOL:
                        case CONCURRENT_SYMBOL:
                        case CONNECTION_SYMBOL:
                        case CONSISTENT_SYMBOL:
                        case CONSTRAINT_CATALOG_SYMBOL:
                        case CONSTRAINT_NAME_SYMBOL:
                        case CONSTRAINT_SCHEMA_SYMBOL:
                        case CONTAINS_SYMBOL:
                        case CONTEXT_SYMBOL:
                        case CONTRIBUTORS_SYMBOL:
                        case CPU_SYMBOL:
                        case CROSS_SYMBOL:
                        case CUBE_SYMBOL:
                        case CURRENT_SYMBOL:
                        case CURSOR_NAME_SYMBOL:
                        case DATAFILE_SYMBOL:
                        case DATA_SYMBOL:
                        case DATETIME_SYMBOL:
                        case DATE_SYMBOL:
                        case DAY_HOUR_SYMBOL:
                        case DAY_MICROSECOND_SYMBOL:
                        case DAY_MINUTE_SYMBOL:
                        case DAY_SECOND_SYMBOL:
                        case DAY_SYMBOL:
                        case DEALLOCATE_SYMBOL:
                        case DEFAULT_AUTH_SYMBOL:
                        case DEFINER_SYMBOL:
                        case DELAY_KEY_WRITE_SYMBOL:
                        case DESC_SYMBOL:
                        case DES_KEY_FILE_SYMBOL:
                        case DIAGNOSTICS_SYMBOL:
                        case DIRECTORY_SYMBOL:
                        case DISABLE_SYMBOL:
                        case DISCARD_SYMBOL:
                        case DISK_SYMBOL:
                        case DIV_OPERATOR:
                        case DIV_SYMBOL:
                        case DOUBLE_QUOTED_TEXT:
                        case DO_SYMBOL:
                        case DUMPFILE_SYMBOL:
                        case DUPLICATE_SYMBOL:
                        case DYNAMIC_SYMBOL:
                        case ELSE_SYMBOL:
                        case ENABLE_SYMBOL:
                        case ENDS_SYMBOL:
                        case END_SYMBOL:
                        case ENGINES_SYMBOL:
                        case ENGINE_SYMBOL:
                        case ENUM_SYMBOL:
                        case EQUAL_OPERATOR:
                        case ERRORS_SYMBOL:
                        case ERROR_SYMBOL:
                        case ESCAPE_SYMBOL:
                        case EVENTS_SYMBOL:
                        case EVENT_SYMBOL:
                        case EVERY_SYMBOL:
                        case EXECUTE_SYMBOL:
                        case EXPANSION_SYMBOL:
                        case EXPORT_SYMBOL:
                        case EXTENDED_SYMBOL:
                        case EXTENT_SIZE_SYMBOL:
                        case FAST_SYMBOL:
                        case FAULTS_SYMBOL:
                        case FILE_SYMBOL:
                        case FIRST_SYMBOL:
                        case FIXED_SYMBOL:
                        case FLUSH_SYMBOL:
                        case FORMAT_SYMBOL:
                        case FOR_SYMBOL:
                        case FOUND_SYMBOL:
                        case FRAC_SECOND_SYMBOL:
                        case FROM_SYMBOL:
                        case FULL_SYMBOL:
                        case FUNCTION_SYMBOL:
                        case GENERAL_SYMBOL:
                        case GEOMETRYCOLLECTION_SYMBOL:
                        case GEOMETRY_SYMBOL:
                        case GET_FORMAT_SYMBOL:
                        case GLOBAL_SYMBOL:
                        case GRANTS_SYMBOL:
                        case GREATER_OR_EQUAL_OPERATOR:
                        case GREATER_THAN_OPERATOR:
                        case GROUP_SYMBOL:
                        case HANDLER_SYMBOL:
                        case HASH_SYMBOL:
                        case HAVING_SYMBOL:
                        case HELP_SYMBOL:
                        case HOSTS_SYMBOL:
                        case HOST_SYMBOL:
                        case HOUR_MICROSECOND_SYMBOL:
                        case HOUR_MINUTE_SYMBOL:
                        case HOUR_SECOND_SYMBOL:
                        case HOUR_SYMBOL:
                        case IDENTIFIED_SYMBOL:
                        case IDENTIFIER:
                        case IGNORE_SERVER_IDS_SYMBOL:
                        case IMPORT_SYMBOL:
                        case INDEXES_SYMBOL:
                        case INITIAL_SIZE_SYMBOL:
                        case INNER_SYMBOL:
                        case INNODB_SYMBOL:
                        case INSERT_METHOD_SYMBOL:
                        case INSTALL_SYMBOL:
                        case INTO_SYMBOL:
                        case INVOKER_SYMBOL:
                        case IN_SYMBOL:
                        case IO_SYMBOL:
                        case IPC_SYMBOL:
                        case ISOLATION_SYMBOL:
                        case ISSUER_SYMBOL:
                        case IS_SYMBOL:
                        case JOIN_SYMBOL:
                        case KEY_BLOCK_SIZE_SYMBOL:
                        case LANGUAGE_SYMBOL:
                        case LAST_SYMBOL:
                        case LEAVES_SYMBOL:
                        case LEFT_SYMBOL:
                        case LESS_OR_EQUAL_OPERATOR:
                        case LESS_SYMBOL:
                        case LESS_THAN_OPERATOR:
                        case LEVEL_SYMBOL:
                        case LIKE_SYMBOL:
                        case LIMIT_SYMBOL:
                        case LINESTRING_SYMBOL:
                        case LIST_SYMBOL:
                        case LOCAL_SYMBOL:
                        case LOCKS_SYMBOL:
                        case LOCK_SYMBOL:
                        case LOGFILE_SYMBOL:
                        case LOGICAL_AND_OPERATOR:
                        case LOGICAL_OR_OPERATOR:
                        case LOGS_SYMBOL:
                        case MASTER_AUTO_POSITION_SYMBOL:
                        case MASTER_CONNECT_RETRY_SYMBOL:
                        case MASTER_DELAY_SYMBOL:
                        case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                        case MASTER_HOST_SYMBOL:
                        case MASTER_LOG_FILE_SYMBOL:
                        case MASTER_LOG_POS_SYMBOL:
                        case MASTER_PASSWORD_SYMBOL:
                        case MASTER_PORT_SYMBOL:
                        case MASTER_RETRY_COUNT_SYMBOL:
                        case MASTER_SERVER_ID_SYMBOL:
                        case MASTER_SSL_CAPATH_SYMBOL:
                        case MASTER_SSL_CA_SYMBOL:
                        case MASTER_SSL_CERT_SYMBOL:
                        case MASTER_SSL_CIPHER_SYMBOL:
                        case MASTER_SSL_CRLPATH_SYMBOL:
                        case MASTER_SSL_CRL_SYMBOL:
                        case MASTER_SSL_KEY_SYMBOL:
                        case MASTER_SSL_SYMBOL:
                        case MASTER_SYMBOL:
                        case MASTER_USER_SYMBOL:
                        case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                        case MAX_QUERIES_PER_HOUR_SYMBOL:
                        case MAX_ROWS_SYMBOL:
                        case MAX_SIZE_SYMBOL:
                        case MAX_UPDATES_PER_HOUR_SYMBOL:
                        case MAX_USER_CONNECTIONS_SYMBOL:
                        case MEDIUM_SYMBOL:
                        case MEMORY_SYMBOL:
                        case MERGE_SYMBOL:
                        case MESSAGE_TEXT_SYMBOL:
                        case MICROSECOND_SYMBOL:
                        case MIGRATE_SYMBOL:
                        case MINUS_OPERATOR:
                        case MINUTE_MICROSECOND_SYMBOL:
                        case MINUTE_SECOND_SYMBOL:
                        case MINUTE_SYMBOL:
                        case MIN_ROWS_SYMBOL:
                        case MODE_SYMBOL:
                        case MODIFY_SYMBOL:
                        case MOD_OPERATOR:
                        case MOD_SYMBOL:
                        case MONTH_SYMBOL:
                        case MULTILINESTRING_SYMBOL:
                        case MULTIPOINT_SYMBOL:
                        case MULTIPOLYGON_SYMBOL:
                        case MULT_OPERATOR:
                        case MUTEX_SYMBOL:
                        case MYSQL_ERRNO_SYMBOL:
                        case NAMES_SYMBOL:
                        case NAME_SYMBOL:
                        case NATIONAL_SYMBOL:
                        case NATURAL_SYMBOL:
                        case NCHAR_SYMBOL:
                        case NCHAR_TEXT:
                        case NDBCLUSTER_SYMBOL:
                        case NEW_SYMBOL:
                        case NEXT_SYMBOL:
                        case NODEGROUP_SYMBOL:
                        case NONE_SYMBOL:
                        case NOT_EQUAL2_OPERATOR:
                        case NOT_EQUAL_OPERATOR:
                        case NOT_SYMBOL:
                        case NO_SYMBOL:
                        case NO_WAIT_SYMBOL:
                        case NULL_SAFE_EQUAL_OPERATOR:
                        case NUMBER_SYMBOL:
                        case NVARCHAR_SYMBOL:
                        case OFFSET_SYMBOL:
                        case OLD_PASSWORD_SYMBOL:
                        case ONE_SHOT_SYMBOL:
                        case ONE_SYMBOL:
                        case ON_SYMBOL:
                        case OPEN_SYMBOL:
                        case OPTIONS_SYMBOL:
                        case ORDER_SYMBOL:
                        case OR_SYMBOL:
                        case OWNER_SYMBOL:
                        case PACK_KEYS_SYMBOL:
                        case PAGE_SYMBOL:
                        case PARSER_SYMBOL:
                        case PARTIAL_SYMBOL:
                        case PARTITIONING_SYMBOL:
                        case PARTITIONS_SYMBOL:
                        case PARTITION_SYMBOL:
                        case PASSWORD_SYMBOL:
                        case PHASE_SYMBOL:
                        case PLUGINS_SYMBOL:
                        case PLUGIN_DIR_SYMBOL:
                        case PLUGIN_SYMBOL:
                        case PLUS_OPERATOR:
                        case POINT_SYMBOL:
                        case POLYGON_SYMBOL:
                        case PORT_SYMBOL:
                        case PREPARE_SYMBOL:
                        case PRESERVE_SYMBOL:
                        case PREV_SYMBOL:
                        case PRIVILEGES_SYMBOL:
                        case PROCEDURE_SYMBOL:
                        case PROCESSLIST_SYMBOL:
                        case PROCESS_SYMBOL:
                        case PROFILES_SYMBOL:
                        case PROFILE_SYMBOL:
                        case PROXY_SYMBOL:
                        case QUARTER_SYMBOL:
                        case QUERY_SYMBOL:
                        case QUICK_SYMBOL:
                        case READ_ONLY_SYMBOL:
                        case REBUILD_SYMBOL:
                        case RECOVER_SYMBOL:
                        case REDOFILE_SYMBOL:
                        case REDO_BUFFER_SIZE_SYMBOL:
                        case REDUNDANT_SYMBOL:
                        case REGEXP_SYMBOL:
                        case RELAYLOG_SYMBOL:
                        case RELAY_LOG_FILE_SYMBOL:
                        case RELAY_LOG_POS_SYMBOL:
                        case RELAY_SYMBOL:
                        case RELAY_THREAD_SYMBOL:
                        case RELOAD_SYMBOL:
                        case REMOVE_SYMBOL:
                        case RENAME_SYMBOL:
                        case REORGANIZE_SYMBOL:
                        case REPAIR_SYMBOL:
                        case REPEATABLE_SYMBOL:
                        case REPLICATION_SYMBOL:
                        case RESET_SYMBOL:
                        case RESTORE_SYMBOL:
                        case RESUME_SYMBOL:
                        case RETURNED_SQLSTATE_SYMBOL:
                        case RETURNS_SYMBOL:
                        case REVERSE_SYMBOL:
                        case RIGHT_SYMBOL:
                        case ROLLBACK_SYMBOL:
                        case ROLLUP_SYMBOL:
                        case ROUTINE_SYMBOL:
                        case ROWS_SYMBOL:
                        case ROW_COUNT_SYMBOL:
                        case ROW_FORMAT_SYMBOL:
                        case ROW_SYMBOL:
                        case RTREE_SYMBOL:
                        case SAVEPOINT_SYMBOL:
                        case SCHEDULE_SYMBOL:
                        case SCHEMA_NAME_SYMBOL:
                        case SECOND_MICROSECOND_SYMBOL:
                        case SECOND_SYMBOL:
                        case SECURITY_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        case SEPARATOR_SYMBOL:
                        case SERIALIZABLE_SYMBOL:
                        case SERIAL_SYMBOL:
                        case SERVER_SYMBOL:
                        case SESSION_SYMBOL:
                        case SET_SYMBOL:
                        case SHARE_SYMBOL:
                        case SHIFT_LEFT_OPERATOR:
                        case SHIFT_RIGHT_OPERATOR:
                        case SHUTDOWN_SYMBOL:
                        case SIGNED_SYMBOL:
                        case SIMPLE_SYMBOL:
                        case SINGLE_QUOTED_TEXT:
                        case SLAVE_SYMBOL:
                        case SLOW_SYMBOL:
                        case SNAPSHOT_SYMBOL:
                        case SOCKET_SYMBOL:
                        case SONAME_SYMBOL:
                        case SOUNDS_SYMBOL:
                        case SOURCE_SYMBOL:
                        case SQL_AFTER_GTIDS_SYMBOL:
                        case SQL_AFTER_MTS_GAPS_SYMBOL:
                        case SQL_BEFORE_GTIDS_SYMBOL:
                        case SQL_BUFFER_RESULT_SYMBOL:
                        case SQL_CACHE_SYMBOL:
                        case SQL_NO_CACHE_SYMBOL:
                        case SQL_THREAD_SYMBOL:
                        case STARTS_SYMBOL:
                        case START_SYMBOL:
                        case STATS_AUTO_RECALC_SYMBOL:
                        case STATS_PERSISTENT_SYMBOL:
                        case STATS_SAMPLE_PAGES_SYMBOL:
                        case STATUS_SYMBOL:
                        case STOP_SYMBOL:
                        case STORAGE_SYMBOL:
                        case STRAIGHT_JOIN_SYMBOL:
                        case STRING_SYMBOL:
                        case SUBCLASS_ORIGIN_SYMBOL:
                        case SUBDATE_SYMBOL:
                        case SUBJECT_SYMBOL:
                        case SUBPARTITIONS_SYMBOL:
                        case SUBPARTITION_SYMBOL:
                        case SUPER_SYMBOL:
                        case SUSPEND_SYMBOL:
                        case SWAPS_SYMBOL:
                        case SWITCHES_SYMBOL:
                        case TABLESPACE_SYMBOL:
                        case TABLES_SYMBOL:
                        case TABLE_CHECKSUM_SYMBOL:
                        case TABLE_NAME_SYMBOL:
                        case TEMPORARY_SYMBOL:
                        case TEMPTABLE_SYMBOL:
                        case TEXT_SYMBOL:
                        case THAN_SYMBOL:
                        case THEN_SYMBOL:
                        case TIMESTAMP_ADD_SYMBOL:
                        case TIMESTAMP_DIFF_SYMBOL:
                        case TIMESTAMP_SYMBOL:
                        case TIME_SYMBOL:
                        case TRANSACTION_SYMBOL:
                        case TRIGGERS_SYMBOL:
                        case TRUNCATE_SYMBOL:
                        case TYPES_SYMBOL:
                        case TYPE_SYMBOL:
                        case UDF_RETURNS_SYMBOL:
                        case UNCOMMITTED_SYMBOL:
                        case UNDEFINED_SYMBOL:
                        case UNDERSCORE_CHARSET:
                        case UNDOFILE_SYMBOL:
                        case UNDO_BUFFER_SIZE_SYMBOL:
                        case UNICODE_SYMBOL:
                        case UNINSTALL_SYMBOL:
                        case UNION_SYMBOL:
                        case UNKNOWN_SYMBOL:
                        case UNTIL_SYMBOL:
                        case UPGRADE_SYMBOL:
                        case USER_RESOURCES_SYMBOL:
                        case USER_SYMBOL:
                        case USE_FRM_SYMBOL:
                        case USING_SYMBOL:
                        case VALUE_SYMBOL:
                        case VARIABLES_SYMBOL:
                        case VIEW_SYMBOL:
                        case WAIT_SYMBOL:
                        case WARNINGS_SYMBOL:
                        case WEEK_SYMBOL:
                        case WEIGHT_STRING_SYMBOL:
                        case WHEN_SYMBOL:
                        case WHERE_SYMBOL:
                        case WITH_SYMBOL:
                        case WORK_SYMBOL:
                        case WRAPPER_SYMBOL:
                        case X509_SYMBOL:
                        case XA_SYMBOL:
                        case XML_SYMBOL:
                        case XOR_SYMBOL:
                        case YEAR_MONTH_SYMBOL:
                        case YEAR_SYMBOL:
                        case 733:
                        	{
                        		alt527=3;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 527;
                            EXCEPTION->state        = 29;


                            goto ruleprimaryEx;

                        }

                    }
                    else if ( (LA527_0 == ADDDATE_SYMBOL || LA527_0 == SUBDATE_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case OPEN_PAR_SYMBOL:
                        	{
                        		{
                        		    int LA527_1400 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=4;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 1400;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case DOT_SYMBOL:
                        	{
                        		{
                        		    int LA527_1401 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 1401;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case EOF:
                        case ACTION_SYMBOL:
                        case ADDDATE_SYMBOL:
                        case AFTER_SYMBOL:
                        case AGAINST_SYMBOL:
                        case AGGREGATE_SYMBOL:
                        case ALGORITHM_SYMBOL:
                        case ANALYZE_SYMBOL:
                        case AND_SYMBOL:
                        case ANY_SYMBOL:
                        case ASCII_SYMBOL:
                        case ASC_SYMBOL:
                        case AS_SYMBOL:
                        case AT_SYMBOL:
                        case AUTHORS_SYMBOL:
                        case AUTOEXTEND_SIZE_SYMBOL:
                        case AUTO_INCREMENT_SYMBOL:
                        case AVG_ROW_LENGTH_SYMBOL:
                        case AVG_SYMBOL:
                        case BACKUP_SYMBOL:
                        case BACK_TICK_QUOTED_ID:
                        case BEGIN_SYMBOL:
                        case BETWEEN_SYMBOL:
                        case BINLOG_SYMBOL:
                        case BITWISE_AND_OPERATOR:
                        case BITWISE_OR_OPERATOR:
                        case BITWISE_XOR_OPERATOR:
                        case BIT_SYMBOL:
                        case BLOCK_SYMBOL:
                        case BOOLEAN_SYMBOL:
                        case BOOL_SYMBOL:
                        case BTREE_SYMBOL:
                        case BYTE_SYMBOL:
                        case CACHE_SYMBOL:
                        case CASCADED_SYMBOL:
                        case CATALOG_NAME_SYMBOL:
                        case CHAIN_SYMBOL:
                        case CHANGED_SYMBOL:
                        case CHARSET_SYMBOL:
                        case CHECKSUM_SYMBOL:
                        case CIPHER_SYMBOL:
                        case CLASS_ORIGIN_SYMBOL:
                        case CLIENT_SYMBOL:
                        case CLOSE_PAR_SYMBOL:
                        case CLOSE_SYMBOL:
                        case COALESCE_SYMBOL:
                        case CODE_SYMBOL:
                        case COLLATE_SYMBOL:
                        case COLLATION_SYMBOL:
                        case COLUMNS_SYMBOL:
                        case COLUMN_FORMAT_SYMBOL:
                        case COLUMN_NAME_SYMBOL:
                        case COMMA_SYMBOL:
                        case COMMENT_SYMBOL:
                        case COMMITTED_SYMBOL:
                        case COMMIT_SYMBOL:
                        case COMPACT_SYMBOL:
                        case COMPLETION_SYMBOL:
                        case COMPRESSED_SYMBOL:
                        case CONCAT_PIPES_SYMBOL:
                        case CONCURRENT_SYMBOL:
                        case CONNECTION_SYMBOL:
                        case CONSISTENT_SYMBOL:
                        case CONSTRAINT_CATALOG_SYMBOL:
                        case CONSTRAINT_NAME_SYMBOL:
                        case CONSTRAINT_SCHEMA_SYMBOL:
                        case CONTAINS_SYMBOL:
                        case CONTEXT_SYMBOL:
                        case CONTRIBUTORS_SYMBOL:
                        case CPU_SYMBOL:
                        case CROSS_SYMBOL:
                        case CUBE_SYMBOL:
                        case CURRENT_SYMBOL:
                        case CURSOR_NAME_SYMBOL:
                        case DATAFILE_SYMBOL:
                        case DATA_SYMBOL:
                        case DATETIME_SYMBOL:
                        case DATE_SYMBOL:
                        case DAY_HOUR_SYMBOL:
                        case DAY_MICROSECOND_SYMBOL:
                        case DAY_MINUTE_SYMBOL:
                        case DAY_SECOND_SYMBOL:
                        case DAY_SYMBOL:
                        case DEALLOCATE_SYMBOL:
                        case DEFAULT_AUTH_SYMBOL:
                        case DEFINER_SYMBOL:
                        case DELAY_KEY_WRITE_SYMBOL:
                        case DESC_SYMBOL:
                        case DES_KEY_FILE_SYMBOL:
                        case DIAGNOSTICS_SYMBOL:
                        case DIRECTORY_SYMBOL:
                        case DISABLE_SYMBOL:
                        case DISCARD_SYMBOL:
                        case DISK_SYMBOL:
                        case DIV_OPERATOR:
                        case DIV_SYMBOL:
                        case DOUBLE_QUOTED_TEXT:
                        case DO_SYMBOL:
                        case DUMPFILE_SYMBOL:
                        case DUPLICATE_SYMBOL:
                        case DYNAMIC_SYMBOL:
                        case ELSE_SYMBOL:
                        case ENABLE_SYMBOL:
                        case ENDS_SYMBOL:
                        case END_SYMBOL:
                        case ENGINES_SYMBOL:
                        case ENGINE_SYMBOL:
                        case ENUM_SYMBOL:
                        case EQUAL_OPERATOR:
                        case ERRORS_SYMBOL:
                        case ERROR_SYMBOL:
                        case ESCAPE_SYMBOL:
                        case EVENTS_SYMBOL:
                        case EVENT_SYMBOL:
                        case EVERY_SYMBOL:
                        case EXECUTE_SYMBOL:
                        case EXPANSION_SYMBOL:
                        case EXPORT_SYMBOL:
                        case EXTENDED_SYMBOL:
                        case EXTENT_SIZE_SYMBOL:
                        case FAST_SYMBOL:
                        case FAULTS_SYMBOL:
                        case FILE_SYMBOL:
                        case FIRST_SYMBOL:
                        case FIXED_SYMBOL:
                        case FLUSH_SYMBOL:
                        case FORMAT_SYMBOL:
                        case FOR_SYMBOL:
                        case FOUND_SYMBOL:
                        case FRAC_SECOND_SYMBOL:
                        case FROM_SYMBOL:
                        case FULL_SYMBOL:
                        case FUNCTION_SYMBOL:
                        case GENERAL_SYMBOL:
                        case GEOMETRYCOLLECTION_SYMBOL:
                        case GEOMETRY_SYMBOL:
                        case GET_FORMAT_SYMBOL:
                        case GLOBAL_SYMBOL:
                        case GRANTS_SYMBOL:
                        case GREATER_OR_EQUAL_OPERATOR:
                        case GREATER_THAN_OPERATOR:
                        case GROUP_SYMBOL:
                        case HANDLER_SYMBOL:
                        case HASH_SYMBOL:
                        case HAVING_SYMBOL:
                        case HELP_SYMBOL:
                        case HOSTS_SYMBOL:
                        case HOST_SYMBOL:
                        case HOUR_MICROSECOND_SYMBOL:
                        case HOUR_MINUTE_SYMBOL:
                        case HOUR_SECOND_SYMBOL:
                        case HOUR_SYMBOL:
                        case IDENTIFIED_SYMBOL:
                        case IDENTIFIER:
                        case IGNORE_SERVER_IDS_SYMBOL:
                        case IMPORT_SYMBOL:
                        case INDEXES_SYMBOL:
                        case INITIAL_SIZE_SYMBOL:
                        case INNER_SYMBOL:
                        case INNODB_SYMBOL:
                        case INSERT_METHOD_SYMBOL:
                        case INSTALL_SYMBOL:
                        case INTO_SYMBOL:
                        case INVOKER_SYMBOL:
                        case IN_SYMBOL:
                        case IO_SYMBOL:
                        case IPC_SYMBOL:
                        case ISOLATION_SYMBOL:
                        case ISSUER_SYMBOL:
                        case IS_SYMBOL:
                        case JOIN_SYMBOL:
                        case KEY_BLOCK_SIZE_SYMBOL:
                        case LANGUAGE_SYMBOL:
                        case LAST_SYMBOL:
                        case LEAVES_SYMBOL:
                        case LEFT_SYMBOL:
                        case LESS_OR_EQUAL_OPERATOR:
                        case LESS_SYMBOL:
                        case LESS_THAN_OPERATOR:
                        case LEVEL_SYMBOL:
                        case LIKE_SYMBOL:
                        case LIMIT_SYMBOL:
                        case LINESTRING_SYMBOL:
                        case LIST_SYMBOL:
                        case LOCAL_SYMBOL:
                        case LOCKS_SYMBOL:
                        case LOCK_SYMBOL:
                        case LOGFILE_SYMBOL:
                        case LOGICAL_AND_OPERATOR:
                        case LOGICAL_OR_OPERATOR:
                        case LOGS_SYMBOL:
                        case MASTER_AUTO_POSITION_SYMBOL:
                        case MASTER_CONNECT_RETRY_SYMBOL:
                        case MASTER_DELAY_SYMBOL:
                        case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                        case MASTER_HOST_SYMBOL:
                        case MASTER_LOG_FILE_SYMBOL:
                        case MASTER_LOG_POS_SYMBOL:
                        case MASTER_PASSWORD_SYMBOL:
                        case MASTER_PORT_SYMBOL:
                        case MASTER_RETRY_COUNT_SYMBOL:
                        case MASTER_SERVER_ID_SYMBOL:
                        case MASTER_SSL_CAPATH_SYMBOL:
                        case MASTER_SSL_CA_SYMBOL:
                        case MASTER_SSL_CERT_SYMBOL:
                        case MASTER_SSL_CIPHER_SYMBOL:
                        case MASTER_SSL_CRLPATH_SYMBOL:
                        case MASTER_SSL_CRL_SYMBOL:
                        case MASTER_SSL_KEY_SYMBOL:
                        case MASTER_SSL_SYMBOL:
                        case MASTER_SYMBOL:
                        case MASTER_USER_SYMBOL:
                        case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                        case MAX_QUERIES_PER_HOUR_SYMBOL:
                        case MAX_ROWS_SYMBOL:
                        case MAX_SIZE_SYMBOL:
                        case MAX_UPDATES_PER_HOUR_SYMBOL:
                        case MAX_USER_CONNECTIONS_SYMBOL:
                        case MEDIUM_SYMBOL:
                        case MEMORY_SYMBOL:
                        case MERGE_SYMBOL:
                        case MESSAGE_TEXT_SYMBOL:
                        case MICROSECOND_SYMBOL:
                        case MIGRATE_SYMBOL:
                        case MINUS_OPERATOR:
                        case MINUTE_MICROSECOND_SYMBOL:
                        case MINUTE_SECOND_SYMBOL:
                        case MINUTE_SYMBOL:
                        case MIN_ROWS_SYMBOL:
                        case MODE_SYMBOL:
                        case MODIFY_SYMBOL:
                        case MOD_OPERATOR:
                        case MOD_SYMBOL:
                        case MONTH_SYMBOL:
                        case MULTILINESTRING_SYMBOL:
                        case MULTIPOINT_SYMBOL:
                        case MULTIPOLYGON_SYMBOL:
                        case MULT_OPERATOR:
                        case MUTEX_SYMBOL:
                        case MYSQL_ERRNO_SYMBOL:
                        case NAMES_SYMBOL:
                        case NAME_SYMBOL:
                        case NATIONAL_SYMBOL:
                        case NATURAL_SYMBOL:
                        case NCHAR_SYMBOL:
                        case NCHAR_TEXT:
                        case NDBCLUSTER_SYMBOL:
                        case NEW_SYMBOL:
                        case NEXT_SYMBOL:
                        case NODEGROUP_SYMBOL:
                        case NONE_SYMBOL:
                        case NOT_EQUAL2_OPERATOR:
                        case NOT_EQUAL_OPERATOR:
                        case NOT_SYMBOL:
                        case NO_SYMBOL:
                        case NO_WAIT_SYMBOL:
                        case NULL_SAFE_EQUAL_OPERATOR:
                        case NUMBER_SYMBOL:
                        case NVARCHAR_SYMBOL:
                        case OFFSET_SYMBOL:
                        case OLD_PASSWORD_SYMBOL:
                        case ONE_SHOT_SYMBOL:
                        case ONE_SYMBOL:
                        case ON_SYMBOL:
                        case OPEN_SYMBOL:
                        case OPTIONS_SYMBOL:
                        case ORDER_SYMBOL:
                        case OR_SYMBOL:
                        case OWNER_SYMBOL:
                        case PACK_KEYS_SYMBOL:
                        case PAGE_SYMBOL:
                        case PARSER_SYMBOL:
                        case PARTIAL_SYMBOL:
                        case PARTITIONING_SYMBOL:
                        case PARTITIONS_SYMBOL:
                        case PARTITION_SYMBOL:
                        case PASSWORD_SYMBOL:
                        case PHASE_SYMBOL:
                        case PLUGINS_SYMBOL:
                        case PLUGIN_DIR_SYMBOL:
                        case PLUGIN_SYMBOL:
                        case PLUS_OPERATOR:
                        case POINT_SYMBOL:
                        case POLYGON_SYMBOL:
                        case PORT_SYMBOL:
                        case PREPARE_SYMBOL:
                        case PRESERVE_SYMBOL:
                        case PREV_SYMBOL:
                        case PRIVILEGES_SYMBOL:
                        case PROCEDURE_SYMBOL:
                        case PROCESSLIST_SYMBOL:
                        case PROCESS_SYMBOL:
                        case PROFILES_SYMBOL:
                        case PROFILE_SYMBOL:
                        case PROXY_SYMBOL:
                        case QUARTER_SYMBOL:
                        case QUERY_SYMBOL:
                        case QUICK_SYMBOL:
                        case READ_ONLY_SYMBOL:
                        case REBUILD_SYMBOL:
                        case RECOVER_SYMBOL:
                        case REDOFILE_SYMBOL:
                        case REDO_BUFFER_SIZE_SYMBOL:
                        case REDUNDANT_SYMBOL:
                        case REGEXP_SYMBOL:
                        case RELAYLOG_SYMBOL:
                        case RELAY_LOG_FILE_SYMBOL:
                        case RELAY_LOG_POS_SYMBOL:
                        case RELAY_SYMBOL:
                        case RELAY_THREAD_SYMBOL:
                        case RELOAD_SYMBOL:
                        case REMOVE_SYMBOL:
                        case RENAME_SYMBOL:
                        case REORGANIZE_SYMBOL:
                        case REPAIR_SYMBOL:
                        case REPEATABLE_SYMBOL:
                        case REPLICATION_SYMBOL:
                        case RESET_SYMBOL:
                        case RESTORE_SYMBOL:
                        case RESUME_SYMBOL:
                        case RETURNED_SQLSTATE_SYMBOL:
                        case RETURNS_SYMBOL:
                        case REVERSE_SYMBOL:
                        case RIGHT_SYMBOL:
                        case ROLLBACK_SYMBOL:
                        case ROLLUP_SYMBOL:
                        case ROUTINE_SYMBOL:
                        case ROWS_SYMBOL:
                        case ROW_COUNT_SYMBOL:
                        case ROW_FORMAT_SYMBOL:
                        case ROW_SYMBOL:
                        case RTREE_SYMBOL:
                        case SAVEPOINT_SYMBOL:
                        case SCHEDULE_SYMBOL:
                        case SCHEMA_NAME_SYMBOL:
                        case SECOND_MICROSECOND_SYMBOL:
                        case SECOND_SYMBOL:
                        case SECURITY_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        case SEPARATOR_SYMBOL:
                        case SERIALIZABLE_SYMBOL:
                        case SERIAL_SYMBOL:
                        case SERVER_SYMBOL:
                        case SESSION_SYMBOL:
                        case SET_SYMBOL:
                        case SHARE_SYMBOL:
                        case SHIFT_LEFT_OPERATOR:
                        case SHIFT_RIGHT_OPERATOR:
                        case SHUTDOWN_SYMBOL:
                        case SIGNED_SYMBOL:
                        case SIMPLE_SYMBOL:
                        case SINGLE_QUOTED_TEXT:
                        case SLAVE_SYMBOL:
                        case SLOW_SYMBOL:
                        case SNAPSHOT_SYMBOL:
                        case SOCKET_SYMBOL:
                        case SONAME_SYMBOL:
                        case SOUNDS_SYMBOL:
                        case SOURCE_SYMBOL:
                        case SQL_AFTER_GTIDS_SYMBOL:
                        case SQL_AFTER_MTS_GAPS_SYMBOL:
                        case SQL_BEFORE_GTIDS_SYMBOL:
                        case SQL_BUFFER_RESULT_SYMBOL:
                        case SQL_CACHE_SYMBOL:
                        case SQL_NO_CACHE_SYMBOL:
                        case SQL_THREAD_SYMBOL:
                        case STARTS_SYMBOL:
                        case START_SYMBOL:
                        case STATS_AUTO_RECALC_SYMBOL:
                        case STATS_PERSISTENT_SYMBOL:
                        case STATS_SAMPLE_PAGES_SYMBOL:
                        case STATUS_SYMBOL:
                        case STOP_SYMBOL:
                        case STORAGE_SYMBOL:
                        case STRAIGHT_JOIN_SYMBOL:
                        case STRING_SYMBOL:
                        case SUBCLASS_ORIGIN_SYMBOL:
                        case SUBDATE_SYMBOL:
                        case SUBJECT_SYMBOL:
                        case SUBPARTITIONS_SYMBOL:
                        case SUBPARTITION_SYMBOL:
                        case SUPER_SYMBOL:
                        case SUSPEND_SYMBOL:
                        case SWAPS_SYMBOL:
                        case SWITCHES_SYMBOL:
                        case TABLESPACE_SYMBOL:
                        case TABLES_SYMBOL:
                        case TABLE_CHECKSUM_SYMBOL:
                        case TABLE_NAME_SYMBOL:
                        case TEMPORARY_SYMBOL:
                        case TEMPTABLE_SYMBOL:
                        case TEXT_SYMBOL:
                        case THAN_SYMBOL:
                        case THEN_SYMBOL:
                        case TIMESTAMP_ADD_SYMBOL:
                        case TIMESTAMP_DIFF_SYMBOL:
                        case TIMESTAMP_SYMBOL:
                        case TIME_SYMBOL:
                        case TRANSACTION_SYMBOL:
                        case TRIGGERS_SYMBOL:
                        case TRUNCATE_SYMBOL:
                        case TYPES_SYMBOL:
                        case TYPE_SYMBOL:
                        case UDF_RETURNS_SYMBOL:
                        case UNCOMMITTED_SYMBOL:
                        case UNDEFINED_SYMBOL:
                        case UNDERSCORE_CHARSET:
                        case UNDOFILE_SYMBOL:
                        case UNDO_BUFFER_SIZE_SYMBOL:
                        case UNICODE_SYMBOL:
                        case UNINSTALL_SYMBOL:
                        case UNION_SYMBOL:
                        case UNKNOWN_SYMBOL:
                        case UNTIL_SYMBOL:
                        case UPGRADE_SYMBOL:
                        case USER_RESOURCES_SYMBOL:
                        case USER_SYMBOL:
                        case USE_FRM_SYMBOL:
                        case USING_SYMBOL:
                        case VALUE_SYMBOL:
                        case VARIABLES_SYMBOL:
                        case VIEW_SYMBOL:
                        case WAIT_SYMBOL:
                        case WARNINGS_SYMBOL:
                        case WEEK_SYMBOL:
                        case WEIGHT_STRING_SYMBOL:
                        case WHEN_SYMBOL:
                        case WHERE_SYMBOL:
                        case WITH_SYMBOL:
                        case WORK_SYMBOL:
                        case WRAPPER_SYMBOL:
                        case X509_SYMBOL:
                        case XA_SYMBOL:
                        case XML_SYMBOL:
                        case XOR_SYMBOL:
                        case YEAR_MONTH_SYMBOL:
                        case YEAR_SYMBOL:
                        case 733:
                        	{
                        		alt527=3;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 527;
                            EXCEPTION->state        = 31;


                            goto ruleprimaryEx;

                        }

                    }
                    else if ( (LA527_0 == GET_FORMAT_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case OPEN_PAR_SYMBOL:
                        	{
                        		{
                        		    int LA527_1493 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=4;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 1493;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case DOT_SYMBOL:
                        	{
                        		{
                        		    int LA527_1494 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 1494;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case EOF:
                        case ACTION_SYMBOL:
                        case ADDDATE_SYMBOL:
                        case AFTER_SYMBOL:
                        case AGAINST_SYMBOL:
                        case AGGREGATE_SYMBOL:
                        case ALGORITHM_SYMBOL:
                        case ANALYZE_SYMBOL:
                        case AND_SYMBOL:
                        case ANY_SYMBOL:
                        case ASCII_SYMBOL:
                        case ASC_SYMBOL:
                        case AS_SYMBOL:
                        case AT_SYMBOL:
                        case AUTHORS_SYMBOL:
                        case AUTOEXTEND_SIZE_SYMBOL:
                        case AUTO_INCREMENT_SYMBOL:
                        case AVG_ROW_LENGTH_SYMBOL:
                        case AVG_SYMBOL:
                        case BACKUP_SYMBOL:
                        case BACK_TICK_QUOTED_ID:
                        case BEGIN_SYMBOL:
                        case BETWEEN_SYMBOL:
                        case BINLOG_SYMBOL:
                        case BITWISE_AND_OPERATOR:
                        case BITWISE_OR_OPERATOR:
                        case BITWISE_XOR_OPERATOR:
                        case BIT_SYMBOL:
                        case BLOCK_SYMBOL:
                        case BOOLEAN_SYMBOL:
                        case BOOL_SYMBOL:
                        case BTREE_SYMBOL:
                        case BYTE_SYMBOL:
                        case CACHE_SYMBOL:
                        case CASCADED_SYMBOL:
                        case CATALOG_NAME_SYMBOL:
                        case CHAIN_SYMBOL:
                        case CHANGED_SYMBOL:
                        case CHARSET_SYMBOL:
                        case CHECKSUM_SYMBOL:
                        case CIPHER_SYMBOL:
                        case CLASS_ORIGIN_SYMBOL:
                        case CLIENT_SYMBOL:
                        case CLOSE_PAR_SYMBOL:
                        case CLOSE_SYMBOL:
                        case COALESCE_SYMBOL:
                        case CODE_SYMBOL:
                        case COLLATE_SYMBOL:
                        case COLLATION_SYMBOL:
                        case COLUMNS_SYMBOL:
                        case COLUMN_FORMAT_SYMBOL:
                        case COLUMN_NAME_SYMBOL:
                        case COMMA_SYMBOL:
                        case COMMENT_SYMBOL:
                        case COMMITTED_SYMBOL:
                        case COMMIT_SYMBOL:
                        case COMPACT_SYMBOL:
                        case COMPLETION_SYMBOL:
                        case COMPRESSED_SYMBOL:
                        case CONCAT_PIPES_SYMBOL:
                        case CONCURRENT_SYMBOL:
                        case CONNECTION_SYMBOL:
                        case CONSISTENT_SYMBOL:
                        case CONSTRAINT_CATALOG_SYMBOL:
                        case CONSTRAINT_NAME_SYMBOL:
                        case CONSTRAINT_SCHEMA_SYMBOL:
                        case CONTAINS_SYMBOL:
                        case CONTEXT_SYMBOL:
                        case CONTRIBUTORS_SYMBOL:
                        case CPU_SYMBOL:
                        case CROSS_SYMBOL:
                        case CUBE_SYMBOL:
                        case CURRENT_SYMBOL:
                        case CURSOR_NAME_SYMBOL:
                        case DATAFILE_SYMBOL:
                        case DATA_SYMBOL:
                        case DATETIME_SYMBOL:
                        case DATE_SYMBOL:
                        case DAY_HOUR_SYMBOL:
                        case DAY_MICROSECOND_SYMBOL:
                        case DAY_MINUTE_SYMBOL:
                        case DAY_SECOND_SYMBOL:
                        case DAY_SYMBOL:
                        case DEALLOCATE_SYMBOL:
                        case DEFAULT_AUTH_SYMBOL:
                        case DEFINER_SYMBOL:
                        case DELAY_KEY_WRITE_SYMBOL:
                        case DESC_SYMBOL:
                        case DES_KEY_FILE_SYMBOL:
                        case DIAGNOSTICS_SYMBOL:
                        case DIRECTORY_SYMBOL:
                        case DISABLE_SYMBOL:
                        case DISCARD_SYMBOL:
                        case DISK_SYMBOL:
                        case DIV_OPERATOR:
                        case DIV_SYMBOL:
                        case DOUBLE_QUOTED_TEXT:
                        case DO_SYMBOL:
                        case DUMPFILE_SYMBOL:
                        case DUPLICATE_SYMBOL:
                        case DYNAMIC_SYMBOL:
                        case ELSE_SYMBOL:
                        case ENABLE_SYMBOL:
                        case ENDS_SYMBOL:
                        case END_SYMBOL:
                        case ENGINES_SYMBOL:
                        case ENGINE_SYMBOL:
                        case ENUM_SYMBOL:
                        case EQUAL_OPERATOR:
                        case ERRORS_SYMBOL:
                        case ERROR_SYMBOL:
                        case ESCAPE_SYMBOL:
                        case EVENTS_SYMBOL:
                        case EVENT_SYMBOL:
                        case EVERY_SYMBOL:
                        case EXECUTE_SYMBOL:
                        case EXPANSION_SYMBOL:
                        case EXPORT_SYMBOL:
                        case EXTENDED_SYMBOL:
                        case EXTENT_SIZE_SYMBOL:
                        case FAST_SYMBOL:
                        case FAULTS_SYMBOL:
                        case FILE_SYMBOL:
                        case FIRST_SYMBOL:
                        case FIXED_SYMBOL:
                        case FLUSH_SYMBOL:
                        case FORMAT_SYMBOL:
                        case FOR_SYMBOL:
                        case FOUND_SYMBOL:
                        case FRAC_SECOND_SYMBOL:
                        case FROM_SYMBOL:
                        case FULL_SYMBOL:
                        case FUNCTION_SYMBOL:
                        case GENERAL_SYMBOL:
                        case GEOMETRYCOLLECTION_SYMBOL:
                        case GEOMETRY_SYMBOL:
                        case GET_FORMAT_SYMBOL:
                        case GLOBAL_SYMBOL:
                        case GRANTS_SYMBOL:
                        case GREATER_OR_EQUAL_OPERATOR:
                        case GREATER_THAN_OPERATOR:
                        case GROUP_SYMBOL:
                        case HANDLER_SYMBOL:
                        case HASH_SYMBOL:
                        case HAVING_SYMBOL:
                        case HELP_SYMBOL:
                        case HOSTS_SYMBOL:
                        case HOST_SYMBOL:
                        case HOUR_MICROSECOND_SYMBOL:
                        case HOUR_MINUTE_SYMBOL:
                        case HOUR_SECOND_SYMBOL:
                        case HOUR_SYMBOL:
                        case IDENTIFIED_SYMBOL:
                        case IDENTIFIER:
                        case IGNORE_SERVER_IDS_SYMBOL:
                        case IMPORT_SYMBOL:
                        case INDEXES_SYMBOL:
                        case INITIAL_SIZE_SYMBOL:
                        case INNER_SYMBOL:
                        case INNODB_SYMBOL:
                        case INSERT_METHOD_SYMBOL:
                        case INSTALL_SYMBOL:
                        case INTO_SYMBOL:
                        case INVOKER_SYMBOL:
                        case IN_SYMBOL:
                        case IO_SYMBOL:
                        case IPC_SYMBOL:
                        case ISOLATION_SYMBOL:
                        case ISSUER_SYMBOL:
                        case IS_SYMBOL:
                        case JOIN_SYMBOL:
                        case KEY_BLOCK_SIZE_SYMBOL:
                        case LANGUAGE_SYMBOL:
                        case LAST_SYMBOL:
                        case LEAVES_SYMBOL:
                        case LEFT_SYMBOL:
                        case LESS_OR_EQUAL_OPERATOR:
                        case LESS_SYMBOL:
                        case LESS_THAN_OPERATOR:
                        case LEVEL_SYMBOL:
                        case LIKE_SYMBOL:
                        case LIMIT_SYMBOL:
                        case LINESTRING_SYMBOL:
                        case LIST_SYMBOL:
                        case LOCAL_SYMBOL:
                        case LOCKS_SYMBOL:
                        case LOCK_SYMBOL:
                        case LOGFILE_SYMBOL:
                        case LOGICAL_AND_OPERATOR:
                        case LOGICAL_OR_OPERATOR:
                        case LOGS_SYMBOL:
                        case MASTER_AUTO_POSITION_SYMBOL:
                        case MASTER_CONNECT_RETRY_SYMBOL:
                        case MASTER_DELAY_SYMBOL:
                        case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                        case MASTER_HOST_SYMBOL:
                        case MASTER_LOG_FILE_SYMBOL:
                        case MASTER_LOG_POS_SYMBOL:
                        case MASTER_PASSWORD_SYMBOL:
                        case MASTER_PORT_SYMBOL:
                        case MASTER_RETRY_COUNT_SYMBOL:
                        case MASTER_SERVER_ID_SYMBOL:
                        case MASTER_SSL_CAPATH_SYMBOL:
                        case MASTER_SSL_CA_SYMBOL:
                        case MASTER_SSL_CERT_SYMBOL:
                        case MASTER_SSL_CIPHER_SYMBOL:
                        case MASTER_SSL_CRLPATH_SYMBOL:
                        case MASTER_SSL_CRL_SYMBOL:
                        case MASTER_SSL_KEY_SYMBOL:
                        case MASTER_SSL_SYMBOL:
                        case MASTER_SYMBOL:
                        case MASTER_USER_SYMBOL:
                        case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                        case MAX_QUERIES_PER_HOUR_SYMBOL:
                        case MAX_ROWS_SYMBOL:
                        case MAX_SIZE_SYMBOL:
                        case MAX_UPDATES_PER_HOUR_SYMBOL:
                        case MAX_USER_CONNECTIONS_SYMBOL:
                        case MEDIUM_SYMBOL:
                        case MEMORY_SYMBOL:
                        case MERGE_SYMBOL:
                        case MESSAGE_TEXT_SYMBOL:
                        case MICROSECOND_SYMBOL:
                        case MIGRATE_SYMBOL:
                        case MINUS_OPERATOR:
                        case MINUTE_MICROSECOND_SYMBOL:
                        case MINUTE_SECOND_SYMBOL:
                        case MINUTE_SYMBOL:
                        case MIN_ROWS_SYMBOL:
                        case MODE_SYMBOL:
                        case MODIFY_SYMBOL:
                        case MOD_OPERATOR:
                        case MOD_SYMBOL:
                        case MONTH_SYMBOL:
                        case MULTILINESTRING_SYMBOL:
                        case MULTIPOINT_SYMBOL:
                        case MULTIPOLYGON_SYMBOL:
                        case MULT_OPERATOR:
                        case MUTEX_SYMBOL:
                        case MYSQL_ERRNO_SYMBOL:
                        case NAMES_SYMBOL:
                        case NAME_SYMBOL:
                        case NATIONAL_SYMBOL:
                        case NATURAL_SYMBOL:
                        case NCHAR_SYMBOL:
                        case NCHAR_TEXT:
                        case NDBCLUSTER_SYMBOL:
                        case NEW_SYMBOL:
                        case NEXT_SYMBOL:
                        case NODEGROUP_SYMBOL:
                        case NONE_SYMBOL:
                        case NOT_EQUAL2_OPERATOR:
                        case NOT_EQUAL_OPERATOR:
                        case NOT_SYMBOL:
                        case NO_SYMBOL:
                        case NO_WAIT_SYMBOL:
                        case NULL_SAFE_EQUAL_OPERATOR:
                        case NUMBER_SYMBOL:
                        case NVARCHAR_SYMBOL:
                        case OFFSET_SYMBOL:
                        case OLD_PASSWORD_SYMBOL:
                        case ONE_SHOT_SYMBOL:
                        case ONE_SYMBOL:
                        case ON_SYMBOL:
                        case OPEN_SYMBOL:
                        case OPTIONS_SYMBOL:
                        case ORDER_SYMBOL:
                        case OR_SYMBOL:
                        case OWNER_SYMBOL:
                        case PACK_KEYS_SYMBOL:
                        case PAGE_SYMBOL:
                        case PARSER_SYMBOL:
                        case PARTIAL_SYMBOL:
                        case PARTITIONING_SYMBOL:
                        case PARTITIONS_SYMBOL:
                        case PARTITION_SYMBOL:
                        case PASSWORD_SYMBOL:
                        case PHASE_SYMBOL:
                        case PLUGINS_SYMBOL:
                        case PLUGIN_DIR_SYMBOL:
                        case PLUGIN_SYMBOL:
                        case PLUS_OPERATOR:
                        case POINT_SYMBOL:
                        case POLYGON_SYMBOL:
                        case PORT_SYMBOL:
                        case PREPARE_SYMBOL:
                        case PRESERVE_SYMBOL:
                        case PREV_SYMBOL:
                        case PRIVILEGES_SYMBOL:
                        case PROCEDURE_SYMBOL:
                        case PROCESSLIST_SYMBOL:
                        case PROCESS_SYMBOL:
                        case PROFILES_SYMBOL:
                        case PROFILE_SYMBOL:
                        case PROXY_SYMBOL:
                        case QUARTER_SYMBOL:
                        case QUERY_SYMBOL:
                        case QUICK_SYMBOL:
                        case READ_ONLY_SYMBOL:
                        case REBUILD_SYMBOL:
                        case RECOVER_SYMBOL:
                        case REDOFILE_SYMBOL:
                        case REDO_BUFFER_SIZE_SYMBOL:
                        case REDUNDANT_SYMBOL:
                        case REGEXP_SYMBOL:
                        case RELAYLOG_SYMBOL:
                        case RELAY_LOG_FILE_SYMBOL:
                        case RELAY_LOG_POS_SYMBOL:
                        case RELAY_SYMBOL:
                        case RELAY_THREAD_SYMBOL:
                        case RELOAD_SYMBOL:
                        case REMOVE_SYMBOL:
                        case RENAME_SYMBOL:
                        case REORGANIZE_SYMBOL:
                        case REPAIR_SYMBOL:
                        case REPEATABLE_SYMBOL:
                        case REPLICATION_SYMBOL:
                        case RESET_SYMBOL:
                        case RESTORE_SYMBOL:
                        case RESUME_SYMBOL:
                        case RETURNED_SQLSTATE_SYMBOL:
                        case RETURNS_SYMBOL:
                        case REVERSE_SYMBOL:
                        case RIGHT_SYMBOL:
                        case ROLLBACK_SYMBOL:
                        case ROLLUP_SYMBOL:
                        case ROUTINE_SYMBOL:
                        case ROWS_SYMBOL:
                        case ROW_COUNT_SYMBOL:
                        case ROW_FORMAT_SYMBOL:
                        case ROW_SYMBOL:
                        case RTREE_SYMBOL:
                        case SAVEPOINT_SYMBOL:
                        case SCHEDULE_SYMBOL:
                        case SCHEMA_NAME_SYMBOL:
                        case SECOND_MICROSECOND_SYMBOL:
                        case SECOND_SYMBOL:
                        case SECURITY_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        case SEPARATOR_SYMBOL:
                        case SERIALIZABLE_SYMBOL:
                        case SERIAL_SYMBOL:
                        case SERVER_SYMBOL:
                        case SESSION_SYMBOL:
                        case SET_SYMBOL:
                        case SHARE_SYMBOL:
                        case SHIFT_LEFT_OPERATOR:
                        case SHIFT_RIGHT_OPERATOR:
                        case SHUTDOWN_SYMBOL:
                        case SIGNED_SYMBOL:
                        case SIMPLE_SYMBOL:
                        case SINGLE_QUOTED_TEXT:
                        case SLAVE_SYMBOL:
                        case SLOW_SYMBOL:
                        case SNAPSHOT_SYMBOL:
                        case SOCKET_SYMBOL:
                        case SONAME_SYMBOL:
                        case SOUNDS_SYMBOL:
                        case SOURCE_SYMBOL:
                        case SQL_AFTER_GTIDS_SYMBOL:
                        case SQL_AFTER_MTS_GAPS_SYMBOL:
                        case SQL_BEFORE_GTIDS_SYMBOL:
                        case SQL_BUFFER_RESULT_SYMBOL:
                        case SQL_CACHE_SYMBOL:
                        case SQL_NO_CACHE_SYMBOL:
                        case SQL_THREAD_SYMBOL:
                        case STARTS_SYMBOL:
                        case START_SYMBOL:
                        case STATS_AUTO_RECALC_SYMBOL:
                        case STATS_PERSISTENT_SYMBOL:
                        case STATS_SAMPLE_PAGES_SYMBOL:
                        case STATUS_SYMBOL:
                        case STOP_SYMBOL:
                        case STORAGE_SYMBOL:
                        case STRAIGHT_JOIN_SYMBOL:
                        case STRING_SYMBOL:
                        case SUBCLASS_ORIGIN_SYMBOL:
                        case SUBDATE_SYMBOL:
                        case SUBJECT_SYMBOL:
                        case SUBPARTITIONS_SYMBOL:
                        case SUBPARTITION_SYMBOL:
                        case SUPER_SYMBOL:
                        case SUSPEND_SYMBOL:
                        case SWAPS_SYMBOL:
                        case SWITCHES_SYMBOL:
                        case TABLESPACE_SYMBOL:
                        case TABLES_SYMBOL:
                        case TABLE_CHECKSUM_SYMBOL:
                        case TABLE_NAME_SYMBOL:
                        case TEMPORARY_SYMBOL:
                        case TEMPTABLE_SYMBOL:
                        case TEXT_SYMBOL:
                        case THAN_SYMBOL:
                        case THEN_SYMBOL:
                        case TIMESTAMP_ADD_SYMBOL:
                        case TIMESTAMP_DIFF_SYMBOL:
                        case TIMESTAMP_SYMBOL:
                        case TIME_SYMBOL:
                        case TRANSACTION_SYMBOL:
                        case TRIGGERS_SYMBOL:
                        case TRUNCATE_SYMBOL:
                        case TYPES_SYMBOL:
                        case TYPE_SYMBOL:
                        case UDF_RETURNS_SYMBOL:
                        case UNCOMMITTED_SYMBOL:
                        case UNDEFINED_SYMBOL:
                        case UNDERSCORE_CHARSET:
                        case UNDOFILE_SYMBOL:
                        case UNDO_BUFFER_SIZE_SYMBOL:
                        case UNICODE_SYMBOL:
                        case UNINSTALL_SYMBOL:
                        case UNION_SYMBOL:
                        case UNKNOWN_SYMBOL:
                        case UNTIL_SYMBOL:
                        case UPGRADE_SYMBOL:
                        case USER_RESOURCES_SYMBOL:
                        case USER_SYMBOL:
                        case USE_FRM_SYMBOL:
                        case USING_SYMBOL:
                        case VALUE_SYMBOL:
                        case VARIABLES_SYMBOL:
                        case VIEW_SYMBOL:
                        case WAIT_SYMBOL:
                        case WARNINGS_SYMBOL:
                        case WEEK_SYMBOL:
                        case WEIGHT_STRING_SYMBOL:
                        case WHEN_SYMBOL:
                        case WHERE_SYMBOL:
                        case WITH_SYMBOL:
                        case WORK_SYMBOL:
                        case WRAPPER_SYMBOL:
                        case X509_SYMBOL:
                        case XA_SYMBOL:
                        case XML_SYMBOL:
                        case XOR_SYMBOL:
                        case YEAR_MONTH_SYMBOL:
                        case YEAR_SYMBOL:
                        case 733:
                        	{
                        		alt527=3;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 527;
                            EXCEPTION->state        = 32;


                            goto ruleprimaryEx;

                        }

                    }
                    else if ( (((LA527_0 >= TIMESTAMP_ADD_SYMBOL) && (LA527_0 <= TIMESTAMP_DIFF_SYMBOL))))
                    {
                        switch ( LA(2) )
                        {
                        case OPEN_PAR_SYMBOL:
                        	{
                        		{
                        		    int LA527_1586 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=4;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 1586;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case DOT_SYMBOL:
                        	{
                        		{
                        		    int LA527_1587 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 1587;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case EOF:
                        case ACTION_SYMBOL:
                        case ADDDATE_SYMBOL:
                        case AFTER_SYMBOL:
                        case AGAINST_SYMBOL:
                        case AGGREGATE_SYMBOL:
                        case ALGORITHM_SYMBOL:
                        case ANALYZE_SYMBOL:
                        case AND_SYMBOL:
                        case ANY_SYMBOL:
                        case ASCII_SYMBOL:
                        case ASC_SYMBOL:
                        case AS_SYMBOL:
                        case AT_SYMBOL:
                        case AUTHORS_SYMBOL:
                        case AUTOEXTEND_SIZE_SYMBOL:
                        case AUTO_INCREMENT_SYMBOL:
                        case AVG_ROW_LENGTH_SYMBOL:
                        case AVG_SYMBOL:
                        case BACKUP_SYMBOL:
                        case BACK_TICK_QUOTED_ID:
                        case BEGIN_SYMBOL:
                        case BETWEEN_SYMBOL:
                        case BINLOG_SYMBOL:
                        case BITWISE_AND_OPERATOR:
                        case BITWISE_OR_OPERATOR:
                        case BITWISE_XOR_OPERATOR:
                        case BIT_SYMBOL:
                        case BLOCK_SYMBOL:
                        case BOOLEAN_SYMBOL:
                        case BOOL_SYMBOL:
                        case BTREE_SYMBOL:
                        case BYTE_SYMBOL:
                        case CACHE_SYMBOL:
                        case CASCADED_SYMBOL:
                        case CATALOG_NAME_SYMBOL:
                        case CHAIN_SYMBOL:
                        case CHANGED_SYMBOL:
                        case CHARSET_SYMBOL:
                        case CHECKSUM_SYMBOL:
                        case CIPHER_SYMBOL:
                        case CLASS_ORIGIN_SYMBOL:
                        case CLIENT_SYMBOL:
                        case CLOSE_PAR_SYMBOL:
                        case CLOSE_SYMBOL:
                        case COALESCE_SYMBOL:
                        case CODE_SYMBOL:
                        case COLLATE_SYMBOL:
                        case COLLATION_SYMBOL:
                        case COLUMNS_SYMBOL:
                        case COLUMN_FORMAT_SYMBOL:
                        case COLUMN_NAME_SYMBOL:
                        case COMMA_SYMBOL:
                        case COMMENT_SYMBOL:
                        case COMMITTED_SYMBOL:
                        case COMMIT_SYMBOL:
                        case COMPACT_SYMBOL:
                        case COMPLETION_SYMBOL:
                        case COMPRESSED_SYMBOL:
                        case CONCAT_PIPES_SYMBOL:
                        case CONCURRENT_SYMBOL:
                        case CONNECTION_SYMBOL:
                        case CONSISTENT_SYMBOL:
                        case CONSTRAINT_CATALOG_SYMBOL:
                        case CONSTRAINT_NAME_SYMBOL:
                        case CONSTRAINT_SCHEMA_SYMBOL:
                        case CONTAINS_SYMBOL:
                        case CONTEXT_SYMBOL:
                        case CONTRIBUTORS_SYMBOL:
                        case CPU_SYMBOL:
                        case CROSS_SYMBOL:
                        case CUBE_SYMBOL:
                        case CURRENT_SYMBOL:
                        case CURSOR_NAME_SYMBOL:
                        case DATAFILE_SYMBOL:
                        case DATA_SYMBOL:
                        case DATETIME_SYMBOL:
                        case DATE_SYMBOL:
                        case DAY_HOUR_SYMBOL:
                        case DAY_MICROSECOND_SYMBOL:
                        case DAY_MINUTE_SYMBOL:
                        case DAY_SECOND_SYMBOL:
                        case DAY_SYMBOL:
                        case DEALLOCATE_SYMBOL:
                        case DEFAULT_AUTH_SYMBOL:
                        case DEFINER_SYMBOL:
                        case DELAY_KEY_WRITE_SYMBOL:
                        case DESC_SYMBOL:
                        case DES_KEY_FILE_SYMBOL:
                        case DIAGNOSTICS_SYMBOL:
                        case DIRECTORY_SYMBOL:
                        case DISABLE_SYMBOL:
                        case DISCARD_SYMBOL:
                        case DISK_SYMBOL:
                        case DIV_OPERATOR:
                        case DIV_SYMBOL:
                        case DOUBLE_QUOTED_TEXT:
                        case DO_SYMBOL:
                        case DUMPFILE_SYMBOL:
                        case DUPLICATE_SYMBOL:
                        case DYNAMIC_SYMBOL:
                        case ELSE_SYMBOL:
                        case ENABLE_SYMBOL:
                        case ENDS_SYMBOL:
                        case END_SYMBOL:
                        case ENGINES_SYMBOL:
                        case ENGINE_SYMBOL:
                        case ENUM_SYMBOL:
                        case EQUAL_OPERATOR:
                        case ERRORS_SYMBOL:
                        case ERROR_SYMBOL:
                        case ESCAPE_SYMBOL:
                        case EVENTS_SYMBOL:
                        case EVENT_SYMBOL:
                        case EVERY_SYMBOL:
                        case EXECUTE_SYMBOL:
                        case EXPANSION_SYMBOL:
                        case EXPORT_SYMBOL:
                        case EXTENDED_SYMBOL:
                        case EXTENT_SIZE_SYMBOL:
                        case FAST_SYMBOL:
                        case FAULTS_SYMBOL:
                        case FILE_SYMBOL:
                        case FIRST_SYMBOL:
                        case FIXED_SYMBOL:
                        case FLUSH_SYMBOL:
                        case FORMAT_SYMBOL:
                        case FOR_SYMBOL:
                        case FOUND_SYMBOL:
                        case FRAC_SECOND_SYMBOL:
                        case FROM_SYMBOL:
                        case FULL_SYMBOL:
                        case FUNCTION_SYMBOL:
                        case GENERAL_SYMBOL:
                        case GEOMETRYCOLLECTION_SYMBOL:
                        case GEOMETRY_SYMBOL:
                        case GET_FORMAT_SYMBOL:
                        case GLOBAL_SYMBOL:
                        case GRANTS_SYMBOL:
                        case GREATER_OR_EQUAL_OPERATOR:
                        case GREATER_THAN_OPERATOR:
                        case GROUP_SYMBOL:
                        case HANDLER_SYMBOL:
                        case HASH_SYMBOL:
                        case HAVING_SYMBOL:
                        case HELP_SYMBOL:
                        case HOSTS_SYMBOL:
                        case HOST_SYMBOL:
                        case HOUR_MICROSECOND_SYMBOL:
                        case HOUR_MINUTE_SYMBOL:
                        case HOUR_SECOND_SYMBOL:
                        case HOUR_SYMBOL:
                        case IDENTIFIED_SYMBOL:
                        case IDENTIFIER:
                        case IGNORE_SERVER_IDS_SYMBOL:
                        case IMPORT_SYMBOL:
                        case INDEXES_SYMBOL:
                        case INITIAL_SIZE_SYMBOL:
                        case INNER_SYMBOL:
                        case INNODB_SYMBOL:
                        case INSERT_METHOD_SYMBOL:
                        case INSTALL_SYMBOL:
                        case INTO_SYMBOL:
                        case INVOKER_SYMBOL:
                        case IN_SYMBOL:
                        case IO_SYMBOL:
                        case IPC_SYMBOL:
                        case ISOLATION_SYMBOL:
                        case ISSUER_SYMBOL:
                        case IS_SYMBOL:
                        case JOIN_SYMBOL:
                        case KEY_BLOCK_SIZE_SYMBOL:
                        case LANGUAGE_SYMBOL:
                        case LAST_SYMBOL:
                        case LEAVES_SYMBOL:
                        case LEFT_SYMBOL:
                        case LESS_OR_EQUAL_OPERATOR:
                        case LESS_SYMBOL:
                        case LESS_THAN_OPERATOR:
                        case LEVEL_SYMBOL:
                        case LIKE_SYMBOL:
                        case LIMIT_SYMBOL:
                        case LINESTRING_SYMBOL:
                        case LIST_SYMBOL:
                        case LOCAL_SYMBOL:
                        case LOCKS_SYMBOL:
                        case LOCK_SYMBOL:
                        case LOGFILE_SYMBOL:
                        case LOGICAL_AND_OPERATOR:
                        case LOGICAL_OR_OPERATOR:
                        case LOGS_SYMBOL:
                        case MASTER_AUTO_POSITION_SYMBOL:
                        case MASTER_CONNECT_RETRY_SYMBOL:
                        case MASTER_DELAY_SYMBOL:
                        case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                        case MASTER_HOST_SYMBOL:
                        case MASTER_LOG_FILE_SYMBOL:
                        case MASTER_LOG_POS_SYMBOL:
                        case MASTER_PASSWORD_SYMBOL:
                        case MASTER_PORT_SYMBOL:
                        case MASTER_RETRY_COUNT_SYMBOL:
                        case MASTER_SERVER_ID_SYMBOL:
                        case MASTER_SSL_CAPATH_SYMBOL:
                        case MASTER_SSL_CA_SYMBOL:
                        case MASTER_SSL_CERT_SYMBOL:
                        case MASTER_SSL_CIPHER_SYMBOL:
                        case MASTER_SSL_CRLPATH_SYMBOL:
                        case MASTER_SSL_CRL_SYMBOL:
                        case MASTER_SSL_KEY_SYMBOL:
                        case MASTER_SSL_SYMBOL:
                        case MASTER_SYMBOL:
                        case MASTER_USER_SYMBOL:
                        case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                        case MAX_QUERIES_PER_HOUR_SYMBOL:
                        case MAX_ROWS_SYMBOL:
                        case MAX_SIZE_SYMBOL:
                        case MAX_UPDATES_PER_HOUR_SYMBOL:
                        case MAX_USER_CONNECTIONS_SYMBOL:
                        case MEDIUM_SYMBOL:
                        case MEMORY_SYMBOL:
                        case MERGE_SYMBOL:
                        case MESSAGE_TEXT_SYMBOL:
                        case MICROSECOND_SYMBOL:
                        case MIGRATE_SYMBOL:
                        case MINUS_OPERATOR:
                        case MINUTE_MICROSECOND_SYMBOL:
                        case MINUTE_SECOND_SYMBOL:
                        case MINUTE_SYMBOL:
                        case MIN_ROWS_SYMBOL:
                        case MODE_SYMBOL:
                        case MODIFY_SYMBOL:
                        case MOD_OPERATOR:
                        case MOD_SYMBOL:
                        case MONTH_SYMBOL:
                        case MULTILINESTRING_SYMBOL:
                        case MULTIPOINT_SYMBOL:
                        case MULTIPOLYGON_SYMBOL:
                        case MULT_OPERATOR:
                        case MUTEX_SYMBOL:
                        case MYSQL_ERRNO_SYMBOL:
                        case NAMES_SYMBOL:
                        case NAME_SYMBOL:
                        case NATIONAL_SYMBOL:
                        case NATURAL_SYMBOL:
                        case NCHAR_SYMBOL:
                        case NCHAR_TEXT:
                        case NDBCLUSTER_SYMBOL:
                        case NEW_SYMBOL:
                        case NEXT_SYMBOL:
                        case NODEGROUP_SYMBOL:
                        case NONE_SYMBOL:
                        case NOT_EQUAL2_OPERATOR:
                        case NOT_EQUAL_OPERATOR:
                        case NOT_SYMBOL:
                        case NO_SYMBOL:
                        case NO_WAIT_SYMBOL:
                        case NULL_SAFE_EQUAL_OPERATOR:
                        case NUMBER_SYMBOL:
                        case NVARCHAR_SYMBOL:
                        case OFFSET_SYMBOL:
                        case OLD_PASSWORD_SYMBOL:
                        case ONE_SHOT_SYMBOL:
                        case ONE_SYMBOL:
                        case ON_SYMBOL:
                        case OPEN_SYMBOL:
                        case OPTIONS_SYMBOL:
                        case ORDER_SYMBOL:
                        case OR_SYMBOL:
                        case OWNER_SYMBOL:
                        case PACK_KEYS_SYMBOL:
                        case PAGE_SYMBOL:
                        case PARSER_SYMBOL:
                        case PARTIAL_SYMBOL:
                        case PARTITIONING_SYMBOL:
                        case PARTITIONS_SYMBOL:
                        case PARTITION_SYMBOL:
                        case PASSWORD_SYMBOL:
                        case PHASE_SYMBOL:
                        case PLUGINS_SYMBOL:
                        case PLUGIN_DIR_SYMBOL:
                        case PLUGIN_SYMBOL:
                        case PLUS_OPERATOR:
                        case POINT_SYMBOL:
                        case POLYGON_SYMBOL:
                        case PORT_SYMBOL:
                        case PREPARE_SYMBOL:
                        case PRESERVE_SYMBOL:
                        case PREV_SYMBOL:
                        case PRIVILEGES_SYMBOL:
                        case PROCEDURE_SYMBOL:
                        case PROCESSLIST_SYMBOL:
                        case PROCESS_SYMBOL:
                        case PROFILES_SYMBOL:
                        case PROFILE_SYMBOL:
                        case PROXY_SYMBOL:
                        case QUARTER_SYMBOL:
                        case QUERY_SYMBOL:
                        case QUICK_SYMBOL:
                        case READ_ONLY_SYMBOL:
                        case REBUILD_SYMBOL:
                        case RECOVER_SYMBOL:
                        case REDOFILE_SYMBOL:
                        case REDO_BUFFER_SIZE_SYMBOL:
                        case REDUNDANT_SYMBOL:
                        case REGEXP_SYMBOL:
                        case RELAYLOG_SYMBOL:
                        case RELAY_LOG_FILE_SYMBOL:
                        case RELAY_LOG_POS_SYMBOL:
                        case RELAY_SYMBOL:
                        case RELAY_THREAD_SYMBOL:
                        case RELOAD_SYMBOL:
                        case REMOVE_SYMBOL:
                        case RENAME_SYMBOL:
                        case REORGANIZE_SYMBOL:
                        case REPAIR_SYMBOL:
                        case REPEATABLE_SYMBOL:
                        case REPLICATION_SYMBOL:
                        case RESET_SYMBOL:
                        case RESTORE_SYMBOL:
                        case RESUME_SYMBOL:
                        case RETURNED_SQLSTATE_SYMBOL:
                        case RETURNS_SYMBOL:
                        case REVERSE_SYMBOL:
                        case RIGHT_SYMBOL:
                        case ROLLBACK_SYMBOL:
                        case ROLLUP_SYMBOL:
                        case ROUTINE_SYMBOL:
                        case ROWS_SYMBOL:
                        case ROW_COUNT_SYMBOL:
                        case ROW_FORMAT_SYMBOL:
                        case ROW_SYMBOL:
                        case RTREE_SYMBOL:
                        case SAVEPOINT_SYMBOL:
                        case SCHEDULE_SYMBOL:
                        case SCHEMA_NAME_SYMBOL:
                        case SECOND_MICROSECOND_SYMBOL:
                        case SECOND_SYMBOL:
                        case SECURITY_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        case SEPARATOR_SYMBOL:
                        case SERIALIZABLE_SYMBOL:
                        case SERIAL_SYMBOL:
                        case SERVER_SYMBOL:
                        case SESSION_SYMBOL:
                        case SET_SYMBOL:
                        case SHARE_SYMBOL:
                        case SHIFT_LEFT_OPERATOR:
                        case SHIFT_RIGHT_OPERATOR:
                        case SHUTDOWN_SYMBOL:
                        case SIGNED_SYMBOL:
                        case SIMPLE_SYMBOL:
                        case SINGLE_QUOTED_TEXT:
                        case SLAVE_SYMBOL:
                        case SLOW_SYMBOL:
                        case SNAPSHOT_SYMBOL:
                        case SOCKET_SYMBOL:
                        case SONAME_SYMBOL:
                        case SOUNDS_SYMBOL:
                        case SOURCE_SYMBOL:
                        case SQL_AFTER_GTIDS_SYMBOL:
                        case SQL_AFTER_MTS_GAPS_SYMBOL:
                        case SQL_BEFORE_GTIDS_SYMBOL:
                        case SQL_BUFFER_RESULT_SYMBOL:
                        case SQL_CACHE_SYMBOL:
                        case SQL_NO_CACHE_SYMBOL:
                        case SQL_THREAD_SYMBOL:
                        case STARTS_SYMBOL:
                        case START_SYMBOL:
                        case STATS_AUTO_RECALC_SYMBOL:
                        case STATS_PERSISTENT_SYMBOL:
                        case STATS_SAMPLE_PAGES_SYMBOL:
                        case STATUS_SYMBOL:
                        case STOP_SYMBOL:
                        case STORAGE_SYMBOL:
                        case STRAIGHT_JOIN_SYMBOL:
                        case STRING_SYMBOL:
                        case SUBCLASS_ORIGIN_SYMBOL:
                        case SUBDATE_SYMBOL:
                        case SUBJECT_SYMBOL:
                        case SUBPARTITIONS_SYMBOL:
                        case SUBPARTITION_SYMBOL:
                        case SUPER_SYMBOL:
                        case SUSPEND_SYMBOL:
                        case SWAPS_SYMBOL:
                        case SWITCHES_SYMBOL:
                        case TABLESPACE_SYMBOL:
                        case TABLES_SYMBOL:
                        case TABLE_CHECKSUM_SYMBOL:
                        case TABLE_NAME_SYMBOL:
                        case TEMPORARY_SYMBOL:
                        case TEMPTABLE_SYMBOL:
                        case TEXT_SYMBOL:
                        case THAN_SYMBOL:
                        case THEN_SYMBOL:
                        case TIMESTAMP_ADD_SYMBOL:
                        case TIMESTAMP_DIFF_SYMBOL:
                        case TIMESTAMP_SYMBOL:
                        case TIME_SYMBOL:
                        case TRANSACTION_SYMBOL:
                        case TRIGGERS_SYMBOL:
                        case TRUNCATE_SYMBOL:
                        case TYPES_SYMBOL:
                        case TYPE_SYMBOL:
                        case UDF_RETURNS_SYMBOL:
                        case UNCOMMITTED_SYMBOL:
                        case UNDEFINED_SYMBOL:
                        case UNDERSCORE_CHARSET:
                        case UNDOFILE_SYMBOL:
                        case UNDO_BUFFER_SIZE_SYMBOL:
                        case UNICODE_SYMBOL:
                        case UNINSTALL_SYMBOL:
                        case UNION_SYMBOL:
                        case UNKNOWN_SYMBOL:
                        case UNTIL_SYMBOL:
                        case UPGRADE_SYMBOL:
                        case USER_RESOURCES_SYMBOL:
                        case USER_SYMBOL:
                        case USE_FRM_SYMBOL:
                        case USING_SYMBOL:
                        case VALUE_SYMBOL:
                        case VARIABLES_SYMBOL:
                        case VIEW_SYMBOL:
                        case WAIT_SYMBOL:
                        case WARNINGS_SYMBOL:
                        case WEEK_SYMBOL:
                        case WEIGHT_STRING_SYMBOL:
                        case WHEN_SYMBOL:
                        case WHERE_SYMBOL:
                        case WITH_SYMBOL:
                        case WORK_SYMBOL:
                        case WRAPPER_SYMBOL:
                        case X509_SYMBOL:
                        case XA_SYMBOL:
                        case XML_SYMBOL:
                        case XOR_SYMBOL:
                        case YEAR_MONTH_SYMBOL:
                        case YEAR_SYMBOL:
                        case 733:
                        	{
                        		alt527=3;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 527;
                            EXCEPTION->state        = 37;


                            goto ruleprimaryEx;

                        }

                    }
                    else if ( (LA527_0 == COALESCE_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case DOT_SYMBOL:
                        	{
                        		{
                        		    int LA527_1679 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 1679;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case EOF:
                        case ACTION_SYMBOL:
                        case ADDDATE_SYMBOL:
                        case AFTER_SYMBOL:
                        case AGAINST_SYMBOL:
                        case AGGREGATE_SYMBOL:
                        case ALGORITHM_SYMBOL:
                        case ANALYZE_SYMBOL:
                        case AND_SYMBOL:
                        case ANY_SYMBOL:
                        case ASCII_SYMBOL:
                        case ASC_SYMBOL:
                        case AS_SYMBOL:
                        case AT_SYMBOL:
                        case AUTHORS_SYMBOL:
                        case AUTOEXTEND_SIZE_SYMBOL:
                        case AUTO_INCREMENT_SYMBOL:
                        case AVG_ROW_LENGTH_SYMBOL:
                        case AVG_SYMBOL:
                        case BACKUP_SYMBOL:
                        case BACK_TICK_QUOTED_ID:
                        case BEGIN_SYMBOL:
                        case BETWEEN_SYMBOL:
                        case BINLOG_SYMBOL:
                        case BITWISE_AND_OPERATOR:
                        case BITWISE_OR_OPERATOR:
                        case BITWISE_XOR_OPERATOR:
                        case BIT_SYMBOL:
                        case BLOCK_SYMBOL:
                        case BOOLEAN_SYMBOL:
                        case BOOL_SYMBOL:
                        case BTREE_SYMBOL:
                        case BYTE_SYMBOL:
                        case CACHE_SYMBOL:
                        case CASCADED_SYMBOL:
                        case CATALOG_NAME_SYMBOL:
                        case CHAIN_SYMBOL:
                        case CHANGED_SYMBOL:
                        case CHARSET_SYMBOL:
                        case CHECKSUM_SYMBOL:
                        case CIPHER_SYMBOL:
                        case CLASS_ORIGIN_SYMBOL:
                        case CLIENT_SYMBOL:
                        case CLOSE_PAR_SYMBOL:
                        case CLOSE_SYMBOL:
                        case COALESCE_SYMBOL:
                        case CODE_SYMBOL:
                        case COLLATE_SYMBOL:
                        case COLLATION_SYMBOL:
                        case COLUMNS_SYMBOL:
                        case COLUMN_FORMAT_SYMBOL:
                        case COLUMN_NAME_SYMBOL:
                        case COMMA_SYMBOL:
                        case COMMENT_SYMBOL:
                        case COMMITTED_SYMBOL:
                        case COMMIT_SYMBOL:
                        case COMPACT_SYMBOL:
                        case COMPLETION_SYMBOL:
                        case COMPRESSED_SYMBOL:
                        case CONCAT_PIPES_SYMBOL:
                        case CONCURRENT_SYMBOL:
                        case CONNECTION_SYMBOL:
                        case CONSISTENT_SYMBOL:
                        case CONSTRAINT_CATALOG_SYMBOL:
                        case CONSTRAINT_NAME_SYMBOL:
                        case CONSTRAINT_SCHEMA_SYMBOL:
                        case CONTAINS_SYMBOL:
                        case CONTEXT_SYMBOL:
                        case CONTRIBUTORS_SYMBOL:
                        case CPU_SYMBOL:
                        case CROSS_SYMBOL:
                        case CUBE_SYMBOL:
                        case CURRENT_SYMBOL:
                        case CURSOR_NAME_SYMBOL:
                        case DATAFILE_SYMBOL:
                        case DATA_SYMBOL:
                        case DATETIME_SYMBOL:
                        case DATE_SYMBOL:
                        case DAY_HOUR_SYMBOL:
                        case DAY_MICROSECOND_SYMBOL:
                        case DAY_MINUTE_SYMBOL:
                        case DAY_SECOND_SYMBOL:
                        case DAY_SYMBOL:
                        case DEALLOCATE_SYMBOL:
                        case DEFAULT_AUTH_SYMBOL:
                        case DEFINER_SYMBOL:
                        case DELAY_KEY_WRITE_SYMBOL:
                        case DESC_SYMBOL:
                        case DES_KEY_FILE_SYMBOL:
                        case DIAGNOSTICS_SYMBOL:
                        case DIRECTORY_SYMBOL:
                        case DISABLE_SYMBOL:
                        case DISCARD_SYMBOL:
                        case DISK_SYMBOL:
                        case DIV_OPERATOR:
                        case DIV_SYMBOL:
                        case DOUBLE_QUOTED_TEXT:
                        case DO_SYMBOL:
                        case DUMPFILE_SYMBOL:
                        case DUPLICATE_SYMBOL:
                        case DYNAMIC_SYMBOL:
                        case ELSE_SYMBOL:
                        case ENABLE_SYMBOL:
                        case ENDS_SYMBOL:
                        case END_SYMBOL:
                        case ENGINES_SYMBOL:
                        case ENGINE_SYMBOL:
                        case ENUM_SYMBOL:
                        case EQUAL_OPERATOR:
                        case ERRORS_SYMBOL:
                        case ERROR_SYMBOL:
                        case ESCAPE_SYMBOL:
                        case EVENTS_SYMBOL:
                        case EVENT_SYMBOL:
                        case EVERY_SYMBOL:
                        case EXECUTE_SYMBOL:
                        case EXPANSION_SYMBOL:
                        case EXPORT_SYMBOL:
                        case EXTENDED_SYMBOL:
                        case EXTENT_SIZE_SYMBOL:
                        case FAST_SYMBOL:
                        case FAULTS_SYMBOL:
                        case FILE_SYMBOL:
                        case FIRST_SYMBOL:
                        case FIXED_SYMBOL:
                        case FLUSH_SYMBOL:
                        case FORMAT_SYMBOL:
                        case FOR_SYMBOL:
                        case FOUND_SYMBOL:
                        case FRAC_SECOND_SYMBOL:
                        case FROM_SYMBOL:
                        case FULL_SYMBOL:
                        case FUNCTION_SYMBOL:
                        case GENERAL_SYMBOL:
                        case GEOMETRYCOLLECTION_SYMBOL:
                        case GEOMETRY_SYMBOL:
                        case GET_FORMAT_SYMBOL:
                        case GLOBAL_SYMBOL:
                        case GRANTS_SYMBOL:
                        case GREATER_OR_EQUAL_OPERATOR:
                        case GREATER_THAN_OPERATOR:
                        case GROUP_SYMBOL:
                        case HANDLER_SYMBOL:
                        case HASH_SYMBOL:
                        case HAVING_SYMBOL:
                        case HELP_SYMBOL:
                        case HOSTS_SYMBOL:
                        case HOST_SYMBOL:
                        case HOUR_MICROSECOND_SYMBOL:
                        case HOUR_MINUTE_SYMBOL:
                        case HOUR_SECOND_SYMBOL:
                        case HOUR_SYMBOL:
                        case IDENTIFIED_SYMBOL:
                        case IDENTIFIER:
                        case IGNORE_SERVER_IDS_SYMBOL:
                        case IMPORT_SYMBOL:
                        case INDEXES_SYMBOL:
                        case INITIAL_SIZE_SYMBOL:
                        case INNER_SYMBOL:
                        case INNODB_SYMBOL:
                        case INSERT_METHOD_SYMBOL:
                        case INSTALL_SYMBOL:
                        case INTO_SYMBOL:
                        case INVOKER_SYMBOL:
                        case IN_SYMBOL:
                        case IO_SYMBOL:
                        case IPC_SYMBOL:
                        case ISOLATION_SYMBOL:
                        case ISSUER_SYMBOL:
                        case IS_SYMBOL:
                        case JOIN_SYMBOL:
                        case KEY_BLOCK_SIZE_SYMBOL:
                        case LANGUAGE_SYMBOL:
                        case LAST_SYMBOL:
                        case LEAVES_SYMBOL:
                        case LEFT_SYMBOL:
                        case LESS_OR_EQUAL_OPERATOR:
                        case LESS_SYMBOL:
                        case LESS_THAN_OPERATOR:
                        case LEVEL_SYMBOL:
                        case LIKE_SYMBOL:
                        case LIMIT_SYMBOL:
                        case LINESTRING_SYMBOL:
                        case LIST_SYMBOL:
                        case LOCAL_SYMBOL:
                        case LOCKS_SYMBOL:
                        case LOCK_SYMBOL:
                        case LOGFILE_SYMBOL:
                        case LOGICAL_AND_OPERATOR:
                        case LOGICAL_OR_OPERATOR:
                        case LOGS_SYMBOL:
                        case MASTER_AUTO_POSITION_SYMBOL:
                        case MASTER_CONNECT_RETRY_SYMBOL:
                        case MASTER_DELAY_SYMBOL:
                        case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                        case MASTER_HOST_SYMBOL:
                        case MASTER_LOG_FILE_SYMBOL:
                        case MASTER_LOG_POS_SYMBOL:
                        case MASTER_PASSWORD_SYMBOL:
                        case MASTER_PORT_SYMBOL:
                        case MASTER_RETRY_COUNT_SYMBOL:
                        case MASTER_SERVER_ID_SYMBOL:
                        case MASTER_SSL_CAPATH_SYMBOL:
                        case MASTER_SSL_CA_SYMBOL:
                        case MASTER_SSL_CERT_SYMBOL:
                        case MASTER_SSL_CIPHER_SYMBOL:
                        case MASTER_SSL_CRLPATH_SYMBOL:
                        case MASTER_SSL_CRL_SYMBOL:
                        case MASTER_SSL_KEY_SYMBOL:
                        case MASTER_SSL_SYMBOL:
                        case MASTER_SYMBOL:
                        case MASTER_USER_SYMBOL:
                        case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                        case MAX_QUERIES_PER_HOUR_SYMBOL:
                        case MAX_ROWS_SYMBOL:
                        case MAX_SIZE_SYMBOL:
                        case MAX_UPDATES_PER_HOUR_SYMBOL:
                        case MAX_USER_CONNECTIONS_SYMBOL:
                        case MEDIUM_SYMBOL:
                        case MEMORY_SYMBOL:
                        case MERGE_SYMBOL:
                        case MESSAGE_TEXT_SYMBOL:
                        case MICROSECOND_SYMBOL:
                        case MIGRATE_SYMBOL:
                        case MINUS_OPERATOR:
                        case MINUTE_MICROSECOND_SYMBOL:
                        case MINUTE_SECOND_SYMBOL:
                        case MINUTE_SYMBOL:
                        case MIN_ROWS_SYMBOL:
                        case MODE_SYMBOL:
                        case MODIFY_SYMBOL:
                        case MOD_OPERATOR:
                        case MOD_SYMBOL:
                        case MONTH_SYMBOL:
                        case MULTILINESTRING_SYMBOL:
                        case MULTIPOINT_SYMBOL:
                        case MULTIPOLYGON_SYMBOL:
                        case MULT_OPERATOR:
                        case MUTEX_SYMBOL:
                        case MYSQL_ERRNO_SYMBOL:
                        case NAMES_SYMBOL:
                        case NAME_SYMBOL:
                        case NATIONAL_SYMBOL:
                        case NATURAL_SYMBOL:
                        case NCHAR_SYMBOL:
                        case NCHAR_TEXT:
                        case NDBCLUSTER_SYMBOL:
                        case NEW_SYMBOL:
                        case NEXT_SYMBOL:
                        case NODEGROUP_SYMBOL:
                        case NONE_SYMBOL:
                        case NOT_EQUAL2_OPERATOR:
                        case NOT_EQUAL_OPERATOR:
                        case NOT_SYMBOL:
                        case NO_SYMBOL:
                        case NO_WAIT_SYMBOL:
                        case NULL_SAFE_EQUAL_OPERATOR:
                        case NUMBER_SYMBOL:
                        case NVARCHAR_SYMBOL:
                        case OFFSET_SYMBOL:
                        case OLD_PASSWORD_SYMBOL:
                        case ONE_SHOT_SYMBOL:
                        case ONE_SYMBOL:
                        case ON_SYMBOL:
                        case OPEN_SYMBOL:
                        case OPTIONS_SYMBOL:
                        case ORDER_SYMBOL:
                        case OR_SYMBOL:
                        case OWNER_SYMBOL:
                        case PACK_KEYS_SYMBOL:
                        case PAGE_SYMBOL:
                        case PARSER_SYMBOL:
                        case PARTIAL_SYMBOL:
                        case PARTITIONING_SYMBOL:
                        case PARTITIONS_SYMBOL:
                        case PARTITION_SYMBOL:
                        case PASSWORD_SYMBOL:
                        case PHASE_SYMBOL:
                        case PLUGINS_SYMBOL:
                        case PLUGIN_DIR_SYMBOL:
                        case PLUGIN_SYMBOL:
                        case PLUS_OPERATOR:
                        case POINT_SYMBOL:
                        case POLYGON_SYMBOL:
                        case PORT_SYMBOL:
                        case PREPARE_SYMBOL:
                        case PRESERVE_SYMBOL:
                        case PREV_SYMBOL:
                        case PRIVILEGES_SYMBOL:
                        case PROCEDURE_SYMBOL:
                        case PROCESSLIST_SYMBOL:
                        case PROCESS_SYMBOL:
                        case PROFILES_SYMBOL:
                        case PROFILE_SYMBOL:
                        case PROXY_SYMBOL:
                        case QUARTER_SYMBOL:
                        case QUERY_SYMBOL:
                        case QUICK_SYMBOL:
                        case READ_ONLY_SYMBOL:
                        case REBUILD_SYMBOL:
                        case RECOVER_SYMBOL:
                        case REDOFILE_SYMBOL:
                        case REDO_BUFFER_SIZE_SYMBOL:
                        case REDUNDANT_SYMBOL:
                        case REGEXP_SYMBOL:
                        case RELAYLOG_SYMBOL:
                        case RELAY_LOG_FILE_SYMBOL:
                        case RELAY_LOG_POS_SYMBOL:
                        case RELAY_SYMBOL:
                        case RELAY_THREAD_SYMBOL:
                        case RELOAD_SYMBOL:
                        case REMOVE_SYMBOL:
                        case RENAME_SYMBOL:
                        case REORGANIZE_SYMBOL:
                        case REPAIR_SYMBOL:
                        case REPEATABLE_SYMBOL:
                        case REPLICATION_SYMBOL:
                        case RESET_SYMBOL:
                        case RESTORE_SYMBOL:
                        case RESUME_SYMBOL:
                        case RETURNED_SQLSTATE_SYMBOL:
                        case RETURNS_SYMBOL:
                        case REVERSE_SYMBOL:
                        case RIGHT_SYMBOL:
                        case ROLLBACK_SYMBOL:
                        case ROLLUP_SYMBOL:
                        case ROUTINE_SYMBOL:
                        case ROWS_SYMBOL:
                        case ROW_COUNT_SYMBOL:
                        case ROW_FORMAT_SYMBOL:
                        case ROW_SYMBOL:
                        case RTREE_SYMBOL:
                        case SAVEPOINT_SYMBOL:
                        case SCHEDULE_SYMBOL:
                        case SCHEMA_NAME_SYMBOL:
                        case SECOND_MICROSECOND_SYMBOL:
                        case SECOND_SYMBOL:
                        case SECURITY_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        case SEPARATOR_SYMBOL:
                        case SERIALIZABLE_SYMBOL:
                        case SERIAL_SYMBOL:
                        case SERVER_SYMBOL:
                        case SESSION_SYMBOL:
                        case SET_SYMBOL:
                        case SHARE_SYMBOL:
                        case SHIFT_LEFT_OPERATOR:
                        case SHIFT_RIGHT_OPERATOR:
                        case SHUTDOWN_SYMBOL:
                        case SIGNED_SYMBOL:
                        case SIMPLE_SYMBOL:
                        case SINGLE_QUOTED_TEXT:
                        case SLAVE_SYMBOL:
                        case SLOW_SYMBOL:
                        case SNAPSHOT_SYMBOL:
                        case SOCKET_SYMBOL:
                        case SONAME_SYMBOL:
                        case SOUNDS_SYMBOL:
                        case SOURCE_SYMBOL:
                        case SQL_AFTER_GTIDS_SYMBOL:
                        case SQL_AFTER_MTS_GAPS_SYMBOL:
                        case SQL_BEFORE_GTIDS_SYMBOL:
                        case SQL_BUFFER_RESULT_SYMBOL:
                        case SQL_CACHE_SYMBOL:
                        case SQL_NO_CACHE_SYMBOL:
                        case SQL_THREAD_SYMBOL:
                        case STARTS_SYMBOL:
                        case START_SYMBOL:
                        case STATS_AUTO_RECALC_SYMBOL:
                        case STATS_PERSISTENT_SYMBOL:
                        case STATS_SAMPLE_PAGES_SYMBOL:
                        case STATUS_SYMBOL:
                        case STOP_SYMBOL:
                        case STORAGE_SYMBOL:
                        case STRAIGHT_JOIN_SYMBOL:
                        case STRING_SYMBOL:
                        case SUBCLASS_ORIGIN_SYMBOL:
                        case SUBDATE_SYMBOL:
                        case SUBJECT_SYMBOL:
                        case SUBPARTITIONS_SYMBOL:
                        case SUBPARTITION_SYMBOL:
                        case SUPER_SYMBOL:
                        case SUSPEND_SYMBOL:
                        case SWAPS_SYMBOL:
                        case SWITCHES_SYMBOL:
                        case TABLESPACE_SYMBOL:
                        case TABLES_SYMBOL:
                        case TABLE_CHECKSUM_SYMBOL:
                        case TABLE_NAME_SYMBOL:
                        case TEMPORARY_SYMBOL:
                        case TEMPTABLE_SYMBOL:
                        case TEXT_SYMBOL:
                        case THAN_SYMBOL:
                        case THEN_SYMBOL:
                        case TIMESTAMP_ADD_SYMBOL:
                        case TIMESTAMP_DIFF_SYMBOL:
                        case TIMESTAMP_SYMBOL:
                        case TIME_SYMBOL:
                        case TRANSACTION_SYMBOL:
                        case TRIGGERS_SYMBOL:
                        case TRUNCATE_SYMBOL:
                        case TYPES_SYMBOL:
                        case TYPE_SYMBOL:
                        case UDF_RETURNS_SYMBOL:
                        case UNCOMMITTED_SYMBOL:
                        case UNDEFINED_SYMBOL:
                        case UNDERSCORE_CHARSET:
                        case UNDOFILE_SYMBOL:
                        case UNDO_BUFFER_SIZE_SYMBOL:
                        case UNICODE_SYMBOL:
                        case UNINSTALL_SYMBOL:
                        case UNION_SYMBOL:
                        case UNKNOWN_SYMBOL:
                        case UNTIL_SYMBOL:
                        case UPGRADE_SYMBOL:
                        case USER_RESOURCES_SYMBOL:
                        case USER_SYMBOL:
                        case USE_FRM_SYMBOL:
                        case USING_SYMBOL:
                        case VALUE_SYMBOL:
                        case VARIABLES_SYMBOL:
                        case VIEW_SYMBOL:
                        case WAIT_SYMBOL:
                        case WARNINGS_SYMBOL:
                        case WEEK_SYMBOL:
                        case WEIGHT_STRING_SYMBOL:
                        case WHEN_SYMBOL:
                        case WHERE_SYMBOL:
                        case WITH_SYMBOL:
                        case WORK_SYMBOL:
                        case WRAPPER_SYMBOL:
                        case X509_SYMBOL:
                        case XA_SYMBOL:
                        case XML_SYMBOL:
                        case XOR_SYMBOL:
                        case YEAR_MONTH_SYMBOL:
                        case YEAR_SYMBOL:
                        case 733:
                        	{
                        		alt527=3;
                        	}
                            break;
                        case OPEN_PAR_SYMBOL:
                        	{
                        		{
                        		    int LA527_1771 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=4;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 1771;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 527;
                            EXCEPTION->state        = 42;


                            goto ruleprimaryEx;

                        }

                    }
                    else if ( (LA527_0 == CHARSET_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case OPEN_PAR_SYMBOL:
                        	{
                        		{
                        		    int LA527_1772 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=4;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 1772;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case DOT_SYMBOL:
                        	{
                        		{
                        		    int LA527_1773 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 1773;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case EOF:
                        case ACTION_SYMBOL:
                        case ADDDATE_SYMBOL:
                        case AFTER_SYMBOL:
                        case AGAINST_SYMBOL:
                        case AGGREGATE_SYMBOL:
                        case ALGORITHM_SYMBOL:
                        case ANALYZE_SYMBOL:
                        case AND_SYMBOL:
                        case ANY_SYMBOL:
                        case ASCII_SYMBOL:
                        case ASC_SYMBOL:
                        case AS_SYMBOL:
                        case AT_SYMBOL:
                        case AUTHORS_SYMBOL:
                        case AUTOEXTEND_SIZE_SYMBOL:
                        case AUTO_INCREMENT_SYMBOL:
                        case AVG_ROW_LENGTH_SYMBOL:
                        case AVG_SYMBOL:
                        case BACKUP_SYMBOL:
                        case BACK_TICK_QUOTED_ID:
                        case BEGIN_SYMBOL:
                        case BETWEEN_SYMBOL:
                        case BINLOG_SYMBOL:
                        case BITWISE_AND_OPERATOR:
                        case BITWISE_OR_OPERATOR:
                        case BITWISE_XOR_OPERATOR:
                        case BIT_SYMBOL:
                        case BLOCK_SYMBOL:
                        case BOOLEAN_SYMBOL:
                        case BOOL_SYMBOL:
                        case BTREE_SYMBOL:
                        case BYTE_SYMBOL:
                        case CACHE_SYMBOL:
                        case CASCADED_SYMBOL:
                        case CATALOG_NAME_SYMBOL:
                        case CHAIN_SYMBOL:
                        case CHANGED_SYMBOL:
                        case CHARSET_SYMBOL:
                        case CHECKSUM_SYMBOL:
                        case CIPHER_SYMBOL:
                        case CLASS_ORIGIN_SYMBOL:
                        case CLIENT_SYMBOL:
                        case CLOSE_PAR_SYMBOL:
                        case CLOSE_SYMBOL:
                        case COALESCE_SYMBOL:
                        case CODE_SYMBOL:
                        case COLLATE_SYMBOL:
                        case COLLATION_SYMBOL:
                        case COLUMNS_SYMBOL:
                        case COLUMN_FORMAT_SYMBOL:
                        case COLUMN_NAME_SYMBOL:
                        case COMMA_SYMBOL:
                        case COMMENT_SYMBOL:
                        case COMMITTED_SYMBOL:
                        case COMMIT_SYMBOL:
                        case COMPACT_SYMBOL:
                        case COMPLETION_SYMBOL:
                        case COMPRESSED_SYMBOL:
                        case CONCAT_PIPES_SYMBOL:
                        case CONCURRENT_SYMBOL:
                        case CONNECTION_SYMBOL:
                        case CONSISTENT_SYMBOL:
                        case CONSTRAINT_CATALOG_SYMBOL:
                        case CONSTRAINT_NAME_SYMBOL:
                        case CONSTRAINT_SCHEMA_SYMBOL:
                        case CONTAINS_SYMBOL:
                        case CONTEXT_SYMBOL:
                        case CONTRIBUTORS_SYMBOL:
                        case CPU_SYMBOL:
                        case CROSS_SYMBOL:
                        case CUBE_SYMBOL:
                        case CURRENT_SYMBOL:
                        case CURSOR_NAME_SYMBOL:
                        case DATAFILE_SYMBOL:
                        case DATA_SYMBOL:
                        case DATETIME_SYMBOL:
                        case DATE_SYMBOL:
                        case DAY_HOUR_SYMBOL:
                        case DAY_MICROSECOND_SYMBOL:
                        case DAY_MINUTE_SYMBOL:
                        case DAY_SECOND_SYMBOL:
                        case DAY_SYMBOL:
                        case DEALLOCATE_SYMBOL:
                        case DEFAULT_AUTH_SYMBOL:
                        case DEFINER_SYMBOL:
                        case DELAY_KEY_WRITE_SYMBOL:
                        case DESC_SYMBOL:
                        case DES_KEY_FILE_SYMBOL:
                        case DIAGNOSTICS_SYMBOL:
                        case DIRECTORY_SYMBOL:
                        case DISABLE_SYMBOL:
                        case DISCARD_SYMBOL:
                        case DISK_SYMBOL:
                        case DIV_OPERATOR:
                        case DIV_SYMBOL:
                        case DOUBLE_QUOTED_TEXT:
                        case DO_SYMBOL:
                        case DUMPFILE_SYMBOL:
                        case DUPLICATE_SYMBOL:
                        case DYNAMIC_SYMBOL:
                        case ELSE_SYMBOL:
                        case ENABLE_SYMBOL:
                        case ENDS_SYMBOL:
                        case END_SYMBOL:
                        case ENGINES_SYMBOL:
                        case ENGINE_SYMBOL:
                        case ENUM_SYMBOL:
                        case EQUAL_OPERATOR:
                        case ERRORS_SYMBOL:
                        case ERROR_SYMBOL:
                        case ESCAPE_SYMBOL:
                        case EVENTS_SYMBOL:
                        case EVENT_SYMBOL:
                        case EVERY_SYMBOL:
                        case EXECUTE_SYMBOL:
                        case EXPANSION_SYMBOL:
                        case EXPORT_SYMBOL:
                        case EXTENDED_SYMBOL:
                        case EXTENT_SIZE_SYMBOL:
                        case FAST_SYMBOL:
                        case FAULTS_SYMBOL:
                        case FILE_SYMBOL:
                        case FIRST_SYMBOL:
                        case FIXED_SYMBOL:
                        case FLUSH_SYMBOL:
                        case FORMAT_SYMBOL:
                        case FOR_SYMBOL:
                        case FOUND_SYMBOL:
                        case FRAC_SECOND_SYMBOL:
                        case FROM_SYMBOL:
                        case FULL_SYMBOL:
                        case FUNCTION_SYMBOL:
                        case GENERAL_SYMBOL:
                        case GEOMETRYCOLLECTION_SYMBOL:
                        case GEOMETRY_SYMBOL:
                        case GET_FORMAT_SYMBOL:
                        case GLOBAL_SYMBOL:
                        case GRANTS_SYMBOL:
                        case GREATER_OR_EQUAL_OPERATOR:
                        case GREATER_THAN_OPERATOR:
                        case GROUP_SYMBOL:
                        case HANDLER_SYMBOL:
                        case HASH_SYMBOL:
                        case HAVING_SYMBOL:
                        case HELP_SYMBOL:
                        case HOSTS_SYMBOL:
                        case HOST_SYMBOL:
                        case HOUR_MICROSECOND_SYMBOL:
                        case HOUR_MINUTE_SYMBOL:
                        case HOUR_SECOND_SYMBOL:
                        case HOUR_SYMBOL:
                        case IDENTIFIED_SYMBOL:
                        case IDENTIFIER:
                        case IGNORE_SERVER_IDS_SYMBOL:
                        case IMPORT_SYMBOL:
                        case INDEXES_SYMBOL:
                        case INITIAL_SIZE_SYMBOL:
                        case INNER_SYMBOL:
                        case INNODB_SYMBOL:
                        case INSERT_METHOD_SYMBOL:
                        case INSTALL_SYMBOL:
                        case INTO_SYMBOL:
                        case INVOKER_SYMBOL:
                        case IN_SYMBOL:
                        case IO_SYMBOL:
                        case IPC_SYMBOL:
                        case ISOLATION_SYMBOL:
                        case ISSUER_SYMBOL:
                        case IS_SYMBOL:
                        case JOIN_SYMBOL:
                        case KEY_BLOCK_SIZE_SYMBOL:
                        case LANGUAGE_SYMBOL:
                        case LAST_SYMBOL:
                        case LEAVES_SYMBOL:
                        case LEFT_SYMBOL:
                        case LESS_OR_EQUAL_OPERATOR:
                        case LESS_SYMBOL:
                        case LESS_THAN_OPERATOR:
                        case LEVEL_SYMBOL:
                        case LIKE_SYMBOL:
                        case LIMIT_SYMBOL:
                        case LINESTRING_SYMBOL:
                        case LIST_SYMBOL:
                        case LOCAL_SYMBOL:
                        case LOCKS_SYMBOL:
                        case LOCK_SYMBOL:
                        case LOGFILE_SYMBOL:
                        case LOGICAL_AND_OPERATOR:
                        case LOGICAL_OR_OPERATOR:
                        case LOGS_SYMBOL:
                        case MASTER_AUTO_POSITION_SYMBOL:
                        case MASTER_CONNECT_RETRY_SYMBOL:
                        case MASTER_DELAY_SYMBOL:
                        case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                        case MASTER_HOST_SYMBOL:
                        case MASTER_LOG_FILE_SYMBOL:
                        case MASTER_LOG_POS_SYMBOL:
                        case MASTER_PASSWORD_SYMBOL:
                        case MASTER_PORT_SYMBOL:
                        case MASTER_RETRY_COUNT_SYMBOL:
                        case MASTER_SERVER_ID_SYMBOL:
                        case MASTER_SSL_CAPATH_SYMBOL:
                        case MASTER_SSL_CA_SYMBOL:
                        case MASTER_SSL_CERT_SYMBOL:
                        case MASTER_SSL_CIPHER_SYMBOL:
                        case MASTER_SSL_CRLPATH_SYMBOL:
                        case MASTER_SSL_CRL_SYMBOL:
                        case MASTER_SSL_KEY_SYMBOL:
                        case MASTER_SSL_SYMBOL:
                        case MASTER_SYMBOL:
                        case MASTER_USER_SYMBOL:
                        case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                        case MAX_QUERIES_PER_HOUR_SYMBOL:
                        case MAX_ROWS_SYMBOL:
                        case MAX_SIZE_SYMBOL:
                        case MAX_UPDATES_PER_HOUR_SYMBOL:
                        case MAX_USER_CONNECTIONS_SYMBOL:
                        case MEDIUM_SYMBOL:
                        case MEMORY_SYMBOL:
                        case MERGE_SYMBOL:
                        case MESSAGE_TEXT_SYMBOL:
                        case MICROSECOND_SYMBOL:
                        case MIGRATE_SYMBOL:
                        case MINUS_OPERATOR:
                        case MINUTE_MICROSECOND_SYMBOL:
                        case MINUTE_SECOND_SYMBOL:
                        case MINUTE_SYMBOL:
                        case MIN_ROWS_SYMBOL:
                        case MODE_SYMBOL:
                        case MODIFY_SYMBOL:
                        case MOD_OPERATOR:
                        case MOD_SYMBOL:
                        case MONTH_SYMBOL:
                        case MULTILINESTRING_SYMBOL:
                        case MULTIPOINT_SYMBOL:
                        case MULTIPOLYGON_SYMBOL:
                        case MULT_OPERATOR:
                        case MUTEX_SYMBOL:
                        case MYSQL_ERRNO_SYMBOL:
                        case NAMES_SYMBOL:
                        case NAME_SYMBOL:
                        case NATIONAL_SYMBOL:
                        case NATURAL_SYMBOL:
                        case NCHAR_SYMBOL:
                        case NCHAR_TEXT:
                        case NDBCLUSTER_SYMBOL:
                        case NEW_SYMBOL:
                        case NEXT_SYMBOL:
                        case NODEGROUP_SYMBOL:
                        case NONE_SYMBOL:
                        case NOT_EQUAL2_OPERATOR:
                        case NOT_EQUAL_OPERATOR:
                        case NOT_SYMBOL:
                        case NO_SYMBOL:
                        case NO_WAIT_SYMBOL:
                        case NULL_SAFE_EQUAL_OPERATOR:
                        case NUMBER_SYMBOL:
                        case NVARCHAR_SYMBOL:
                        case OFFSET_SYMBOL:
                        case OLD_PASSWORD_SYMBOL:
                        case ONE_SHOT_SYMBOL:
                        case ONE_SYMBOL:
                        case ON_SYMBOL:
                        case OPEN_SYMBOL:
                        case OPTIONS_SYMBOL:
                        case ORDER_SYMBOL:
                        case OR_SYMBOL:
                        case OWNER_SYMBOL:
                        case PACK_KEYS_SYMBOL:
                        case PAGE_SYMBOL:
                        case PARSER_SYMBOL:
                        case PARTIAL_SYMBOL:
                        case PARTITIONING_SYMBOL:
                        case PARTITIONS_SYMBOL:
                        case PARTITION_SYMBOL:
                        case PASSWORD_SYMBOL:
                        case PHASE_SYMBOL:
                        case PLUGINS_SYMBOL:
                        case PLUGIN_DIR_SYMBOL:
                        case PLUGIN_SYMBOL:
                        case PLUS_OPERATOR:
                        case POINT_SYMBOL:
                        case POLYGON_SYMBOL:
                        case PORT_SYMBOL:
                        case PREPARE_SYMBOL:
                        case PRESERVE_SYMBOL:
                        case PREV_SYMBOL:
                        case PRIVILEGES_SYMBOL:
                        case PROCEDURE_SYMBOL:
                        case PROCESSLIST_SYMBOL:
                        case PROCESS_SYMBOL:
                        case PROFILES_SYMBOL:
                        case PROFILE_SYMBOL:
                        case PROXY_SYMBOL:
                        case QUARTER_SYMBOL:
                        case QUERY_SYMBOL:
                        case QUICK_SYMBOL:
                        case READ_ONLY_SYMBOL:
                        case REBUILD_SYMBOL:
                        case RECOVER_SYMBOL:
                        case REDOFILE_SYMBOL:
                        case REDO_BUFFER_SIZE_SYMBOL:
                        case REDUNDANT_SYMBOL:
                        case REGEXP_SYMBOL:
                        case RELAYLOG_SYMBOL:
                        case RELAY_LOG_FILE_SYMBOL:
                        case RELAY_LOG_POS_SYMBOL:
                        case RELAY_SYMBOL:
                        case RELAY_THREAD_SYMBOL:
                        case RELOAD_SYMBOL:
                        case REMOVE_SYMBOL:
                        case RENAME_SYMBOL:
                        case REORGANIZE_SYMBOL:
                        case REPAIR_SYMBOL:
                        case REPEATABLE_SYMBOL:
                        case REPLICATION_SYMBOL:
                        case RESET_SYMBOL:
                        case RESTORE_SYMBOL:
                        case RESUME_SYMBOL:
                        case RETURNED_SQLSTATE_SYMBOL:
                        case RETURNS_SYMBOL:
                        case REVERSE_SYMBOL:
                        case RIGHT_SYMBOL:
                        case ROLLBACK_SYMBOL:
                        case ROLLUP_SYMBOL:
                        case ROUTINE_SYMBOL:
                        case ROWS_SYMBOL:
                        case ROW_COUNT_SYMBOL:
                        case ROW_FORMAT_SYMBOL:
                        case ROW_SYMBOL:
                        case RTREE_SYMBOL:
                        case SAVEPOINT_SYMBOL:
                        case SCHEDULE_SYMBOL:
                        case SCHEMA_NAME_SYMBOL:
                        case SECOND_MICROSECOND_SYMBOL:
                        case SECOND_SYMBOL:
                        case SECURITY_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        case SEPARATOR_SYMBOL:
                        case SERIALIZABLE_SYMBOL:
                        case SERIAL_SYMBOL:
                        case SERVER_SYMBOL:
                        case SESSION_SYMBOL:
                        case SET_SYMBOL:
                        case SHARE_SYMBOL:
                        case SHIFT_LEFT_OPERATOR:
                        case SHIFT_RIGHT_OPERATOR:
                        case SHUTDOWN_SYMBOL:
                        case SIGNED_SYMBOL:
                        case SIMPLE_SYMBOL:
                        case SINGLE_QUOTED_TEXT:
                        case SLAVE_SYMBOL:
                        case SLOW_SYMBOL:
                        case SNAPSHOT_SYMBOL:
                        case SOCKET_SYMBOL:
                        case SONAME_SYMBOL:
                        case SOUNDS_SYMBOL:
                        case SOURCE_SYMBOL:
                        case SQL_AFTER_GTIDS_SYMBOL:
                        case SQL_AFTER_MTS_GAPS_SYMBOL:
                        case SQL_BEFORE_GTIDS_SYMBOL:
                        case SQL_BUFFER_RESULT_SYMBOL:
                        case SQL_CACHE_SYMBOL:
                        case SQL_NO_CACHE_SYMBOL:
                        case SQL_THREAD_SYMBOL:
                        case STARTS_SYMBOL:
                        case START_SYMBOL:
                        case STATS_AUTO_RECALC_SYMBOL:
                        case STATS_PERSISTENT_SYMBOL:
                        case STATS_SAMPLE_PAGES_SYMBOL:
                        case STATUS_SYMBOL:
                        case STOP_SYMBOL:
                        case STORAGE_SYMBOL:
                        case STRAIGHT_JOIN_SYMBOL:
                        case STRING_SYMBOL:
                        case SUBCLASS_ORIGIN_SYMBOL:
                        case SUBDATE_SYMBOL:
                        case SUBJECT_SYMBOL:
                        case SUBPARTITIONS_SYMBOL:
                        case SUBPARTITION_SYMBOL:
                        case SUPER_SYMBOL:
                        case SUSPEND_SYMBOL:
                        case SWAPS_SYMBOL:
                        case SWITCHES_SYMBOL:
                        case TABLESPACE_SYMBOL:
                        case TABLES_SYMBOL:
                        case TABLE_CHECKSUM_SYMBOL:
                        case TABLE_NAME_SYMBOL:
                        case TEMPORARY_SYMBOL:
                        case TEMPTABLE_SYMBOL:
                        case TEXT_SYMBOL:
                        case THAN_SYMBOL:
                        case THEN_SYMBOL:
                        case TIMESTAMP_ADD_SYMBOL:
                        case TIMESTAMP_DIFF_SYMBOL:
                        case TIMESTAMP_SYMBOL:
                        case TIME_SYMBOL:
                        case TRANSACTION_SYMBOL:
                        case TRIGGERS_SYMBOL:
                        case TRUNCATE_SYMBOL:
                        case TYPES_SYMBOL:
                        case TYPE_SYMBOL:
                        case UDF_RETURNS_SYMBOL:
                        case UNCOMMITTED_SYMBOL:
                        case UNDEFINED_SYMBOL:
                        case UNDERSCORE_CHARSET:
                        case UNDOFILE_SYMBOL:
                        case UNDO_BUFFER_SIZE_SYMBOL:
                        case UNICODE_SYMBOL:
                        case UNINSTALL_SYMBOL:
                        case UNION_SYMBOL:
                        case UNKNOWN_SYMBOL:
                        case UNTIL_SYMBOL:
                        case UPGRADE_SYMBOL:
                        case USER_RESOURCES_SYMBOL:
                        case USER_SYMBOL:
                        case USE_FRM_SYMBOL:
                        case USING_SYMBOL:
                        case VALUE_SYMBOL:
                        case VARIABLES_SYMBOL:
                        case VIEW_SYMBOL:
                        case WAIT_SYMBOL:
                        case WARNINGS_SYMBOL:
                        case WEEK_SYMBOL:
                        case WEIGHT_STRING_SYMBOL:
                        case WHEN_SYMBOL:
                        case WHERE_SYMBOL:
                        case WITH_SYMBOL:
                        case WORK_SYMBOL:
                        case WRAPPER_SYMBOL:
                        case X509_SYMBOL:
                        case XA_SYMBOL:
                        case XML_SYMBOL:
                        case XOR_SYMBOL:
                        case YEAR_MONTH_SYMBOL:
                        case YEAR_SYMBOL:
                        case 733:
                        	{
                        		alt527=3;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 527;
                            EXCEPTION->state        = 46;


                            goto ruleprimaryEx;

                        }

                    }
                    else if ( (LA527_0 == FORMAT_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case OPEN_PAR_SYMBOL:
                        	{
                        		{
                        		    int LA527_1865 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=4;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 1865;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case DOT_SYMBOL:
                        	{
                        		{
                        		    int LA527_1866 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 1866;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case EOF:
                        case ACTION_SYMBOL:
                        case ADDDATE_SYMBOL:
                        case AFTER_SYMBOL:
                        case AGAINST_SYMBOL:
                        case AGGREGATE_SYMBOL:
                        case ALGORITHM_SYMBOL:
                        case ANALYZE_SYMBOL:
                        case AND_SYMBOL:
                        case ANY_SYMBOL:
                        case ASCII_SYMBOL:
                        case ASC_SYMBOL:
                        case AS_SYMBOL:
                        case AT_SYMBOL:
                        case AUTHORS_SYMBOL:
                        case AUTOEXTEND_SIZE_SYMBOL:
                        case AUTO_INCREMENT_SYMBOL:
                        case AVG_ROW_LENGTH_SYMBOL:
                        case AVG_SYMBOL:
                        case BACKUP_SYMBOL:
                        case BACK_TICK_QUOTED_ID:
                        case BEGIN_SYMBOL:
                        case BETWEEN_SYMBOL:
                        case BINLOG_SYMBOL:
                        case BITWISE_AND_OPERATOR:
                        case BITWISE_OR_OPERATOR:
                        case BITWISE_XOR_OPERATOR:
                        case BIT_SYMBOL:
                        case BLOCK_SYMBOL:
                        case BOOLEAN_SYMBOL:
                        case BOOL_SYMBOL:
                        case BTREE_SYMBOL:
                        case BYTE_SYMBOL:
                        case CACHE_SYMBOL:
                        case CASCADED_SYMBOL:
                        case CATALOG_NAME_SYMBOL:
                        case CHAIN_SYMBOL:
                        case CHANGED_SYMBOL:
                        case CHARSET_SYMBOL:
                        case CHECKSUM_SYMBOL:
                        case CIPHER_SYMBOL:
                        case CLASS_ORIGIN_SYMBOL:
                        case CLIENT_SYMBOL:
                        case CLOSE_PAR_SYMBOL:
                        case CLOSE_SYMBOL:
                        case COALESCE_SYMBOL:
                        case CODE_SYMBOL:
                        case COLLATE_SYMBOL:
                        case COLLATION_SYMBOL:
                        case COLUMNS_SYMBOL:
                        case COLUMN_FORMAT_SYMBOL:
                        case COLUMN_NAME_SYMBOL:
                        case COMMA_SYMBOL:
                        case COMMENT_SYMBOL:
                        case COMMITTED_SYMBOL:
                        case COMMIT_SYMBOL:
                        case COMPACT_SYMBOL:
                        case COMPLETION_SYMBOL:
                        case COMPRESSED_SYMBOL:
                        case CONCAT_PIPES_SYMBOL:
                        case CONCURRENT_SYMBOL:
                        case CONNECTION_SYMBOL:
                        case CONSISTENT_SYMBOL:
                        case CONSTRAINT_CATALOG_SYMBOL:
                        case CONSTRAINT_NAME_SYMBOL:
                        case CONSTRAINT_SCHEMA_SYMBOL:
                        case CONTAINS_SYMBOL:
                        case CONTEXT_SYMBOL:
                        case CONTRIBUTORS_SYMBOL:
                        case CPU_SYMBOL:
                        case CROSS_SYMBOL:
                        case CUBE_SYMBOL:
                        case CURRENT_SYMBOL:
                        case CURSOR_NAME_SYMBOL:
                        case DATAFILE_SYMBOL:
                        case DATA_SYMBOL:
                        case DATETIME_SYMBOL:
                        case DATE_SYMBOL:
                        case DAY_HOUR_SYMBOL:
                        case DAY_MICROSECOND_SYMBOL:
                        case DAY_MINUTE_SYMBOL:
                        case DAY_SECOND_SYMBOL:
                        case DAY_SYMBOL:
                        case DEALLOCATE_SYMBOL:
                        case DEFAULT_AUTH_SYMBOL:
                        case DEFINER_SYMBOL:
                        case DELAY_KEY_WRITE_SYMBOL:
                        case DESC_SYMBOL:
                        case DES_KEY_FILE_SYMBOL:
                        case DIAGNOSTICS_SYMBOL:
                        case DIRECTORY_SYMBOL:
                        case DISABLE_SYMBOL:
                        case DISCARD_SYMBOL:
                        case DISK_SYMBOL:
                        case DIV_OPERATOR:
                        case DIV_SYMBOL:
                        case DOUBLE_QUOTED_TEXT:
                        case DO_SYMBOL:
                        case DUMPFILE_SYMBOL:
                        case DUPLICATE_SYMBOL:
                        case DYNAMIC_SYMBOL:
                        case ELSE_SYMBOL:
                        case ENABLE_SYMBOL:
                        case ENDS_SYMBOL:
                        case END_SYMBOL:
                        case ENGINES_SYMBOL:
                        case ENGINE_SYMBOL:
                        case ENUM_SYMBOL:
                        case EQUAL_OPERATOR:
                        case ERRORS_SYMBOL:
                        case ERROR_SYMBOL:
                        case ESCAPE_SYMBOL:
                        case EVENTS_SYMBOL:
                        case EVENT_SYMBOL:
                        case EVERY_SYMBOL:
                        case EXECUTE_SYMBOL:
                        case EXPANSION_SYMBOL:
                        case EXPORT_SYMBOL:
                        case EXTENDED_SYMBOL:
                        case EXTENT_SIZE_SYMBOL:
                        case FAST_SYMBOL:
                        case FAULTS_SYMBOL:
                        case FILE_SYMBOL:
                        case FIRST_SYMBOL:
                        case FIXED_SYMBOL:
                        case FLUSH_SYMBOL:
                        case FORMAT_SYMBOL:
                        case FOR_SYMBOL:
                        case FOUND_SYMBOL:
                        case FRAC_SECOND_SYMBOL:
                        case FROM_SYMBOL:
                        case FULL_SYMBOL:
                        case FUNCTION_SYMBOL:
                        case GENERAL_SYMBOL:
                        case GEOMETRYCOLLECTION_SYMBOL:
                        case GEOMETRY_SYMBOL:
                        case GET_FORMAT_SYMBOL:
                        case GLOBAL_SYMBOL:
                        case GRANTS_SYMBOL:
                        case GREATER_OR_EQUAL_OPERATOR:
                        case GREATER_THAN_OPERATOR:
                        case GROUP_SYMBOL:
                        case HANDLER_SYMBOL:
                        case HASH_SYMBOL:
                        case HAVING_SYMBOL:
                        case HELP_SYMBOL:
                        case HOSTS_SYMBOL:
                        case HOST_SYMBOL:
                        case HOUR_MICROSECOND_SYMBOL:
                        case HOUR_MINUTE_SYMBOL:
                        case HOUR_SECOND_SYMBOL:
                        case HOUR_SYMBOL:
                        case IDENTIFIED_SYMBOL:
                        case IDENTIFIER:
                        case IGNORE_SERVER_IDS_SYMBOL:
                        case IMPORT_SYMBOL:
                        case INDEXES_SYMBOL:
                        case INITIAL_SIZE_SYMBOL:
                        case INNER_SYMBOL:
                        case INNODB_SYMBOL:
                        case INSERT_METHOD_SYMBOL:
                        case INSTALL_SYMBOL:
                        case INTO_SYMBOL:
                        case INVOKER_SYMBOL:
                        case IN_SYMBOL:
                        case IO_SYMBOL:
                        case IPC_SYMBOL:
                        case ISOLATION_SYMBOL:
                        case ISSUER_SYMBOL:
                        case IS_SYMBOL:
                        case JOIN_SYMBOL:
                        case KEY_BLOCK_SIZE_SYMBOL:
                        case LANGUAGE_SYMBOL:
                        case LAST_SYMBOL:
                        case LEAVES_SYMBOL:
                        case LEFT_SYMBOL:
                        case LESS_OR_EQUAL_OPERATOR:
                        case LESS_SYMBOL:
                        case LESS_THAN_OPERATOR:
                        case LEVEL_SYMBOL:
                        case LIKE_SYMBOL:
                        case LIMIT_SYMBOL:
                        case LINESTRING_SYMBOL:
                        case LIST_SYMBOL:
                        case LOCAL_SYMBOL:
                        case LOCKS_SYMBOL:
                        case LOCK_SYMBOL:
                        case LOGFILE_SYMBOL:
                        case LOGICAL_AND_OPERATOR:
                        case LOGICAL_OR_OPERATOR:
                        case LOGS_SYMBOL:
                        case MASTER_AUTO_POSITION_SYMBOL:
                        case MASTER_CONNECT_RETRY_SYMBOL:
                        case MASTER_DELAY_SYMBOL:
                        case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                        case MASTER_HOST_SYMBOL:
                        case MASTER_LOG_FILE_SYMBOL:
                        case MASTER_LOG_POS_SYMBOL:
                        case MASTER_PASSWORD_SYMBOL:
                        case MASTER_PORT_SYMBOL:
                        case MASTER_RETRY_COUNT_SYMBOL:
                        case MASTER_SERVER_ID_SYMBOL:
                        case MASTER_SSL_CAPATH_SYMBOL:
                        case MASTER_SSL_CA_SYMBOL:
                        case MASTER_SSL_CERT_SYMBOL:
                        case MASTER_SSL_CIPHER_SYMBOL:
                        case MASTER_SSL_CRLPATH_SYMBOL:
                        case MASTER_SSL_CRL_SYMBOL:
                        case MASTER_SSL_KEY_SYMBOL:
                        case MASTER_SSL_SYMBOL:
                        case MASTER_SYMBOL:
                        case MASTER_USER_SYMBOL:
                        case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                        case MAX_QUERIES_PER_HOUR_SYMBOL:
                        case MAX_ROWS_SYMBOL:
                        case MAX_SIZE_SYMBOL:
                        case MAX_UPDATES_PER_HOUR_SYMBOL:
                        case MAX_USER_CONNECTIONS_SYMBOL:
                        case MEDIUM_SYMBOL:
                        case MEMORY_SYMBOL:
                        case MERGE_SYMBOL:
                        case MESSAGE_TEXT_SYMBOL:
                        case MICROSECOND_SYMBOL:
                        case MIGRATE_SYMBOL:
                        case MINUS_OPERATOR:
                        case MINUTE_MICROSECOND_SYMBOL:
                        case MINUTE_SECOND_SYMBOL:
                        case MINUTE_SYMBOL:
                        case MIN_ROWS_SYMBOL:
                        case MODE_SYMBOL:
                        case MODIFY_SYMBOL:
                        case MOD_OPERATOR:
                        case MOD_SYMBOL:
                        case MONTH_SYMBOL:
                        case MULTILINESTRING_SYMBOL:
                        case MULTIPOINT_SYMBOL:
                        case MULTIPOLYGON_SYMBOL:
                        case MULT_OPERATOR:
                        case MUTEX_SYMBOL:
                        case MYSQL_ERRNO_SYMBOL:
                        case NAMES_SYMBOL:
                        case NAME_SYMBOL:
                        case NATIONAL_SYMBOL:
                        case NATURAL_SYMBOL:
                        case NCHAR_SYMBOL:
                        case NCHAR_TEXT:
                        case NDBCLUSTER_SYMBOL:
                        case NEW_SYMBOL:
                        case NEXT_SYMBOL:
                        case NODEGROUP_SYMBOL:
                        case NONE_SYMBOL:
                        case NOT_EQUAL2_OPERATOR:
                        case NOT_EQUAL_OPERATOR:
                        case NOT_SYMBOL:
                        case NO_SYMBOL:
                        case NO_WAIT_SYMBOL:
                        case NULL_SAFE_EQUAL_OPERATOR:
                        case NUMBER_SYMBOL:
                        case NVARCHAR_SYMBOL:
                        case OFFSET_SYMBOL:
                        case OLD_PASSWORD_SYMBOL:
                        case ONE_SHOT_SYMBOL:
                        case ONE_SYMBOL:
                        case ON_SYMBOL:
                        case OPEN_SYMBOL:
                        case OPTIONS_SYMBOL:
                        case ORDER_SYMBOL:
                        case OR_SYMBOL:
                        case OWNER_SYMBOL:
                        case PACK_KEYS_SYMBOL:
                        case PAGE_SYMBOL:
                        case PARSER_SYMBOL:
                        case PARTIAL_SYMBOL:
                        case PARTITIONING_SYMBOL:
                        case PARTITIONS_SYMBOL:
                        case PARTITION_SYMBOL:
                        case PASSWORD_SYMBOL:
                        case PHASE_SYMBOL:
                        case PLUGINS_SYMBOL:
                        case PLUGIN_DIR_SYMBOL:
                        case PLUGIN_SYMBOL:
                        case PLUS_OPERATOR:
                        case POINT_SYMBOL:
                        case POLYGON_SYMBOL:
                        case PORT_SYMBOL:
                        case PREPARE_SYMBOL:
                        case PRESERVE_SYMBOL:
                        case PREV_SYMBOL:
                        case PRIVILEGES_SYMBOL:
                        case PROCEDURE_SYMBOL:
                        case PROCESSLIST_SYMBOL:
                        case PROCESS_SYMBOL:
                        case PROFILES_SYMBOL:
                        case PROFILE_SYMBOL:
                        case PROXY_SYMBOL:
                        case QUARTER_SYMBOL:
                        case QUERY_SYMBOL:
                        case QUICK_SYMBOL:
                        case READ_ONLY_SYMBOL:
                        case REBUILD_SYMBOL:
                        case RECOVER_SYMBOL:
                        case REDOFILE_SYMBOL:
                        case REDO_BUFFER_SIZE_SYMBOL:
                        case REDUNDANT_SYMBOL:
                        case REGEXP_SYMBOL:
                        case RELAYLOG_SYMBOL:
                        case RELAY_LOG_FILE_SYMBOL:
                        case RELAY_LOG_POS_SYMBOL:
                        case RELAY_SYMBOL:
                        case RELAY_THREAD_SYMBOL:
                        case RELOAD_SYMBOL:
                        case REMOVE_SYMBOL:
                        case RENAME_SYMBOL:
                        case REORGANIZE_SYMBOL:
                        case REPAIR_SYMBOL:
                        case REPEATABLE_SYMBOL:
                        case REPLICATION_SYMBOL:
                        case RESET_SYMBOL:
                        case RESTORE_SYMBOL:
                        case RESUME_SYMBOL:
                        case RETURNED_SQLSTATE_SYMBOL:
                        case RETURNS_SYMBOL:
                        case REVERSE_SYMBOL:
                        case RIGHT_SYMBOL:
                        case ROLLBACK_SYMBOL:
                        case ROLLUP_SYMBOL:
                        case ROUTINE_SYMBOL:
                        case ROWS_SYMBOL:
                        case ROW_COUNT_SYMBOL:
                        case ROW_FORMAT_SYMBOL:
                        case ROW_SYMBOL:
                        case RTREE_SYMBOL:
                        case SAVEPOINT_SYMBOL:
                        case SCHEDULE_SYMBOL:
                        case SCHEMA_NAME_SYMBOL:
                        case SECOND_MICROSECOND_SYMBOL:
                        case SECOND_SYMBOL:
                        case SECURITY_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        case SEPARATOR_SYMBOL:
                        case SERIALIZABLE_SYMBOL:
                        case SERIAL_SYMBOL:
                        case SERVER_SYMBOL:
                        case SESSION_SYMBOL:
                        case SET_SYMBOL:
                        case SHARE_SYMBOL:
                        case SHIFT_LEFT_OPERATOR:
                        case SHIFT_RIGHT_OPERATOR:
                        case SHUTDOWN_SYMBOL:
                        case SIGNED_SYMBOL:
                        case SIMPLE_SYMBOL:
                        case SINGLE_QUOTED_TEXT:
                        case SLAVE_SYMBOL:
                        case SLOW_SYMBOL:
                        case SNAPSHOT_SYMBOL:
                        case SOCKET_SYMBOL:
                        case SONAME_SYMBOL:
                        case SOUNDS_SYMBOL:
                        case SOURCE_SYMBOL:
                        case SQL_AFTER_GTIDS_SYMBOL:
                        case SQL_AFTER_MTS_GAPS_SYMBOL:
                        case SQL_BEFORE_GTIDS_SYMBOL:
                        case SQL_BUFFER_RESULT_SYMBOL:
                        case SQL_CACHE_SYMBOL:
                        case SQL_NO_CACHE_SYMBOL:
                        case SQL_THREAD_SYMBOL:
                        case STARTS_SYMBOL:
                        case START_SYMBOL:
                        case STATS_AUTO_RECALC_SYMBOL:
                        case STATS_PERSISTENT_SYMBOL:
                        case STATS_SAMPLE_PAGES_SYMBOL:
                        case STATUS_SYMBOL:
                        case STOP_SYMBOL:
                        case STORAGE_SYMBOL:
                        case STRAIGHT_JOIN_SYMBOL:
                        case STRING_SYMBOL:
                        case SUBCLASS_ORIGIN_SYMBOL:
                        case SUBDATE_SYMBOL:
                        case SUBJECT_SYMBOL:
                        case SUBPARTITIONS_SYMBOL:
                        case SUBPARTITION_SYMBOL:
                        case SUPER_SYMBOL:
                        case SUSPEND_SYMBOL:
                        case SWAPS_SYMBOL:
                        case SWITCHES_SYMBOL:
                        case TABLESPACE_SYMBOL:
                        case TABLES_SYMBOL:
                        case TABLE_CHECKSUM_SYMBOL:
                        case TABLE_NAME_SYMBOL:
                        case TEMPORARY_SYMBOL:
                        case TEMPTABLE_SYMBOL:
                        case TEXT_SYMBOL:
                        case THAN_SYMBOL:
                        case THEN_SYMBOL:
                        case TIMESTAMP_ADD_SYMBOL:
                        case TIMESTAMP_DIFF_SYMBOL:
                        case TIMESTAMP_SYMBOL:
                        case TIME_SYMBOL:
                        case TRANSACTION_SYMBOL:
                        case TRIGGERS_SYMBOL:
                        case TRUNCATE_SYMBOL:
                        case TYPES_SYMBOL:
                        case TYPE_SYMBOL:
                        case UDF_RETURNS_SYMBOL:
                        case UNCOMMITTED_SYMBOL:
                        case UNDEFINED_SYMBOL:
                        case UNDERSCORE_CHARSET:
                        case UNDOFILE_SYMBOL:
                        case UNDO_BUFFER_SIZE_SYMBOL:
                        case UNICODE_SYMBOL:
                        case UNINSTALL_SYMBOL:
                        case UNION_SYMBOL:
                        case UNKNOWN_SYMBOL:
                        case UNTIL_SYMBOL:
                        case UPGRADE_SYMBOL:
                        case USER_RESOURCES_SYMBOL:
                        case USER_SYMBOL:
                        case USE_FRM_SYMBOL:
                        case USING_SYMBOL:
                        case VALUE_SYMBOL:
                        case VARIABLES_SYMBOL:
                        case VIEW_SYMBOL:
                        case WAIT_SYMBOL:
                        case WARNINGS_SYMBOL:
                        case WEEK_SYMBOL:
                        case WEIGHT_STRING_SYMBOL:
                        case WHEN_SYMBOL:
                        case WHERE_SYMBOL:
                        case WITH_SYMBOL:
                        case WORK_SYMBOL:
                        case WRAPPER_SYMBOL:
                        case X509_SYMBOL:
                        case XA_SYMBOL:
                        case XML_SYMBOL:
                        case XOR_SYMBOL:
                        case YEAR_MONTH_SYMBOL:
                        case YEAR_SYMBOL:
                        case 733:
                        	{
                        		alt527=3;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 527;
                            EXCEPTION->state        = 47;


                            goto ruleprimaryEx;

                        }

                    }
                    else if ( (LA527_0 == COLLATION_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case OPEN_PAR_SYMBOL:
                        	{
                        		{
                        		    int LA527_1958 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=4;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 1958;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case DOT_SYMBOL:
                        	{
                        		{
                        		    int LA527_1959 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 1959;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case EOF:
                        case ACTION_SYMBOL:
                        case ADDDATE_SYMBOL:
                        case AFTER_SYMBOL:
                        case AGAINST_SYMBOL:
                        case AGGREGATE_SYMBOL:
                        case ALGORITHM_SYMBOL:
                        case ANALYZE_SYMBOL:
                        case AND_SYMBOL:
                        case ANY_SYMBOL:
                        case ASCII_SYMBOL:
                        case ASC_SYMBOL:
                        case AS_SYMBOL:
                        case AT_SYMBOL:
                        case AUTHORS_SYMBOL:
                        case AUTOEXTEND_SIZE_SYMBOL:
                        case AUTO_INCREMENT_SYMBOL:
                        case AVG_ROW_LENGTH_SYMBOL:
                        case AVG_SYMBOL:
                        case BACKUP_SYMBOL:
                        case BACK_TICK_QUOTED_ID:
                        case BEGIN_SYMBOL:
                        case BETWEEN_SYMBOL:
                        case BINLOG_SYMBOL:
                        case BITWISE_AND_OPERATOR:
                        case BITWISE_OR_OPERATOR:
                        case BITWISE_XOR_OPERATOR:
                        case BIT_SYMBOL:
                        case BLOCK_SYMBOL:
                        case BOOLEAN_SYMBOL:
                        case BOOL_SYMBOL:
                        case BTREE_SYMBOL:
                        case BYTE_SYMBOL:
                        case CACHE_SYMBOL:
                        case CASCADED_SYMBOL:
                        case CATALOG_NAME_SYMBOL:
                        case CHAIN_SYMBOL:
                        case CHANGED_SYMBOL:
                        case CHARSET_SYMBOL:
                        case CHECKSUM_SYMBOL:
                        case CIPHER_SYMBOL:
                        case CLASS_ORIGIN_SYMBOL:
                        case CLIENT_SYMBOL:
                        case CLOSE_PAR_SYMBOL:
                        case CLOSE_SYMBOL:
                        case COALESCE_SYMBOL:
                        case CODE_SYMBOL:
                        case COLLATE_SYMBOL:
                        case COLLATION_SYMBOL:
                        case COLUMNS_SYMBOL:
                        case COLUMN_FORMAT_SYMBOL:
                        case COLUMN_NAME_SYMBOL:
                        case COMMA_SYMBOL:
                        case COMMENT_SYMBOL:
                        case COMMITTED_SYMBOL:
                        case COMMIT_SYMBOL:
                        case COMPACT_SYMBOL:
                        case COMPLETION_SYMBOL:
                        case COMPRESSED_SYMBOL:
                        case CONCAT_PIPES_SYMBOL:
                        case CONCURRENT_SYMBOL:
                        case CONNECTION_SYMBOL:
                        case CONSISTENT_SYMBOL:
                        case CONSTRAINT_CATALOG_SYMBOL:
                        case CONSTRAINT_NAME_SYMBOL:
                        case CONSTRAINT_SCHEMA_SYMBOL:
                        case CONTAINS_SYMBOL:
                        case CONTEXT_SYMBOL:
                        case CONTRIBUTORS_SYMBOL:
                        case CPU_SYMBOL:
                        case CROSS_SYMBOL:
                        case CUBE_SYMBOL:
                        case CURRENT_SYMBOL:
                        case CURSOR_NAME_SYMBOL:
                        case DATAFILE_SYMBOL:
                        case DATA_SYMBOL:
                        case DATETIME_SYMBOL:
                        case DATE_SYMBOL:
                        case DAY_HOUR_SYMBOL:
                        case DAY_MICROSECOND_SYMBOL:
                        case DAY_MINUTE_SYMBOL:
                        case DAY_SECOND_SYMBOL:
                        case DAY_SYMBOL:
                        case DEALLOCATE_SYMBOL:
                        case DEFAULT_AUTH_SYMBOL:
                        case DEFINER_SYMBOL:
                        case DELAY_KEY_WRITE_SYMBOL:
                        case DESC_SYMBOL:
                        case DES_KEY_FILE_SYMBOL:
                        case DIAGNOSTICS_SYMBOL:
                        case DIRECTORY_SYMBOL:
                        case DISABLE_SYMBOL:
                        case DISCARD_SYMBOL:
                        case DISK_SYMBOL:
                        case DIV_OPERATOR:
                        case DIV_SYMBOL:
                        case DOUBLE_QUOTED_TEXT:
                        case DO_SYMBOL:
                        case DUMPFILE_SYMBOL:
                        case DUPLICATE_SYMBOL:
                        case DYNAMIC_SYMBOL:
                        case ELSE_SYMBOL:
                        case ENABLE_SYMBOL:
                        case ENDS_SYMBOL:
                        case END_SYMBOL:
                        case ENGINES_SYMBOL:
                        case ENGINE_SYMBOL:
                        case ENUM_SYMBOL:
                        case EQUAL_OPERATOR:
                        case ERRORS_SYMBOL:
                        case ERROR_SYMBOL:
                        case ESCAPE_SYMBOL:
                        case EVENTS_SYMBOL:
                        case EVENT_SYMBOL:
                        case EVERY_SYMBOL:
                        case EXECUTE_SYMBOL:
                        case EXPANSION_SYMBOL:
                        case EXPORT_SYMBOL:
                        case EXTENDED_SYMBOL:
                        case EXTENT_SIZE_SYMBOL:
                        case FAST_SYMBOL:
                        case FAULTS_SYMBOL:
                        case FILE_SYMBOL:
                        case FIRST_SYMBOL:
                        case FIXED_SYMBOL:
                        case FLUSH_SYMBOL:
                        case FORMAT_SYMBOL:
                        case FOR_SYMBOL:
                        case FOUND_SYMBOL:
                        case FRAC_SECOND_SYMBOL:
                        case FROM_SYMBOL:
                        case FULL_SYMBOL:
                        case FUNCTION_SYMBOL:
                        case GENERAL_SYMBOL:
                        case GEOMETRYCOLLECTION_SYMBOL:
                        case GEOMETRY_SYMBOL:
                        case GET_FORMAT_SYMBOL:
                        case GLOBAL_SYMBOL:
                        case GRANTS_SYMBOL:
                        case GREATER_OR_EQUAL_OPERATOR:
                        case GREATER_THAN_OPERATOR:
                        case GROUP_SYMBOL:
                        case HANDLER_SYMBOL:
                        case HASH_SYMBOL:
                        case HAVING_SYMBOL:
                        case HELP_SYMBOL:
                        case HOSTS_SYMBOL:
                        case HOST_SYMBOL:
                        case HOUR_MICROSECOND_SYMBOL:
                        case HOUR_MINUTE_SYMBOL:
                        case HOUR_SECOND_SYMBOL:
                        case HOUR_SYMBOL:
                        case IDENTIFIED_SYMBOL:
                        case IDENTIFIER:
                        case IGNORE_SERVER_IDS_SYMBOL:
                        case IMPORT_SYMBOL:
                        case INDEXES_SYMBOL:
                        case INITIAL_SIZE_SYMBOL:
                        case INNER_SYMBOL:
                        case INNODB_SYMBOL:
                        case INSERT_METHOD_SYMBOL:
                        case INSTALL_SYMBOL:
                        case INTO_SYMBOL:
                        case INVOKER_SYMBOL:
                        case IN_SYMBOL:
                        case IO_SYMBOL:
                        case IPC_SYMBOL:
                        case ISOLATION_SYMBOL:
                        case ISSUER_SYMBOL:
                        case IS_SYMBOL:
                        case JOIN_SYMBOL:
                        case KEY_BLOCK_SIZE_SYMBOL:
                        case LANGUAGE_SYMBOL:
                        case LAST_SYMBOL:
                        case LEAVES_SYMBOL:
                        case LEFT_SYMBOL:
                        case LESS_OR_EQUAL_OPERATOR:
                        case LESS_SYMBOL:
                        case LESS_THAN_OPERATOR:
                        case LEVEL_SYMBOL:
                        case LIKE_SYMBOL:
                        case LIMIT_SYMBOL:
                        case LINESTRING_SYMBOL:
                        case LIST_SYMBOL:
                        case LOCAL_SYMBOL:
                        case LOCKS_SYMBOL:
                        case LOCK_SYMBOL:
                        case LOGFILE_SYMBOL:
                        case LOGICAL_AND_OPERATOR:
                        case LOGICAL_OR_OPERATOR:
                        case LOGS_SYMBOL:
                        case MASTER_AUTO_POSITION_SYMBOL:
                        case MASTER_CONNECT_RETRY_SYMBOL:
                        case MASTER_DELAY_SYMBOL:
                        case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                        case MASTER_HOST_SYMBOL:
                        case MASTER_LOG_FILE_SYMBOL:
                        case MASTER_LOG_POS_SYMBOL:
                        case MASTER_PASSWORD_SYMBOL:
                        case MASTER_PORT_SYMBOL:
                        case MASTER_RETRY_COUNT_SYMBOL:
                        case MASTER_SERVER_ID_SYMBOL:
                        case MASTER_SSL_CAPATH_SYMBOL:
                        case MASTER_SSL_CA_SYMBOL:
                        case MASTER_SSL_CERT_SYMBOL:
                        case MASTER_SSL_CIPHER_SYMBOL:
                        case MASTER_SSL_CRLPATH_SYMBOL:
                        case MASTER_SSL_CRL_SYMBOL:
                        case MASTER_SSL_KEY_SYMBOL:
                        case MASTER_SSL_SYMBOL:
                        case MASTER_SYMBOL:
                        case MASTER_USER_SYMBOL:
                        case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                        case MAX_QUERIES_PER_HOUR_SYMBOL:
                        case MAX_ROWS_SYMBOL:
                        case MAX_SIZE_SYMBOL:
                        case MAX_UPDATES_PER_HOUR_SYMBOL:
                        case MAX_USER_CONNECTIONS_SYMBOL:
                        case MEDIUM_SYMBOL:
                        case MEMORY_SYMBOL:
                        case MERGE_SYMBOL:
                        case MESSAGE_TEXT_SYMBOL:
                        case MICROSECOND_SYMBOL:
                        case MIGRATE_SYMBOL:
                        case MINUS_OPERATOR:
                        case MINUTE_MICROSECOND_SYMBOL:
                        case MINUTE_SECOND_SYMBOL:
                        case MINUTE_SYMBOL:
                        case MIN_ROWS_SYMBOL:
                        case MODE_SYMBOL:
                        case MODIFY_SYMBOL:
                        case MOD_OPERATOR:
                        case MOD_SYMBOL:
                        case MONTH_SYMBOL:
                        case MULTILINESTRING_SYMBOL:
                        case MULTIPOINT_SYMBOL:
                        case MULTIPOLYGON_SYMBOL:
                        case MULT_OPERATOR:
                        case MUTEX_SYMBOL:
                        case MYSQL_ERRNO_SYMBOL:
                        case NAMES_SYMBOL:
                        case NAME_SYMBOL:
                        case NATIONAL_SYMBOL:
                        case NATURAL_SYMBOL:
                        case NCHAR_SYMBOL:
                        case NCHAR_TEXT:
                        case NDBCLUSTER_SYMBOL:
                        case NEW_SYMBOL:
                        case NEXT_SYMBOL:
                        case NODEGROUP_SYMBOL:
                        case NONE_SYMBOL:
                        case NOT_EQUAL2_OPERATOR:
                        case NOT_EQUAL_OPERATOR:
                        case NOT_SYMBOL:
                        case NO_SYMBOL:
                        case NO_WAIT_SYMBOL:
                        case NULL_SAFE_EQUAL_OPERATOR:
                        case NUMBER_SYMBOL:
                        case NVARCHAR_SYMBOL:
                        case OFFSET_SYMBOL:
                        case OLD_PASSWORD_SYMBOL:
                        case ONE_SHOT_SYMBOL:
                        case ONE_SYMBOL:
                        case ON_SYMBOL:
                        case OPEN_SYMBOL:
                        case OPTIONS_SYMBOL:
                        case ORDER_SYMBOL:
                        case OR_SYMBOL:
                        case OWNER_SYMBOL:
                        case PACK_KEYS_SYMBOL:
                        case PAGE_SYMBOL:
                        case PARSER_SYMBOL:
                        case PARTIAL_SYMBOL:
                        case PARTITIONING_SYMBOL:
                        case PARTITIONS_SYMBOL:
                        case PARTITION_SYMBOL:
                        case PASSWORD_SYMBOL:
                        case PHASE_SYMBOL:
                        case PLUGINS_SYMBOL:
                        case PLUGIN_DIR_SYMBOL:
                        case PLUGIN_SYMBOL:
                        case PLUS_OPERATOR:
                        case POINT_SYMBOL:
                        case POLYGON_SYMBOL:
                        case PORT_SYMBOL:
                        case PREPARE_SYMBOL:
                        case PRESERVE_SYMBOL:
                        case PREV_SYMBOL:
                        case PRIVILEGES_SYMBOL:
                        case PROCEDURE_SYMBOL:
                        case PROCESSLIST_SYMBOL:
                        case PROCESS_SYMBOL:
                        case PROFILES_SYMBOL:
                        case PROFILE_SYMBOL:
                        case PROXY_SYMBOL:
                        case QUARTER_SYMBOL:
                        case QUERY_SYMBOL:
                        case QUICK_SYMBOL:
                        case READ_ONLY_SYMBOL:
                        case REBUILD_SYMBOL:
                        case RECOVER_SYMBOL:
                        case REDOFILE_SYMBOL:
                        case REDO_BUFFER_SIZE_SYMBOL:
                        case REDUNDANT_SYMBOL:
                        case REGEXP_SYMBOL:
                        case RELAYLOG_SYMBOL:
                        case RELAY_LOG_FILE_SYMBOL:
                        case RELAY_LOG_POS_SYMBOL:
                        case RELAY_SYMBOL:
                        case RELAY_THREAD_SYMBOL:
                        case RELOAD_SYMBOL:
                        case REMOVE_SYMBOL:
                        case RENAME_SYMBOL:
                        case REORGANIZE_SYMBOL:
                        case REPAIR_SYMBOL:
                        case REPEATABLE_SYMBOL:
                        case REPLICATION_SYMBOL:
                        case RESET_SYMBOL:
                        case RESTORE_SYMBOL:
                        case RESUME_SYMBOL:
                        case RETURNED_SQLSTATE_SYMBOL:
                        case RETURNS_SYMBOL:
                        case REVERSE_SYMBOL:
                        case RIGHT_SYMBOL:
                        case ROLLBACK_SYMBOL:
                        case ROLLUP_SYMBOL:
                        case ROUTINE_SYMBOL:
                        case ROWS_SYMBOL:
                        case ROW_COUNT_SYMBOL:
                        case ROW_FORMAT_SYMBOL:
                        case ROW_SYMBOL:
                        case RTREE_SYMBOL:
                        case SAVEPOINT_SYMBOL:
                        case SCHEDULE_SYMBOL:
                        case SCHEMA_NAME_SYMBOL:
                        case SECOND_MICROSECOND_SYMBOL:
                        case SECOND_SYMBOL:
                        case SECURITY_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        case SEPARATOR_SYMBOL:
                        case SERIALIZABLE_SYMBOL:
                        case SERIAL_SYMBOL:
                        case SERVER_SYMBOL:
                        case SESSION_SYMBOL:
                        case SET_SYMBOL:
                        case SHARE_SYMBOL:
                        case SHIFT_LEFT_OPERATOR:
                        case SHIFT_RIGHT_OPERATOR:
                        case SHUTDOWN_SYMBOL:
                        case SIGNED_SYMBOL:
                        case SIMPLE_SYMBOL:
                        case SINGLE_QUOTED_TEXT:
                        case SLAVE_SYMBOL:
                        case SLOW_SYMBOL:
                        case SNAPSHOT_SYMBOL:
                        case SOCKET_SYMBOL:
                        case SONAME_SYMBOL:
                        case SOUNDS_SYMBOL:
                        case SOURCE_SYMBOL:
                        case SQL_AFTER_GTIDS_SYMBOL:
                        case SQL_AFTER_MTS_GAPS_SYMBOL:
                        case SQL_BEFORE_GTIDS_SYMBOL:
                        case SQL_BUFFER_RESULT_SYMBOL:
                        case SQL_CACHE_SYMBOL:
                        case SQL_NO_CACHE_SYMBOL:
                        case SQL_THREAD_SYMBOL:
                        case STARTS_SYMBOL:
                        case START_SYMBOL:
                        case STATS_AUTO_RECALC_SYMBOL:
                        case STATS_PERSISTENT_SYMBOL:
                        case STATS_SAMPLE_PAGES_SYMBOL:
                        case STATUS_SYMBOL:
                        case STOP_SYMBOL:
                        case STORAGE_SYMBOL:
                        case STRAIGHT_JOIN_SYMBOL:
                        case STRING_SYMBOL:
                        case SUBCLASS_ORIGIN_SYMBOL:
                        case SUBDATE_SYMBOL:
                        case SUBJECT_SYMBOL:
                        case SUBPARTITIONS_SYMBOL:
                        case SUBPARTITION_SYMBOL:
                        case SUPER_SYMBOL:
                        case SUSPEND_SYMBOL:
                        case SWAPS_SYMBOL:
                        case SWITCHES_SYMBOL:
                        case TABLESPACE_SYMBOL:
                        case TABLES_SYMBOL:
                        case TABLE_CHECKSUM_SYMBOL:
                        case TABLE_NAME_SYMBOL:
                        case TEMPORARY_SYMBOL:
                        case TEMPTABLE_SYMBOL:
                        case TEXT_SYMBOL:
                        case THAN_SYMBOL:
                        case THEN_SYMBOL:
                        case TIMESTAMP_ADD_SYMBOL:
                        case TIMESTAMP_DIFF_SYMBOL:
                        case TIMESTAMP_SYMBOL:
                        case TIME_SYMBOL:
                        case TRANSACTION_SYMBOL:
                        case TRIGGERS_SYMBOL:
                        case TRUNCATE_SYMBOL:
                        case TYPES_SYMBOL:
                        case TYPE_SYMBOL:
                        case UDF_RETURNS_SYMBOL:
                        case UNCOMMITTED_SYMBOL:
                        case UNDEFINED_SYMBOL:
                        case UNDERSCORE_CHARSET:
                        case UNDOFILE_SYMBOL:
                        case UNDO_BUFFER_SIZE_SYMBOL:
                        case UNICODE_SYMBOL:
                        case UNINSTALL_SYMBOL:
                        case UNION_SYMBOL:
                        case UNKNOWN_SYMBOL:
                        case UNTIL_SYMBOL:
                        case UPGRADE_SYMBOL:
                        case USER_RESOURCES_SYMBOL:
                        case USER_SYMBOL:
                        case USE_FRM_SYMBOL:
                        case USING_SYMBOL:
                        case VALUE_SYMBOL:
                        case VARIABLES_SYMBOL:
                        case VIEW_SYMBOL:
                        case WAIT_SYMBOL:
                        case WARNINGS_SYMBOL:
                        case WEEK_SYMBOL:
                        case WEIGHT_STRING_SYMBOL:
                        case WHEN_SYMBOL:
                        case WHERE_SYMBOL:
                        case WITH_SYMBOL:
                        case WORK_SYMBOL:
                        case WRAPPER_SYMBOL:
                        case X509_SYMBOL:
                        case XA_SYMBOL:
                        case XML_SYMBOL:
                        case XOR_SYMBOL:
                        case YEAR_MONTH_SYMBOL:
                        case YEAR_SYMBOL:
                        case 733:
                        	{
                        		alt527=3;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 527;
                            EXCEPTION->state        = 48;


                            goto ruleprimaryEx;

                        }

                    }
                    else if ( (LA527_0 == MICROSECOND_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case OPEN_PAR_SYMBOL:
                        	{
                        		{
                        		    int LA527_2051 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=4;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 2051;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case DOT_SYMBOL:
                        	{
                        		{
                        		    int LA527_2052 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 2052;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case EOF:
                        case ACTION_SYMBOL:
                        case ADDDATE_SYMBOL:
                        case AFTER_SYMBOL:
                        case AGAINST_SYMBOL:
                        case AGGREGATE_SYMBOL:
                        case ALGORITHM_SYMBOL:
                        case ANALYZE_SYMBOL:
                        case AND_SYMBOL:
                        case ANY_SYMBOL:
                        case ASCII_SYMBOL:
                        case ASC_SYMBOL:
                        case AS_SYMBOL:
                        case AT_SYMBOL:
                        case AUTHORS_SYMBOL:
                        case AUTOEXTEND_SIZE_SYMBOL:
                        case AUTO_INCREMENT_SYMBOL:
                        case AVG_ROW_LENGTH_SYMBOL:
                        case AVG_SYMBOL:
                        case BACKUP_SYMBOL:
                        case BACK_TICK_QUOTED_ID:
                        case BEGIN_SYMBOL:
                        case BETWEEN_SYMBOL:
                        case BINLOG_SYMBOL:
                        case BITWISE_AND_OPERATOR:
                        case BITWISE_OR_OPERATOR:
                        case BITWISE_XOR_OPERATOR:
                        case BIT_SYMBOL:
                        case BLOCK_SYMBOL:
                        case BOOLEAN_SYMBOL:
                        case BOOL_SYMBOL:
                        case BTREE_SYMBOL:
                        case BYTE_SYMBOL:
                        case CACHE_SYMBOL:
                        case CASCADED_SYMBOL:
                        case CATALOG_NAME_SYMBOL:
                        case CHAIN_SYMBOL:
                        case CHANGED_SYMBOL:
                        case CHARSET_SYMBOL:
                        case CHECKSUM_SYMBOL:
                        case CIPHER_SYMBOL:
                        case CLASS_ORIGIN_SYMBOL:
                        case CLIENT_SYMBOL:
                        case CLOSE_PAR_SYMBOL:
                        case CLOSE_SYMBOL:
                        case COALESCE_SYMBOL:
                        case CODE_SYMBOL:
                        case COLLATE_SYMBOL:
                        case COLLATION_SYMBOL:
                        case COLUMNS_SYMBOL:
                        case COLUMN_FORMAT_SYMBOL:
                        case COLUMN_NAME_SYMBOL:
                        case COMMA_SYMBOL:
                        case COMMENT_SYMBOL:
                        case COMMITTED_SYMBOL:
                        case COMMIT_SYMBOL:
                        case COMPACT_SYMBOL:
                        case COMPLETION_SYMBOL:
                        case COMPRESSED_SYMBOL:
                        case CONCAT_PIPES_SYMBOL:
                        case CONCURRENT_SYMBOL:
                        case CONNECTION_SYMBOL:
                        case CONSISTENT_SYMBOL:
                        case CONSTRAINT_CATALOG_SYMBOL:
                        case CONSTRAINT_NAME_SYMBOL:
                        case CONSTRAINT_SCHEMA_SYMBOL:
                        case CONTAINS_SYMBOL:
                        case CONTEXT_SYMBOL:
                        case CONTRIBUTORS_SYMBOL:
                        case CPU_SYMBOL:
                        case CROSS_SYMBOL:
                        case CUBE_SYMBOL:
                        case CURRENT_SYMBOL:
                        case CURSOR_NAME_SYMBOL:
                        case DATAFILE_SYMBOL:
                        case DATA_SYMBOL:
                        case DATETIME_SYMBOL:
                        case DATE_SYMBOL:
                        case DAY_HOUR_SYMBOL:
                        case DAY_MICROSECOND_SYMBOL:
                        case DAY_MINUTE_SYMBOL:
                        case DAY_SECOND_SYMBOL:
                        case DAY_SYMBOL:
                        case DEALLOCATE_SYMBOL:
                        case DEFAULT_AUTH_SYMBOL:
                        case DEFINER_SYMBOL:
                        case DELAY_KEY_WRITE_SYMBOL:
                        case DESC_SYMBOL:
                        case DES_KEY_FILE_SYMBOL:
                        case DIAGNOSTICS_SYMBOL:
                        case DIRECTORY_SYMBOL:
                        case DISABLE_SYMBOL:
                        case DISCARD_SYMBOL:
                        case DISK_SYMBOL:
                        case DIV_OPERATOR:
                        case DIV_SYMBOL:
                        case DOUBLE_QUOTED_TEXT:
                        case DO_SYMBOL:
                        case DUMPFILE_SYMBOL:
                        case DUPLICATE_SYMBOL:
                        case DYNAMIC_SYMBOL:
                        case ELSE_SYMBOL:
                        case ENABLE_SYMBOL:
                        case ENDS_SYMBOL:
                        case END_SYMBOL:
                        case ENGINES_SYMBOL:
                        case ENGINE_SYMBOL:
                        case ENUM_SYMBOL:
                        case EQUAL_OPERATOR:
                        case ERRORS_SYMBOL:
                        case ERROR_SYMBOL:
                        case ESCAPE_SYMBOL:
                        case EVENTS_SYMBOL:
                        case EVENT_SYMBOL:
                        case EVERY_SYMBOL:
                        case EXECUTE_SYMBOL:
                        case EXPANSION_SYMBOL:
                        case EXPORT_SYMBOL:
                        case EXTENDED_SYMBOL:
                        case EXTENT_SIZE_SYMBOL:
                        case FAST_SYMBOL:
                        case FAULTS_SYMBOL:
                        case FILE_SYMBOL:
                        case FIRST_SYMBOL:
                        case FIXED_SYMBOL:
                        case FLUSH_SYMBOL:
                        case FORMAT_SYMBOL:
                        case FOR_SYMBOL:
                        case FOUND_SYMBOL:
                        case FRAC_SECOND_SYMBOL:
                        case FROM_SYMBOL:
                        case FULL_SYMBOL:
                        case FUNCTION_SYMBOL:
                        case GENERAL_SYMBOL:
                        case GEOMETRYCOLLECTION_SYMBOL:
                        case GEOMETRY_SYMBOL:
                        case GET_FORMAT_SYMBOL:
                        case GLOBAL_SYMBOL:
                        case GRANTS_SYMBOL:
                        case GREATER_OR_EQUAL_OPERATOR:
                        case GREATER_THAN_OPERATOR:
                        case GROUP_SYMBOL:
                        case HANDLER_SYMBOL:
                        case HASH_SYMBOL:
                        case HAVING_SYMBOL:
                        case HELP_SYMBOL:
                        case HOSTS_SYMBOL:
                        case HOST_SYMBOL:
                        case HOUR_MICROSECOND_SYMBOL:
                        case HOUR_MINUTE_SYMBOL:
                        case HOUR_SECOND_SYMBOL:
                        case HOUR_SYMBOL:
                        case IDENTIFIED_SYMBOL:
                        case IDENTIFIER:
                        case IGNORE_SERVER_IDS_SYMBOL:
                        case IMPORT_SYMBOL:
                        case INDEXES_SYMBOL:
                        case INITIAL_SIZE_SYMBOL:
                        case INNER_SYMBOL:
                        case INNODB_SYMBOL:
                        case INSERT_METHOD_SYMBOL:
                        case INSTALL_SYMBOL:
                        case INTO_SYMBOL:
                        case INVOKER_SYMBOL:
                        case IN_SYMBOL:
                        case IO_SYMBOL:
                        case IPC_SYMBOL:
                        case ISOLATION_SYMBOL:
                        case ISSUER_SYMBOL:
                        case IS_SYMBOL:
                        case JOIN_SYMBOL:
                        case KEY_BLOCK_SIZE_SYMBOL:
                        case LANGUAGE_SYMBOL:
                        case LAST_SYMBOL:
                        case LEAVES_SYMBOL:
                        case LEFT_SYMBOL:
                        case LESS_OR_EQUAL_OPERATOR:
                        case LESS_SYMBOL:
                        case LESS_THAN_OPERATOR:
                        case LEVEL_SYMBOL:
                        case LIKE_SYMBOL:
                        case LIMIT_SYMBOL:
                        case LINESTRING_SYMBOL:
                        case LIST_SYMBOL:
                        case LOCAL_SYMBOL:
                        case LOCKS_SYMBOL:
                        case LOCK_SYMBOL:
                        case LOGFILE_SYMBOL:
                        case LOGICAL_AND_OPERATOR:
                        case LOGICAL_OR_OPERATOR:
                        case LOGS_SYMBOL:
                        case MASTER_AUTO_POSITION_SYMBOL:
                        case MASTER_CONNECT_RETRY_SYMBOL:
                        case MASTER_DELAY_SYMBOL:
                        case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                        case MASTER_HOST_SYMBOL:
                        case MASTER_LOG_FILE_SYMBOL:
                        case MASTER_LOG_POS_SYMBOL:
                        case MASTER_PASSWORD_SYMBOL:
                        case MASTER_PORT_SYMBOL:
                        case MASTER_RETRY_COUNT_SYMBOL:
                        case MASTER_SERVER_ID_SYMBOL:
                        case MASTER_SSL_CAPATH_SYMBOL:
                        case MASTER_SSL_CA_SYMBOL:
                        case MASTER_SSL_CERT_SYMBOL:
                        case MASTER_SSL_CIPHER_SYMBOL:
                        case MASTER_SSL_CRLPATH_SYMBOL:
                        case MASTER_SSL_CRL_SYMBOL:
                        case MASTER_SSL_KEY_SYMBOL:
                        case MASTER_SSL_SYMBOL:
                        case MASTER_SYMBOL:
                        case MASTER_USER_SYMBOL:
                        case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                        case MAX_QUERIES_PER_HOUR_SYMBOL:
                        case MAX_ROWS_SYMBOL:
                        case MAX_SIZE_SYMBOL:
                        case MAX_UPDATES_PER_HOUR_SYMBOL:
                        case MAX_USER_CONNECTIONS_SYMBOL:
                        case MEDIUM_SYMBOL:
                        case MEMORY_SYMBOL:
                        case MERGE_SYMBOL:
                        case MESSAGE_TEXT_SYMBOL:
                        case MICROSECOND_SYMBOL:
                        case MIGRATE_SYMBOL:
                        case MINUS_OPERATOR:
                        case MINUTE_MICROSECOND_SYMBOL:
                        case MINUTE_SECOND_SYMBOL:
                        case MINUTE_SYMBOL:
                        case MIN_ROWS_SYMBOL:
                        case MODE_SYMBOL:
                        case MODIFY_SYMBOL:
                        case MOD_OPERATOR:
                        case MOD_SYMBOL:
                        case MONTH_SYMBOL:
                        case MULTILINESTRING_SYMBOL:
                        case MULTIPOINT_SYMBOL:
                        case MULTIPOLYGON_SYMBOL:
                        case MULT_OPERATOR:
                        case MUTEX_SYMBOL:
                        case MYSQL_ERRNO_SYMBOL:
                        case NAMES_SYMBOL:
                        case NAME_SYMBOL:
                        case NATIONAL_SYMBOL:
                        case NATURAL_SYMBOL:
                        case NCHAR_SYMBOL:
                        case NCHAR_TEXT:
                        case NDBCLUSTER_SYMBOL:
                        case NEW_SYMBOL:
                        case NEXT_SYMBOL:
                        case NODEGROUP_SYMBOL:
                        case NONE_SYMBOL:
                        case NOT_EQUAL2_OPERATOR:
                        case NOT_EQUAL_OPERATOR:
                        case NOT_SYMBOL:
                        case NO_SYMBOL:
                        case NO_WAIT_SYMBOL:
                        case NULL_SAFE_EQUAL_OPERATOR:
                        case NUMBER_SYMBOL:
                        case NVARCHAR_SYMBOL:
                        case OFFSET_SYMBOL:
                        case OLD_PASSWORD_SYMBOL:
                        case ONE_SHOT_SYMBOL:
                        case ONE_SYMBOL:
                        case ON_SYMBOL:
                        case OPEN_SYMBOL:
                        case OPTIONS_SYMBOL:
                        case ORDER_SYMBOL:
                        case OR_SYMBOL:
                        case OWNER_SYMBOL:
                        case PACK_KEYS_SYMBOL:
                        case PAGE_SYMBOL:
                        case PARSER_SYMBOL:
                        case PARTIAL_SYMBOL:
                        case PARTITIONING_SYMBOL:
                        case PARTITIONS_SYMBOL:
                        case PARTITION_SYMBOL:
                        case PASSWORD_SYMBOL:
                        case PHASE_SYMBOL:
                        case PLUGINS_SYMBOL:
                        case PLUGIN_DIR_SYMBOL:
                        case PLUGIN_SYMBOL:
                        case PLUS_OPERATOR:
                        case POINT_SYMBOL:
                        case POLYGON_SYMBOL:
                        case PORT_SYMBOL:
                        case PREPARE_SYMBOL:
                        case PRESERVE_SYMBOL:
                        case PREV_SYMBOL:
                        case PRIVILEGES_SYMBOL:
                        case PROCEDURE_SYMBOL:
                        case PROCESSLIST_SYMBOL:
                        case PROCESS_SYMBOL:
                        case PROFILES_SYMBOL:
                        case PROFILE_SYMBOL:
                        case PROXY_SYMBOL:
                        case QUARTER_SYMBOL:
                        case QUERY_SYMBOL:
                        case QUICK_SYMBOL:
                        case READ_ONLY_SYMBOL:
                        case REBUILD_SYMBOL:
                        case RECOVER_SYMBOL:
                        case REDOFILE_SYMBOL:
                        case REDO_BUFFER_SIZE_SYMBOL:
                        case REDUNDANT_SYMBOL:
                        case REGEXP_SYMBOL:
                        case RELAYLOG_SYMBOL:
                        case RELAY_LOG_FILE_SYMBOL:
                        case RELAY_LOG_POS_SYMBOL:
                        case RELAY_SYMBOL:
                        case RELAY_THREAD_SYMBOL:
                        case RELOAD_SYMBOL:
                        case REMOVE_SYMBOL:
                        case RENAME_SYMBOL:
                        case REORGANIZE_SYMBOL:
                        case REPAIR_SYMBOL:
                        case REPEATABLE_SYMBOL:
                        case REPLICATION_SYMBOL:
                        case RESET_SYMBOL:
                        case RESTORE_SYMBOL:
                        case RESUME_SYMBOL:
                        case RETURNED_SQLSTATE_SYMBOL:
                        case RETURNS_SYMBOL:
                        case REVERSE_SYMBOL:
                        case RIGHT_SYMBOL:
                        case ROLLBACK_SYMBOL:
                        case ROLLUP_SYMBOL:
                        case ROUTINE_SYMBOL:
                        case ROWS_SYMBOL:
                        case ROW_COUNT_SYMBOL:
                        case ROW_FORMAT_SYMBOL:
                        case ROW_SYMBOL:
                        case RTREE_SYMBOL:
                        case SAVEPOINT_SYMBOL:
                        case SCHEDULE_SYMBOL:
                        case SCHEMA_NAME_SYMBOL:
                        case SECOND_MICROSECOND_SYMBOL:
                        case SECOND_SYMBOL:
                        case SECURITY_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        case SEPARATOR_SYMBOL:
                        case SERIALIZABLE_SYMBOL:
                        case SERIAL_SYMBOL:
                        case SERVER_SYMBOL:
                        case SESSION_SYMBOL:
                        case SET_SYMBOL:
                        case SHARE_SYMBOL:
                        case SHIFT_LEFT_OPERATOR:
                        case SHIFT_RIGHT_OPERATOR:
                        case SHUTDOWN_SYMBOL:
                        case SIGNED_SYMBOL:
                        case SIMPLE_SYMBOL:
                        case SINGLE_QUOTED_TEXT:
                        case SLAVE_SYMBOL:
                        case SLOW_SYMBOL:
                        case SNAPSHOT_SYMBOL:
                        case SOCKET_SYMBOL:
                        case SONAME_SYMBOL:
                        case SOUNDS_SYMBOL:
                        case SOURCE_SYMBOL:
                        case SQL_AFTER_GTIDS_SYMBOL:
                        case SQL_AFTER_MTS_GAPS_SYMBOL:
                        case SQL_BEFORE_GTIDS_SYMBOL:
                        case SQL_BUFFER_RESULT_SYMBOL:
                        case SQL_CACHE_SYMBOL:
                        case SQL_NO_CACHE_SYMBOL:
                        case SQL_THREAD_SYMBOL:
                        case STARTS_SYMBOL:
                        case START_SYMBOL:
                        case STATS_AUTO_RECALC_SYMBOL:
                        case STATS_PERSISTENT_SYMBOL:
                        case STATS_SAMPLE_PAGES_SYMBOL:
                        case STATUS_SYMBOL:
                        case STOP_SYMBOL:
                        case STORAGE_SYMBOL:
                        case STRAIGHT_JOIN_SYMBOL:
                        case STRING_SYMBOL:
                        case SUBCLASS_ORIGIN_SYMBOL:
                        case SUBDATE_SYMBOL:
                        case SUBJECT_SYMBOL:
                        case SUBPARTITIONS_SYMBOL:
                        case SUBPARTITION_SYMBOL:
                        case SUPER_SYMBOL:
                        case SUSPEND_SYMBOL:
                        case SWAPS_SYMBOL:
                        case SWITCHES_SYMBOL:
                        case TABLESPACE_SYMBOL:
                        case TABLES_SYMBOL:
                        case TABLE_CHECKSUM_SYMBOL:
                        case TABLE_NAME_SYMBOL:
                        case TEMPORARY_SYMBOL:
                        case TEMPTABLE_SYMBOL:
                        case TEXT_SYMBOL:
                        case THAN_SYMBOL:
                        case THEN_SYMBOL:
                        case TIMESTAMP_ADD_SYMBOL:
                        case TIMESTAMP_DIFF_SYMBOL:
                        case TIMESTAMP_SYMBOL:
                        case TIME_SYMBOL:
                        case TRANSACTION_SYMBOL:
                        case TRIGGERS_SYMBOL:
                        case TRUNCATE_SYMBOL:
                        case TYPES_SYMBOL:
                        case TYPE_SYMBOL:
                        case UDF_RETURNS_SYMBOL:
                        case UNCOMMITTED_SYMBOL:
                        case UNDEFINED_SYMBOL:
                        case UNDERSCORE_CHARSET:
                        case UNDOFILE_SYMBOL:
                        case UNDO_BUFFER_SIZE_SYMBOL:
                        case UNICODE_SYMBOL:
                        case UNINSTALL_SYMBOL:
                        case UNION_SYMBOL:
                        case UNKNOWN_SYMBOL:
                        case UNTIL_SYMBOL:
                        case UPGRADE_SYMBOL:
                        case USER_RESOURCES_SYMBOL:
                        case USER_SYMBOL:
                        case USE_FRM_SYMBOL:
                        case USING_SYMBOL:
                        case VALUE_SYMBOL:
                        case VARIABLES_SYMBOL:
                        case VIEW_SYMBOL:
                        case WAIT_SYMBOL:
                        case WARNINGS_SYMBOL:
                        case WEEK_SYMBOL:
                        case WEIGHT_STRING_SYMBOL:
                        case WHEN_SYMBOL:
                        case WHERE_SYMBOL:
                        case WITH_SYMBOL:
                        case WORK_SYMBOL:
                        case WRAPPER_SYMBOL:
                        case X509_SYMBOL:
                        case XA_SYMBOL:
                        case XML_SYMBOL:
                        case XOR_SYMBOL:
                        case YEAR_MONTH_SYMBOL:
                        case YEAR_SYMBOL:
                        case 733:
                        	{
                        		alt527=3;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 527;
                            EXCEPTION->state        = 49;


                            goto ruleprimaryEx;

                        }

                    }
                    else if ( (LA527_0 == TRUNCATE_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case OPEN_PAR_SYMBOL:
                        	{
                        		{
                        		    int LA527_2144 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=4;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 2144;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case DOT_SYMBOL:
                        	{
                        		{
                        		    int LA527_2145 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 2145;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case EOF:
                        case ACTION_SYMBOL:
                        case ADDDATE_SYMBOL:
                        case AFTER_SYMBOL:
                        case AGAINST_SYMBOL:
                        case AGGREGATE_SYMBOL:
                        case ALGORITHM_SYMBOL:
                        case ANALYZE_SYMBOL:
                        case AND_SYMBOL:
                        case ANY_SYMBOL:
                        case ASCII_SYMBOL:
                        case ASC_SYMBOL:
                        case AS_SYMBOL:
                        case AT_SYMBOL:
                        case AUTHORS_SYMBOL:
                        case AUTOEXTEND_SIZE_SYMBOL:
                        case AUTO_INCREMENT_SYMBOL:
                        case AVG_ROW_LENGTH_SYMBOL:
                        case AVG_SYMBOL:
                        case BACKUP_SYMBOL:
                        case BACK_TICK_QUOTED_ID:
                        case BEGIN_SYMBOL:
                        case BETWEEN_SYMBOL:
                        case BINLOG_SYMBOL:
                        case BITWISE_AND_OPERATOR:
                        case BITWISE_OR_OPERATOR:
                        case BITWISE_XOR_OPERATOR:
                        case BIT_SYMBOL:
                        case BLOCK_SYMBOL:
                        case BOOLEAN_SYMBOL:
                        case BOOL_SYMBOL:
                        case BTREE_SYMBOL:
                        case BYTE_SYMBOL:
                        case CACHE_SYMBOL:
                        case CASCADED_SYMBOL:
                        case CATALOG_NAME_SYMBOL:
                        case CHAIN_SYMBOL:
                        case CHANGED_SYMBOL:
                        case CHARSET_SYMBOL:
                        case CHECKSUM_SYMBOL:
                        case CIPHER_SYMBOL:
                        case CLASS_ORIGIN_SYMBOL:
                        case CLIENT_SYMBOL:
                        case CLOSE_PAR_SYMBOL:
                        case CLOSE_SYMBOL:
                        case COALESCE_SYMBOL:
                        case CODE_SYMBOL:
                        case COLLATE_SYMBOL:
                        case COLLATION_SYMBOL:
                        case COLUMNS_SYMBOL:
                        case COLUMN_FORMAT_SYMBOL:
                        case COLUMN_NAME_SYMBOL:
                        case COMMA_SYMBOL:
                        case COMMENT_SYMBOL:
                        case COMMITTED_SYMBOL:
                        case COMMIT_SYMBOL:
                        case COMPACT_SYMBOL:
                        case COMPLETION_SYMBOL:
                        case COMPRESSED_SYMBOL:
                        case CONCAT_PIPES_SYMBOL:
                        case CONCURRENT_SYMBOL:
                        case CONNECTION_SYMBOL:
                        case CONSISTENT_SYMBOL:
                        case CONSTRAINT_CATALOG_SYMBOL:
                        case CONSTRAINT_NAME_SYMBOL:
                        case CONSTRAINT_SCHEMA_SYMBOL:
                        case CONTAINS_SYMBOL:
                        case CONTEXT_SYMBOL:
                        case CONTRIBUTORS_SYMBOL:
                        case CPU_SYMBOL:
                        case CROSS_SYMBOL:
                        case CUBE_SYMBOL:
                        case CURRENT_SYMBOL:
                        case CURSOR_NAME_SYMBOL:
                        case DATAFILE_SYMBOL:
                        case DATA_SYMBOL:
                        case DATETIME_SYMBOL:
                        case DATE_SYMBOL:
                        case DAY_HOUR_SYMBOL:
                        case DAY_MICROSECOND_SYMBOL:
                        case DAY_MINUTE_SYMBOL:
                        case DAY_SECOND_SYMBOL:
                        case DAY_SYMBOL:
                        case DEALLOCATE_SYMBOL:
                        case DEFAULT_AUTH_SYMBOL:
                        case DEFINER_SYMBOL:
                        case DELAY_KEY_WRITE_SYMBOL:
                        case DESC_SYMBOL:
                        case DES_KEY_FILE_SYMBOL:
                        case DIAGNOSTICS_SYMBOL:
                        case DIRECTORY_SYMBOL:
                        case DISABLE_SYMBOL:
                        case DISCARD_SYMBOL:
                        case DISK_SYMBOL:
                        case DIV_OPERATOR:
                        case DIV_SYMBOL:
                        case DOUBLE_QUOTED_TEXT:
                        case DO_SYMBOL:
                        case DUMPFILE_SYMBOL:
                        case DUPLICATE_SYMBOL:
                        case DYNAMIC_SYMBOL:
                        case ELSE_SYMBOL:
                        case ENABLE_SYMBOL:
                        case ENDS_SYMBOL:
                        case END_SYMBOL:
                        case ENGINES_SYMBOL:
                        case ENGINE_SYMBOL:
                        case ENUM_SYMBOL:
                        case EQUAL_OPERATOR:
                        case ERRORS_SYMBOL:
                        case ERROR_SYMBOL:
                        case ESCAPE_SYMBOL:
                        case EVENTS_SYMBOL:
                        case EVENT_SYMBOL:
                        case EVERY_SYMBOL:
                        case EXECUTE_SYMBOL:
                        case EXPANSION_SYMBOL:
                        case EXPORT_SYMBOL:
                        case EXTENDED_SYMBOL:
                        case EXTENT_SIZE_SYMBOL:
                        case FAST_SYMBOL:
                        case FAULTS_SYMBOL:
                        case FILE_SYMBOL:
                        case FIRST_SYMBOL:
                        case FIXED_SYMBOL:
                        case FLUSH_SYMBOL:
                        case FORMAT_SYMBOL:
                        case FOR_SYMBOL:
                        case FOUND_SYMBOL:
                        case FRAC_SECOND_SYMBOL:
                        case FROM_SYMBOL:
                        case FULL_SYMBOL:
                        case FUNCTION_SYMBOL:
                        case GENERAL_SYMBOL:
                        case GEOMETRYCOLLECTION_SYMBOL:
                        case GEOMETRY_SYMBOL:
                        case GET_FORMAT_SYMBOL:
                        case GLOBAL_SYMBOL:
                        case GRANTS_SYMBOL:
                        case GREATER_OR_EQUAL_OPERATOR:
                        case GREATER_THAN_OPERATOR:
                        case GROUP_SYMBOL:
                        case HANDLER_SYMBOL:
                        case HASH_SYMBOL:
                        case HAVING_SYMBOL:
                        case HELP_SYMBOL:
                        case HOSTS_SYMBOL:
                        case HOST_SYMBOL:
                        case HOUR_MICROSECOND_SYMBOL:
                        case HOUR_MINUTE_SYMBOL:
                        case HOUR_SECOND_SYMBOL:
                        case HOUR_SYMBOL:
                        case IDENTIFIED_SYMBOL:
                        case IDENTIFIER:
                        case IGNORE_SERVER_IDS_SYMBOL:
                        case IMPORT_SYMBOL:
                        case INDEXES_SYMBOL:
                        case INITIAL_SIZE_SYMBOL:
                        case INNER_SYMBOL:
                        case INNODB_SYMBOL:
                        case INSERT_METHOD_SYMBOL:
                        case INSTALL_SYMBOL:
                        case INTO_SYMBOL:
                        case INVOKER_SYMBOL:
                        case IN_SYMBOL:
                        case IO_SYMBOL:
                        case IPC_SYMBOL:
                        case ISOLATION_SYMBOL:
                        case ISSUER_SYMBOL:
                        case IS_SYMBOL:
                        case JOIN_SYMBOL:
                        case KEY_BLOCK_SIZE_SYMBOL:
                        case LANGUAGE_SYMBOL:
                        case LAST_SYMBOL:
                        case LEAVES_SYMBOL:
                        case LEFT_SYMBOL:
                        case LESS_OR_EQUAL_OPERATOR:
                        case LESS_SYMBOL:
                        case LESS_THAN_OPERATOR:
                        case LEVEL_SYMBOL:
                        case LIKE_SYMBOL:
                        case LIMIT_SYMBOL:
                        case LINESTRING_SYMBOL:
                        case LIST_SYMBOL:
                        case LOCAL_SYMBOL:
                        case LOCKS_SYMBOL:
                        case LOCK_SYMBOL:
                        case LOGFILE_SYMBOL:
                        case LOGICAL_AND_OPERATOR:
                        case LOGICAL_OR_OPERATOR:
                        case LOGS_SYMBOL:
                        case MASTER_AUTO_POSITION_SYMBOL:
                        case MASTER_CONNECT_RETRY_SYMBOL:
                        case MASTER_DELAY_SYMBOL:
                        case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                        case MASTER_HOST_SYMBOL:
                        case MASTER_LOG_FILE_SYMBOL:
                        case MASTER_LOG_POS_SYMBOL:
                        case MASTER_PASSWORD_SYMBOL:
                        case MASTER_PORT_SYMBOL:
                        case MASTER_RETRY_COUNT_SYMBOL:
                        case MASTER_SERVER_ID_SYMBOL:
                        case MASTER_SSL_CAPATH_SYMBOL:
                        case MASTER_SSL_CA_SYMBOL:
                        case MASTER_SSL_CERT_SYMBOL:
                        case MASTER_SSL_CIPHER_SYMBOL:
                        case MASTER_SSL_CRLPATH_SYMBOL:
                        case MASTER_SSL_CRL_SYMBOL:
                        case MASTER_SSL_KEY_SYMBOL:
                        case MASTER_SSL_SYMBOL:
                        case MASTER_SYMBOL:
                        case MASTER_USER_SYMBOL:
                        case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                        case MAX_QUERIES_PER_HOUR_SYMBOL:
                        case MAX_ROWS_SYMBOL:
                        case MAX_SIZE_SYMBOL:
                        case MAX_UPDATES_PER_HOUR_SYMBOL:
                        case MAX_USER_CONNECTIONS_SYMBOL:
                        case MEDIUM_SYMBOL:
                        case MEMORY_SYMBOL:
                        case MERGE_SYMBOL:
                        case MESSAGE_TEXT_SYMBOL:
                        case MICROSECOND_SYMBOL:
                        case MIGRATE_SYMBOL:
                        case MINUS_OPERATOR:
                        case MINUTE_MICROSECOND_SYMBOL:
                        case MINUTE_SECOND_SYMBOL:
                        case MINUTE_SYMBOL:
                        case MIN_ROWS_SYMBOL:
                        case MODE_SYMBOL:
                        case MODIFY_SYMBOL:
                        case MOD_OPERATOR:
                        case MOD_SYMBOL:
                        case MONTH_SYMBOL:
                        case MULTILINESTRING_SYMBOL:
                        case MULTIPOINT_SYMBOL:
                        case MULTIPOLYGON_SYMBOL:
                        case MULT_OPERATOR:
                        case MUTEX_SYMBOL:
                        case MYSQL_ERRNO_SYMBOL:
                        case NAMES_SYMBOL:
                        case NAME_SYMBOL:
                        case NATIONAL_SYMBOL:
                        case NATURAL_SYMBOL:
                        case NCHAR_SYMBOL:
                        case NCHAR_TEXT:
                        case NDBCLUSTER_SYMBOL:
                        case NEW_SYMBOL:
                        case NEXT_SYMBOL:
                        case NODEGROUP_SYMBOL:
                        case NONE_SYMBOL:
                        case NOT_EQUAL2_OPERATOR:
                        case NOT_EQUAL_OPERATOR:
                        case NOT_SYMBOL:
                        case NO_SYMBOL:
                        case NO_WAIT_SYMBOL:
                        case NULL_SAFE_EQUAL_OPERATOR:
                        case NUMBER_SYMBOL:
                        case NVARCHAR_SYMBOL:
                        case OFFSET_SYMBOL:
                        case OLD_PASSWORD_SYMBOL:
                        case ONE_SHOT_SYMBOL:
                        case ONE_SYMBOL:
                        case ON_SYMBOL:
                        case OPEN_SYMBOL:
                        case OPTIONS_SYMBOL:
                        case ORDER_SYMBOL:
                        case OR_SYMBOL:
                        case OWNER_SYMBOL:
                        case PACK_KEYS_SYMBOL:
                        case PAGE_SYMBOL:
                        case PARSER_SYMBOL:
                        case PARTIAL_SYMBOL:
                        case PARTITIONING_SYMBOL:
                        case PARTITIONS_SYMBOL:
                        case PARTITION_SYMBOL:
                        case PASSWORD_SYMBOL:
                        case PHASE_SYMBOL:
                        case PLUGINS_SYMBOL:
                        case PLUGIN_DIR_SYMBOL:
                        case PLUGIN_SYMBOL:
                        case PLUS_OPERATOR:
                        case POINT_SYMBOL:
                        case POLYGON_SYMBOL:
                        case PORT_SYMBOL:
                        case PREPARE_SYMBOL:
                        case PRESERVE_SYMBOL:
                        case PREV_SYMBOL:
                        case PRIVILEGES_SYMBOL:
                        case PROCEDURE_SYMBOL:
                        case PROCESSLIST_SYMBOL:
                        case PROCESS_SYMBOL:
                        case PROFILES_SYMBOL:
                        case PROFILE_SYMBOL:
                        case PROXY_SYMBOL:
                        case QUARTER_SYMBOL:
                        case QUERY_SYMBOL:
                        case QUICK_SYMBOL:
                        case READ_ONLY_SYMBOL:
                        case REBUILD_SYMBOL:
                        case RECOVER_SYMBOL:
                        case REDOFILE_SYMBOL:
                        case REDO_BUFFER_SIZE_SYMBOL:
                        case REDUNDANT_SYMBOL:
                        case REGEXP_SYMBOL:
                        case RELAYLOG_SYMBOL:
                        case RELAY_LOG_FILE_SYMBOL:
                        case RELAY_LOG_POS_SYMBOL:
                        case RELAY_SYMBOL:
                        case RELAY_THREAD_SYMBOL:
                        case RELOAD_SYMBOL:
                        case REMOVE_SYMBOL:
                        case RENAME_SYMBOL:
                        case REORGANIZE_SYMBOL:
                        case REPAIR_SYMBOL:
                        case REPEATABLE_SYMBOL:
                        case REPLICATION_SYMBOL:
                        case RESET_SYMBOL:
                        case RESTORE_SYMBOL:
                        case RESUME_SYMBOL:
                        case RETURNED_SQLSTATE_SYMBOL:
                        case RETURNS_SYMBOL:
                        case REVERSE_SYMBOL:
                        case RIGHT_SYMBOL:
                        case ROLLBACK_SYMBOL:
                        case ROLLUP_SYMBOL:
                        case ROUTINE_SYMBOL:
                        case ROWS_SYMBOL:
                        case ROW_COUNT_SYMBOL:
                        case ROW_FORMAT_SYMBOL:
                        case ROW_SYMBOL:
                        case RTREE_SYMBOL:
                        case SAVEPOINT_SYMBOL:
                        case SCHEDULE_SYMBOL:
                        case SCHEMA_NAME_SYMBOL:
                        case SECOND_MICROSECOND_SYMBOL:
                        case SECOND_SYMBOL:
                        case SECURITY_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        case SEPARATOR_SYMBOL:
                        case SERIALIZABLE_SYMBOL:
                        case SERIAL_SYMBOL:
                        case SERVER_SYMBOL:
                        case SESSION_SYMBOL:
                        case SET_SYMBOL:
                        case SHARE_SYMBOL:
                        case SHIFT_LEFT_OPERATOR:
                        case SHIFT_RIGHT_OPERATOR:
                        case SHUTDOWN_SYMBOL:
                        case SIGNED_SYMBOL:
                        case SIMPLE_SYMBOL:
                        case SINGLE_QUOTED_TEXT:
                        case SLAVE_SYMBOL:
                        case SLOW_SYMBOL:
                        case SNAPSHOT_SYMBOL:
                        case SOCKET_SYMBOL:
                        case SONAME_SYMBOL:
                        case SOUNDS_SYMBOL:
                        case SOURCE_SYMBOL:
                        case SQL_AFTER_GTIDS_SYMBOL:
                        case SQL_AFTER_MTS_GAPS_SYMBOL:
                        case SQL_BEFORE_GTIDS_SYMBOL:
                        case SQL_BUFFER_RESULT_SYMBOL:
                        case SQL_CACHE_SYMBOL:
                        case SQL_NO_CACHE_SYMBOL:
                        case SQL_THREAD_SYMBOL:
                        case STARTS_SYMBOL:
                        case START_SYMBOL:
                        case STATS_AUTO_RECALC_SYMBOL:
                        case STATS_PERSISTENT_SYMBOL:
                        case STATS_SAMPLE_PAGES_SYMBOL:
                        case STATUS_SYMBOL:
                        case STOP_SYMBOL:
                        case STORAGE_SYMBOL:
                        case STRAIGHT_JOIN_SYMBOL:
                        case STRING_SYMBOL:
                        case SUBCLASS_ORIGIN_SYMBOL:
                        case SUBDATE_SYMBOL:
                        case SUBJECT_SYMBOL:
                        case SUBPARTITIONS_SYMBOL:
                        case SUBPARTITION_SYMBOL:
                        case SUPER_SYMBOL:
                        case SUSPEND_SYMBOL:
                        case SWAPS_SYMBOL:
                        case SWITCHES_SYMBOL:
                        case TABLESPACE_SYMBOL:
                        case TABLES_SYMBOL:
                        case TABLE_CHECKSUM_SYMBOL:
                        case TABLE_NAME_SYMBOL:
                        case TEMPORARY_SYMBOL:
                        case TEMPTABLE_SYMBOL:
                        case TEXT_SYMBOL:
                        case THAN_SYMBOL:
                        case THEN_SYMBOL:
                        case TIMESTAMP_ADD_SYMBOL:
                        case TIMESTAMP_DIFF_SYMBOL:
                        case TIMESTAMP_SYMBOL:
                        case TIME_SYMBOL:
                        case TRANSACTION_SYMBOL:
                        case TRIGGERS_SYMBOL:
                        case TRUNCATE_SYMBOL:
                        case TYPES_SYMBOL:
                        case TYPE_SYMBOL:
                        case UDF_RETURNS_SYMBOL:
                        case UNCOMMITTED_SYMBOL:
                        case UNDEFINED_SYMBOL:
                        case UNDERSCORE_CHARSET:
                        case UNDOFILE_SYMBOL:
                        case UNDO_BUFFER_SIZE_SYMBOL:
                        case UNICODE_SYMBOL:
                        case UNINSTALL_SYMBOL:
                        case UNION_SYMBOL:
                        case UNKNOWN_SYMBOL:
                        case UNTIL_SYMBOL:
                        case UPGRADE_SYMBOL:
                        case USER_RESOURCES_SYMBOL:
                        case USER_SYMBOL:
                        case USE_FRM_SYMBOL:
                        case USING_SYMBOL:
                        case VALUE_SYMBOL:
                        case VARIABLES_SYMBOL:
                        case VIEW_SYMBOL:
                        case WAIT_SYMBOL:
                        case WARNINGS_SYMBOL:
                        case WEEK_SYMBOL:
                        case WEIGHT_STRING_SYMBOL:
                        case WHEN_SYMBOL:
                        case WHERE_SYMBOL:
                        case WITH_SYMBOL:
                        case WORK_SYMBOL:
                        case WRAPPER_SYMBOL:
                        case X509_SYMBOL:
                        case XA_SYMBOL:
                        case XML_SYMBOL:
                        case XOR_SYMBOL:
                        case YEAR_MONTH_SYMBOL:
                        case YEAR_SYMBOL:
                        case 733:
                        	{
                        		alt527=3;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 527;
                            EXCEPTION->state        = 52;


                            goto ruleprimaryEx;

                        }

                    }
                    else if ( (LA527_0 == OLD_PASSWORD_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case OPEN_PAR_SYMBOL:
                        	{
                        		{
                        		    int LA527_2237 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=4;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 2237;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case DOT_SYMBOL:
                        	{
                        		{
                        		    int LA527_2238 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 2238;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case EOF:
                        case ACTION_SYMBOL:
                        case ADDDATE_SYMBOL:
                        case AFTER_SYMBOL:
                        case AGAINST_SYMBOL:
                        case AGGREGATE_SYMBOL:
                        case ALGORITHM_SYMBOL:
                        case ANALYZE_SYMBOL:
                        case AND_SYMBOL:
                        case ANY_SYMBOL:
                        case ASCII_SYMBOL:
                        case ASC_SYMBOL:
                        case AS_SYMBOL:
                        case AT_SYMBOL:
                        case AUTHORS_SYMBOL:
                        case AUTOEXTEND_SIZE_SYMBOL:
                        case AUTO_INCREMENT_SYMBOL:
                        case AVG_ROW_LENGTH_SYMBOL:
                        case AVG_SYMBOL:
                        case BACKUP_SYMBOL:
                        case BACK_TICK_QUOTED_ID:
                        case BEGIN_SYMBOL:
                        case BETWEEN_SYMBOL:
                        case BINLOG_SYMBOL:
                        case BITWISE_AND_OPERATOR:
                        case BITWISE_OR_OPERATOR:
                        case BITWISE_XOR_OPERATOR:
                        case BIT_SYMBOL:
                        case BLOCK_SYMBOL:
                        case BOOLEAN_SYMBOL:
                        case BOOL_SYMBOL:
                        case BTREE_SYMBOL:
                        case BYTE_SYMBOL:
                        case CACHE_SYMBOL:
                        case CASCADED_SYMBOL:
                        case CATALOG_NAME_SYMBOL:
                        case CHAIN_SYMBOL:
                        case CHANGED_SYMBOL:
                        case CHARSET_SYMBOL:
                        case CHECKSUM_SYMBOL:
                        case CIPHER_SYMBOL:
                        case CLASS_ORIGIN_SYMBOL:
                        case CLIENT_SYMBOL:
                        case CLOSE_PAR_SYMBOL:
                        case CLOSE_SYMBOL:
                        case COALESCE_SYMBOL:
                        case CODE_SYMBOL:
                        case COLLATE_SYMBOL:
                        case COLLATION_SYMBOL:
                        case COLUMNS_SYMBOL:
                        case COLUMN_FORMAT_SYMBOL:
                        case COLUMN_NAME_SYMBOL:
                        case COMMA_SYMBOL:
                        case COMMENT_SYMBOL:
                        case COMMITTED_SYMBOL:
                        case COMMIT_SYMBOL:
                        case COMPACT_SYMBOL:
                        case COMPLETION_SYMBOL:
                        case COMPRESSED_SYMBOL:
                        case CONCAT_PIPES_SYMBOL:
                        case CONCURRENT_SYMBOL:
                        case CONNECTION_SYMBOL:
                        case CONSISTENT_SYMBOL:
                        case CONSTRAINT_CATALOG_SYMBOL:
                        case CONSTRAINT_NAME_SYMBOL:
                        case CONSTRAINT_SCHEMA_SYMBOL:
                        case CONTAINS_SYMBOL:
                        case CONTEXT_SYMBOL:
                        case CONTRIBUTORS_SYMBOL:
                        case CPU_SYMBOL:
                        case CROSS_SYMBOL:
                        case CUBE_SYMBOL:
                        case CURRENT_SYMBOL:
                        case CURSOR_NAME_SYMBOL:
                        case DATAFILE_SYMBOL:
                        case DATA_SYMBOL:
                        case DATETIME_SYMBOL:
                        case DATE_SYMBOL:
                        case DAY_HOUR_SYMBOL:
                        case DAY_MICROSECOND_SYMBOL:
                        case DAY_MINUTE_SYMBOL:
                        case DAY_SECOND_SYMBOL:
                        case DAY_SYMBOL:
                        case DEALLOCATE_SYMBOL:
                        case DEFAULT_AUTH_SYMBOL:
                        case DEFINER_SYMBOL:
                        case DELAY_KEY_WRITE_SYMBOL:
                        case DESC_SYMBOL:
                        case DES_KEY_FILE_SYMBOL:
                        case DIAGNOSTICS_SYMBOL:
                        case DIRECTORY_SYMBOL:
                        case DISABLE_SYMBOL:
                        case DISCARD_SYMBOL:
                        case DISK_SYMBOL:
                        case DIV_OPERATOR:
                        case DIV_SYMBOL:
                        case DOUBLE_QUOTED_TEXT:
                        case DO_SYMBOL:
                        case DUMPFILE_SYMBOL:
                        case DUPLICATE_SYMBOL:
                        case DYNAMIC_SYMBOL:
                        case ELSE_SYMBOL:
                        case ENABLE_SYMBOL:
                        case ENDS_SYMBOL:
                        case END_SYMBOL:
                        case ENGINES_SYMBOL:
                        case ENGINE_SYMBOL:
                        case ENUM_SYMBOL:
                        case EQUAL_OPERATOR:
                        case ERRORS_SYMBOL:
                        case ERROR_SYMBOL:
                        case ESCAPE_SYMBOL:
                        case EVENTS_SYMBOL:
                        case EVENT_SYMBOL:
                        case EVERY_SYMBOL:
                        case EXECUTE_SYMBOL:
                        case EXPANSION_SYMBOL:
                        case EXPORT_SYMBOL:
                        case EXTENDED_SYMBOL:
                        case EXTENT_SIZE_SYMBOL:
                        case FAST_SYMBOL:
                        case FAULTS_SYMBOL:
                        case FILE_SYMBOL:
                        case FIRST_SYMBOL:
                        case FIXED_SYMBOL:
                        case FLUSH_SYMBOL:
                        case FORMAT_SYMBOL:
                        case FOR_SYMBOL:
                        case FOUND_SYMBOL:
                        case FRAC_SECOND_SYMBOL:
                        case FROM_SYMBOL:
                        case FULL_SYMBOL:
                        case FUNCTION_SYMBOL:
                        case GENERAL_SYMBOL:
                        case GEOMETRYCOLLECTION_SYMBOL:
                        case GEOMETRY_SYMBOL:
                        case GET_FORMAT_SYMBOL:
                        case GLOBAL_SYMBOL:
                        case GRANTS_SYMBOL:
                        case GREATER_OR_EQUAL_OPERATOR:
                        case GREATER_THAN_OPERATOR:
                        case GROUP_SYMBOL:
                        case HANDLER_SYMBOL:
                        case HASH_SYMBOL:
                        case HAVING_SYMBOL:
                        case HELP_SYMBOL:
                        case HOSTS_SYMBOL:
                        case HOST_SYMBOL:
                        case HOUR_MICROSECOND_SYMBOL:
                        case HOUR_MINUTE_SYMBOL:
                        case HOUR_SECOND_SYMBOL:
                        case HOUR_SYMBOL:
                        case IDENTIFIED_SYMBOL:
                        case IDENTIFIER:
                        case IGNORE_SERVER_IDS_SYMBOL:
                        case IMPORT_SYMBOL:
                        case INDEXES_SYMBOL:
                        case INITIAL_SIZE_SYMBOL:
                        case INNER_SYMBOL:
                        case INNODB_SYMBOL:
                        case INSERT_METHOD_SYMBOL:
                        case INSTALL_SYMBOL:
                        case INTO_SYMBOL:
                        case INVOKER_SYMBOL:
                        case IN_SYMBOL:
                        case IO_SYMBOL:
                        case IPC_SYMBOL:
                        case ISOLATION_SYMBOL:
                        case ISSUER_SYMBOL:
                        case IS_SYMBOL:
                        case JOIN_SYMBOL:
                        case KEY_BLOCK_SIZE_SYMBOL:
                        case LANGUAGE_SYMBOL:
                        case LAST_SYMBOL:
                        case LEAVES_SYMBOL:
                        case LEFT_SYMBOL:
                        case LESS_OR_EQUAL_OPERATOR:
                        case LESS_SYMBOL:
                        case LESS_THAN_OPERATOR:
                        case LEVEL_SYMBOL:
                        case LIKE_SYMBOL:
                        case LIMIT_SYMBOL:
                        case LINESTRING_SYMBOL:
                        case LIST_SYMBOL:
                        case LOCAL_SYMBOL:
                        case LOCKS_SYMBOL:
                        case LOCK_SYMBOL:
                        case LOGFILE_SYMBOL:
                        case LOGICAL_AND_OPERATOR:
                        case LOGICAL_OR_OPERATOR:
                        case LOGS_SYMBOL:
                        case MASTER_AUTO_POSITION_SYMBOL:
                        case MASTER_CONNECT_RETRY_SYMBOL:
                        case MASTER_DELAY_SYMBOL:
                        case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                        case MASTER_HOST_SYMBOL:
                        case MASTER_LOG_FILE_SYMBOL:
                        case MASTER_LOG_POS_SYMBOL:
                        case MASTER_PASSWORD_SYMBOL:
                        case MASTER_PORT_SYMBOL:
                        case MASTER_RETRY_COUNT_SYMBOL:
                        case MASTER_SERVER_ID_SYMBOL:
                        case MASTER_SSL_CAPATH_SYMBOL:
                        case MASTER_SSL_CA_SYMBOL:
                        case MASTER_SSL_CERT_SYMBOL:
                        case MASTER_SSL_CIPHER_SYMBOL:
                        case MASTER_SSL_CRLPATH_SYMBOL:
                        case MASTER_SSL_CRL_SYMBOL:
                        case MASTER_SSL_KEY_SYMBOL:
                        case MASTER_SSL_SYMBOL:
                        case MASTER_SYMBOL:
                        case MASTER_USER_SYMBOL:
                        case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                        case MAX_QUERIES_PER_HOUR_SYMBOL:
                        case MAX_ROWS_SYMBOL:
                        case MAX_SIZE_SYMBOL:
                        case MAX_UPDATES_PER_HOUR_SYMBOL:
                        case MAX_USER_CONNECTIONS_SYMBOL:
                        case MEDIUM_SYMBOL:
                        case MEMORY_SYMBOL:
                        case MERGE_SYMBOL:
                        case MESSAGE_TEXT_SYMBOL:
                        case MICROSECOND_SYMBOL:
                        case MIGRATE_SYMBOL:
                        case MINUS_OPERATOR:
                        case MINUTE_MICROSECOND_SYMBOL:
                        case MINUTE_SECOND_SYMBOL:
                        case MINUTE_SYMBOL:
                        case MIN_ROWS_SYMBOL:
                        case MODE_SYMBOL:
                        case MODIFY_SYMBOL:
                        case MOD_OPERATOR:
                        case MOD_SYMBOL:
                        case MONTH_SYMBOL:
                        case MULTILINESTRING_SYMBOL:
                        case MULTIPOINT_SYMBOL:
                        case MULTIPOLYGON_SYMBOL:
                        case MULT_OPERATOR:
                        case MUTEX_SYMBOL:
                        case MYSQL_ERRNO_SYMBOL:
                        case NAMES_SYMBOL:
                        case NAME_SYMBOL:
                        case NATIONAL_SYMBOL:
                        case NATURAL_SYMBOL:
                        case NCHAR_SYMBOL:
                        case NCHAR_TEXT:
                        case NDBCLUSTER_SYMBOL:
                        case NEW_SYMBOL:
                        case NEXT_SYMBOL:
                        case NODEGROUP_SYMBOL:
                        case NONE_SYMBOL:
                        case NOT_EQUAL2_OPERATOR:
                        case NOT_EQUAL_OPERATOR:
                        case NOT_SYMBOL:
                        case NO_SYMBOL:
                        case NO_WAIT_SYMBOL:
                        case NULL_SAFE_EQUAL_OPERATOR:
                        case NUMBER_SYMBOL:
                        case NVARCHAR_SYMBOL:
                        case OFFSET_SYMBOL:
                        case OLD_PASSWORD_SYMBOL:
                        case ONE_SHOT_SYMBOL:
                        case ONE_SYMBOL:
                        case ON_SYMBOL:
                        case OPEN_SYMBOL:
                        case OPTIONS_SYMBOL:
                        case ORDER_SYMBOL:
                        case OR_SYMBOL:
                        case OWNER_SYMBOL:
                        case PACK_KEYS_SYMBOL:
                        case PAGE_SYMBOL:
                        case PARSER_SYMBOL:
                        case PARTIAL_SYMBOL:
                        case PARTITIONING_SYMBOL:
                        case PARTITIONS_SYMBOL:
                        case PARTITION_SYMBOL:
                        case PASSWORD_SYMBOL:
                        case PHASE_SYMBOL:
                        case PLUGINS_SYMBOL:
                        case PLUGIN_DIR_SYMBOL:
                        case PLUGIN_SYMBOL:
                        case PLUS_OPERATOR:
                        case POINT_SYMBOL:
                        case POLYGON_SYMBOL:
                        case PORT_SYMBOL:
                        case PREPARE_SYMBOL:
                        case PRESERVE_SYMBOL:
                        case PREV_SYMBOL:
                        case PRIVILEGES_SYMBOL:
                        case PROCEDURE_SYMBOL:
                        case PROCESSLIST_SYMBOL:
                        case PROCESS_SYMBOL:
                        case PROFILES_SYMBOL:
                        case PROFILE_SYMBOL:
                        case PROXY_SYMBOL:
                        case QUARTER_SYMBOL:
                        case QUERY_SYMBOL:
                        case QUICK_SYMBOL:
                        case READ_ONLY_SYMBOL:
                        case REBUILD_SYMBOL:
                        case RECOVER_SYMBOL:
                        case REDOFILE_SYMBOL:
                        case REDO_BUFFER_SIZE_SYMBOL:
                        case REDUNDANT_SYMBOL:
                        case REGEXP_SYMBOL:
                        case RELAYLOG_SYMBOL:
                        case RELAY_LOG_FILE_SYMBOL:
                        case RELAY_LOG_POS_SYMBOL:
                        case RELAY_SYMBOL:
                        case RELAY_THREAD_SYMBOL:
                        case RELOAD_SYMBOL:
                        case REMOVE_SYMBOL:
                        case RENAME_SYMBOL:
                        case REORGANIZE_SYMBOL:
                        case REPAIR_SYMBOL:
                        case REPEATABLE_SYMBOL:
                        case REPLICATION_SYMBOL:
                        case RESET_SYMBOL:
                        case RESTORE_SYMBOL:
                        case RESUME_SYMBOL:
                        case RETURNED_SQLSTATE_SYMBOL:
                        case RETURNS_SYMBOL:
                        case REVERSE_SYMBOL:
                        case RIGHT_SYMBOL:
                        case ROLLBACK_SYMBOL:
                        case ROLLUP_SYMBOL:
                        case ROUTINE_SYMBOL:
                        case ROWS_SYMBOL:
                        case ROW_COUNT_SYMBOL:
                        case ROW_FORMAT_SYMBOL:
                        case ROW_SYMBOL:
                        case RTREE_SYMBOL:
                        case SAVEPOINT_SYMBOL:
                        case SCHEDULE_SYMBOL:
                        case SCHEMA_NAME_SYMBOL:
                        case SECOND_MICROSECOND_SYMBOL:
                        case SECOND_SYMBOL:
                        case SECURITY_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        case SEPARATOR_SYMBOL:
                        case SERIALIZABLE_SYMBOL:
                        case SERIAL_SYMBOL:
                        case SERVER_SYMBOL:
                        case SESSION_SYMBOL:
                        case SET_SYMBOL:
                        case SHARE_SYMBOL:
                        case SHIFT_LEFT_OPERATOR:
                        case SHIFT_RIGHT_OPERATOR:
                        case SHUTDOWN_SYMBOL:
                        case SIGNED_SYMBOL:
                        case SIMPLE_SYMBOL:
                        case SINGLE_QUOTED_TEXT:
                        case SLAVE_SYMBOL:
                        case SLOW_SYMBOL:
                        case SNAPSHOT_SYMBOL:
                        case SOCKET_SYMBOL:
                        case SONAME_SYMBOL:
                        case SOUNDS_SYMBOL:
                        case SOURCE_SYMBOL:
                        case SQL_AFTER_GTIDS_SYMBOL:
                        case SQL_AFTER_MTS_GAPS_SYMBOL:
                        case SQL_BEFORE_GTIDS_SYMBOL:
                        case SQL_BUFFER_RESULT_SYMBOL:
                        case SQL_CACHE_SYMBOL:
                        case SQL_NO_CACHE_SYMBOL:
                        case SQL_THREAD_SYMBOL:
                        case STARTS_SYMBOL:
                        case START_SYMBOL:
                        case STATS_AUTO_RECALC_SYMBOL:
                        case STATS_PERSISTENT_SYMBOL:
                        case STATS_SAMPLE_PAGES_SYMBOL:
                        case STATUS_SYMBOL:
                        case STOP_SYMBOL:
                        case STORAGE_SYMBOL:
                        case STRAIGHT_JOIN_SYMBOL:
                        case STRING_SYMBOL:
                        case SUBCLASS_ORIGIN_SYMBOL:
                        case SUBDATE_SYMBOL:
                        case SUBJECT_SYMBOL:
                        case SUBPARTITIONS_SYMBOL:
                        case SUBPARTITION_SYMBOL:
                        case SUPER_SYMBOL:
                        case SUSPEND_SYMBOL:
                        case SWAPS_SYMBOL:
                        case SWITCHES_SYMBOL:
                        case TABLESPACE_SYMBOL:
                        case TABLES_SYMBOL:
                        case TABLE_CHECKSUM_SYMBOL:
                        case TABLE_NAME_SYMBOL:
                        case TEMPORARY_SYMBOL:
                        case TEMPTABLE_SYMBOL:
                        case TEXT_SYMBOL:
                        case THAN_SYMBOL:
                        case THEN_SYMBOL:
                        case TIMESTAMP_ADD_SYMBOL:
                        case TIMESTAMP_DIFF_SYMBOL:
                        case TIMESTAMP_SYMBOL:
                        case TIME_SYMBOL:
                        case TRANSACTION_SYMBOL:
                        case TRIGGERS_SYMBOL:
                        case TRUNCATE_SYMBOL:
                        case TYPES_SYMBOL:
                        case TYPE_SYMBOL:
                        case UDF_RETURNS_SYMBOL:
                        case UNCOMMITTED_SYMBOL:
                        case UNDEFINED_SYMBOL:
                        case UNDERSCORE_CHARSET:
                        case UNDOFILE_SYMBOL:
                        case UNDO_BUFFER_SIZE_SYMBOL:
                        case UNICODE_SYMBOL:
                        case UNINSTALL_SYMBOL:
                        case UNION_SYMBOL:
                        case UNKNOWN_SYMBOL:
                        case UNTIL_SYMBOL:
                        case UPGRADE_SYMBOL:
                        case USER_RESOURCES_SYMBOL:
                        case USER_SYMBOL:
                        case USE_FRM_SYMBOL:
                        case USING_SYMBOL:
                        case VALUE_SYMBOL:
                        case VARIABLES_SYMBOL:
                        case VIEW_SYMBOL:
                        case WAIT_SYMBOL:
                        case WARNINGS_SYMBOL:
                        case WEEK_SYMBOL:
                        case WEIGHT_STRING_SYMBOL:
                        case WHEN_SYMBOL:
                        case WHERE_SYMBOL:
                        case WITH_SYMBOL:
                        case WORK_SYMBOL:
                        case WRAPPER_SYMBOL:
                        case X509_SYMBOL:
                        case XA_SYMBOL:
                        case XML_SYMBOL:
                        case XOR_SYMBOL:
                        case YEAR_MONTH_SYMBOL:
                        case YEAR_SYMBOL:
                        case 733:
                        	{
                        		alt527=3;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 527;
                            EXCEPTION->state        = 53;


                            goto ruleprimaryEx;

                        }

                    }
                    else if ( (LA527_0 == PASSWORD_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case OPEN_PAR_SYMBOL:
                        	{
                        		{
                        		    int LA527_2330 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=4;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 2330;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case DOT_SYMBOL:
                        	{
                        		{
                        		    int LA527_2331 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 2331;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case EOF:
                        case ACTION_SYMBOL:
                        case ADDDATE_SYMBOL:
                        case AFTER_SYMBOL:
                        case AGAINST_SYMBOL:
                        case AGGREGATE_SYMBOL:
                        case ALGORITHM_SYMBOL:
                        case ANALYZE_SYMBOL:
                        case AND_SYMBOL:
                        case ANY_SYMBOL:
                        case ASCII_SYMBOL:
                        case ASC_SYMBOL:
                        case AS_SYMBOL:
                        case AT_SYMBOL:
                        case AUTHORS_SYMBOL:
                        case AUTOEXTEND_SIZE_SYMBOL:
                        case AUTO_INCREMENT_SYMBOL:
                        case AVG_ROW_LENGTH_SYMBOL:
                        case AVG_SYMBOL:
                        case BACKUP_SYMBOL:
                        case BACK_TICK_QUOTED_ID:
                        case BEGIN_SYMBOL:
                        case BETWEEN_SYMBOL:
                        case BINLOG_SYMBOL:
                        case BITWISE_AND_OPERATOR:
                        case BITWISE_OR_OPERATOR:
                        case BITWISE_XOR_OPERATOR:
                        case BIT_SYMBOL:
                        case BLOCK_SYMBOL:
                        case BOOLEAN_SYMBOL:
                        case BOOL_SYMBOL:
                        case BTREE_SYMBOL:
                        case BYTE_SYMBOL:
                        case CACHE_SYMBOL:
                        case CASCADED_SYMBOL:
                        case CATALOG_NAME_SYMBOL:
                        case CHAIN_SYMBOL:
                        case CHANGED_SYMBOL:
                        case CHARSET_SYMBOL:
                        case CHECKSUM_SYMBOL:
                        case CIPHER_SYMBOL:
                        case CLASS_ORIGIN_SYMBOL:
                        case CLIENT_SYMBOL:
                        case CLOSE_PAR_SYMBOL:
                        case CLOSE_SYMBOL:
                        case COALESCE_SYMBOL:
                        case CODE_SYMBOL:
                        case COLLATE_SYMBOL:
                        case COLLATION_SYMBOL:
                        case COLUMNS_SYMBOL:
                        case COLUMN_FORMAT_SYMBOL:
                        case COLUMN_NAME_SYMBOL:
                        case COMMA_SYMBOL:
                        case COMMENT_SYMBOL:
                        case COMMITTED_SYMBOL:
                        case COMMIT_SYMBOL:
                        case COMPACT_SYMBOL:
                        case COMPLETION_SYMBOL:
                        case COMPRESSED_SYMBOL:
                        case CONCAT_PIPES_SYMBOL:
                        case CONCURRENT_SYMBOL:
                        case CONNECTION_SYMBOL:
                        case CONSISTENT_SYMBOL:
                        case CONSTRAINT_CATALOG_SYMBOL:
                        case CONSTRAINT_NAME_SYMBOL:
                        case CONSTRAINT_SCHEMA_SYMBOL:
                        case CONTAINS_SYMBOL:
                        case CONTEXT_SYMBOL:
                        case CONTRIBUTORS_SYMBOL:
                        case CPU_SYMBOL:
                        case CROSS_SYMBOL:
                        case CUBE_SYMBOL:
                        case CURRENT_SYMBOL:
                        case CURSOR_NAME_SYMBOL:
                        case DATAFILE_SYMBOL:
                        case DATA_SYMBOL:
                        case DATETIME_SYMBOL:
                        case DATE_SYMBOL:
                        case DAY_HOUR_SYMBOL:
                        case DAY_MICROSECOND_SYMBOL:
                        case DAY_MINUTE_SYMBOL:
                        case DAY_SECOND_SYMBOL:
                        case DAY_SYMBOL:
                        case DEALLOCATE_SYMBOL:
                        case DEFAULT_AUTH_SYMBOL:
                        case DEFINER_SYMBOL:
                        case DELAY_KEY_WRITE_SYMBOL:
                        case DESC_SYMBOL:
                        case DES_KEY_FILE_SYMBOL:
                        case DIAGNOSTICS_SYMBOL:
                        case DIRECTORY_SYMBOL:
                        case DISABLE_SYMBOL:
                        case DISCARD_SYMBOL:
                        case DISK_SYMBOL:
                        case DIV_OPERATOR:
                        case DIV_SYMBOL:
                        case DOUBLE_QUOTED_TEXT:
                        case DO_SYMBOL:
                        case DUMPFILE_SYMBOL:
                        case DUPLICATE_SYMBOL:
                        case DYNAMIC_SYMBOL:
                        case ELSE_SYMBOL:
                        case ENABLE_SYMBOL:
                        case ENDS_SYMBOL:
                        case END_SYMBOL:
                        case ENGINES_SYMBOL:
                        case ENGINE_SYMBOL:
                        case ENUM_SYMBOL:
                        case EQUAL_OPERATOR:
                        case ERRORS_SYMBOL:
                        case ERROR_SYMBOL:
                        case ESCAPE_SYMBOL:
                        case EVENTS_SYMBOL:
                        case EVENT_SYMBOL:
                        case EVERY_SYMBOL:
                        case EXECUTE_SYMBOL:
                        case EXPANSION_SYMBOL:
                        case EXPORT_SYMBOL:
                        case EXTENDED_SYMBOL:
                        case EXTENT_SIZE_SYMBOL:
                        case FAST_SYMBOL:
                        case FAULTS_SYMBOL:
                        case FILE_SYMBOL:
                        case FIRST_SYMBOL:
                        case FIXED_SYMBOL:
                        case FLUSH_SYMBOL:
                        case FORMAT_SYMBOL:
                        case FOR_SYMBOL:
                        case FOUND_SYMBOL:
                        case FRAC_SECOND_SYMBOL:
                        case FROM_SYMBOL:
                        case FULL_SYMBOL:
                        case FUNCTION_SYMBOL:
                        case GENERAL_SYMBOL:
                        case GEOMETRYCOLLECTION_SYMBOL:
                        case GEOMETRY_SYMBOL:
                        case GET_FORMAT_SYMBOL:
                        case GLOBAL_SYMBOL:
                        case GRANTS_SYMBOL:
                        case GREATER_OR_EQUAL_OPERATOR:
                        case GREATER_THAN_OPERATOR:
                        case GROUP_SYMBOL:
                        case HANDLER_SYMBOL:
                        case HASH_SYMBOL:
                        case HAVING_SYMBOL:
                        case HELP_SYMBOL:
                        case HOSTS_SYMBOL:
                        case HOST_SYMBOL:
                        case HOUR_MICROSECOND_SYMBOL:
                        case HOUR_MINUTE_SYMBOL:
                        case HOUR_SECOND_SYMBOL:
                        case HOUR_SYMBOL:
                        case IDENTIFIED_SYMBOL:
                        case IDENTIFIER:
                        case IGNORE_SERVER_IDS_SYMBOL:
                        case IMPORT_SYMBOL:
                        case INDEXES_SYMBOL:
                        case INITIAL_SIZE_SYMBOL:
                        case INNER_SYMBOL:
                        case INNODB_SYMBOL:
                        case INSERT_METHOD_SYMBOL:
                        case INSTALL_SYMBOL:
                        case INTO_SYMBOL:
                        case INVOKER_SYMBOL:
                        case IN_SYMBOL:
                        case IO_SYMBOL:
                        case IPC_SYMBOL:
                        case ISOLATION_SYMBOL:
                        case ISSUER_SYMBOL:
                        case IS_SYMBOL:
                        case JOIN_SYMBOL:
                        case KEY_BLOCK_SIZE_SYMBOL:
                        case LANGUAGE_SYMBOL:
                        case LAST_SYMBOL:
                        case LEAVES_SYMBOL:
                        case LEFT_SYMBOL:
                        case LESS_OR_EQUAL_OPERATOR:
                        case LESS_SYMBOL:
                        case LESS_THAN_OPERATOR:
                        case LEVEL_SYMBOL:
                        case LIKE_SYMBOL:
                        case LIMIT_SYMBOL:
                        case LINESTRING_SYMBOL:
                        case LIST_SYMBOL:
                        case LOCAL_SYMBOL:
                        case LOCKS_SYMBOL:
                        case LOCK_SYMBOL:
                        case LOGFILE_SYMBOL:
                        case LOGICAL_AND_OPERATOR:
                        case LOGICAL_OR_OPERATOR:
                        case LOGS_SYMBOL:
                        case MASTER_AUTO_POSITION_SYMBOL:
                        case MASTER_CONNECT_RETRY_SYMBOL:
                        case MASTER_DELAY_SYMBOL:
                        case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                        case MASTER_HOST_SYMBOL:
                        case MASTER_LOG_FILE_SYMBOL:
                        case MASTER_LOG_POS_SYMBOL:
                        case MASTER_PASSWORD_SYMBOL:
                        case MASTER_PORT_SYMBOL:
                        case MASTER_RETRY_COUNT_SYMBOL:
                        case MASTER_SERVER_ID_SYMBOL:
                        case MASTER_SSL_CAPATH_SYMBOL:
                        case MASTER_SSL_CA_SYMBOL:
                        case MASTER_SSL_CERT_SYMBOL:
                        case MASTER_SSL_CIPHER_SYMBOL:
                        case MASTER_SSL_CRLPATH_SYMBOL:
                        case MASTER_SSL_CRL_SYMBOL:
                        case MASTER_SSL_KEY_SYMBOL:
                        case MASTER_SSL_SYMBOL:
                        case MASTER_SYMBOL:
                        case MASTER_USER_SYMBOL:
                        case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                        case MAX_QUERIES_PER_HOUR_SYMBOL:
                        case MAX_ROWS_SYMBOL:
                        case MAX_SIZE_SYMBOL:
                        case MAX_UPDATES_PER_HOUR_SYMBOL:
                        case MAX_USER_CONNECTIONS_SYMBOL:
                        case MEDIUM_SYMBOL:
                        case MEMORY_SYMBOL:
                        case MERGE_SYMBOL:
                        case MESSAGE_TEXT_SYMBOL:
                        case MICROSECOND_SYMBOL:
                        case MIGRATE_SYMBOL:
                        case MINUS_OPERATOR:
                        case MINUTE_MICROSECOND_SYMBOL:
                        case MINUTE_SECOND_SYMBOL:
                        case MINUTE_SYMBOL:
                        case MIN_ROWS_SYMBOL:
                        case MODE_SYMBOL:
                        case MODIFY_SYMBOL:
                        case MOD_OPERATOR:
                        case MOD_SYMBOL:
                        case MONTH_SYMBOL:
                        case MULTILINESTRING_SYMBOL:
                        case MULTIPOINT_SYMBOL:
                        case MULTIPOLYGON_SYMBOL:
                        case MULT_OPERATOR:
                        case MUTEX_SYMBOL:
                        case MYSQL_ERRNO_SYMBOL:
                        case NAMES_SYMBOL:
                        case NAME_SYMBOL:
                        case NATIONAL_SYMBOL:
                        case NATURAL_SYMBOL:
                        case NCHAR_SYMBOL:
                        case NCHAR_TEXT:
                        case NDBCLUSTER_SYMBOL:
                        case NEW_SYMBOL:
                        case NEXT_SYMBOL:
                        case NODEGROUP_SYMBOL:
                        case NONE_SYMBOL:
                        case NOT_EQUAL2_OPERATOR:
                        case NOT_EQUAL_OPERATOR:
                        case NOT_SYMBOL:
                        case NO_SYMBOL:
                        case NO_WAIT_SYMBOL:
                        case NULL_SAFE_EQUAL_OPERATOR:
                        case NUMBER_SYMBOL:
                        case NVARCHAR_SYMBOL:
                        case OFFSET_SYMBOL:
                        case OLD_PASSWORD_SYMBOL:
                        case ONE_SHOT_SYMBOL:
                        case ONE_SYMBOL:
                        case ON_SYMBOL:
                        case OPEN_SYMBOL:
                        case OPTIONS_SYMBOL:
                        case ORDER_SYMBOL:
                        case OR_SYMBOL:
                        case OWNER_SYMBOL:
                        case PACK_KEYS_SYMBOL:
                        case PAGE_SYMBOL:
                        case PARSER_SYMBOL:
                        case PARTIAL_SYMBOL:
                        case PARTITIONING_SYMBOL:
                        case PARTITIONS_SYMBOL:
                        case PARTITION_SYMBOL:
                        case PASSWORD_SYMBOL:
                        case PHASE_SYMBOL:
                        case PLUGINS_SYMBOL:
                        case PLUGIN_DIR_SYMBOL:
                        case PLUGIN_SYMBOL:
                        case PLUS_OPERATOR:
                        case POINT_SYMBOL:
                        case POLYGON_SYMBOL:
                        case PORT_SYMBOL:
                        case PREPARE_SYMBOL:
                        case PRESERVE_SYMBOL:
                        case PREV_SYMBOL:
                        case PRIVILEGES_SYMBOL:
                        case PROCEDURE_SYMBOL:
                        case PROCESSLIST_SYMBOL:
                        case PROCESS_SYMBOL:
                        case PROFILES_SYMBOL:
                        case PROFILE_SYMBOL:
                        case PROXY_SYMBOL:
                        case QUARTER_SYMBOL:
                        case QUERY_SYMBOL:
                        case QUICK_SYMBOL:
                        case READ_ONLY_SYMBOL:
                        case REBUILD_SYMBOL:
                        case RECOVER_SYMBOL:
                        case REDOFILE_SYMBOL:
                        case REDO_BUFFER_SIZE_SYMBOL:
                        case REDUNDANT_SYMBOL:
                        case REGEXP_SYMBOL:
                        case RELAYLOG_SYMBOL:
                        case RELAY_LOG_FILE_SYMBOL:
                        case RELAY_LOG_POS_SYMBOL:
                        case RELAY_SYMBOL:
                        case RELAY_THREAD_SYMBOL:
                        case RELOAD_SYMBOL:
                        case REMOVE_SYMBOL:
                        case RENAME_SYMBOL:
                        case REORGANIZE_SYMBOL:
                        case REPAIR_SYMBOL:
                        case REPEATABLE_SYMBOL:
                        case REPLICATION_SYMBOL:
                        case RESET_SYMBOL:
                        case RESTORE_SYMBOL:
                        case RESUME_SYMBOL:
                        case RETURNED_SQLSTATE_SYMBOL:
                        case RETURNS_SYMBOL:
                        case REVERSE_SYMBOL:
                        case RIGHT_SYMBOL:
                        case ROLLBACK_SYMBOL:
                        case ROLLUP_SYMBOL:
                        case ROUTINE_SYMBOL:
                        case ROWS_SYMBOL:
                        case ROW_COUNT_SYMBOL:
                        case ROW_FORMAT_SYMBOL:
                        case ROW_SYMBOL:
                        case RTREE_SYMBOL:
                        case SAVEPOINT_SYMBOL:
                        case SCHEDULE_SYMBOL:
                        case SCHEMA_NAME_SYMBOL:
                        case SECOND_MICROSECOND_SYMBOL:
                        case SECOND_SYMBOL:
                        case SECURITY_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        case SEPARATOR_SYMBOL:
                        case SERIALIZABLE_SYMBOL:
                        case SERIAL_SYMBOL:
                        case SERVER_SYMBOL:
                        case SESSION_SYMBOL:
                        case SET_SYMBOL:
                        case SHARE_SYMBOL:
                        case SHIFT_LEFT_OPERATOR:
                        case SHIFT_RIGHT_OPERATOR:
                        case SHUTDOWN_SYMBOL:
                        case SIGNED_SYMBOL:
                        case SIMPLE_SYMBOL:
                        case SINGLE_QUOTED_TEXT:
                        case SLAVE_SYMBOL:
                        case SLOW_SYMBOL:
                        case SNAPSHOT_SYMBOL:
                        case SOCKET_SYMBOL:
                        case SONAME_SYMBOL:
                        case SOUNDS_SYMBOL:
                        case SOURCE_SYMBOL:
                        case SQL_AFTER_GTIDS_SYMBOL:
                        case SQL_AFTER_MTS_GAPS_SYMBOL:
                        case SQL_BEFORE_GTIDS_SYMBOL:
                        case SQL_BUFFER_RESULT_SYMBOL:
                        case SQL_CACHE_SYMBOL:
                        case SQL_NO_CACHE_SYMBOL:
                        case SQL_THREAD_SYMBOL:
                        case STARTS_SYMBOL:
                        case START_SYMBOL:
                        case STATS_AUTO_RECALC_SYMBOL:
                        case STATS_PERSISTENT_SYMBOL:
                        case STATS_SAMPLE_PAGES_SYMBOL:
                        case STATUS_SYMBOL:
                        case STOP_SYMBOL:
                        case STORAGE_SYMBOL:
                        case STRAIGHT_JOIN_SYMBOL:
                        case STRING_SYMBOL:
                        case SUBCLASS_ORIGIN_SYMBOL:
                        case SUBDATE_SYMBOL:
                        case SUBJECT_SYMBOL:
                        case SUBPARTITIONS_SYMBOL:
                        case SUBPARTITION_SYMBOL:
                        case SUPER_SYMBOL:
                        case SUSPEND_SYMBOL:
                        case SWAPS_SYMBOL:
                        case SWITCHES_SYMBOL:
                        case TABLESPACE_SYMBOL:
                        case TABLES_SYMBOL:
                        case TABLE_CHECKSUM_SYMBOL:
                        case TABLE_NAME_SYMBOL:
                        case TEMPORARY_SYMBOL:
                        case TEMPTABLE_SYMBOL:
                        case TEXT_SYMBOL:
                        case THAN_SYMBOL:
                        case THEN_SYMBOL:
                        case TIMESTAMP_ADD_SYMBOL:
                        case TIMESTAMP_DIFF_SYMBOL:
                        case TIMESTAMP_SYMBOL:
                        case TIME_SYMBOL:
                        case TRANSACTION_SYMBOL:
                        case TRIGGERS_SYMBOL:
                        case TRUNCATE_SYMBOL:
                        case TYPES_SYMBOL:
                        case TYPE_SYMBOL:
                        case UDF_RETURNS_SYMBOL:
                        case UNCOMMITTED_SYMBOL:
                        case UNDEFINED_SYMBOL:
                        case UNDERSCORE_CHARSET:
                        case UNDOFILE_SYMBOL:
                        case UNDO_BUFFER_SIZE_SYMBOL:
                        case UNICODE_SYMBOL:
                        case UNINSTALL_SYMBOL:
                        case UNION_SYMBOL:
                        case UNKNOWN_SYMBOL:
                        case UNTIL_SYMBOL:
                        case UPGRADE_SYMBOL:
                        case USER_RESOURCES_SYMBOL:
                        case USER_SYMBOL:
                        case USE_FRM_SYMBOL:
                        case USING_SYMBOL:
                        case VALUE_SYMBOL:
                        case VARIABLES_SYMBOL:
                        case VIEW_SYMBOL:
                        case WAIT_SYMBOL:
                        case WARNINGS_SYMBOL:
                        case WEEK_SYMBOL:
                        case WEIGHT_STRING_SYMBOL:
                        case WHEN_SYMBOL:
                        case WHERE_SYMBOL:
                        case WITH_SYMBOL:
                        case WORK_SYMBOL:
                        case WRAPPER_SYMBOL:
                        case X509_SYMBOL:
                        case XA_SYMBOL:
                        case XML_SYMBOL:
                        case XOR_SYMBOL:
                        case YEAR_MONTH_SYMBOL:
                        case YEAR_SYMBOL:
                        case 733:
                        	{
                        		alt527=3;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 527;
                            EXCEPTION->state        = 55;


                            goto ruleprimaryEx;

                        }

                    }
                    else if ( (LA527_0 == QUARTER_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case OPEN_PAR_SYMBOL:
                        	{
                        		{
                        		    int LA527_2423 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=4;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 2423;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case DOT_SYMBOL:
                        	{
                        		{
                        		    int LA527_2424 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 2424;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case EOF:
                        case ACTION_SYMBOL:
                        case ADDDATE_SYMBOL:
                        case AFTER_SYMBOL:
                        case AGAINST_SYMBOL:
                        case AGGREGATE_SYMBOL:
                        case ALGORITHM_SYMBOL:
                        case ANALYZE_SYMBOL:
                        case AND_SYMBOL:
                        case ANY_SYMBOL:
                        case ASCII_SYMBOL:
                        case ASC_SYMBOL:
                        case AS_SYMBOL:
                        case AT_SYMBOL:
                        case AUTHORS_SYMBOL:
                        case AUTOEXTEND_SIZE_SYMBOL:
                        case AUTO_INCREMENT_SYMBOL:
                        case AVG_ROW_LENGTH_SYMBOL:
                        case AVG_SYMBOL:
                        case BACKUP_SYMBOL:
                        case BACK_TICK_QUOTED_ID:
                        case BEGIN_SYMBOL:
                        case BETWEEN_SYMBOL:
                        case BINLOG_SYMBOL:
                        case BITWISE_AND_OPERATOR:
                        case BITWISE_OR_OPERATOR:
                        case BITWISE_XOR_OPERATOR:
                        case BIT_SYMBOL:
                        case BLOCK_SYMBOL:
                        case BOOLEAN_SYMBOL:
                        case BOOL_SYMBOL:
                        case BTREE_SYMBOL:
                        case BYTE_SYMBOL:
                        case CACHE_SYMBOL:
                        case CASCADED_SYMBOL:
                        case CATALOG_NAME_SYMBOL:
                        case CHAIN_SYMBOL:
                        case CHANGED_SYMBOL:
                        case CHARSET_SYMBOL:
                        case CHECKSUM_SYMBOL:
                        case CIPHER_SYMBOL:
                        case CLASS_ORIGIN_SYMBOL:
                        case CLIENT_SYMBOL:
                        case CLOSE_PAR_SYMBOL:
                        case CLOSE_SYMBOL:
                        case COALESCE_SYMBOL:
                        case CODE_SYMBOL:
                        case COLLATE_SYMBOL:
                        case COLLATION_SYMBOL:
                        case COLUMNS_SYMBOL:
                        case COLUMN_FORMAT_SYMBOL:
                        case COLUMN_NAME_SYMBOL:
                        case COMMA_SYMBOL:
                        case COMMENT_SYMBOL:
                        case COMMITTED_SYMBOL:
                        case COMMIT_SYMBOL:
                        case COMPACT_SYMBOL:
                        case COMPLETION_SYMBOL:
                        case COMPRESSED_SYMBOL:
                        case CONCAT_PIPES_SYMBOL:
                        case CONCURRENT_SYMBOL:
                        case CONNECTION_SYMBOL:
                        case CONSISTENT_SYMBOL:
                        case CONSTRAINT_CATALOG_SYMBOL:
                        case CONSTRAINT_NAME_SYMBOL:
                        case CONSTRAINT_SCHEMA_SYMBOL:
                        case CONTAINS_SYMBOL:
                        case CONTEXT_SYMBOL:
                        case CONTRIBUTORS_SYMBOL:
                        case CPU_SYMBOL:
                        case CROSS_SYMBOL:
                        case CUBE_SYMBOL:
                        case CURRENT_SYMBOL:
                        case CURSOR_NAME_SYMBOL:
                        case DATAFILE_SYMBOL:
                        case DATA_SYMBOL:
                        case DATETIME_SYMBOL:
                        case DATE_SYMBOL:
                        case DAY_HOUR_SYMBOL:
                        case DAY_MICROSECOND_SYMBOL:
                        case DAY_MINUTE_SYMBOL:
                        case DAY_SECOND_SYMBOL:
                        case DAY_SYMBOL:
                        case DEALLOCATE_SYMBOL:
                        case DEFAULT_AUTH_SYMBOL:
                        case DEFINER_SYMBOL:
                        case DELAY_KEY_WRITE_SYMBOL:
                        case DESC_SYMBOL:
                        case DES_KEY_FILE_SYMBOL:
                        case DIAGNOSTICS_SYMBOL:
                        case DIRECTORY_SYMBOL:
                        case DISABLE_SYMBOL:
                        case DISCARD_SYMBOL:
                        case DISK_SYMBOL:
                        case DIV_OPERATOR:
                        case DIV_SYMBOL:
                        case DOUBLE_QUOTED_TEXT:
                        case DO_SYMBOL:
                        case DUMPFILE_SYMBOL:
                        case DUPLICATE_SYMBOL:
                        case DYNAMIC_SYMBOL:
                        case ELSE_SYMBOL:
                        case ENABLE_SYMBOL:
                        case ENDS_SYMBOL:
                        case END_SYMBOL:
                        case ENGINES_SYMBOL:
                        case ENGINE_SYMBOL:
                        case ENUM_SYMBOL:
                        case EQUAL_OPERATOR:
                        case ERRORS_SYMBOL:
                        case ERROR_SYMBOL:
                        case ESCAPE_SYMBOL:
                        case EVENTS_SYMBOL:
                        case EVENT_SYMBOL:
                        case EVERY_SYMBOL:
                        case EXECUTE_SYMBOL:
                        case EXPANSION_SYMBOL:
                        case EXPORT_SYMBOL:
                        case EXTENDED_SYMBOL:
                        case EXTENT_SIZE_SYMBOL:
                        case FAST_SYMBOL:
                        case FAULTS_SYMBOL:
                        case FILE_SYMBOL:
                        case FIRST_SYMBOL:
                        case FIXED_SYMBOL:
                        case FLUSH_SYMBOL:
                        case FORMAT_SYMBOL:
                        case FOR_SYMBOL:
                        case FOUND_SYMBOL:
                        case FRAC_SECOND_SYMBOL:
                        case FROM_SYMBOL:
                        case FULL_SYMBOL:
                        case FUNCTION_SYMBOL:
                        case GENERAL_SYMBOL:
                        case GEOMETRYCOLLECTION_SYMBOL:
                        case GEOMETRY_SYMBOL:
                        case GET_FORMAT_SYMBOL:
                        case GLOBAL_SYMBOL:
                        case GRANTS_SYMBOL:
                        case GREATER_OR_EQUAL_OPERATOR:
                        case GREATER_THAN_OPERATOR:
                        case GROUP_SYMBOL:
                        case HANDLER_SYMBOL:
                        case HASH_SYMBOL:
                        case HAVING_SYMBOL:
                        case HELP_SYMBOL:
                        case HOSTS_SYMBOL:
                        case HOST_SYMBOL:
                        case HOUR_MICROSECOND_SYMBOL:
                        case HOUR_MINUTE_SYMBOL:
                        case HOUR_SECOND_SYMBOL:
                        case HOUR_SYMBOL:
                        case IDENTIFIED_SYMBOL:
                        case IDENTIFIER:
                        case IGNORE_SERVER_IDS_SYMBOL:
                        case IMPORT_SYMBOL:
                        case INDEXES_SYMBOL:
                        case INITIAL_SIZE_SYMBOL:
                        case INNER_SYMBOL:
                        case INNODB_SYMBOL:
                        case INSERT_METHOD_SYMBOL:
                        case INSTALL_SYMBOL:
                        case INTO_SYMBOL:
                        case INVOKER_SYMBOL:
                        case IN_SYMBOL:
                        case IO_SYMBOL:
                        case IPC_SYMBOL:
                        case ISOLATION_SYMBOL:
                        case ISSUER_SYMBOL:
                        case IS_SYMBOL:
                        case JOIN_SYMBOL:
                        case KEY_BLOCK_SIZE_SYMBOL:
                        case LANGUAGE_SYMBOL:
                        case LAST_SYMBOL:
                        case LEAVES_SYMBOL:
                        case LEFT_SYMBOL:
                        case LESS_OR_EQUAL_OPERATOR:
                        case LESS_SYMBOL:
                        case LESS_THAN_OPERATOR:
                        case LEVEL_SYMBOL:
                        case LIKE_SYMBOL:
                        case LIMIT_SYMBOL:
                        case LINESTRING_SYMBOL:
                        case LIST_SYMBOL:
                        case LOCAL_SYMBOL:
                        case LOCKS_SYMBOL:
                        case LOCK_SYMBOL:
                        case LOGFILE_SYMBOL:
                        case LOGICAL_AND_OPERATOR:
                        case LOGICAL_OR_OPERATOR:
                        case LOGS_SYMBOL:
                        case MASTER_AUTO_POSITION_SYMBOL:
                        case MASTER_CONNECT_RETRY_SYMBOL:
                        case MASTER_DELAY_SYMBOL:
                        case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                        case MASTER_HOST_SYMBOL:
                        case MASTER_LOG_FILE_SYMBOL:
                        case MASTER_LOG_POS_SYMBOL:
                        case MASTER_PASSWORD_SYMBOL:
                        case MASTER_PORT_SYMBOL:
                        case MASTER_RETRY_COUNT_SYMBOL:
                        case MASTER_SERVER_ID_SYMBOL:
                        case MASTER_SSL_CAPATH_SYMBOL:
                        case MASTER_SSL_CA_SYMBOL:
                        case MASTER_SSL_CERT_SYMBOL:
                        case MASTER_SSL_CIPHER_SYMBOL:
                        case MASTER_SSL_CRLPATH_SYMBOL:
                        case MASTER_SSL_CRL_SYMBOL:
                        case MASTER_SSL_KEY_SYMBOL:
                        case MASTER_SSL_SYMBOL:
                        case MASTER_SYMBOL:
                        case MASTER_USER_SYMBOL:
                        case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                        case MAX_QUERIES_PER_HOUR_SYMBOL:
                        case MAX_ROWS_SYMBOL:
                        case MAX_SIZE_SYMBOL:
                        case MAX_UPDATES_PER_HOUR_SYMBOL:
                        case MAX_USER_CONNECTIONS_SYMBOL:
                        case MEDIUM_SYMBOL:
                        case MEMORY_SYMBOL:
                        case MERGE_SYMBOL:
                        case MESSAGE_TEXT_SYMBOL:
                        case MICROSECOND_SYMBOL:
                        case MIGRATE_SYMBOL:
                        case MINUS_OPERATOR:
                        case MINUTE_MICROSECOND_SYMBOL:
                        case MINUTE_SECOND_SYMBOL:
                        case MINUTE_SYMBOL:
                        case MIN_ROWS_SYMBOL:
                        case MODE_SYMBOL:
                        case MODIFY_SYMBOL:
                        case MOD_OPERATOR:
                        case MOD_SYMBOL:
                        case MONTH_SYMBOL:
                        case MULTILINESTRING_SYMBOL:
                        case MULTIPOINT_SYMBOL:
                        case MULTIPOLYGON_SYMBOL:
                        case MULT_OPERATOR:
                        case MUTEX_SYMBOL:
                        case MYSQL_ERRNO_SYMBOL:
                        case NAMES_SYMBOL:
                        case NAME_SYMBOL:
                        case NATIONAL_SYMBOL:
                        case NATURAL_SYMBOL:
                        case NCHAR_SYMBOL:
                        case NCHAR_TEXT:
                        case NDBCLUSTER_SYMBOL:
                        case NEW_SYMBOL:
                        case NEXT_SYMBOL:
                        case NODEGROUP_SYMBOL:
                        case NONE_SYMBOL:
                        case NOT_EQUAL2_OPERATOR:
                        case NOT_EQUAL_OPERATOR:
                        case NOT_SYMBOL:
                        case NO_SYMBOL:
                        case NO_WAIT_SYMBOL:
                        case NULL_SAFE_EQUAL_OPERATOR:
                        case NUMBER_SYMBOL:
                        case NVARCHAR_SYMBOL:
                        case OFFSET_SYMBOL:
                        case OLD_PASSWORD_SYMBOL:
                        case ONE_SHOT_SYMBOL:
                        case ONE_SYMBOL:
                        case ON_SYMBOL:
                        case OPEN_SYMBOL:
                        case OPTIONS_SYMBOL:
                        case ORDER_SYMBOL:
                        case OR_SYMBOL:
                        case OWNER_SYMBOL:
                        case PACK_KEYS_SYMBOL:
                        case PAGE_SYMBOL:
                        case PARSER_SYMBOL:
                        case PARTIAL_SYMBOL:
                        case PARTITIONING_SYMBOL:
                        case PARTITIONS_SYMBOL:
                        case PARTITION_SYMBOL:
                        case PASSWORD_SYMBOL:
                        case PHASE_SYMBOL:
                        case PLUGINS_SYMBOL:
                        case PLUGIN_DIR_SYMBOL:
                        case PLUGIN_SYMBOL:
                        case PLUS_OPERATOR:
                        case POINT_SYMBOL:
                        case POLYGON_SYMBOL:
                        case PORT_SYMBOL:
                        case PREPARE_SYMBOL:
                        case PRESERVE_SYMBOL:
                        case PREV_SYMBOL:
                        case PRIVILEGES_SYMBOL:
                        case PROCEDURE_SYMBOL:
                        case PROCESSLIST_SYMBOL:
                        case PROCESS_SYMBOL:
                        case PROFILES_SYMBOL:
                        case PROFILE_SYMBOL:
                        case PROXY_SYMBOL:
                        case QUARTER_SYMBOL:
                        case QUERY_SYMBOL:
                        case QUICK_SYMBOL:
                        case READ_ONLY_SYMBOL:
                        case REBUILD_SYMBOL:
                        case RECOVER_SYMBOL:
                        case REDOFILE_SYMBOL:
                        case REDO_BUFFER_SIZE_SYMBOL:
                        case REDUNDANT_SYMBOL:
                        case REGEXP_SYMBOL:
                        case RELAYLOG_SYMBOL:
                        case RELAY_LOG_FILE_SYMBOL:
                        case RELAY_LOG_POS_SYMBOL:
                        case RELAY_SYMBOL:
                        case RELAY_THREAD_SYMBOL:
                        case RELOAD_SYMBOL:
                        case REMOVE_SYMBOL:
                        case RENAME_SYMBOL:
                        case REORGANIZE_SYMBOL:
                        case REPAIR_SYMBOL:
                        case REPEATABLE_SYMBOL:
                        case REPLICATION_SYMBOL:
                        case RESET_SYMBOL:
                        case RESTORE_SYMBOL:
                        case RESUME_SYMBOL:
                        case RETURNED_SQLSTATE_SYMBOL:
                        case RETURNS_SYMBOL:
                        case REVERSE_SYMBOL:
                        case RIGHT_SYMBOL:
                        case ROLLBACK_SYMBOL:
                        case ROLLUP_SYMBOL:
                        case ROUTINE_SYMBOL:
                        case ROWS_SYMBOL:
                        case ROW_COUNT_SYMBOL:
                        case ROW_FORMAT_SYMBOL:
                        case ROW_SYMBOL:
                        case RTREE_SYMBOL:
                        case SAVEPOINT_SYMBOL:
                        case SCHEDULE_SYMBOL:
                        case SCHEMA_NAME_SYMBOL:
                        case SECOND_MICROSECOND_SYMBOL:
                        case SECOND_SYMBOL:
                        case SECURITY_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        case SEPARATOR_SYMBOL:
                        case SERIALIZABLE_SYMBOL:
                        case SERIAL_SYMBOL:
                        case SERVER_SYMBOL:
                        case SESSION_SYMBOL:
                        case SET_SYMBOL:
                        case SHARE_SYMBOL:
                        case SHIFT_LEFT_OPERATOR:
                        case SHIFT_RIGHT_OPERATOR:
                        case SHUTDOWN_SYMBOL:
                        case SIGNED_SYMBOL:
                        case SIMPLE_SYMBOL:
                        case SINGLE_QUOTED_TEXT:
                        case SLAVE_SYMBOL:
                        case SLOW_SYMBOL:
                        case SNAPSHOT_SYMBOL:
                        case SOCKET_SYMBOL:
                        case SONAME_SYMBOL:
                        case SOUNDS_SYMBOL:
                        case SOURCE_SYMBOL:
                        case SQL_AFTER_GTIDS_SYMBOL:
                        case SQL_AFTER_MTS_GAPS_SYMBOL:
                        case SQL_BEFORE_GTIDS_SYMBOL:
                        case SQL_BUFFER_RESULT_SYMBOL:
                        case SQL_CACHE_SYMBOL:
                        case SQL_NO_CACHE_SYMBOL:
                        case SQL_THREAD_SYMBOL:
                        case STARTS_SYMBOL:
                        case START_SYMBOL:
                        case STATS_AUTO_RECALC_SYMBOL:
                        case STATS_PERSISTENT_SYMBOL:
                        case STATS_SAMPLE_PAGES_SYMBOL:
                        case STATUS_SYMBOL:
                        case STOP_SYMBOL:
                        case STORAGE_SYMBOL:
                        case STRAIGHT_JOIN_SYMBOL:
                        case STRING_SYMBOL:
                        case SUBCLASS_ORIGIN_SYMBOL:
                        case SUBDATE_SYMBOL:
                        case SUBJECT_SYMBOL:
                        case SUBPARTITIONS_SYMBOL:
                        case SUBPARTITION_SYMBOL:
                        case SUPER_SYMBOL:
                        case SUSPEND_SYMBOL:
                        case SWAPS_SYMBOL:
                        case SWITCHES_SYMBOL:
                        case TABLESPACE_SYMBOL:
                        case TABLES_SYMBOL:
                        case TABLE_CHECKSUM_SYMBOL:
                        case TABLE_NAME_SYMBOL:
                        case TEMPORARY_SYMBOL:
                        case TEMPTABLE_SYMBOL:
                        case TEXT_SYMBOL:
                        case THAN_SYMBOL:
                        case THEN_SYMBOL:
                        case TIMESTAMP_ADD_SYMBOL:
                        case TIMESTAMP_DIFF_SYMBOL:
                        case TIMESTAMP_SYMBOL:
                        case TIME_SYMBOL:
                        case TRANSACTION_SYMBOL:
                        case TRIGGERS_SYMBOL:
                        case TRUNCATE_SYMBOL:
                        case TYPES_SYMBOL:
                        case TYPE_SYMBOL:
                        case UDF_RETURNS_SYMBOL:
                        case UNCOMMITTED_SYMBOL:
                        case UNDEFINED_SYMBOL:
                        case UNDERSCORE_CHARSET:
                        case UNDOFILE_SYMBOL:
                        case UNDO_BUFFER_SIZE_SYMBOL:
                        case UNICODE_SYMBOL:
                        case UNINSTALL_SYMBOL:
                        case UNION_SYMBOL:
                        case UNKNOWN_SYMBOL:
                        case UNTIL_SYMBOL:
                        case UPGRADE_SYMBOL:
                        case USER_RESOURCES_SYMBOL:
                        case USER_SYMBOL:
                        case USE_FRM_SYMBOL:
                        case USING_SYMBOL:
                        case VALUE_SYMBOL:
                        case VARIABLES_SYMBOL:
                        case VIEW_SYMBOL:
                        case WAIT_SYMBOL:
                        case WARNINGS_SYMBOL:
                        case WEEK_SYMBOL:
                        case WEIGHT_STRING_SYMBOL:
                        case WHEN_SYMBOL:
                        case WHERE_SYMBOL:
                        case WITH_SYMBOL:
                        case WORK_SYMBOL:
                        case WRAPPER_SYMBOL:
                        case X509_SYMBOL:
                        case XA_SYMBOL:
                        case XML_SYMBOL:
                        case XOR_SYMBOL:
                        case YEAR_MONTH_SYMBOL:
                        case YEAR_SYMBOL:
                        case 733:
                        	{
                        		alt527=3;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 527;
                            EXCEPTION->state        = 56;


                            goto ruleprimaryEx;

                        }

                    }
                    else if ( (LA527_0 == REVERSE_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case OPEN_PAR_SYMBOL:
                        	{
                        		{
                        		    int LA527_2516 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=4;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 2516;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case DOT_SYMBOL:
                        	{
                        		{
                        		    int LA527_2517 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 2517;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case EOF:
                        case ACTION_SYMBOL:
                        case ADDDATE_SYMBOL:
                        case AFTER_SYMBOL:
                        case AGAINST_SYMBOL:
                        case AGGREGATE_SYMBOL:
                        case ALGORITHM_SYMBOL:
                        case ANALYZE_SYMBOL:
                        case AND_SYMBOL:
                        case ANY_SYMBOL:
                        case ASCII_SYMBOL:
                        case ASC_SYMBOL:
                        case AS_SYMBOL:
                        case AT_SYMBOL:
                        case AUTHORS_SYMBOL:
                        case AUTOEXTEND_SIZE_SYMBOL:
                        case AUTO_INCREMENT_SYMBOL:
                        case AVG_ROW_LENGTH_SYMBOL:
                        case AVG_SYMBOL:
                        case BACKUP_SYMBOL:
                        case BACK_TICK_QUOTED_ID:
                        case BEGIN_SYMBOL:
                        case BETWEEN_SYMBOL:
                        case BINLOG_SYMBOL:
                        case BITWISE_AND_OPERATOR:
                        case BITWISE_OR_OPERATOR:
                        case BITWISE_XOR_OPERATOR:
                        case BIT_SYMBOL:
                        case BLOCK_SYMBOL:
                        case BOOLEAN_SYMBOL:
                        case BOOL_SYMBOL:
                        case BTREE_SYMBOL:
                        case BYTE_SYMBOL:
                        case CACHE_SYMBOL:
                        case CASCADED_SYMBOL:
                        case CATALOG_NAME_SYMBOL:
                        case CHAIN_SYMBOL:
                        case CHANGED_SYMBOL:
                        case CHARSET_SYMBOL:
                        case CHECKSUM_SYMBOL:
                        case CIPHER_SYMBOL:
                        case CLASS_ORIGIN_SYMBOL:
                        case CLIENT_SYMBOL:
                        case CLOSE_PAR_SYMBOL:
                        case CLOSE_SYMBOL:
                        case COALESCE_SYMBOL:
                        case CODE_SYMBOL:
                        case COLLATE_SYMBOL:
                        case COLLATION_SYMBOL:
                        case COLUMNS_SYMBOL:
                        case COLUMN_FORMAT_SYMBOL:
                        case COLUMN_NAME_SYMBOL:
                        case COMMA_SYMBOL:
                        case COMMENT_SYMBOL:
                        case COMMITTED_SYMBOL:
                        case COMMIT_SYMBOL:
                        case COMPACT_SYMBOL:
                        case COMPLETION_SYMBOL:
                        case COMPRESSED_SYMBOL:
                        case CONCAT_PIPES_SYMBOL:
                        case CONCURRENT_SYMBOL:
                        case CONNECTION_SYMBOL:
                        case CONSISTENT_SYMBOL:
                        case CONSTRAINT_CATALOG_SYMBOL:
                        case CONSTRAINT_NAME_SYMBOL:
                        case CONSTRAINT_SCHEMA_SYMBOL:
                        case CONTAINS_SYMBOL:
                        case CONTEXT_SYMBOL:
                        case CONTRIBUTORS_SYMBOL:
                        case CPU_SYMBOL:
                        case CROSS_SYMBOL:
                        case CUBE_SYMBOL:
                        case CURRENT_SYMBOL:
                        case CURSOR_NAME_SYMBOL:
                        case DATAFILE_SYMBOL:
                        case DATA_SYMBOL:
                        case DATETIME_SYMBOL:
                        case DATE_SYMBOL:
                        case DAY_HOUR_SYMBOL:
                        case DAY_MICROSECOND_SYMBOL:
                        case DAY_MINUTE_SYMBOL:
                        case DAY_SECOND_SYMBOL:
                        case DAY_SYMBOL:
                        case DEALLOCATE_SYMBOL:
                        case DEFAULT_AUTH_SYMBOL:
                        case DEFINER_SYMBOL:
                        case DELAY_KEY_WRITE_SYMBOL:
                        case DESC_SYMBOL:
                        case DES_KEY_FILE_SYMBOL:
                        case DIAGNOSTICS_SYMBOL:
                        case DIRECTORY_SYMBOL:
                        case DISABLE_SYMBOL:
                        case DISCARD_SYMBOL:
                        case DISK_SYMBOL:
                        case DIV_OPERATOR:
                        case DIV_SYMBOL:
                        case DOUBLE_QUOTED_TEXT:
                        case DO_SYMBOL:
                        case DUMPFILE_SYMBOL:
                        case DUPLICATE_SYMBOL:
                        case DYNAMIC_SYMBOL:
                        case ELSE_SYMBOL:
                        case ENABLE_SYMBOL:
                        case ENDS_SYMBOL:
                        case END_SYMBOL:
                        case ENGINES_SYMBOL:
                        case ENGINE_SYMBOL:
                        case ENUM_SYMBOL:
                        case EQUAL_OPERATOR:
                        case ERRORS_SYMBOL:
                        case ERROR_SYMBOL:
                        case ESCAPE_SYMBOL:
                        case EVENTS_SYMBOL:
                        case EVENT_SYMBOL:
                        case EVERY_SYMBOL:
                        case EXECUTE_SYMBOL:
                        case EXPANSION_SYMBOL:
                        case EXPORT_SYMBOL:
                        case EXTENDED_SYMBOL:
                        case EXTENT_SIZE_SYMBOL:
                        case FAST_SYMBOL:
                        case FAULTS_SYMBOL:
                        case FILE_SYMBOL:
                        case FIRST_SYMBOL:
                        case FIXED_SYMBOL:
                        case FLUSH_SYMBOL:
                        case FORMAT_SYMBOL:
                        case FOR_SYMBOL:
                        case FOUND_SYMBOL:
                        case FRAC_SECOND_SYMBOL:
                        case FROM_SYMBOL:
                        case FULL_SYMBOL:
                        case FUNCTION_SYMBOL:
                        case GENERAL_SYMBOL:
                        case GEOMETRYCOLLECTION_SYMBOL:
                        case GEOMETRY_SYMBOL:
                        case GET_FORMAT_SYMBOL:
                        case GLOBAL_SYMBOL:
                        case GRANTS_SYMBOL:
                        case GREATER_OR_EQUAL_OPERATOR:
                        case GREATER_THAN_OPERATOR:
                        case GROUP_SYMBOL:
                        case HANDLER_SYMBOL:
                        case HASH_SYMBOL:
                        case HAVING_SYMBOL:
                        case HELP_SYMBOL:
                        case HOSTS_SYMBOL:
                        case HOST_SYMBOL:
                        case HOUR_MICROSECOND_SYMBOL:
                        case HOUR_MINUTE_SYMBOL:
                        case HOUR_SECOND_SYMBOL:
                        case HOUR_SYMBOL:
                        case IDENTIFIED_SYMBOL:
                        case IDENTIFIER:
                        case IGNORE_SERVER_IDS_SYMBOL:
                        case IMPORT_SYMBOL:
                        case INDEXES_SYMBOL:
                        case INITIAL_SIZE_SYMBOL:
                        case INNER_SYMBOL:
                        case INNODB_SYMBOL:
                        case INSERT_METHOD_SYMBOL:
                        case INSTALL_SYMBOL:
                        case INTO_SYMBOL:
                        case INVOKER_SYMBOL:
                        case IN_SYMBOL:
                        case IO_SYMBOL:
                        case IPC_SYMBOL:
                        case ISOLATION_SYMBOL:
                        case ISSUER_SYMBOL:
                        case IS_SYMBOL:
                        case JOIN_SYMBOL:
                        case KEY_BLOCK_SIZE_SYMBOL:
                        case LANGUAGE_SYMBOL:
                        case LAST_SYMBOL:
                        case LEAVES_SYMBOL:
                        case LEFT_SYMBOL:
                        case LESS_OR_EQUAL_OPERATOR:
                        case LESS_SYMBOL:
                        case LESS_THAN_OPERATOR:
                        case LEVEL_SYMBOL:
                        case LIKE_SYMBOL:
                        case LIMIT_SYMBOL:
                        case LINESTRING_SYMBOL:
                        case LIST_SYMBOL:
                        case LOCAL_SYMBOL:
                        case LOCKS_SYMBOL:
                        case LOCK_SYMBOL:
                        case LOGFILE_SYMBOL:
                        case LOGICAL_AND_OPERATOR:
                        case LOGICAL_OR_OPERATOR:
                        case LOGS_SYMBOL:
                        case MASTER_AUTO_POSITION_SYMBOL:
                        case MASTER_CONNECT_RETRY_SYMBOL:
                        case MASTER_DELAY_SYMBOL:
                        case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                        case MASTER_HOST_SYMBOL:
                        case MASTER_LOG_FILE_SYMBOL:
                        case MASTER_LOG_POS_SYMBOL:
                        case MASTER_PASSWORD_SYMBOL:
                        case MASTER_PORT_SYMBOL:
                        case MASTER_RETRY_COUNT_SYMBOL:
                        case MASTER_SERVER_ID_SYMBOL:
                        case MASTER_SSL_CAPATH_SYMBOL:
                        case MASTER_SSL_CA_SYMBOL:
                        case MASTER_SSL_CERT_SYMBOL:
                        case MASTER_SSL_CIPHER_SYMBOL:
                        case MASTER_SSL_CRLPATH_SYMBOL:
                        case MASTER_SSL_CRL_SYMBOL:
                        case MASTER_SSL_KEY_SYMBOL:
                        case MASTER_SSL_SYMBOL:
                        case MASTER_SYMBOL:
                        case MASTER_USER_SYMBOL:
                        case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                        case MAX_QUERIES_PER_HOUR_SYMBOL:
                        case MAX_ROWS_SYMBOL:
                        case MAX_SIZE_SYMBOL:
                        case MAX_UPDATES_PER_HOUR_SYMBOL:
                        case MAX_USER_CONNECTIONS_SYMBOL:
                        case MEDIUM_SYMBOL:
                        case MEMORY_SYMBOL:
                        case MERGE_SYMBOL:
                        case MESSAGE_TEXT_SYMBOL:
                        case MICROSECOND_SYMBOL:
                        case MIGRATE_SYMBOL:
                        case MINUS_OPERATOR:
                        case MINUTE_MICROSECOND_SYMBOL:
                        case MINUTE_SECOND_SYMBOL:
                        case MINUTE_SYMBOL:
                        case MIN_ROWS_SYMBOL:
                        case MODE_SYMBOL:
                        case MODIFY_SYMBOL:
                        case MOD_OPERATOR:
                        case MOD_SYMBOL:
                        case MONTH_SYMBOL:
                        case MULTILINESTRING_SYMBOL:
                        case MULTIPOINT_SYMBOL:
                        case MULTIPOLYGON_SYMBOL:
                        case MULT_OPERATOR:
                        case MUTEX_SYMBOL:
                        case MYSQL_ERRNO_SYMBOL:
                        case NAMES_SYMBOL:
                        case NAME_SYMBOL:
                        case NATIONAL_SYMBOL:
                        case NATURAL_SYMBOL:
                        case NCHAR_SYMBOL:
                        case NCHAR_TEXT:
                        case NDBCLUSTER_SYMBOL:
                        case NEW_SYMBOL:
                        case NEXT_SYMBOL:
                        case NODEGROUP_SYMBOL:
                        case NONE_SYMBOL:
                        case NOT_EQUAL2_OPERATOR:
                        case NOT_EQUAL_OPERATOR:
                        case NOT_SYMBOL:
                        case NO_SYMBOL:
                        case NO_WAIT_SYMBOL:
                        case NULL_SAFE_EQUAL_OPERATOR:
                        case NUMBER_SYMBOL:
                        case NVARCHAR_SYMBOL:
                        case OFFSET_SYMBOL:
                        case OLD_PASSWORD_SYMBOL:
                        case ONE_SHOT_SYMBOL:
                        case ONE_SYMBOL:
                        case ON_SYMBOL:
                        case OPEN_SYMBOL:
                        case OPTIONS_SYMBOL:
                        case ORDER_SYMBOL:
                        case OR_SYMBOL:
                        case OWNER_SYMBOL:
                        case PACK_KEYS_SYMBOL:
                        case PAGE_SYMBOL:
                        case PARSER_SYMBOL:
                        case PARTIAL_SYMBOL:
                        case PARTITIONING_SYMBOL:
                        case PARTITIONS_SYMBOL:
                        case PARTITION_SYMBOL:
                        case PASSWORD_SYMBOL:
                        case PHASE_SYMBOL:
                        case PLUGINS_SYMBOL:
                        case PLUGIN_DIR_SYMBOL:
                        case PLUGIN_SYMBOL:
                        case PLUS_OPERATOR:
                        case POINT_SYMBOL:
                        case POLYGON_SYMBOL:
                        case PORT_SYMBOL:
                        case PREPARE_SYMBOL:
                        case PRESERVE_SYMBOL:
                        case PREV_SYMBOL:
                        case PRIVILEGES_SYMBOL:
                        case PROCEDURE_SYMBOL:
                        case PROCESSLIST_SYMBOL:
                        case PROCESS_SYMBOL:
                        case PROFILES_SYMBOL:
                        case PROFILE_SYMBOL:
                        case PROXY_SYMBOL:
                        case QUARTER_SYMBOL:
                        case QUERY_SYMBOL:
                        case QUICK_SYMBOL:
                        case READ_ONLY_SYMBOL:
                        case REBUILD_SYMBOL:
                        case RECOVER_SYMBOL:
                        case REDOFILE_SYMBOL:
                        case REDO_BUFFER_SIZE_SYMBOL:
                        case REDUNDANT_SYMBOL:
                        case REGEXP_SYMBOL:
                        case RELAYLOG_SYMBOL:
                        case RELAY_LOG_FILE_SYMBOL:
                        case RELAY_LOG_POS_SYMBOL:
                        case RELAY_SYMBOL:
                        case RELAY_THREAD_SYMBOL:
                        case RELOAD_SYMBOL:
                        case REMOVE_SYMBOL:
                        case RENAME_SYMBOL:
                        case REORGANIZE_SYMBOL:
                        case REPAIR_SYMBOL:
                        case REPEATABLE_SYMBOL:
                        case REPLICATION_SYMBOL:
                        case RESET_SYMBOL:
                        case RESTORE_SYMBOL:
                        case RESUME_SYMBOL:
                        case RETURNED_SQLSTATE_SYMBOL:
                        case RETURNS_SYMBOL:
                        case REVERSE_SYMBOL:
                        case RIGHT_SYMBOL:
                        case ROLLBACK_SYMBOL:
                        case ROLLUP_SYMBOL:
                        case ROUTINE_SYMBOL:
                        case ROWS_SYMBOL:
                        case ROW_COUNT_SYMBOL:
                        case ROW_FORMAT_SYMBOL:
                        case ROW_SYMBOL:
                        case RTREE_SYMBOL:
                        case SAVEPOINT_SYMBOL:
                        case SCHEDULE_SYMBOL:
                        case SCHEMA_NAME_SYMBOL:
                        case SECOND_MICROSECOND_SYMBOL:
                        case SECOND_SYMBOL:
                        case SECURITY_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        case SEPARATOR_SYMBOL:
                        case SERIALIZABLE_SYMBOL:
                        case SERIAL_SYMBOL:
                        case SERVER_SYMBOL:
                        case SESSION_SYMBOL:
                        case SET_SYMBOL:
                        case SHARE_SYMBOL:
                        case SHIFT_LEFT_OPERATOR:
                        case SHIFT_RIGHT_OPERATOR:
                        case SHUTDOWN_SYMBOL:
                        case SIGNED_SYMBOL:
                        case SIMPLE_SYMBOL:
                        case SINGLE_QUOTED_TEXT:
                        case SLAVE_SYMBOL:
                        case SLOW_SYMBOL:
                        case SNAPSHOT_SYMBOL:
                        case SOCKET_SYMBOL:
                        case SONAME_SYMBOL:
                        case SOUNDS_SYMBOL:
                        case SOURCE_SYMBOL:
                        case SQL_AFTER_GTIDS_SYMBOL:
                        case SQL_AFTER_MTS_GAPS_SYMBOL:
                        case SQL_BEFORE_GTIDS_SYMBOL:
                        case SQL_BUFFER_RESULT_SYMBOL:
                        case SQL_CACHE_SYMBOL:
                        case SQL_NO_CACHE_SYMBOL:
                        case SQL_THREAD_SYMBOL:
                        case STARTS_SYMBOL:
                        case START_SYMBOL:
                        case STATS_AUTO_RECALC_SYMBOL:
                        case STATS_PERSISTENT_SYMBOL:
                        case STATS_SAMPLE_PAGES_SYMBOL:
                        case STATUS_SYMBOL:
                        case STOP_SYMBOL:
                        case STORAGE_SYMBOL:
                        case STRAIGHT_JOIN_SYMBOL:
                        case STRING_SYMBOL:
                        case SUBCLASS_ORIGIN_SYMBOL:
                        case SUBDATE_SYMBOL:
                        case SUBJECT_SYMBOL:
                        case SUBPARTITIONS_SYMBOL:
                        case SUBPARTITION_SYMBOL:
                        case SUPER_SYMBOL:
                        case SUSPEND_SYMBOL:
                        case SWAPS_SYMBOL:
                        case SWITCHES_SYMBOL:
                        case TABLESPACE_SYMBOL:
                        case TABLES_SYMBOL:
                        case TABLE_CHECKSUM_SYMBOL:
                        case TABLE_NAME_SYMBOL:
                        case TEMPORARY_SYMBOL:
                        case TEMPTABLE_SYMBOL:
                        case TEXT_SYMBOL:
                        case THAN_SYMBOL:
                        case THEN_SYMBOL:
                        case TIMESTAMP_ADD_SYMBOL:
                        case TIMESTAMP_DIFF_SYMBOL:
                        case TIMESTAMP_SYMBOL:
                        case TIME_SYMBOL:
                        case TRANSACTION_SYMBOL:
                        case TRIGGERS_SYMBOL:
                        case TRUNCATE_SYMBOL:
                        case TYPES_SYMBOL:
                        case TYPE_SYMBOL:
                        case UDF_RETURNS_SYMBOL:
                        case UNCOMMITTED_SYMBOL:
                        case UNDEFINED_SYMBOL:
                        case UNDERSCORE_CHARSET:
                        case UNDOFILE_SYMBOL:
                        case UNDO_BUFFER_SIZE_SYMBOL:
                        case UNICODE_SYMBOL:
                        case UNINSTALL_SYMBOL:
                        case UNION_SYMBOL:
                        case UNKNOWN_SYMBOL:
                        case UNTIL_SYMBOL:
                        case UPGRADE_SYMBOL:
                        case USER_RESOURCES_SYMBOL:
                        case USER_SYMBOL:
                        case USE_FRM_SYMBOL:
                        case USING_SYMBOL:
                        case VALUE_SYMBOL:
                        case VARIABLES_SYMBOL:
                        case VIEW_SYMBOL:
                        case WAIT_SYMBOL:
                        case WARNINGS_SYMBOL:
                        case WEEK_SYMBOL:
                        case WEIGHT_STRING_SYMBOL:
                        case WHEN_SYMBOL:
                        case WHERE_SYMBOL:
                        case WITH_SYMBOL:
                        case WORK_SYMBOL:
                        case WRAPPER_SYMBOL:
                        case X509_SYMBOL:
                        case XA_SYMBOL:
                        case XML_SYMBOL:
                        case XOR_SYMBOL:
                        case YEAR_MONTH_SYMBOL:
                        case YEAR_SYMBOL:
                        case 733:
                        	{
                        		alt527=3;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 527;
                            EXCEPTION->state        = 57;


                            goto ruleprimaryEx;

                        }

                    }
                    else if ( (LA527_0 == ROW_COUNT_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case DOT_SYMBOL:
                        	{
                        		{
                        		    int LA527_2609 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 2609;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case EOF:
                        case ACTION_SYMBOL:
                        case ADDDATE_SYMBOL:
                        case AFTER_SYMBOL:
                        case AGAINST_SYMBOL:
                        case AGGREGATE_SYMBOL:
                        case ALGORITHM_SYMBOL:
                        case ANALYZE_SYMBOL:
                        case AND_SYMBOL:
                        case ANY_SYMBOL:
                        case ASCII_SYMBOL:
                        case ASC_SYMBOL:
                        case AS_SYMBOL:
                        case AT_SYMBOL:
                        case AUTHORS_SYMBOL:
                        case AUTOEXTEND_SIZE_SYMBOL:
                        case AUTO_INCREMENT_SYMBOL:
                        case AVG_ROW_LENGTH_SYMBOL:
                        case AVG_SYMBOL:
                        case BACKUP_SYMBOL:
                        case BACK_TICK_QUOTED_ID:
                        case BEGIN_SYMBOL:
                        case BETWEEN_SYMBOL:
                        case BINLOG_SYMBOL:
                        case BITWISE_AND_OPERATOR:
                        case BITWISE_OR_OPERATOR:
                        case BITWISE_XOR_OPERATOR:
                        case BIT_SYMBOL:
                        case BLOCK_SYMBOL:
                        case BOOLEAN_SYMBOL:
                        case BOOL_SYMBOL:
                        case BTREE_SYMBOL:
                        case BYTE_SYMBOL:
                        case CACHE_SYMBOL:
                        case CASCADED_SYMBOL:
                        case CATALOG_NAME_SYMBOL:
                        case CHAIN_SYMBOL:
                        case CHANGED_SYMBOL:
                        case CHARSET_SYMBOL:
                        case CHECKSUM_SYMBOL:
                        case CIPHER_SYMBOL:
                        case CLASS_ORIGIN_SYMBOL:
                        case CLIENT_SYMBOL:
                        case CLOSE_PAR_SYMBOL:
                        case CLOSE_SYMBOL:
                        case COALESCE_SYMBOL:
                        case CODE_SYMBOL:
                        case COLLATE_SYMBOL:
                        case COLLATION_SYMBOL:
                        case COLUMNS_SYMBOL:
                        case COLUMN_FORMAT_SYMBOL:
                        case COLUMN_NAME_SYMBOL:
                        case COMMA_SYMBOL:
                        case COMMENT_SYMBOL:
                        case COMMITTED_SYMBOL:
                        case COMMIT_SYMBOL:
                        case COMPACT_SYMBOL:
                        case COMPLETION_SYMBOL:
                        case COMPRESSED_SYMBOL:
                        case CONCAT_PIPES_SYMBOL:
                        case CONCURRENT_SYMBOL:
                        case CONNECTION_SYMBOL:
                        case CONSISTENT_SYMBOL:
                        case CONSTRAINT_CATALOG_SYMBOL:
                        case CONSTRAINT_NAME_SYMBOL:
                        case CONSTRAINT_SCHEMA_SYMBOL:
                        case CONTAINS_SYMBOL:
                        case CONTEXT_SYMBOL:
                        case CONTRIBUTORS_SYMBOL:
                        case CPU_SYMBOL:
                        case CROSS_SYMBOL:
                        case CUBE_SYMBOL:
                        case CURRENT_SYMBOL:
                        case CURSOR_NAME_SYMBOL:
                        case DATAFILE_SYMBOL:
                        case DATA_SYMBOL:
                        case DATETIME_SYMBOL:
                        case DATE_SYMBOL:
                        case DAY_HOUR_SYMBOL:
                        case DAY_MICROSECOND_SYMBOL:
                        case DAY_MINUTE_SYMBOL:
                        case DAY_SECOND_SYMBOL:
                        case DAY_SYMBOL:
                        case DEALLOCATE_SYMBOL:
                        case DEFAULT_AUTH_SYMBOL:
                        case DEFINER_SYMBOL:
                        case DELAY_KEY_WRITE_SYMBOL:
                        case DESC_SYMBOL:
                        case DES_KEY_FILE_SYMBOL:
                        case DIAGNOSTICS_SYMBOL:
                        case DIRECTORY_SYMBOL:
                        case DISABLE_SYMBOL:
                        case DISCARD_SYMBOL:
                        case DISK_SYMBOL:
                        case DIV_OPERATOR:
                        case DIV_SYMBOL:
                        case DOUBLE_QUOTED_TEXT:
                        case DO_SYMBOL:
                        case DUMPFILE_SYMBOL:
                        case DUPLICATE_SYMBOL:
                        case DYNAMIC_SYMBOL:
                        case ELSE_SYMBOL:
                        case ENABLE_SYMBOL:
                        case ENDS_SYMBOL:
                        case END_SYMBOL:
                        case ENGINES_SYMBOL:
                        case ENGINE_SYMBOL:
                        case ENUM_SYMBOL:
                        case EQUAL_OPERATOR:
                        case ERRORS_SYMBOL:
                        case ERROR_SYMBOL:
                        case ESCAPE_SYMBOL:
                        case EVENTS_SYMBOL:
                        case EVENT_SYMBOL:
                        case EVERY_SYMBOL:
                        case EXECUTE_SYMBOL:
                        case EXPANSION_SYMBOL:
                        case EXPORT_SYMBOL:
                        case EXTENDED_SYMBOL:
                        case EXTENT_SIZE_SYMBOL:
                        case FAST_SYMBOL:
                        case FAULTS_SYMBOL:
                        case FILE_SYMBOL:
                        case FIRST_SYMBOL:
                        case FIXED_SYMBOL:
                        case FLUSH_SYMBOL:
                        case FORMAT_SYMBOL:
                        case FOR_SYMBOL:
                        case FOUND_SYMBOL:
                        case FRAC_SECOND_SYMBOL:
                        case FROM_SYMBOL:
                        case FULL_SYMBOL:
                        case FUNCTION_SYMBOL:
                        case GENERAL_SYMBOL:
                        case GEOMETRYCOLLECTION_SYMBOL:
                        case GEOMETRY_SYMBOL:
                        case GET_FORMAT_SYMBOL:
                        case GLOBAL_SYMBOL:
                        case GRANTS_SYMBOL:
                        case GREATER_OR_EQUAL_OPERATOR:
                        case GREATER_THAN_OPERATOR:
                        case GROUP_SYMBOL:
                        case HANDLER_SYMBOL:
                        case HASH_SYMBOL:
                        case HAVING_SYMBOL:
                        case HELP_SYMBOL:
                        case HOSTS_SYMBOL:
                        case HOST_SYMBOL:
                        case HOUR_MICROSECOND_SYMBOL:
                        case HOUR_MINUTE_SYMBOL:
                        case HOUR_SECOND_SYMBOL:
                        case HOUR_SYMBOL:
                        case IDENTIFIED_SYMBOL:
                        case IDENTIFIER:
                        case IGNORE_SERVER_IDS_SYMBOL:
                        case IMPORT_SYMBOL:
                        case INDEXES_SYMBOL:
                        case INITIAL_SIZE_SYMBOL:
                        case INNER_SYMBOL:
                        case INNODB_SYMBOL:
                        case INSERT_METHOD_SYMBOL:
                        case INSTALL_SYMBOL:
                        case INTO_SYMBOL:
                        case INVOKER_SYMBOL:
                        case IN_SYMBOL:
                        case IO_SYMBOL:
                        case IPC_SYMBOL:
                        case ISOLATION_SYMBOL:
                        case ISSUER_SYMBOL:
                        case IS_SYMBOL:
                        case JOIN_SYMBOL:
                        case KEY_BLOCK_SIZE_SYMBOL:
                        case LANGUAGE_SYMBOL:
                        case LAST_SYMBOL:
                        case LEAVES_SYMBOL:
                        case LEFT_SYMBOL:
                        case LESS_OR_EQUAL_OPERATOR:
                        case LESS_SYMBOL:
                        case LESS_THAN_OPERATOR:
                        case LEVEL_SYMBOL:
                        case LIKE_SYMBOL:
                        case LIMIT_SYMBOL:
                        case LINESTRING_SYMBOL:
                        case LIST_SYMBOL:
                        case LOCAL_SYMBOL:
                        case LOCKS_SYMBOL:
                        case LOCK_SYMBOL:
                        case LOGFILE_SYMBOL:
                        case LOGICAL_AND_OPERATOR:
                        case LOGICAL_OR_OPERATOR:
                        case LOGS_SYMBOL:
                        case MASTER_AUTO_POSITION_SYMBOL:
                        case MASTER_CONNECT_RETRY_SYMBOL:
                        case MASTER_DELAY_SYMBOL:
                        case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                        case MASTER_HOST_SYMBOL:
                        case MASTER_LOG_FILE_SYMBOL:
                        case MASTER_LOG_POS_SYMBOL:
                        case MASTER_PASSWORD_SYMBOL:
                        case MASTER_PORT_SYMBOL:
                        case MASTER_RETRY_COUNT_SYMBOL:
                        case MASTER_SERVER_ID_SYMBOL:
                        case MASTER_SSL_CAPATH_SYMBOL:
                        case MASTER_SSL_CA_SYMBOL:
                        case MASTER_SSL_CERT_SYMBOL:
                        case MASTER_SSL_CIPHER_SYMBOL:
                        case MASTER_SSL_CRLPATH_SYMBOL:
                        case MASTER_SSL_CRL_SYMBOL:
                        case MASTER_SSL_KEY_SYMBOL:
                        case MASTER_SSL_SYMBOL:
                        case MASTER_SYMBOL:
                        case MASTER_USER_SYMBOL:
                        case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                        case MAX_QUERIES_PER_HOUR_SYMBOL:
                        case MAX_ROWS_SYMBOL:
                        case MAX_SIZE_SYMBOL:
                        case MAX_UPDATES_PER_HOUR_SYMBOL:
                        case MAX_USER_CONNECTIONS_SYMBOL:
                        case MEDIUM_SYMBOL:
                        case MEMORY_SYMBOL:
                        case MERGE_SYMBOL:
                        case MESSAGE_TEXT_SYMBOL:
                        case MICROSECOND_SYMBOL:
                        case MIGRATE_SYMBOL:
                        case MINUS_OPERATOR:
                        case MINUTE_MICROSECOND_SYMBOL:
                        case MINUTE_SECOND_SYMBOL:
                        case MINUTE_SYMBOL:
                        case MIN_ROWS_SYMBOL:
                        case MODE_SYMBOL:
                        case MODIFY_SYMBOL:
                        case MOD_OPERATOR:
                        case MOD_SYMBOL:
                        case MONTH_SYMBOL:
                        case MULTILINESTRING_SYMBOL:
                        case MULTIPOINT_SYMBOL:
                        case MULTIPOLYGON_SYMBOL:
                        case MULT_OPERATOR:
                        case MUTEX_SYMBOL:
                        case MYSQL_ERRNO_SYMBOL:
                        case NAMES_SYMBOL:
                        case NAME_SYMBOL:
                        case NATIONAL_SYMBOL:
                        case NATURAL_SYMBOL:
                        case NCHAR_SYMBOL:
                        case NCHAR_TEXT:
                        case NDBCLUSTER_SYMBOL:
                        case NEW_SYMBOL:
                        case NEXT_SYMBOL:
                        case NODEGROUP_SYMBOL:
                        case NONE_SYMBOL:
                        case NOT_EQUAL2_OPERATOR:
                        case NOT_EQUAL_OPERATOR:
                        case NOT_SYMBOL:
                        case NO_SYMBOL:
                        case NO_WAIT_SYMBOL:
                        case NULL_SAFE_EQUAL_OPERATOR:
                        case NUMBER_SYMBOL:
                        case NVARCHAR_SYMBOL:
                        case OFFSET_SYMBOL:
                        case OLD_PASSWORD_SYMBOL:
                        case ONE_SHOT_SYMBOL:
                        case ONE_SYMBOL:
                        case ON_SYMBOL:
                        case OPEN_SYMBOL:
                        case OPTIONS_SYMBOL:
                        case ORDER_SYMBOL:
                        case OR_SYMBOL:
                        case OWNER_SYMBOL:
                        case PACK_KEYS_SYMBOL:
                        case PAGE_SYMBOL:
                        case PARSER_SYMBOL:
                        case PARTIAL_SYMBOL:
                        case PARTITIONING_SYMBOL:
                        case PARTITIONS_SYMBOL:
                        case PARTITION_SYMBOL:
                        case PASSWORD_SYMBOL:
                        case PHASE_SYMBOL:
                        case PLUGINS_SYMBOL:
                        case PLUGIN_DIR_SYMBOL:
                        case PLUGIN_SYMBOL:
                        case PLUS_OPERATOR:
                        case POINT_SYMBOL:
                        case POLYGON_SYMBOL:
                        case PORT_SYMBOL:
                        case PREPARE_SYMBOL:
                        case PRESERVE_SYMBOL:
                        case PREV_SYMBOL:
                        case PRIVILEGES_SYMBOL:
                        case PROCEDURE_SYMBOL:
                        case PROCESSLIST_SYMBOL:
                        case PROCESS_SYMBOL:
                        case PROFILES_SYMBOL:
                        case PROFILE_SYMBOL:
                        case PROXY_SYMBOL:
                        case QUARTER_SYMBOL:
                        case QUERY_SYMBOL:
                        case QUICK_SYMBOL:
                        case READ_ONLY_SYMBOL:
                        case REBUILD_SYMBOL:
                        case RECOVER_SYMBOL:
                        case REDOFILE_SYMBOL:
                        case REDO_BUFFER_SIZE_SYMBOL:
                        case REDUNDANT_SYMBOL:
                        case REGEXP_SYMBOL:
                        case RELAYLOG_SYMBOL:
                        case RELAY_LOG_FILE_SYMBOL:
                        case RELAY_LOG_POS_SYMBOL:
                        case RELAY_SYMBOL:
                        case RELAY_THREAD_SYMBOL:
                        case RELOAD_SYMBOL:
                        case REMOVE_SYMBOL:
                        case RENAME_SYMBOL:
                        case REORGANIZE_SYMBOL:
                        case REPAIR_SYMBOL:
                        case REPEATABLE_SYMBOL:
                        case REPLICATION_SYMBOL:
                        case RESET_SYMBOL:
                        case RESTORE_SYMBOL:
                        case RESUME_SYMBOL:
                        case RETURNED_SQLSTATE_SYMBOL:
                        case RETURNS_SYMBOL:
                        case REVERSE_SYMBOL:
                        case RIGHT_SYMBOL:
                        case ROLLBACK_SYMBOL:
                        case ROLLUP_SYMBOL:
                        case ROUTINE_SYMBOL:
                        case ROWS_SYMBOL:
                        case ROW_COUNT_SYMBOL:
                        case ROW_FORMAT_SYMBOL:
                        case ROW_SYMBOL:
                        case RTREE_SYMBOL:
                        case SAVEPOINT_SYMBOL:
                        case SCHEDULE_SYMBOL:
                        case SCHEMA_NAME_SYMBOL:
                        case SECOND_MICROSECOND_SYMBOL:
                        case SECOND_SYMBOL:
                        case SECURITY_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        case SEPARATOR_SYMBOL:
                        case SERIALIZABLE_SYMBOL:
                        case SERIAL_SYMBOL:
                        case SERVER_SYMBOL:
                        case SESSION_SYMBOL:
                        case SET_SYMBOL:
                        case SHARE_SYMBOL:
                        case SHIFT_LEFT_OPERATOR:
                        case SHIFT_RIGHT_OPERATOR:
                        case SHUTDOWN_SYMBOL:
                        case SIGNED_SYMBOL:
                        case SIMPLE_SYMBOL:
                        case SINGLE_QUOTED_TEXT:
                        case SLAVE_SYMBOL:
                        case SLOW_SYMBOL:
                        case SNAPSHOT_SYMBOL:
                        case SOCKET_SYMBOL:
                        case SONAME_SYMBOL:
                        case SOUNDS_SYMBOL:
                        case SOURCE_SYMBOL:
                        case SQL_AFTER_GTIDS_SYMBOL:
                        case SQL_AFTER_MTS_GAPS_SYMBOL:
                        case SQL_BEFORE_GTIDS_SYMBOL:
                        case SQL_BUFFER_RESULT_SYMBOL:
                        case SQL_CACHE_SYMBOL:
                        case SQL_NO_CACHE_SYMBOL:
                        case SQL_THREAD_SYMBOL:
                        case STARTS_SYMBOL:
                        case START_SYMBOL:
                        case STATS_AUTO_RECALC_SYMBOL:
                        case STATS_PERSISTENT_SYMBOL:
                        case STATS_SAMPLE_PAGES_SYMBOL:
                        case STATUS_SYMBOL:
                        case STOP_SYMBOL:
                        case STORAGE_SYMBOL:
                        case STRAIGHT_JOIN_SYMBOL:
                        case STRING_SYMBOL:
                        case SUBCLASS_ORIGIN_SYMBOL:
                        case SUBDATE_SYMBOL:
                        case SUBJECT_SYMBOL:
                        case SUBPARTITIONS_SYMBOL:
                        case SUBPARTITION_SYMBOL:
                        case SUPER_SYMBOL:
                        case SUSPEND_SYMBOL:
                        case SWAPS_SYMBOL:
                        case SWITCHES_SYMBOL:
                        case TABLESPACE_SYMBOL:
                        case TABLES_SYMBOL:
                        case TABLE_CHECKSUM_SYMBOL:
                        case TABLE_NAME_SYMBOL:
                        case TEMPORARY_SYMBOL:
                        case TEMPTABLE_SYMBOL:
                        case TEXT_SYMBOL:
                        case THAN_SYMBOL:
                        case THEN_SYMBOL:
                        case TIMESTAMP_ADD_SYMBOL:
                        case TIMESTAMP_DIFF_SYMBOL:
                        case TIMESTAMP_SYMBOL:
                        case TIME_SYMBOL:
                        case TRANSACTION_SYMBOL:
                        case TRIGGERS_SYMBOL:
                        case TRUNCATE_SYMBOL:
                        case TYPES_SYMBOL:
                        case TYPE_SYMBOL:
                        case UDF_RETURNS_SYMBOL:
                        case UNCOMMITTED_SYMBOL:
                        case UNDEFINED_SYMBOL:
                        case UNDERSCORE_CHARSET:
                        case UNDOFILE_SYMBOL:
                        case UNDO_BUFFER_SIZE_SYMBOL:
                        case UNICODE_SYMBOL:
                        case UNINSTALL_SYMBOL:
                        case UNION_SYMBOL:
                        case UNKNOWN_SYMBOL:
                        case UNTIL_SYMBOL:
                        case UPGRADE_SYMBOL:
                        case USER_RESOURCES_SYMBOL:
                        case USER_SYMBOL:
                        case USE_FRM_SYMBOL:
                        case USING_SYMBOL:
                        case VALUE_SYMBOL:
                        case VARIABLES_SYMBOL:
                        case VIEW_SYMBOL:
                        case WAIT_SYMBOL:
                        case WARNINGS_SYMBOL:
                        case WEEK_SYMBOL:
                        case WEIGHT_STRING_SYMBOL:
                        case WHEN_SYMBOL:
                        case WHERE_SYMBOL:
                        case WITH_SYMBOL:
                        case WORK_SYMBOL:
                        case WRAPPER_SYMBOL:
                        case X509_SYMBOL:
                        case XA_SYMBOL:
                        case XML_SYMBOL:
                        case XOR_SYMBOL:
                        case YEAR_MONTH_SYMBOL:
                        case YEAR_SYMBOL:
                        case 733:
                        	{
                        		alt527=3;
                        	}
                            break;
                        case OPEN_PAR_SYMBOL:
                        	{
                        		{
                        		    int LA527_2701 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=4;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 2701;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 527;
                            EXCEPTION->state        = 60;


                            goto ruleprimaryEx;

                        }

                    }
                    else if ( (LA527_0 == WEEK_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case OPEN_PAR_SYMBOL:
                        	{
                        		{
                        		    int LA527_2702 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=4;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 2702;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case DOT_SYMBOL:
                        	{
                        		{
                        		    int LA527_2703 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 2703;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case EOF:
                        case ACTION_SYMBOL:
                        case ADDDATE_SYMBOL:
                        case AFTER_SYMBOL:
                        case AGAINST_SYMBOL:
                        case AGGREGATE_SYMBOL:
                        case ALGORITHM_SYMBOL:
                        case ANALYZE_SYMBOL:
                        case AND_SYMBOL:
                        case ANY_SYMBOL:
                        case ASCII_SYMBOL:
                        case ASC_SYMBOL:
                        case AS_SYMBOL:
                        case AT_SYMBOL:
                        case AUTHORS_SYMBOL:
                        case AUTOEXTEND_SIZE_SYMBOL:
                        case AUTO_INCREMENT_SYMBOL:
                        case AVG_ROW_LENGTH_SYMBOL:
                        case AVG_SYMBOL:
                        case BACKUP_SYMBOL:
                        case BACK_TICK_QUOTED_ID:
                        case BEGIN_SYMBOL:
                        case BETWEEN_SYMBOL:
                        case BINLOG_SYMBOL:
                        case BITWISE_AND_OPERATOR:
                        case BITWISE_OR_OPERATOR:
                        case BITWISE_XOR_OPERATOR:
                        case BIT_SYMBOL:
                        case BLOCK_SYMBOL:
                        case BOOLEAN_SYMBOL:
                        case BOOL_SYMBOL:
                        case BTREE_SYMBOL:
                        case BYTE_SYMBOL:
                        case CACHE_SYMBOL:
                        case CASCADED_SYMBOL:
                        case CATALOG_NAME_SYMBOL:
                        case CHAIN_SYMBOL:
                        case CHANGED_SYMBOL:
                        case CHARSET_SYMBOL:
                        case CHECKSUM_SYMBOL:
                        case CIPHER_SYMBOL:
                        case CLASS_ORIGIN_SYMBOL:
                        case CLIENT_SYMBOL:
                        case CLOSE_PAR_SYMBOL:
                        case CLOSE_SYMBOL:
                        case COALESCE_SYMBOL:
                        case CODE_SYMBOL:
                        case COLLATE_SYMBOL:
                        case COLLATION_SYMBOL:
                        case COLUMNS_SYMBOL:
                        case COLUMN_FORMAT_SYMBOL:
                        case COLUMN_NAME_SYMBOL:
                        case COMMA_SYMBOL:
                        case COMMENT_SYMBOL:
                        case COMMITTED_SYMBOL:
                        case COMMIT_SYMBOL:
                        case COMPACT_SYMBOL:
                        case COMPLETION_SYMBOL:
                        case COMPRESSED_SYMBOL:
                        case CONCAT_PIPES_SYMBOL:
                        case CONCURRENT_SYMBOL:
                        case CONNECTION_SYMBOL:
                        case CONSISTENT_SYMBOL:
                        case CONSTRAINT_CATALOG_SYMBOL:
                        case CONSTRAINT_NAME_SYMBOL:
                        case CONSTRAINT_SCHEMA_SYMBOL:
                        case CONTAINS_SYMBOL:
                        case CONTEXT_SYMBOL:
                        case CONTRIBUTORS_SYMBOL:
                        case CPU_SYMBOL:
                        case CROSS_SYMBOL:
                        case CUBE_SYMBOL:
                        case CURRENT_SYMBOL:
                        case CURSOR_NAME_SYMBOL:
                        case DATAFILE_SYMBOL:
                        case DATA_SYMBOL:
                        case DATETIME_SYMBOL:
                        case DATE_SYMBOL:
                        case DAY_HOUR_SYMBOL:
                        case DAY_MICROSECOND_SYMBOL:
                        case DAY_MINUTE_SYMBOL:
                        case DAY_SECOND_SYMBOL:
                        case DAY_SYMBOL:
                        case DEALLOCATE_SYMBOL:
                        case DEFAULT_AUTH_SYMBOL:
                        case DEFINER_SYMBOL:
                        case DELAY_KEY_WRITE_SYMBOL:
                        case DESC_SYMBOL:
                        case DES_KEY_FILE_SYMBOL:
                        case DIAGNOSTICS_SYMBOL:
                        case DIRECTORY_SYMBOL:
                        case DISABLE_SYMBOL:
                        case DISCARD_SYMBOL:
                        case DISK_SYMBOL:
                        case DIV_OPERATOR:
                        case DIV_SYMBOL:
                        case DOUBLE_QUOTED_TEXT:
                        case DO_SYMBOL:
                        case DUMPFILE_SYMBOL:
                        case DUPLICATE_SYMBOL:
                        case DYNAMIC_SYMBOL:
                        case ELSE_SYMBOL:
                        case ENABLE_SYMBOL:
                        case ENDS_SYMBOL:
                        case END_SYMBOL:
                        case ENGINES_SYMBOL:
                        case ENGINE_SYMBOL:
                        case ENUM_SYMBOL:
                        case EQUAL_OPERATOR:
                        case ERRORS_SYMBOL:
                        case ERROR_SYMBOL:
                        case ESCAPE_SYMBOL:
                        case EVENTS_SYMBOL:
                        case EVENT_SYMBOL:
                        case EVERY_SYMBOL:
                        case EXECUTE_SYMBOL:
                        case EXPANSION_SYMBOL:
                        case EXPORT_SYMBOL:
                        case EXTENDED_SYMBOL:
                        case EXTENT_SIZE_SYMBOL:
                        case FAST_SYMBOL:
                        case FAULTS_SYMBOL:
                        case FILE_SYMBOL:
                        case FIRST_SYMBOL:
                        case FIXED_SYMBOL:
                        case FLUSH_SYMBOL:
                        case FORMAT_SYMBOL:
                        case FOR_SYMBOL:
                        case FOUND_SYMBOL:
                        case FRAC_SECOND_SYMBOL:
                        case FROM_SYMBOL:
                        case FULL_SYMBOL:
                        case FUNCTION_SYMBOL:
                        case GENERAL_SYMBOL:
                        case GEOMETRYCOLLECTION_SYMBOL:
                        case GEOMETRY_SYMBOL:
                        case GET_FORMAT_SYMBOL:
                        case GLOBAL_SYMBOL:
                        case GRANTS_SYMBOL:
                        case GREATER_OR_EQUAL_OPERATOR:
                        case GREATER_THAN_OPERATOR:
                        case GROUP_SYMBOL:
                        case HANDLER_SYMBOL:
                        case HASH_SYMBOL:
                        case HAVING_SYMBOL:
                        case HELP_SYMBOL:
                        case HOSTS_SYMBOL:
                        case HOST_SYMBOL:
                        case HOUR_MICROSECOND_SYMBOL:
                        case HOUR_MINUTE_SYMBOL:
                        case HOUR_SECOND_SYMBOL:
                        case HOUR_SYMBOL:
                        case IDENTIFIED_SYMBOL:
                        case IDENTIFIER:
                        case IGNORE_SERVER_IDS_SYMBOL:
                        case IMPORT_SYMBOL:
                        case INDEXES_SYMBOL:
                        case INITIAL_SIZE_SYMBOL:
                        case INNER_SYMBOL:
                        case INNODB_SYMBOL:
                        case INSERT_METHOD_SYMBOL:
                        case INSTALL_SYMBOL:
                        case INTO_SYMBOL:
                        case INVOKER_SYMBOL:
                        case IN_SYMBOL:
                        case IO_SYMBOL:
                        case IPC_SYMBOL:
                        case ISOLATION_SYMBOL:
                        case ISSUER_SYMBOL:
                        case IS_SYMBOL:
                        case JOIN_SYMBOL:
                        case KEY_BLOCK_SIZE_SYMBOL:
                        case LANGUAGE_SYMBOL:
                        case LAST_SYMBOL:
                        case LEAVES_SYMBOL:
                        case LEFT_SYMBOL:
                        case LESS_OR_EQUAL_OPERATOR:
                        case LESS_SYMBOL:
                        case LESS_THAN_OPERATOR:
                        case LEVEL_SYMBOL:
                        case LIKE_SYMBOL:
                        case LIMIT_SYMBOL:
                        case LINESTRING_SYMBOL:
                        case LIST_SYMBOL:
                        case LOCAL_SYMBOL:
                        case LOCKS_SYMBOL:
                        case LOCK_SYMBOL:
                        case LOGFILE_SYMBOL:
                        case LOGICAL_AND_OPERATOR:
                        case LOGICAL_OR_OPERATOR:
                        case LOGS_SYMBOL:
                        case MASTER_AUTO_POSITION_SYMBOL:
                        case MASTER_CONNECT_RETRY_SYMBOL:
                        case MASTER_DELAY_SYMBOL:
                        case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                        case MASTER_HOST_SYMBOL:
                        case MASTER_LOG_FILE_SYMBOL:
                        case MASTER_LOG_POS_SYMBOL:
                        case MASTER_PASSWORD_SYMBOL:
                        case MASTER_PORT_SYMBOL:
                        case MASTER_RETRY_COUNT_SYMBOL:
                        case MASTER_SERVER_ID_SYMBOL:
                        case MASTER_SSL_CAPATH_SYMBOL:
                        case MASTER_SSL_CA_SYMBOL:
                        case MASTER_SSL_CERT_SYMBOL:
                        case MASTER_SSL_CIPHER_SYMBOL:
                        case MASTER_SSL_CRLPATH_SYMBOL:
                        case MASTER_SSL_CRL_SYMBOL:
                        case MASTER_SSL_KEY_SYMBOL:
                        case MASTER_SSL_SYMBOL:
                        case MASTER_SYMBOL:
                        case MASTER_USER_SYMBOL:
                        case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                        case MAX_QUERIES_PER_HOUR_SYMBOL:
                        case MAX_ROWS_SYMBOL:
                        case MAX_SIZE_SYMBOL:
                        case MAX_UPDATES_PER_HOUR_SYMBOL:
                        case MAX_USER_CONNECTIONS_SYMBOL:
                        case MEDIUM_SYMBOL:
                        case MEMORY_SYMBOL:
                        case MERGE_SYMBOL:
                        case MESSAGE_TEXT_SYMBOL:
                        case MICROSECOND_SYMBOL:
                        case MIGRATE_SYMBOL:
                        case MINUS_OPERATOR:
                        case MINUTE_MICROSECOND_SYMBOL:
                        case MINUTE_SECOND_SYMBOL:
                        case MINUTE_SYMBOL:
                        case MIN_ROWS_SYMBOL:
                        case MODE_SYMBOL:
                        case MODIFY_SYMBOL:
                        case MOD_OPERATOR:
                        case MOD_SYMBOL:
                        case MONTH_SYMBOL:
                        case MULTILINESTRING_SYMBOL:
                        case MULTIPOINT_SYMBOL:
                        case MULTIPOLYGON_SYMBOL:
                        case MULT_OPERATOR:
                        case MUTEX_SYMBOL:
                        case MYSQL_ERRNO_SYMBOL:
                        case NAMES_SYMBOL:
                        case NAME_SYMBOL:
                        case NATIONAL_SYMBOL:
                        case NATURAL_SYMBOL:
                        case NCHAR_SYMBOL:
                        case NCHAR_TEXT:
                        case NDBCLUSTER_SYMBOL:
                        case NEW_SYMBOL:
                        case NEXT_SYMBOL:
                        case NODEGROUP_SYMBOL:
                        case NONE_SYMBOL:
                        case NOT_EQUAL2_OPERATOR:
                        case NOT_EQUAL_OPERATOR:
                        case NOT_SYMBOL:
                        case NO_SYMBOL:
                        case NO_WAIT_SYMBOL:
                        case NULL_SAFE_EQUAL_OPERATOR:
                        case NUMBER_SYMBOL:
                        case NVARCHAR_SYMBOL:
                        case OFFSET_SYMBOL:
                        case OLD_PASSWORD_SYMBOL:
                        case ONE_SHOT_SYMBOL:
                        case ONE_SYMBOL:
                        case ON_SYMBOL:
                        case OPEN_SYMBOL:
                        case OPTIONS_SYMBOL:
                        case ORDER_SYMBOL:
                        case OR_SYMBOL:
                        case OWNER_SYMBOL:
                        case PACK_KEYS_SYMBOL:
                        case PAGE_SYMBOL:
                        case PARSER_SYMBOL:
                        case PARTIAL_SYMBOL:
                        case PARTITIONING_SYMBOL:
                        case PARTITIONS_SYMBOL:
                        case PARTITION_SYMBOL:
                        case PASSWORD_SYMBOL:
                        case PHASE_SYMBOL:
                        case PLUGINS_SYMBOL:
                        case PLUGIN_DIR_SYMBOL:
                        case PLUGIN_SYMBOL:
                        case PLUS_OPERATOR:
                        case POINT_SYMBOL:
                        case POLYGON_SYMBOL:
                        case PORT_SYMBOL:
                        case PREPARE_SYMBOL:
                        case PRESERVE_SYMBOL:
                        case PREV_SYMBOL:
                        case PRIVILEGES_SYMBOL:
                        case PROCEDURE_SYMBOL:
                        case PROCESSLIST_SYMBOL:
                        case PROCESS_SYMBOL:
                        case PROFILES_SYMBOL:
                        case PROFILE_SYMBOL:
                        case PROXY_SYMBOL:
                        case QUARTER_SYMBOL:
                        case QUERY_SYMBOL:
                        case QUICK_SYMBOL:
                        case READ_ONLY_SYMBOL:
                        case REBUILD_SYMBOL:
                        case RECOVER_SYMBOL:
                        case REDOFILE_SYMBOL:
                        case REDO_BUFFER_SIZE_SYMBOL:
                        case REDUNDANT_SYMBOL:
                        case REGEXP_SYMBOL:
                        case RELAYLOG_SYMBOL:
                        case RELAY_LOG_FILE_SYMBOL:
                        case RELAY_LOG_POS_SYMBOL:
                        case RELAY_SYMBOL:
                        case RELAY_THREAD_SYMBOL:
                        case RELOAD_SYMBOL:
                        case REMOVE_SYMBOL:
                        case RENAME_SYMBOL:
                        case REORGANIZE_SYMBOL:
                        case REPAIR_SYMBOL:
                        case REPEATABLE_SYMBOL:
                        case REPLICATION_SYMBOL:
                        case RESET_SYMBOL:
                        case RESTORE_SYMBOL:
                        case RESUME_SYMBOL:
                        case RETURNED_SQLSTATE_SYMBOL:
                        case RETURNS_SYMBOL:
                        case REVERSE_SYMBOL:
                        case RIGHT_SYMBOL:
                        case ROLLBACK_SYMBOL:
                        case ROLLUP_SYMBOL:
                        case ROUTINE_SYMBOL:
                        case ROWS_SYMBOL:
                        case ROW_COUNT_SYMBOL:
                        case ROW_FORMAT_SYMBOL:
                        case ROW_SYMBOL:
                        case RTREE_SYMBOL:
                        case SAVEPOINT_SYMBOL:
                        case SCHEDULE_SYMBOL:
                        case SCHEMA_NAME_SYMBOL:
                        case SECOND_MICROSECOND_SYMBOL:
                        case SECOND_SYMBOL:
                        case SECURITY_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        case SEPARATOR_SYMBOL:
                        case SERIALIZABLE_SYMBOL:
                        case SERIAL_SYMBOL:
                        case SERVER_SYMBOL:
                        case SESSION_SYMBOL:
                        case SET_SYMBOL:
                        case SHARE_SYMBOL:
                        case SHIFT_LEFT_OPERATOR:
                        case SHIFT_RIGHT_OPERATOR:
                        case SHUTDOWN_SYMBOL:
                        case SIGNED_SYMBOL:
                        case SIMPLE_SYMBOL:
                        case SINGLE_QUOTED_TEXT:
                        case SLAVE_SYMBOL:
                        case SLOW_SYMBOL:
                        case SNAPSHOT_SYMBOL:
                        case SOCKET_SYMBOL:
                        case SONAME_SYMBOL:
                        case SOUNDS_SYMBOL:
                        case SOURCE_SYMBOL:
                        case SQL_AFTER_GTIDS_SYMBOL:
                        case SQL_AFTER_MTS_GAPS_SYMBOL:
                        case SQL_BEFORE_GTIDS_SYMBOL:
                        case SQL_BUFFER_RESULT_SYMBOL:
                        case SQL_CACHE_SYMBOL:
                        case SQL_NO_CACHE_SYMBOL:
                        case SQL_THREAD_SYMBOL:
                        case STARTS_SYMBOL:
                        case START_SYMBOL:
                        case STATS_AUTO_RECALC_SYMBOL:
                        case STATS_PERSISTENT_SYMBOL:
                        case STATS_SAMPLE_PAGES_SYMBOL:
                        case STATUS_SYMBOL:
                        case STOP_SYMBOL:
                        case STORAGE_SYMBOL:
                        case STRAIGHT_JOIN_SYMBOL:
                        case STRING_SYMBOL:
                        case SUBCLASS_ORIGIN_SYMBOL:
                        case SUBDATE_SYMBOL:
                        case SUBJECT_SYMBOL:
                        case SUBPARTITIONS_SYMBOL:
                        case SUBPARTITION_SYMBOL:
                        case SUPER_SYMBOL:
                        case SUSPEND_SYMBOL:
                        case SWAPS_SYMBOL:
                        case SWITCHES_SYMBOL:
                        case TABLESPACE_SYMBOL:
                        case TABLES_SYMBOL:
                        case TABLE_CHECKSUM_SYMBOL:
                        case TABLE_NAME_SYMBOL:
                        case TEMPORARY_SYMBOL:
                        case TEMPTABLE_SYMBOL:
                        case TEXT_SYMBOL:
                        case THAN_SYMBOL:
                        case THEN_SYMBOL:
                        case TIMESTAMP_ADD_SYMBOL:
                        case TIMESTAMP_DIFF_SYMBOL:
                        case TIMESTAMP_SYMBOL:
                        case TIME_SYMBOL:
                        case TRANSACTION_SYMBOL:
                        case TRIGGERS_SYMBOL:
                        case TRUNCATE_SYMBOL:
                        case TYPES_SYMBOL:
                        case TYPE_SYMBOL:
                        case UDF_RETURNS_SYMBOL:
                        case UNCOMMITTED_SYMBOL:
                        case UNDEFINED_SYMBOL:
                        case UNDERSCORE_CHARSET:
                        case UNDOFILE_SYMBOL:
                        case UNDO_BUFFER_SIZE_SYMBOL:
                        case UNICODE_SYMBOL:
                        case UNINSTALL_SYMBOL:
                        case UNION_SYMBOL:
                        case UNKNOWN_SYMBOL:
                        case UNTIL_SYMBOL:
                        case UPGRADE_SYMBOL:
                        case USER_RESOURCES_SYMBOL:
                        case USER_SYMBOL:
                        case USE_FRM_SYMBOL:
                        case USING_SYMBOL:
                        case VALUE_SYMBOL:
                        case VARIABLES_SYMBOL:
                        case VIEW_SYMBOL:
                        case WAIT_SYMBOL:
                        case WARNINGS_SYMBOL:
                        case WEEK_SYMBOL:
                        case WEIGHT_STRING_SYMBOL:
                        case WHEN_SYMBOL:
                        case WHERE_SYMBOL:
                        case WITH_SYMBOL:
                        case WORK_SYMBOL:
                        case WRAPPER_SYMBOL:
                        case X509_SYMBOL:
                        case XA_SYMBOL:
                        case XML_SYMBOL:
                        case XOR_SYMBOL:
                        case YEAR_MONTH_SYMBOL:
                        case YEAR_SYMBOL:
                        case 733:
                        	{
                        		alt527=3;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 527;
                            EXCEPTION->state        = 61;


                            goto ruleprimaryEx;

                        }

                    }
                    else if ( (LA527_0 == CONTAINS_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case OPEN_PAR_SYMBOL:
                        	{
                        		{
                        		    int LA527_2795 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=4;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 2795;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case DOT_SYMBOL:
                        	{
                        		{
                        		    int LA527_2796 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 2796;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case EOF:
                        case ACTION_SYMBOL:
                        case ADDDATE_SYMBOL:
                        case AFTER_SYMBOL:
                        case AGAINST_SYMBOL:
                        case AGGREGATE_SYMBOL:
                        case ALGORITHM_SYMBOL:
                        case ANALYZE_SYMBOL:
                        case AND_SYMBOL:
                        case ANY_SYMBOL:
                        case ASCII_SYMBOL:
                        case ASC_SYMBOL:
                        case AS_SYMBOL:
                        case AT_SYMBOL:
                        case AUTHORS_SYMBOL:
                        case AUTOEXTEND_SIZE_SYMBOL:
                        case AUTO_INCREMENT_SYMBOL:
                        case AVG_ROW_LENGTH_SYMBOL:
                        case AVG_SYMBOL:
                        case BACKUP_SYMBOL:
                        case BACK_TICK_QUOTED_ID:
                        case BEGIN_SYMBOL:
                        case BETWEEN_SYMBOL:
                        case BINLOG_SYMBOL:
                        case BITWISE_AND_OPERATOR:
                        case BITWISE_OR_OPERATOR:
                        case BITWISE_XOR_OPERATOR:
                        case BIT_SYMBOL:
                        case BLOCK_SYMBOL:
                        case BOOLEAN_SYMBOL:
                        case BOOL_SYMBOL:
                        case BTREE_SYMBOL:
                        case BYTE_SYMBOL:
                        case CACHE_SYMBOL:
                        case CASCADED_SYMBOL:
                        case CATALOG_NAME_SYMBOL:
                        case CHAIN_SYMBOL:
                        case CHANGED_SYMBOL:
                        case CHARSET_SYMBOL:
                        case CHECKSUM_SYMBOL:
                        case CIPHER_SYMBOL:
                        case CLASS_ORIGIN_SYMBOL:
                        case CLIENT_SYMBOL:
                        case CLOSE_PAR_SYMBOL:
                        case CLOSE_SYMBOL:
                        case COALESCE_SYMBOL:
                        case CODE_SYMBOL:
                        case COLLATE_SYMBOL:
                        case COLLATION_SYMBOL:
                        case COLUMNS_SYMBOL:
                        case COLUMN_FORMAT_SYMBOL:
                        case COLUMN_NAME_SYMBOL:
                        case COMMA_SYMBOL:
                        case COMMENT_SYMBOL:
                        case COMMITTED_SYMBOL:
                        case COMMIT_SYMBOL:
                        case COMPACT_SYMBOL:
                        case COMPLETION_SYMBOL:
                        case COMPRESSED_SYMBOL:
                        case CONCAT_PIPES_SYMBOL:
                        case CONCURRENT_SYMBOL:
                        case CONNECTION_SYMBOL:
                        case CONSISTENT_SYMBOL:
                        case CONSTRAINT_CATALOG_SYMBOL:
                        case CONSTRAINT_NAME_SYMBOL:
                        case CONSTRAINT_SCHEMA_SYMBOL:
                        case CONTAINS_SYMBOL:
                        case CONTEXT_SYMBOL:
                        case CONTRIBUTORS_SYMBOL:
                        case CPU_SYMBOL:
                        case CROSS_SYMBOL:
                        case CUBE_SYMBOL:
                        case CURRENT_SYMBOL:
                        case CURSOR_NAME_SYMBOL:
                        case DATAFILE_SYMBOL:
                        case DATA_SYMBOL:
                        case DATETIME_SYMBOL:
                        case DATE_SYMBOL:
                        case DAY_HOUR_SYMBOL:
                        case DAY_MICROSECOND_SYMBOL:
                        case DAY_MINUTE_SYMBOL:
                        case DAY_SECOND_SYMBOL:
                        case DAY_SYMBOL:
                        case DEALLOCATE_SYMBOL:
                        case DEFAULT_AUTH_SYMBOL:
                        case DEFINER_SYMBOL:
                        case DELAY_KEY_WRITE_SYMBOL:
                        case DESC_SYMBOL:
                        case DES_KEY_FILE_SYMBOL:
                        case DIAGNOSTICS_SYMBOL:
                        case DIRECTORY_SYMBOL:
                        case DISABLE_SYMBOL:
                        case DISCARD_SYMBOL:
                        case DISK_SYMBOL:
                        case DIV_OPERATOR:
                        case DIV_SYMBOL:
                        case DOUBLE_QUOTED_TEXT:
                        case DO_SYMBOL:
                        case DUMPFILE_SYMBOL:
                        case DUPLICATE_SYMBOL:
                        case DYNAMIC_SYMBOL:
                        case ELSE_SYMBOL:
                        case ENABLE_SYMBOL:
                        case ENDS_SYMBOL:
                        case END_SYMBOL:
                        case ENGINES_SYMBOL:
                        case ENGINE_SYMBOL:
                        case ENUM_SYMBOL:
                        case EQUAL_OPERATOR:
                        case ERRORS_SYMBOL:
                        case ERROR_SYMBOL:
                        case ESCAPE_SYMBOL:
                        case EVENTS_SYMBOL:
                        case EVENT_SYMBOL:
                        case EVERY_SYMBOL:
                        case EXECUTE_SYMBOL:
                        case EXPANSION_SYMBOL:
                        case EXPORT_SYMBOL:
                        case EXTENDED_SYMBOL:
                        case EXTENT_SIZE_SYMBOL:
                        case FAST_SYMBOL:
                        case FAULTS_SYMBOL:
                        case FILE_SYMBOL:
                        case FIRST_SYMBOL:
                        case FIXED_SYMBOL:
                        case FLUSH_SYMBOL:
                        case FORMAT_SYMBOL:
                        case FOR_SYMBOL:
                        case FOUND_SYMBOL:
                        case FRAC_SECOND_SYMBOL:
                        case FROM_SYMBOL:
                        case FULL_SYMBOL:
                        case FUNCTION_SYMBOL:
                        case GENERAL_SYMBOL:
                        case GEOMETRYCOLLECTION_SYMBOL:
                        case GEOMETRY_SYMBOL:
                        case GET_FORMAT_SYMBOL:
                        case GLOBAL_SYMBOL:
                        case GRANTS_SYMBOL:
                        case GREATER_OR_EQUAL_OPERATOR:
                        case GREATER_THAN_OPERATOR:
                        case GROUP_SYMBOL:
                        case HANDLER_SYMBOL:
                        case HASH_SYMBOL:
                        case HAVING_SYMBOL:
                        case HELP_SYMBOL:
                        case HOSTS_SYMBOL:
                        case HOST_SYMBOL:
                        case HOUR_MICROSECOND_SYMBOL:
                        case HOUR_MINUTE_SYMBOL:
                        case HOUR_SECOND_SYMBOL:
                        case HOUR_SYMBOL:
                        case IDENTIFIED_SYMBOL:
                        case IDENTIFIER:
                        case IGNORE_SERVER_IDS_SYMBOL:
                        case IMPORT_SYMBOL:
                        case INDEXES_SYMBOL:
                        case INITIAL_SIZE_SYMBOL:
                        case INNER_SYMBOL:
                        case INNODB_SYMBOL:
                        case INSERT_METHOD_SYMBOL:
                        case INSTALL_SYMBOL:
                        case INTO_SYMBOL:
                        case INVOKER_SYMBOL:
                        case IN_SYMBOL:
                        case IO_SYMBOL:
                        case IPC_SYMBOL:
                        case ISOLATION_SYMBOL:
                        case ISSUER_SYMBOL:
                        case IS_SYMBOL:
                        case JOIN_SYMBOL:
                        case KEY_BLOCK_SIZE_SYMBOL:
                        case LANGUAGE_SYMBOL:
                        case LAST_SYMBOL:
                        case LEAVES_SYMBOL:
                        case LEFT_SYMBOL:
                        case LESS_OR_EQUAL_OPERATOR:
                        case LESS_SYMBOL:
                        case LESS_THAN_OPERATOR:
                        case LEVEL_SYMBOL:
                        case LIKE_SYMBOL:
                        case LIMIT_SYMBOL:
                        case LINESTRING_SYMBOL:
                        case LIST_SYMBOL:
                        case LOCAL_SYMBOL:
                        case LOCKS_SYMBOL:
                        case LOCK_SYMBOL:
                        case LOGFILE_SYMBOL:
                        case LOGICAL_AND_OPERATOR:
                        case LOGICAL_OR_OPERATOR:
                        case LOGS_SYMBOL:
                        case MASTER_AUTO_POSITION_SYMBOL:
                        case MASTER_CONNECT_RETRY_SYMBOL:
                        case MASTER_DELAY_SYMBOL:
                        case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                        case MASTER_HOST_SYMBOL:
                        case MASTER_LOG_FILE_SYMBOL:
                        case MASTER_LOG_POS_SYMBOL:
                        case MASTER_PASSWORD_SYMBOL:
                        case MASTER_PORT_SYMBOL:
                        case MASTER_RETRY_COUNT_SYMBOL:
                        case MASTER_SERVER_ID_SYMBOL:
                        case MASTER_SSL_CAPATH_SYMBOL:
                        case MASTER_SSL_CA_SYMBOL:
                        case MASTER_SSL_CERT_SYMBOL:
                        case MASTER_SSL_CIPHER_SYMBOL:
                        case MASTER_SSL_CRLPATH_SYMBOL:
                        case MASTER_SSL_CRL_SYMBOL:
                        case MASTER_SSL_KEY_SYMBOL:
                        case MASTER_SSL_SYMBOL:
                        case MASTER_SYMBOL:
                        case MASTER_USER_SYMBOL:
                        case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                        case MAX_QUERIES_PER_HOUR_SYMBOL:
                        case MAX_ROWS_SYMBOL:
                        case MAX_SIZE_SYMBOL:
                        case MAX_UPDATES_PER_HOUR_SYMBOL:
                        case MAX_USER_CONNECTIONS_SYMBOL:
                        case MEDIUM_SYMBOL:
                        case MEMORY_SYMBOL:
                        case MERGE_SYMBOL:
                        case MESSAGE_TEXT_SYMBOL:
                        case MICROSECOND_SYMBOL:
                        case MIGRATE_SYMBOL:
                        case MINUS_OPERATOR:
                        case MINUTE_MICROSECOND_SYMBOL:
                        case MINUTE_SECOND_SYMBOL:
                        case MINUTE_SYMBOL:
                        case MIN_ROWS_SYMBOL:
                        case MODE_SYMBOL:
                        case MODIFY_SYMBOL:
                        case MOD_OPERATOR:
                        case MOD_SYMBOL:
                        case MONTH_SYMBOL:
                        case MULTILINESTRING_SYMBOL:
                        case MULTIPOINT_SYMBOL:
                        case MULTIPOLYGON_SYMBOL:
                        case MULT_OPERATOR:
                        case MUTEX_SYMBOL:
                        case MYSQL_ERRNO_SYMBOL:
                        case NAMES_SYMBOL:
                        case NAME_SYMBOL:
                        case NATIONAL_SYMBOL:
                        case NATURAL_SYMBOL:
                        case NCHAR_SYMBOL:
                        case NCHAR_TEXT:
                        case NDBCLUSTER_SYMBOL:
                        case NEW_SYMBOL:
                        case NEXT_SYMBOL:
                        case NODEGROUP_SYMBOL:
                        case NONE_SYMBOL:
                        case NOT_EQUAL2_OPERATOR:
                        case NOT_EQUAL_OPERATOR:
                        case NOT_SYMBOL:
                        case NO_SYMBOL:
                        case NO_WAIT_SYMBOL:
                        case NULL_SAFE_EQUAL_OPERATOR:
                        case NUMBER_SYMBOL:
                        case NVARCHAR_SYMBOL:
                        case OFFSET_SYMBOL:
                        case OLD_PASSWORD_SYMBOL:
                        case ONE_SHOT_SYMBOL:
                        case ONE_SYMBOL:
                        case ON_SYMBOL:
                        case OPEN_SYMBOL:
                        case OPTIONS_SYMBOL:
                        case ORDER_SYMBOL:
                        case OR_SYMBOL:
                        case OWNER_SYMBOL:
                        case PACK_KEYS_SYMBOL:
                        case PAGE_SYMBOL:
                        case PARSER_SYMBOL:
                        case PARTIAL_SYMBOL:
                        case PARTITIONING_SYMBOL:
                        case PARTITIONS_SYMBOL:
                        case PARTITION_SYMBOL:
                        case PASSWORD_SYMBOL:
                        case PHASE_SYMBOL:
                        case PLUGINS_SYMBOL:
                        case PLUGIN_DIR_SYMBOL:
                        case PLUGIN_SYMBOL:
                        case PLUS_OPERATOR:
                        case POINT_SYMBOL:
                        case POLYGON_SYMBOL:
                        case PORT_SYMBOL:
                        case PREPARE_SYMBOL:
                        case PRESERVE_SYMBOL:
                        case PREV_SYMBOL:
                        case PRIVILEGES_SYMBOL:
                        case PROCEDURE_SYMBOL:
                        case PROCESSLIST_SYMBOL:
                        case PROCESS_SYMBOL:
                        case PROFILES_SYMBOL:
                        case PROFILE_SYMBOL:
                        case PROXY_SYMBOL:
                        case QUARTER_SYMBOL:
                        case QUERY_SYMBOL:
                        case QUICK_SYMBOL:
                        case READ_ONLY_SYMBOL:
                        case REBUILD_SYMBOL:
                        case RECOVER_SYMBOL:
                        case REDOFILE_SYMBOL:
                        case REDO_BUFFER_SIZE_SYMBOL:
                        case REDUNDANT_SYMBOL:
                        case REGEXP_SYMBOL:
                        case RELAYLOG_SYMBOL:
                        case RELAY_LOG_FILE_SYMBOL:
                        case RELAY_LOG_POS_SYMBOL:
                        case RELAY_SYMBOL:
                        case RELAY_THREAD_SYMBOL:
                        case RELOAD_SYMBOL:
                        case REMOVE_SYMBOL:
                        case RENAME_SYMBOL:
                        case REORGANIZE_SYMBOL:
                        case REPAIR_SYMBOL:
                        case REPEATABLE_SYMBOL:
                        case REPLICATION_SYMBOL:
                        case RESET_SYMBOL:
                        case RESTORE_SYMBOL:
                        case RESUME_SYMBOL:
                        case RETURNED_SQLSTATE_SYMBOL:
                        case RETURNS_SYMBOL:
                        case REVERSE_SYMBOL:
                        case RIGHT_SYMBOL:
                        case ROLLBACK_SYMBOL:
                        case ROLLUP_SYMBOL:
                        case ROUTINE_SYMBOL:
                        case ROWS_SYMBOL:
                        case ROW_COUNT_SYMBOL:
                        case ROW_FORMAT_SYMBOL:
                        case ROW_SYMBOL:
                        case RTREE_SYMBOL:
                        case SAVEPOINT_SYMBOL:
                        case SCHEDULE_SYMBOL:
                        case SCHEMA_NAME_SYMBOL:
                        case SECOND_MICROSECOND_SYMBOL:
                        case SECOND_SYMBOL:
                        case SECURITY_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        case SEPARATOR_SYMBOL:
                        case SERIALIZABLE_SYMBOL:
                        case SERIAL_SYMBOL:
                        case SERVER_SYMBOL:
                        case SESSION_SYMBOL:
                        case SET_SYMBOL:
                        case SHARE_SYMBOL:
                        case SHIFT_LEFT_OPERATOR:
                        case SHIFT_RIGHT_OPERATOR:
                        case SHUTDOWN_SYMBOL:
                        case SIGNED_SYMBOL:
                        case SIMPLE_SYMBOL:
                        case SINGLE_QUOTED_TEXT:
                        case SLAVE_SYMBOL:
                        case SLOW_SYMBOL:
                        case SNAPSHOT_SYMBOL:
                        case SOCKET_SYMBOL:
                        case SONAME_SYMBOL:
                        case SOUNDS_SYMBOL:
                        case SOURCE_SYMBOL:
                        case SQL_AFTER_GTIDS_SYMBOL:
                        case SQL_AFTER_MTS_GAPS_SYMBOL:
                        case SQL_BEFORE_GTIDS_SYMBOL:
                        case SQL_BUFFER_RESULT_SYMBOL:
                        case SQL_CACHE_SYMBOL:
                        case SQL_NO_CACHE_SYMBOL:
                        case SQL_THREAD_SYMBOL:
                        case STARTS_SYMBOL:
                        case START_SYMBOL:
                        case STATS_AUTO_RECALC_SYMBOL:
                        case STATS_PERSISTENT_SYMBOL:
                        case STATS_SAMPLE_PAGES_SYMBOL:
                        case STATUS_SYMBOL:
                        case STOP_SYMBOL:
                        case STORAGE_SYMBOL:
                        case STRAIGHT_JOIN_SYMBOL:
                        case STRING_SYMBOL:
                        case SUBCLASS_ORIGIN_SYMBOL:
                        case SUBDATE_SYMBOL:
                        case SUBJECT_SYMBOL:
                        case SUBPARTITIONS_SYMBOL:
                        case SUBPARTITION_SYMBOL:
                        case SUPER_SYMBOL:
                        case SUSPEND_SYMBOL:
                        case SWAPS_SYMBOL:
                        case SWITCHES_SYMBOL:
                        case TABLESPACE_SYMBOL:
                        case TABLES_SYMBOL:
                        case TABLE_CHECKSUM_SYMBOL:
                        case TABLE_NAME_SYMBOL:
                        case TEMPORARY_SYMBOL:
                        case TEMPTABLE_SYMBOL:
                        case TEXT_SYMBOL:
                        case THAN_SYMBOL:
                        case THEN_SYMBOL:
                        case TIMESTAMP_ADD_SYMBOL:
                        case TIMESTAMP_DIFF_SYMBOL:
                        case TIMESTAMP_SYMBOL:
                        case TIME_SYMBOL:
                        case TRANSACTION_SYMBOL:
                        case TRIGGERS_SYMBOL:
                        case TRUNCATE_SYMBOL:
                        case TYPES_SYMBOL:
                        case TYPE_SYMBOL:
                        case UDF_RETURNS_SYMBOL:
                        case UNCOMMITTED_SYMBOL:
                        case UNDEFINED_SYMBOL:
                        case UNDERSCORE_CHARSET:
                        case UNDOFILE_SYMBOL:
                        case UNDO_BUFFER_SIZE_SYMBOL:
                        case UNICODE_SYMBOL:
                        case UNINSTALL_SYMBOL:
                        case UNION_SYMBOL:
                        case UNKNOWN_SYMBOL:
                        case UNTIL_SYMBOL:
                        case UPGRADE_SYMBOL:
                        case USER_RESOURCES_SYMBOL:
                        case USER_SYMBOL:
                        case USE_FRM_SYMBOL:
                        case USING_SYMBOL:
                        case VALUE_SYMBOL:
                        case VARIABLES_SYMBOL:
                        case VIEW_SYMBOL:
                        case WAIT_SYMBOL:
                        case WARNINGS_SYMBOL:
                        case WEEK_SYMBOL:
                        case WEIGHT_STRING_SYMBOL:
                        case WHEN_SYMBOL:
                        case WHERE_SYMBOL:
                        case WITH_SYMBOL:
                        case WORK_SYMBOL:
                        case WRAPPER_SYMBOL:
                        case X509_SYMBOL:
                        case XA_SYMBOL:
                        case XML_SYMBOL:
                        case XOR_SYMBOL:
                        case YEAR_MONTH_SYMBOL:
                        case YEAR_SYMBOL:
                        case 733:
                        	{
                        		alt527=3;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 527;
                            EXCEPTION->state        = 62;


                            goto ruleprimaryEx;

                        }

                    }
                    else if ( (LA527_0 == WEIGHT_STRING_SYMBOL))
                    {
                        {
                            int LA527_63 = LA(2);
                            if ( ((SERVER_VERSION >= 50600)) && (LA527_63 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA527_2888 = LA(3);
                                    if ( ((SERVER_VERSION >= 50600)))
                                    {
                                        alt527=4;
                                    }
                                    else if ( (synpred3_MySQL(ctx)))
                                    {
                                        alt527=5;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 527;
                                        EXCEPTION->state        = 2888;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA527_63 == DOT_SYMBOL))
                            {
                                {
                                    int LA527_2889 = LA(3);
                                    if ( (ANTLR3_TRUE))
                                    {
                                        alt527=3;
                                    }
                                    else if ( (synpred3_MySQL(ctx)))
                                    {
                                        alt527=5;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 527;
                                        EXCEPTION->state        = 2889;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA527_63 == EOF || ((LA527_63 >= ACTION_SYMBOL) && (LA527_63 <= ADDDATE_SYMBOL)) || ((LA527_63 >= AFTER_SYMBOL) && (LA527_63 <= ALGORITHM_SYMBOL)) || ((LA527_63 >= ANALYZE_SYMBOL) && (LA527_63 <= ASC_SYMBOL)) || LA527_63 == AS_SYMBOL || ((LA527_63 >= AT_SYMBOL) && (LA527_63 <= BACKUP_SYMBOL)) || LA527_63 == BACK_TICK_QUOTED_ID || ((LA527_63 >= BEGIN_SYMBOL) && (LA527_63 <= BETWEEN_SYMBOL)) || LA527_63 == BINLOG_SYMBOL || LA527_63 == BITWISE_AND_OPERATOR || ((LA527_63 >= BITWISE_OR_OPERATOR) && (LA527_63 <= BITWISE_XOR_OPERATOR)) || LA527_63 == BIT_SYMBOL || ((LA527_63 >= BLOCK_SYMBOL) && (LA527_63 <= BOOL_SYMBOL)) || ((LA527_63 >= BTREE_SYMBOL) && (LA527_63 <= BYTE_SYMBOL)) || LA527_63 == CACHE_SYMBOL || LA527_63 == CASCADED_SYMBOL || ((LA527_63 >= CATALOG_NAME_SYMBOL) && (LA527_63 <= CHANGED_SYMBOL)) || LA527_63 == CHARSET_SYMBOL || LA527_63 == CHECKSUM_SYMBOL || ((LA527_63 >= CIPHER_SYMBOL) && (LA527_63 <= COLLATION_SYMBOL)) || ((LA527_63 >= COLUMNS_SYMBOL) && (LA527_63 <= COLUMN_NAME_SYMBOL)) || LA527_63 == COMMA_SYMBOL || ((LA527_63 >= COMMENT_SYMBOL) && (LA527_63 <= CONCURRENT_SYMBOL)) || ((LA527_63 >= CONNECTION_SYMBOL) && (LA527_63 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA527_63 >= CONTAINS_SYMBOL) && (LA527_63 <= CONTEXT_SYMBOL)) || LA527_63 == CONTRIBUTORS_SYMBOL || LA527_63 == CPU_SYMBOL || ((LA527_63 >= CROSS_SYMBOL) && (LA527_63 <= CUBE_SYMBOL)) || LA527_63 == CURRENT_SYMBOL || LA527_63 == CURSOR_NAME_SYMBOL || ((LA527_63 >= DATAFILE_SYMBOL) && (LA527_63 <= DATETIME_SYMBOL)) || LA527_63 == DATE_SYMBOL || ((LA527_63 >= DAY_HOUR_SYMBOL) && (LA527_63 <= DEALLOCATE_SYMBOL)) || LA527_63 == DEFAULT_AUTH_SYMBOL || LA527_63 == DEFINER_SYMBOL || LA527_63 == DELAY_KEY_WRITE_SYMBOL || ((LA527_63 >= DESC_SYMBOL) && (LA527_63 <= DES_KEY_FILE_SYMBOL)) || LA527_63 == DIAGNOSTICS_SYMBOL || ((LA527_63 >= DIRECTORY_SYMBOL) && (LA527_63 <= DISK_SYMBOL)) || ((LA527_63 >= DIV_OPERATOR) && (LA527_63 <= DIV_SYMBOL)) || LA527_63 == DOUBLE_QUOTED_TEXT || LA527_63 == DO_SYMBOL || ((LA527_63 >= DUMPFILE_SYMBOL) && (LA527_63 <= DYNAMIC_SYMBOL)) || ((LA527_63 >= ELSE_SYMBOL) && (LA527_63 <= ENABLE_SYMBOL)) || LA527_63 == ENDS_SYMBOL || ((LA527_63 >= END_SYMBOL) && (LA527_63 <= ERROR_SYMBOL)) || ((LA527_63 >= ESCAPE_SYMBOL) && (LA527_63 <= EVERY_SYMBOL)) || LA527_63 == EXECUTE_SYMBOL || LA527_63 == EXPANSION_SYMBOL || LA527_63 == EXPORT_SYMBOL || ((LA527_63 >= EXTENDED_SYMBOL) && (LA527_63 <= EXTENT_SIZE_SYMBOL)) || ((LA527_63 >= FAST_SYMBOL) && (LA527_63 <= FAULTS_SYMBOL)) || ((LA527_63 >= FILE_SYMBOL) && (LA527_63 <= FIXED_SYMBOL)) || LA527_63 == FLUSH_SYMBOL || ((LA527_63 >= FORMAT_SYMBOL) && (LA527_63 <= FROM_SYMBOL)) || LA527_63 == FULL_SYMBOL || ((LA527_63 >= FUNCTION_SYMBOL) && (LA527_63 <= GET_FORMAT_SYMBOL)) || ((LA527_63 >= GLOBAL_SYMBOL) && (LA527_63 <= GRANTS_SYMBOL)) || ((LA527_63 >= GREATER_OR_EQUAL_OPERATOR) && (LA527_63 <= GREATER_THAN_OPERATOR)) || ((LA527_63 >= GROUP_SYMBOL) && (LA527_63 <= HELP_SYMBOL)) || ((LA527_63 >= HOSTS_SYMBOL) && (LA527_63 <= IDENTIFIER)) || LA527_63 == IGNORE_SERVER_IDS_SYMBOL || ((LA527_63 >= IMPORT_SYMBOL) && (LA527_63 <= INDEXES_SYMBOL)) || ((LA527_63 >= INITIAL_SIZE_SYMBOL) && (LA527_63 <= INNODB_SYMBOL)) || LA527_63 == INSERT_METHOD_SYMBOL || LA527_63 == INSTALL_SYMBOL || LA527_63 == INTO_SYMBOL || ((LA527_63 >= INVOKER_SYMBOL) && (LA527_63 <= IN_SYMBOL)) || LA527_63 == IO_SYMBOL || ((LA527_63 >= IPC_SYMBOL) && (LA527_63 <= IS_SYMBOL)) || LA527_63 == JOIN_SYMBOL || LA527_63 == KEY_BLOCK_SIZE_SYMBOL || ((LA527_63 >= LANGUAGE_SYMBOL) && (LA527_63 <= LAST_SYMBOL)) || LA527_63 == LEAVES_SYMBOL || ((LA527_63 >= LEFT_SYMBOL) && (LA527_63 <= LESS_THAN_OPERATOR)) || LA527_63 == LEVEL_SYMBOL || ((LA527_63 >= LIKE_SYMBOL) && (LA527_63 <= LIMIT_SYMBOL)) || LA527_63 == LINESTRING_SYMBOL || LA527_63 == LIST_SYMBOL || LA527_63 == LOCAL_SYMBOL || ((LA527_63 >= LOCKS_SYMBOL) && (LA527_63 <= LOGICAL_AND_OPERATOR)) || ((LA527_63 >= LOGICAL_OR_OPERATOR) && (LA527_63 <= LOGS_SYMBOL)) || LA527_63 == MASTER_AUTO_POSITION_SYMBOL || ((LA527_63 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA527_63 <= MASTER_SSL_SYMBOL)) || ((LA527_63 >= MASTER_SYMBOL) && (LA527_63 <= MASTER_USER_SYMBOL)) || ((LA527_63 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA527_63 <= MAX_SIZE_SYMBOL)) || ((LA527_63 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA527_63 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA527_63 >= MEDIUM_SYMBOL) && (LA527_63 <= MICROSECOND_SYMBOL)) || ((LA527_63 >= MIGRATE_SYMBOL) && (LA527_63 <= MIN_ROWS_SYMBOL)) || LA527_63 == MODE_SYMBOL || ((LA527_63 >= MODIFY_SYMBOL) && (LA527_63 <= MULTILINESTRING_SYMBOL)) || ((LA527_63 >= MULTIPOINT_SYMBOL) && (LA527_63 <= NATURAL_SYMBOL)) || ((LA527_63 >= NCHAR_SYMBOL) && (LA527_63 <= NDBCLUSTER_SYMBOL)) || ((LA527_63 >= NEW_SYMBOL) && (LA527_63 <= NONE_SYMBOL)) || ((LA527_63 >= NOT_EQUAL2_OPERATOR) && (LA527_63 <= NOT_SYMBOL)) || ((LA527_63 >= NO_SYMBOL) && (LA527_63 <= NO_WAIT_SYMBOL)) || LA527_63 == NULL_SAFE_EQUAL_OPERATOR || LA527_63 == NUMBER_SYMBOL || LA527_63 == NVARCHAR_SYMBOL || ((LA527_63 >= OFFSET_SYMBOL) && (LA527_63 <= ONE_SYMBOL)) || LA527_63 == ON_SYMBOL || LA527_63 == OPEN_SYMBOL || LA527_63 == OPTIONS_SYMBOL || ((LA527_63 >= ORDER_SYMBOL) && (LA527_63 <= OR_SYMBOL)) || ((LA527_63 >= OWNER_SYMBOL) && (LA527_63 <= PAGE_SYMBOL)) || ((LA527_63 >= PARSER_SYMBOL) && (LA527_63 <= PARTITION_SYMBOL)) || ((LA527_63 >= PASSWORD_SYMBOL) && (LA527_63 <= PORT_SYMBOL)) || ((LA527_63 >= PREPARE_SYMBOL) && (LA527_63 <= PREV_SYMBOL)) || ((LA527_63 >= PRIVILEGES_SYMBOL) && (LA527_63 <= PROXY_SYMBOL)) || ((LA527_63 >= QUARTER_SYMBOL) && (LA527_63 <= QUICK_SYMBOL)) || LA527_63 == READ_ONLY_SYMBOL || ((LA527_63 >= REBUILD_SYMBOL) && (LA527_63 <= REDUNDANT_SYMBOL)) || ((LA527_63 >= REGEXP_SYMBOL) && (LA527_63 <= RELAY_THREAD_SYMBOL)) || ((LA527_63 >= RELOAD_SYMBOL) && (LA527_63 <= REPEATABLE_SYMBOL)) || LA527_63 == REPLICATION_SYMBOL || LA527_63 == RESET_SYMBOL || LA527_63 == RESTORE_SYMBOL || ((LA527_63 >= RESUME_SYMBOL) && (LA527_63 <= RETURNS_SYMBOL)) || LA527_63 == REVERSE_SYMBOL || LA527_63 == RIGHT_SYMBOL || ((LA527_63 >= ROLLBACK_SYMBOL) && (LA527_63 <= SCHEDULE_SYMBOL)) || LA527_63 == SCHEMA_NAME_SYMBOL || ((LA527_63 >= SECOND_MICROSECOND_SYMBOL) && (LA527_63 <= SECURITY_SYMBOL)) || LA527_63 == SEMICOLON_SYMBOL || ((LA527_63 >= SEPARATOR_SYMBOL) && (LA527_63 <= SERIAL_SYMBOL)) || ((LA527_63 >= SERVER_SYMBOL) && (LA527_63 <= SESSION_SYMBOL)) || LA527_63 == SET_SYMBOL || ((LA527_63 >= SHARE_SYMBOL) && (LA527_63 <= SHIFT_RIGHT_OPERATOR)) || LA527_63 == SHUTDOWN_SYMBOL || ((LA527_63 >= SIGNED_SYMBOL) && (LA527_63 <= SIMPLE_SYMBOL)) || ((LA527_63 >= SINGLE_QUOTED_TEXT) && (LA527_63 <= SLOW_SYMBOL)) || ((LA527_63 >= SNAPSHOT_SYMBOL) && (LA527_63 <= SOURCE_SYMBOL)) || ((LA527_63 >= SQL_AFTER_GTIDS_SYMBOL) && (LA527_63 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA527_63 >= SQL_BUFFER_RESULT_SYMBOL) && (LA527_63 <= SQL_CACHE_SYMBOL)) || LA527_63 == SQL_NO_CACHE_SYMBOL || LA527_63 == SQL_THREAD_SYMBOL || ((LA527_63 >= STARTS_SYMBOL) && (LA527_63 <= STATUS_SYMBOL)) || ((LA527_63 >= STOP_SYMBOL) && (LA527_63 <= STRAIGHT_JOIN_SYMBOL)) || ((LA527_63 >= STRING_SYMBOL) && (LA527_63 <= SUBPARTITION_SYMBOL)) || ((LA527_63 >= SUPER_SYMBOL) && (LA527_63 <= SWITCHES_SYMBOL)) || ((LA527_63 >= TABLESPACE_SYMBOL) && (LA527_63 <= TABLE_NAME_SYMBOL)) || ((LA527_63 >= TEMPORARY_SYMBOL) && (LA527_63 <= TEMPTABLE_SYMBOL)) || ((LA527_63 >= TEXT_SYMBOL) && (LA527_63 <= TIME_SYMBOL)) || ((LA527_63 >= TRANSACTION_SYMBOL) && (LA527_63 <= TRIGGERS_SYMBOL)) || ((LA527_63 >= TRUNCATE_SYMBOL) && (LA527_63 <= UDF_RETURNS_SYMBOL)) || ((LA527_63 >= UNCOMMITTED_SYMBOL) && (LA527_63 <= UNDEFINED_SYMBOL)) || ((LA527_63 >= UNDERSCORE_CHARSET) && (LA527_63 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA527_63 >= UNICODE_SYMBOL) && (LA527_63 <= UNION_SYMBOL)) || LA527_63 == UNKNOWN_SYMBOL || LA527_63 == UNTIL_SYMBOL || LA527_63 == UPGRADE_SYMBOL || ((LA527_63 >= USER_RESOURCES_SYMBOL) && (LA527_63 <= USE_FRM_SYMBOL)) || LA527_63 == USING_SYMBOL || LA527_63 == VALUE_SYMBOL || LA527_63 == VARIABLES_SYMBOL || ((LA527_63 >= VIEW_SYMBOL) && (LA527_63 <= WHERE_SYMBOL)) || ((LA527_63 >= WITH_SYMBOL) && (LA527_63 <= WRAPPER_SYMBOL)) || LA527_63 == X509_SYMBOL || ((LA527_63 >= XA_SYMBOL) && (LA527_63 <= YEAR_SYMBOL)) || LA527_63 == 733))
                            {
                                alt527=3;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 527;
                                EXCEPTION->state        = 63;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA527_0 == GEOMETRYCOLLECTION_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case DOT_SYMBOL:
                        	{
                        		{
                        		    int LA527_2981 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 2981;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case EOF:
                        case ACTION_SYMBOL:
                        case ADDDATE_SYMBOL:
                        case AFTER_SYMBOL:
                        case AGAINST_SYMBOL:
                        case AGGREGATE_SYMBOL:
                        case ALGORITHM_SYMBOL:
                        case ANALYZE_SYMBOL:
                        case AND_SYMBOL:
                        case ANY_SYMBOL:
                        case ASCII_SYMBOL:
                        case ASC_SYMBOL:
                        case AS_SYMBOL:
                        case AT_SYMBOL:
                        case AUTHORS_SYMBOL:
                        case AUTOEXTEND_SIZE_SYMBOL:
                        case AUTO_INCREMENT_SYMBOL:
                        case AVG_ROW_LENGTH_SYMBOL:
                        case AVG_SYMBOL:
                        case BACKUP_SYMBOL:
                        case BACK_TICK_QUOTED_ID:
                        case BEGIN_SYMBOL:
                        case BETWEEN_SYMBOL:
                        case BINLOG_SYMBOL:
                        case BITWISE_AND_OPERATOR:
                        case BITWISE_OR_OPERATOR:
                        case BITWISE_XOR_OPERATOR:
                        case BIT_SYMBOL:
                        case BLOCK_SYMBOL:
                        case BOOLEAN_SYMBOL:
                        case BOOL_SYMBOL:
                        case BTREE_SYMBOL:
                        case BYTE_SYMBOL:
                        case CACHE_SYMBOL:
                        case CASCADED_SYMBOL:
                        case CATALOG_NAME_SYMBOL:
                        case CHAIN_SYMBOL:
                        case CHANGED_SYMBOL:
                        case CHARSET_SYMBOL:
                        case CHECKSUM_SYMBOL:
                        case CIPHER_SYMBOL:
                        case CLASS_ORIGIN_SYMBOL:
                        case CLIENT_SYMBOL:
                        case CLOSE_PAR_SYMBOL:
                        case CLOSE_SYMBOL:
                        case COALESCE_SYMBOL:
                        case CODE_SYMBOL:
                        case COLLATE_SYMBOL:
                        case COLLATION_SYMBOL:
                        case COLUMNS_SYMBOL:
                        case COLUMN_FORMAT_SYMBOL:
                        case COLUMN_NAME_SYMBOL:
                        case COMMA_SYMBOL:
                        case COMMENT_SYMBOL:
                        case COMMITTED_SYMBOL:
                        case COMMIT_SYMBOL:
                        case COMPACT_SYMBOL:
                        case COMPLETION_SYMBOL:
                        case COMPRESSED_SYMBOL:
                        case CONCAT_PIPES_SYMBOL:
                        case CONCURRENT_SYMBOL:
                        case CONNECTION_SYMBOL:
                        case CONSISTENT_SYMBOL:
                        case CONSTRAINT_CATALOG_SYMBOL:
                        case CONSTRAINT_NAME_SYMBOL:
                        case CONSTRAINT_SCHEMA_SYMBOL:
                        case CONTAINS_SYMBOL:
                        case CONTEXT_SYMBOL:
                        case CONTRIBUTORS_SYMBOL:
                        case CPU_SYMBOL:
                        case CROSS_SYMBOL:
                        case CUBE_SYMBOL:
                        case CURRENT_SYMBOL:
                        case CURSOR_NAME_SYMBOL:
                        case DATAFILE_SYMBOL:
                        case DATA_SYMBOL:
                        case DATETIME_SYMBOL:
                        case DATE_SYMBOL:
                        case DAY_HOUR_SYMBOL:
                        case DAY_MICROSECOND_SYMBOL:
                        case DAY_MINUTE_SYMBOL:
                        case DAY_SECOND_SYMBOL:
                        case DAY_SYMBOL:
                        case DEALLOCATE_SYMBOL:
                        case DEFAULT_AUTH_SYMBOL:
                        case DEFINER_SYMBOL:
                        case DELAY_KEY_WRITE_SYMBOL:
                        case DESC_SYMBOL:
                        case DES_KEY_FILE_SYMBOL:
                        case DIAGNOSTICS_SYMBOL:
                        case DIRECTORY_SYMBOL:
                        case DISABLE_SYMBOL:
                        case DISCARD_SYMBOL:
                        case DISK_SYMBOL:
                        case DIV_OPERATOR:
                        case DIV_SYMBOL:
                        case DOUBLE_QUOTED_TEXT:
                        case DO_SYMBOL:
                        case DUMPFILE_SYMBOL:
                        case DUPLICATE_SYMBOL:
                        case DYNAMIC_SYMBOL:
                        case ELSE_SYMBOL:
                        case ENABLE_SYMBOL:
                        case ENDS_SYMBOL:
                        case END_SYMBOL:
                        case ENGINES_SYMBOL:
                        case ENGINE_SYMBOL:
                        case ENUM_SYMBOL:
                        case EQUAL_OPERATOR:
                        case ERRORS_SYMBOL:
                        case ERROR_SYMBOL:
                        case ESCAPE_SYMBOL:
                        case EVENTS_SYMBOL:
                        case EVENT_SYMBOL:
                        case EVERY_SYMBOL:
                        case EXECUTE_SYMBOL:
                        case EXPANSION_SYMBOL:
                        case EXPORT_SYMBOL:
                        case EXTENDED_SYMBOL:
                        case EXTENT_SIZE_SYMBOL:
                        case FAST_SYMBOL:
                        case FAULTS_SYMBOL:
                        case FILE_SYMBOL:
                        case FIRST_SYMBOL:
                        case FIXED_SYMBOL:
                        case FLUSH_SYMBOL:
                        case FORMAT_SYMBOL:
                        case FOR_SYMBOL:
                        case FOUND_SYMBOL:
                        case FRAC_SECOND_SYMBOL:
                        case FROM_SYMBOL:
                        case FULL_SYMBOL:
                        case FUNCTION_SYMBOL:
                        case GENERAL_SYMBOL:
                        case GEOMETRYCOLLECTION_SYMBOL:
                        case GEOMETRY_SYMBOL:
                        case GET_FORMAT_SYMBOL:
                        case GLOBAL_SYMBOL:
                        case GRANTS_SYMBOL:
                        case GREATER_OR_EQUAL_OPERATOR:
                        case GREATER_THAN_OPERATOR:
                        case GROUP_SYMBOL:
                        case HANDLER_SYMBOL:
                        case HASH_SYMBOL:
                        case HAVING_SYMBOL:
                        case HELP_SYMBOL:
                        case HOSTS_SYMBOL:
                        case HOST_SYMBOL:
                        case HOUR_MICROSECOND_SYMBOL:
                        case HOUR_MINUTE_SYMBOL:
                        case HOUR_SECOND_SYMBOL:
                        case HOUR_SYMBOL:
                        case IDENTIFIED_SYMBOL:
                        case IDENTIFIER:
                        case IGNORE_SERVER_IDS_SYMBOL:
                        case IMPORT_SYMBOL:
                        case INDEXES_SYMBOL:
                        case INITIAL_SIZE_SYMBOL:
                        case INNER_SYMBOL:
                        case INNODB_SYMBOL:
                        case INSERT_METHOD_SYMBOL:
                        case INSTALL_SYMBOL:
                        case INTO_SYMBOL:
                        case INVOKER_SYMBOL:
                        case IN_SYMBOL:
                        case IO_SYMBOL:
                        case IPC_SYMBOL:
                        case ISOLATION_SYMBOL:
                        case ISSUER_SYMBOL:
                        case IS_SYMBOL:
                        case JOIN_SYMBOL:
                        case KEY_BLOCK_SIZE_SYMBOL:
                        case LANGUAGE_SYMBOL:
                        case LAST_SYMBOL:
                        case LEAVES_SYMBOL:
                        case LEFT_SYMBOL:
                        case LESS_OR_EQUAL_OPERATOR:
                        case LESS_SYMBOL:
                        case LESS_THAN_OPERATOR:
                        case LEVEL_SYMBOL:
                        case LIKE_SYMBOL:
                        case LIMIT_SYMBOL:
                        case LINESTRING_SYMBOL:
                        case LIST_SYMBOL:
                        case LOCAL_SYMBOL:
                        case LOCKS_SYMBOL:
                        case LOCK_SYMBOL:
                        case LOGFILE_SYMBOL:
                        case LOGICAL_AND_OPERATOR:
                        case LOGICAL_OR_OPERATOR:
                        case LOGS_SYMBOL:
                        case MASTER_AUTO_POSITION_SYMBOL:
                        case MASTER_CONNECT_RETRY_SYMBOL:
                        case MASTER_DELAY_SYMBOL:
                        case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                        case MASTER_HOST_SYMBOL:
                        case MASTER_LOG_FILE_SYMBOL:
                        case MASTER_LOG_POS_SYMBOL:
                        case MASTER_PASSWORD_SYMBOL:
                        case MASTER_PORT_SYMBOL:
                        case MASTER_RETRY_COUNT_SYMBOL:
                        case MASTER_SERVER_ID_SYMBOL:
                        case MASTER_SSL_CAPATH_SYMBOL:
                        case MASTER_SSL_CA_SYMBOL:
                        case MASTER_SSL_CERT_SYMBOL:
                        case MASTER_SSL_CIPHER_SYMBOL:
                        case MASTER_SSL_CRLPATH_SYMBOL:
                        case MASTER_SSL_CRL_SYMBOL:
                        case MASTER_SSL_KEY_SYMBOL:
                        case MASTER_SSL_SYMBOL:
                        case MASTER_SYMBOL:
                        case MASTER_USER_SYMBOL:
                        case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                        case MAX_QUERIES_PER_HOUR_SYMBOL:
                        case MAX_ROWS_SYMBOL:
                        case MAX_SIZE_SYMBOL:
                        case MAX_UPDATES_PER_HOUR_SYMBOL:
                        case MAX_USER_CONNECTIONS_SYMBOL:
                        case MEDIUM_SYMBOL:
                        case MEMORY_SYMBOL:
                        case MERGE_SYMBOL:
                        case MESSAGE_TEXT_SYMBOL:
                        case MICROSECOND_SYMBOL:
                        case MIGRATE_SYMBOL:
                        case MINUS_OPERATOR:
                        case MINUTE_MICROSECOND_SYMBOL:
                        case MINUTE_SECOND_SYMBOL:
                        case MINUTE_SYMBOL:
                        case MIN_ROWS_SYMBOL:
                        case MODE_SYMBOL:
                        case MODIFY_SYMBOL:
                        case MOD_OPERATOR:
                        case MOD_SYMBOL:
                        case MONTH_SYMBOL:
                        case MULTILINESTRING_SYMBOL:
                        case MULTIPOINT_SYMBOL:
                        case MULTIPOLYGON_SYMBOL:
                        case MULT_OPERATOR:
                        case MUTEX_SYMBOL:
                        case MYSQL_ERRNO_SYMBOL:
                        case NAMES_SYMBOL:
                        case NAME_SYMBOL:
                        case NATIONAL_SYMBOL:
                        case NATURAL_SYMBOL:
                        case NCHAR_SYMBOL:
                        case NCHAR_TEXT:
                        case NDBCLUSTER_SYMBOL:
                        case NEW_SYMBOL:
                        case NEXT_SYMBOL:
                        case NODEGROUP_SYMBOL:
                        case NONE_SYMBOL:
                        case NOT_EQUAL2_OPERATOR:
                        case NOT_EQUAL_OPERATOR:
                        case NOT_SYMBOL:
                        case NO_SYMBOL:
                        case NO_WAIT_SYMBOL:
                        case NULL_SAFE_EQUAL_OPERATOR:
                        case NUMBER_SYMBOL:
                        case NVARCHAR_SYMBOL:
                        case OFFSET_SYMBOL:
                        case OLD_PASSWORD_SYMBOL:
                        case ONE_SHOT_SYMBOL:
                        case ONE_SYMBOL:
                        case ON_SYMBOL:
                        case OPEN_SYMBOL:
                        case OPTIONS_SYMBOL:
                        case ORDER_SYMBOL:
                        case OR_SYMBOL:
                        case OWNER_SYMBOL:
                        case PACK_KEYS_SYMBOL:
                        case PAGE_SYMBOL:
                        case PARSER_SYMBOL:
                        case PARTIAL_SYMBOL:
                        case PARTITIONING_SYMBOL:
                        case PARTITIONS_SYMBOL:
                        case PARTITION_SYMBOL:
                        case PASSWORD_SYMBOL:
                        case PHASE_SYMBOL:
                        case PLUGINS_SYMBOL:
                        case PLUGIN_DIR_SYMBOL:
                        case PLUGIN_SYMBOL:
                        case PLUS_OPERATOR:
                        case POINT_SYMBOL:
                        case POLYGON_SYMBOL:
                        case PORT_SYMBOL:
                        case PREPARE_SYMBOL:
                        case PRESERVE_SYMBOL:
                        case PREV_SYMBOL:
                        case PRIVILEGES_SYMBOL:
                        case PROCEDURE_SYMBOL:
                        case PROCESSLIST_SYMBOL:
                        case PROCESS_SYMBOL:
                        case PROFILES_SYMBOL:
                        case PROFILE_SYMBOL:
                        case PROXY_SYMBOL:
                        case QUARTER_SYMBOL:
                        case QUERY_SYMBOL:
                        case QUICK_SYMBOL:
                        case READ_ONLY_SYMBOL:
                        case REBUILD_SYMBOL:
                        case RECOVER_SYMBOL:
                        case REDOFILE_SYMBOL:
                        case REDO_BUFFER_SIZE_SYMBOL:
                        case REDUNDANT_SYMBOL:
                        case REGEXP_SYMBOL:
                        case RELAYLOG_SYMBOL:
                        case RELAY_LOG_FILE_SYMBOL:
                        case RELAY_LOG_POS_SYMBOL:
                        case RELAY_SYMBOL:
                        case RELAY_THREAD_SYMBOL:
                        case RELOAD_SYMBOL:
                        case REMOVE_SYMBOL:
                        case RENAME_SYMBOL:
                        case REORGANIZE_SYMBOL:
                        case REPAIR_SYMBOL:
                        case REPEATABLE_SYMBOL:
                        case REPLICATION_SYMBOL:
                        case RESET_SYMBOL:
                        case RESTORE_SYMBOL:
                        case RESUME_SYMBOL:
                        case RETURNED_SQLSTATE_SYMBOL:
                        case RETURNS_SYMBOL:
                        case REVERSE_SYMBOL:
                        case RIGHT_SYMBOL:
                        case ROLLBACK_SYMBOL:
                        case ROLLUP_SYMBOL:
                        case ROUTINE_SYMBOL:
                        case ROWS_SYMBOL:
                        case ROW_COUNT_SYMBOL:
                        case ROW_FORMAT_SYMBOL:
                        case ROW_SYMBOL:
                        case RTREE_SYMBOL:
                        case SAVEPOINT_SYMBOL:
                        case SCHEDULE_SYMBOL:
                        case SCHEMA_NAME_SYMBOL:
                        case SECOND_MICROSECOND_SYMBOL:
                        case SECOND_SYMBOL:
                        case SECURITY_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        case SEPARATOR_SYMBOL:
                        case SERIALIZABLE_SYMBOL:
                        case SERIAL_SYMBOL:
                        case SERVER_SYMBOL:
                        case SESSION_SYMBOL:
                        case SET_SYMBOL:
                        case SHARE_SYMBOL:
                        case SHIFT_LEFT_OPERATOR:
                        case SHIFT_RIGHT_OPERATOR:
                        case SHUTDOWN_SYMBOL:
                        case SIGNED_SYMBOL:
                        case SIMPLE_SYMBOL:
                        case SINGLE_QUOTED_TEXT:
                        case SLAVE_SYMBOL:
                        case SLOW_SYMBOL:
                        case SNAPSHOT_SYMBOL:
                        case SOCKET_SYMBOL:
                        case SONAME_SYMBOL:
                        case SOUNDS_SYMBOL:
                        case SOURCE_SYMBOL:
                        case SQL_AFTER_GTIDS_SYMBOL:
                        case SQL_AFTER_MTS_GAPS_SYMBOL:
                        case SQL_BEFORE_GTIDS_SYMBOL:
                        case SQL_BUFFER_RESULT_SYMBOL:
                        case SQL_CACHE_SYMBOL:
                        case SQL_NO_CACHE_SYMBOL:
                        case SQL_THREAD_SYMBOL:
                        case STARTS_SYMBOL:
                        case START_SYMBOL:
                        case STATS_AUTO_RECALC_SYMBOL:
                        case STATS_PERSISTENT_SYMBOL:
                        case STATS_SAMPLE_PAGES_SYMBOL:
                        case STATUS_SYMBOL:
                        case STOP_SYMBOL:
                        case STORAGE_SYMBOL:
                        case STRAIGHT_JOIN_SYMBOL:
                        case STRING_SYMBOL:
                        case SUBCLASS_ORIGIN_SYMBOL:
                        case SUBDATE_SYMBOL:
                        case SUBJECT_SYMBOL:
                        case SUBPARTITIONS_SYMBOL:
                        case SUBPARTITION_SYMBOL:
                        case SUPER_SYMBOL:
                        case SUSPEND_SYMBOL:
                        case SWAPS_SYMBOL:
                        case SWITCHES_SYMBOL:
                        case TABLESPACE_SYMBOL:
                        case TABLES_SYMBOL:
                        case TABLE_CHECKSUM_SYMBOL:
                        case TABLE_NAME_SYMBOL:
                        case TEMPORARY_SYMBOL:
                        case TEMPTABLE_SYMBOL:
                        case TEXT_SYMBOL:
                        case THAN_SYMBOL:
                        case THEN_SYMBOL:
                        case TIMESTAMP_ADD_SYMBOL:
                        case TIMESTAMP_DIFF_SYMBOL:
                        case TIMESTAMP_SYMBOL:
                        case TIME_SYMBOL:
                        case TRANSACTION_SYMBOL:
                        case TRIGGERS_SYMBOL:
                        case TRUNCATE_SYMBOL:
                        case TYPES_SYMBOL:
                        case TYPE_SYMBOL:
                        case UDF_RETURNS_SYMBOL:
                        case UNCOMMITTED_SYMBOL:
                        case UNDEFINED_SYMBOL:
                        case UNDERSCORE_CHARSET:
                        case UNDOFILE_SYMBOL:
                        case UNDO_BUFFER_SIZE_SYMBOL:
                        case UNICODE_SYMBOL:
                        case UNINSTALL_SYMBOL:
                        case UNION_SYMBOL:
                        case UNKNOWN_SYMBOL:
                        case UNTIL_SYMBOL:
                        case UPGRADE_SYMBOL:
                        case USER_RESOURCES_SYMBOL:
                        case USER_SYMBOL:
                        case USE_FRM_SYMBOL:
                        case USING_SYMBOL:
                        case VALUE_SYMBOL:
                        case VARIABLES_SYMBOL:
                        case VIEW_SYMBOL:
                        case WAIT_SYMBOL:
                        case WARNINGS_SYMBOL:
                        case WEEK_SYMBOL:
                        case WEIGHT_STRING_SYMBOL:
                        case WHEN_SYMBOL:
                        case WHERE_SYMBOL:
                        case WITH_SYMBOL:
                        case WORK_SYMBOL:
                        case WRAPPER_SYMBOL:
                        case X509_SYMBOL:
                        case XA_SYMBOL:
                        case XML_SYMBOL:
                        case XOR_SYMBOL:
                        case YEAR_MONTH_SYMBOL:
                        case YEAR_SYMBOL:
                        case 733:
                        	{
                        		alt527=3;
                        	}
                            break;
                        case OPEN_PAR_SYMBOL:
                        	{
                        		{
                        		    int LA527_3073 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=4;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 3073;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 527;
                            EXCEPTION->state        = 64;


                            goto ruleprimaryEx;

                        }

                    }
                    else if ( (LA527_0 == BACKUP_SYMBOL || LA527_0 == BEGIN_SYMBOL || LA527_0 == BYTE_SYMBOL || LA527_0 == CACHE_SYMBOL || LA527_0 == CHECKSUM_SYMBOL || LA527_0 == CLOSE_SYMBOL || LA527_0 == COMMENT_SYMBOL || LA527_0 == COMMIT_SYMBOL || LA527_0 == DEALLOCATE_SYMBOL || LA527_0 == DO_SYMBOL || LA527_0 == END_SYMBOL || LA527_0 == EXECUTE_SYMBOL || LA527_0 == FLUSH_SYMBOL || LA527_0 == HANDLER_SYMBOL || LA527_0 == HELP_SYMBOL || LA527_0 == HOST_SYMBOL || LA527_0 == INSTALL_SYMBOL || LA527_0 == LANGUAGE_SYMBOL || LA527_0 == NO_SYMBOL || LA527_0 == OPEN_SYMBOL || LA527_0 == OPTIONS_SYMBOL || LA527_0 == OWNER_SYMBOL || LA527_0 == PARSER_SYMBOL || LA527_0 == PARTITION_SYMBOL || LA527_0 == PORT_SYMBOL || LA527_0 == PREPARE_SYMBOL || LA527_0 == REMOVE_SYMBOL || LA527_0 == REPAIR_SYMBOL || LA527_0 == RESET_SYMBOL || LA527_0 == RESTORE_SYMBOL || LA527_0 == ROLLBACK_SYMBOL || LA527_0 == SAVEPOINT_SYMBOL || LA527_0 == SECURITY_SYMBOL || LA527_0 == SERVER_SYMBOL || LA527_0 == SIGNED_SYMBOL || LA527_0 == SLAVE_SYMBOL || ((LA527_0 >= SOCKET_SYMBOL) && (LA527_0 <= SONAME_SYMBOL)) || LA527_0 == START_SYMBOL || LA527_0 == STOP_SYMBOL || ((LA527_0 >= UNICODE_SYMBOL) && (LA527_0 <= UNINSTALL_SYMBOL)) || LA527_0 == UPGRADE_SYMBOL || LA527_0 == WRAPPER_SYMBOL || LA527_0 == XA_SYMBOL))
                    {
                        {
                            int LA527_65 = LA(2);
                            if ( (LA527_65 == DOT_SYMBOL))
                            {
                                {
                                    int LA527_3074 = LA(3);
                                    if ( (ANTLR3_TRUE))
                                    {
                                        alt527=3;
                                    }
                                    else if ( (synpred3_MySQL(ctx)))
                                    {
                                        alt527=5;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 527;
                                        EXCEPTION->state        = 3074;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA527_65 == EOF || ((LA527_65 >= ACTION_SYMBOL) && (LA527_65 <= ADDDATE_SYMBOL)) || ((LA527_65 >= AFTER_SYMBOL) && (LA527_65 <= ALGORITHM_SYMBOL)) || ((LA527_65 >= ANALYZE_SYMBOL) && (LA527_65 <= ASC_SYMBOL)) || LA527_65 == AS_SYMBOL || ((LA527_65 >= AT_SYMBOL) && (LA527_65 <= BACKUP_SYMBOL)) || LA527_65 == BACK_TICK_QUOTED_ID || ((LA527_65 >= BEGIN_SYMBOL) && (LA527_65 <= BETWEEN_SYMBOL)) || LA527_65 == BINLOG_SYMBOL || LA527_65 == BITWISE_AND_OPERATOR || ((LA527_65 >= BITWISE_OR_OPERATOR) && (LA527_65 <= BITWISE_XOR_OPERATOR)) || LA527_65 == BIT_SYMBOL || ((LA527_65 >= BLOCK_SYMBOL) && (LA527_65 <= BOOL_SYMBOL)) || ((LA527_65 >= BTREE_SYMBOL) && (LA527_65 <= BYTE_SYMBOL)) || LA527_65 == CACHE_SYMBOL || LA527_65 == CASCADED_SYMBOL || ((LA527_65 >= CATALOG_NAME_SYMBOL) && (LA527_65 <= CHANGED_SYMBOL)) || LA527_65 == CHARSET_SYMBOL || LA527_65 == CHECKSUM_SYMBOL || ((LA527_65 >= CIPHER_SYMBOL) && (LA527_65 <= COLLATION_SYMBOL)) || ((LA527_65 >= COLUMNS_SYMBOL) && (LA527_65 <= COLUMN_NAME_SYMBOL)) || LA527_65 == COMMA_SYMBOL || ((LA527_65 >= COMMENT_SYMBOL) && (LA527_65 <= CONCURRENT_SYMBOL)) || ((LA527_65 >= CONNECTION_SYMBOL) && (LA527_65 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA527_65 >= CONTAINS_SYMBOL) && (LA527_65 <= CONTEXT_SYMBOL)) || LA527_65 == CONTRIBUTORS_SYMBOL || LA527_65 == CPU_SYMBOL || ((LA527_65 >= CROSS_SYMBOL) && (LA527_65 <= CUBE_SYMBOL)) || LA527_65 == CURRENT_SYMBOL || LA527_65 == CURSOR_NAME_SYMBOL || ((LA527_65 >= DATAFILE_SYMBOL) && (LA527_65 <= DATETIME_SYMBOL)) || LA527_65 == DATE_SYMBOL || ((LA527_65 >= DAY_HOUR_SYMBOL) && (LA527_65 <= DEALLOCATE_SYMBOL)) || LA527_65 == DEFAULT_AUTH_SYMBOL || LA527_65 == DEFINER_SYMBOL || LA527_65 == DELAY_KEY_WRITE_SYMBOL || ((LA527_65 >= DESC_SYMBOL) && (LA527_65 <= DES_KEY_FILE_SYMBOL)) || LA527_65 == DIAGNOSTICS_SYMBOL || ((LA527_65 >= DIRECTORY_SYMBOL) && (LA527_65 <= DISK_SYMBOL)) || ((LA527_65 >= DIV_OPERATOR) && (LA527_65 <= DIV_SYMBOL)) || LA527_65 == DOUBLE_QUOTED_TEXT || LA527_65 == DO_SYMBOL || ((LA527_65 >= DUMPFILE_SYMBOL) && (LA527_65 <= DYNAMIC_SYMBOL)) || ((LA527_65 >= ELSE_SYMBOL) && (LA527_65 <= ENABLE_SYMBOL)) || LA527_65 == ENDS_SYMBOL || ((LA527_65 >= END_SYMBOL) && (LA527_65 <= ERROR_SYMBOL)) || ((LA527_65 >= ESCAPE_SYMBOL) && (LA527_65 <= EVERY_SYMBOL)) || LA527_65 == EXECUTE_SYMBOL || LA527_65 == EXPANSION_SYMBOL || LA527_65 == EXPORT_SYMBOL || ((LA527_65 >= EXTENDED_SYMBOL) && (LA527_65 <= EXTENT_SIZE_SYMBOL)) || ((LA527_65 >= FAST_SYMBOL) && (LA527_65 <= FAULTS_SYMBOL)) || ((LA527_65 >= FILE_SYMBOL) && (LA527_65 <= FIXED_SYMBOL)) || LA527_65 == FLUSH_SYMBOL || ((LA527_65 >= FORMAT_SYMBOL) && (LA527_65 <= FROM_SYMBOL)) || LA527_65 == FULL_SYMBOL || ((LA527_65 >= FUNCTION_SYMBOL) && (LA527_65 <= GET_FORMAT_SYMBOL)) || ((LA527_65 >= GLOBAL_SYMBOL) && (LA527_65 <= GRANTS_SYMBOL)) || ((LA527_65 >= GREATER_OR_EQUAL_OPERATOR) && (LA527_65 <= GREATER_THAN_OPERATOR)) || ((LA527_65 >= GROUP_SYMBOL) && (LA527_65 <= HELP_SYMBOL)) || ((LA527_65 >= HOSTS_SYMBOL) && (LA527_65 <= IDENTIFIER)) || LA527_65 == IGNORE_SERVER_IDS_SYMBOL || ((LA527_65 >= IMPORT_SYMBOL) && (LA527_65 <= INDEXES_SYMBOL)) || ((LA527_65 >= INITIAL_SIZE_SYMBOL) && (LA527_65 <= INNODB_SYMBOL)) || LA527_65 == INSERT_METHOD_SYMBOL || LA527_65 == INSTALL_SYMBOL || LA527_65 == INTO_SYMBOL || ((LA527_65 >= INVOKER_SYMBOL) && (LA527_65 <= IN_SYMBOL)) || LA527_65 == IO_SYMBOL || ((LA527_65 >= IPC_SYMBOL) && (LA527_65 <= IS_SYMBOL)) || LA527_65 == JOIN_SYMBOL || LA527_65 == KEY_BLOCK_SIZE_SYMBOL || ((LA527_65 >= LANGUAGE_SYMBOL) && (LA527_65 <= LAST_SYMBOL)) || LA527_65 == LEAVES_SYMBOL || ((LA527_65 >= LEFT_SYMBOL) && (LA527_65 <= LESS_THAN_OPERATOR)) || LA527_65 == LEVEL_SYMBOL || ((LA527_65 >= LIKE_SYMBOL) && (LA527_65 <= LIMIT_SYMBOL)) || LA527_65 == LINESTRING_SYMBOL || LA527_65 == LIST_SYMBOL || LA527_65 == LOCAL_SYMBOL || ((LA527_65 >= LOCKS_SYMBOL) && (LA527_65 <= LOGICAL_AND_OPERATOR)) || ((LA527_65 >= LOGICAL_OR_OPERATOR) && (LA527_65 <= LOGS_SYMBOL)) || LA527_65 == MASTER_AUTO_POSITION_SYMBOL || ((LA527_65 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA527_65 <= MASTER_SSL_SYMBOL)) || ((LA527_65 >= MASTER_SYMBOL) && (LA527_65 <= MASTER_USER_SYMBOL)) || ((LA527_65 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA527_65 <= MAX_SIZE_SYMBOL)) || ((LA527_65 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA527_65 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA527_65 >= MEDIUM_SYMBOL) && (LA527_65 <= MICROSECOND_SYMBOL)) || ((LA527_65 >= MIGRATE_SYMBOL) && (LA527_65 <= MIN_ROWS_SYMBOL)) || LA527_65 == MODE_SYMBOL || ((LA527_65 >= MODIFY_SYMBOL) && (LA527_65 <= MULTILINESTRING_SYMBOL)) || ((LA527_65 >= MULTIPOINT_SYMBOL) && (LA527_65 <= NATURAL_SYMBOL)) || ((LA527_65 >= NCHAR_SYMBOL) && (LA527_65 <= NDBCLUSTER_SYMBOL)) || ((LA527_65 >= NEW_SYMBOL) && (LA527_65 <= NONE_SYMBOL)) || ((LA527_65 >= NOT_EQUAL2_OPERATOR) && (LA527_65 <= NOT_SYMBOL)) || ((LA527_65 >= NO_SYMBOL) && (LA527_65 <= NO_WAIT_SYMBOL)) || LA527_65 == NULL_SAFE_EQUAL_OPERATOR || LA527_65 == NUMBER_SYMBOL || LA527_65 == NVARCHAR_SYMBOL || ((LA527_65 >= OFFSET_SYMBOL) && (LA527_65 <= ONE_SYMBOL)) || LA527_65 == ON_SYMBOL || LA527_65 == OPEN_SYMBOL || LA527_65 == OPTIONS_SYMBOL || ((LA527_65 >= ORDER_SYMBOL) && (LA527_65 <= OR_SYMBOL)) || ((LA527_65 >= OWNER_SYMBOL) && (LA527_65 <= PAGE_SYMBOL)) || ((LA527_65 >= PARSER_SYMBOL) && (LA527_65 <= PARTITION_SYMBOL)) || ((LA527_65 >= PASSWORD_SYMBOL) && (LA527_65 <= PORT_SYMBOL)) || ((LA527_65 >= PREPARE_SYMBOL) && (LA527_65 <= PREV_SYMBOL)) || ((LA527_65 >= PRIVILEGES_SYMBOL) && (LA527_65 <= PROXY_SYMBOL)) || ((LA527_65 >= QUARTER_SYMBOL) && (LA527_65 <= QUICK_SYMBOL)) || LA527_65 == READ_ONLY_SYMBOL || ((LA527_65 >= REBUILD_SYMBOL) && (LA527_65 <= REDUNDANT_SYMBOL)) || ((LA527_65 >= REGEXP_SYMBOL) && (LA527_65 <= RELAY_THREAD_SYMBOL)) || ((LA527_65 >= RELOAD_SYMBOL) && (LA527_65 <= REPEATABLE_SYMBOL)) || LA527_65 == REPLICATION_SYMBOL || LA527_65 == RESET_SYMBOL || LA527_65 == RESTORE_SYMBOL || ((LA527_65 >= RESUME_SYMBOL) && (LA527_65 <= RETURNS_SYMBOL)) || LA527_65 == REVERSE_SYMBOL || LA527_65 == RIGHT_SYMBOL || ((LA527_65 >= ROLLBACK_SYMBOL) && (LA527_65 <= SCHEDULE_SYMBOL)) || LA527_65 == SCHEMA_NAME_SYMBOL || ((LA527_65 >= SECOND_MICROSECOND_SYMBOL) && (LA527_65 <= SECURITY_SYMBOL)) || LA527_65 == SEMICOLON_SYMBOL || ((LA527_65 >= SEPARATOR_SYMBOL) && (LA527_65 <= SERIAL_SYMBOL)) || ((LA527_65 >= SERVER_SYMBOL) && (LA527_65 <= SESSION_SYMBOL)) || LA527_65 == SET_SYMBOL || ((LA527_65 >= SHARE_SYMBOL) && (LA527_65 <= SHIFT_RIGHT_OPERATOR)) || LA527_65 == SHUTDOWN_SYMBOL || ((LA527_65 >= SIGNED_SYMBOL) && (LA527_65 <= SIMPLE_SYMBOL)) || ((LA527_65 >= SINGLE_QUOTED_TEXT) && (LA527_65 <= SLOW_SYMBOL)) || ((LA527_65 >= SNAPSHOT_SYMBOL) && (LA527_65 <= SOURCE_SYMBOL)) || ((LA527_65 >= SQL_AFTER_GTIDS_SYMBOL) && (LA527_65 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA527_65 >= SQL_BUFFER_RESULT_SYMBOL) && (LA527_65 <= SQL_CACHE_SYMBOL)) || LA527_65 == SQL_NO_CACHE_SYMBOL || LA527_65 == SQL_THREAD_SYMBOL || ((LA527_65 >= STARTS_SYMBOL) && (LA527_65 <= STATUS_SYMBOL)) || ((LA527_65 >= STOP_SYMBOL) && (LA527_65 <= STRAIGHT_JOIN_SYMBOL)) || ((LA527_65 >= STRING_SYMBOL) && (LA527_65 <= SUBPARTITION_SYMBOL)) || ((LA527_65 >= SUPER_SYMBOL) && (LA527_65 <= SWITCHES_SYMBOL)) || ((LA527_65 >= TABLESPACE_SYMBOL) && (LA527_65 <= TABLE_NAME_SYMBOL)) || ((LA527_65 >= TEMPORARY_SYMBOL) && (LA527_65 <= TEMPTABLE_SYMBOL)) || ((LA527_65 >= TEXT_SYMBOL) && (LA527_65 <= TIME_SYMBOL)) || ((LA527_65 >= TRANSACTION_SYMBOL) && (LA527_65 <= TRIGGERS_SYMBOL)) || ((LA527_65 >= TRUNCATE_SYMBOL) && (LA527_65 <= UDF_RETURNS_SYMBOL)) || ((LA527_65 >= UNCOMMITTED_SYMBOL) && (LA527_65 <= UNDEFINED_SYMBOL)) || ((LA527_65 >= UNDERSCORE_CHARSET) && (LA527_65 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA527_65 >= UNICODE_SYMBOL) && (LA527_65 <= UNION_SYMBOL)) || LA527_65 == UNKNOWN_SYMBOL || LA527_65 == UNTIL_SYMBOL || LA527_65 == UPGRADE_SYMBOL || ((LA527_65 >= USER_RESOURCES_SYMBOL) && (LA527_65 <= USE_FRM_SYMBOL)) || LA527_65 == USING_SYMBOL || LA527_65 == VALUE_SYMBOL || LA527_65 == VARIABLES_SYMBOL || ((LA527_65 >= VIEW_SYMBOL) && (LA527_65 <= WHERE_SYMBOL)) || ((LA527_65 >= WITH_SYMBOL) && (LA527_65 <= WRAPPER_SYMBOL)) || LA527_65 == X509_SYMBOL || ((LA527_65 >= XA_SYMBOL) && (LA527_65 <= YEAR_SYMBOL)) || LA527_65 == 733))
                            {
                                alt527=3;
                            }
                            else if ( (synpred3_MySQL(ctx)) && (LA527_65 == OPEN_PAR_SYMBOL))
                            {
                                alt527=5;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 527;
                                EXCEPTION->state        = 65;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA527_0 == LINESTRING_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case DOT_SYMBOL:
                        	{
                        		{
                        		    int LA527_3167 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 3167;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case EOF:
                        case ACTION_SYMBOL:
                        case ADDDATE_SYMBOL:
                        case AFTER_SYMBOL:
                        case AGAINST_SYMBOL:
                        case AGGREGATE_SYMBOL:
                        case ALGORITHM_SYMBOL:
                        case ANALYZE_SYMBOL:
                        case AND_SYMBOL:
                        case ANY_SYMBOL:
                        case ASCII_SYMBOL:
                        case ASC_SYMBOL:
                        case AS_SYMBOL:
                        case AT_SYMBOL:
                        case AUTHORS_SYMBOL:
                        case AUTOEXTEND_SIZE_SYMBOL:
                        case AUTO_INCREMENT_SYMBOL:
                        case AVG_ROW_LENGTH_SYMBOL:
                        case AVG_SYMBOL:
                        case BACKUP_SYMBOL:
                        case BACK_TICK_QUOTED_ID:
                        case BEGIN_SYMBOL:
                        case BETWEEN_SYMBOL:
                        case BINLOG_SYMBOL:
                        case BITWISE_AND_OPERATOR:
                        case BITWISE_OR_OPERATOR:
                        case BITWISE_XOR_OPERATOR:
                        case BIT_SYMBOL:
                        case BLOCK_SYMBOL:
                        case BOOLEAN_SYMBOL:
                        case BOOL_SYMBOL:
                        case BTREE_SYMBOL:
                        case BYTE_SYMBOL:
                        case CACHE_SYMBOL:
                        case CASCADED_SYMBOL:
                        case CATALOG_NAME_SYMBOL:
                        case CHAIN_SYMBOL:
                        case CHANGED_SYMBOL:
                        case CHARSET_SYMBOL:
                        case CHECKSUM_SYMBOL:
                        case CIPHER_SYMBOL:
                        case CLASS_ORIGIN_SYMBOL:
                        case CLIENT_SYMBOL:
                        case CLOSE_PAR_SYMBOL:
                        case CLOSE_SYMBOL:
                        case COALESCE_SYMBOL:
                        case CODE_SYMBOL:
                        case COLLATE_SYMBOL:
                        case COLLATION_SYMBOL:
                        case COLUMNS_SYMBOL:
                        case COLUMN_FORMAT_SYMBOL:
                        case COLUMN_NAME_SYMBOL:
                        case COMMA_SYMBOL:
                        case COMMENT_SYMBOL:
                        case COMMITTED_SYMBOL:
                        case COMMIT_SYMBOL:
                        case COMPACT_SYMBOL:
                        case COMPLETION_SYMBOL:
                        case COMPRESSED_SYMBOL:
                        case CONCAT_PIPES_SYMBOL:
                        case CONCURRENT_SYMBOL:
                        case CONNECTION_SYMBOL:
                        case CONSISTENT_SYMBOL:
                        case CONSTRAINT_CATALOG_SYMBOL:
                        case CONSTRAINT_NAME_SYMBOL:
                        case CONSTRAINT_SCHEMA_SYMBOL:
                        case CONTAINS_SYMBOL:
                        case CONTEXT_SYMBOL:
                        case CONTRIBUTORS_SYMBOL:
                        case CPU_SYMBOL:
                        case CROSS_SYMBOL:
                        case CUBE_SYMBOL:
                        case CURRENT_SYMBOL:
                        case CURSOR_NAME_SYMBOL:
                        case DATAFILE_SYMBOL:
                        case DATA_SYMBOL:
                        case DATETIME_SYMBOL:
                        case DATE_SYMBOL:
                        case DAY_HOUR_SYMBOL:
                        case DAY_MICROSECOND_SYMBOL:
                        case DAY_MINUTE_SYMBOL:
                        case DAY_SECOND_SYMBOL:
                        case DAY_SYMBOL:
                        case DEALLOCATE_SYMBOL:
                        case DEFAULT_AUTH_SYMBOL:
                        case DEFINER_SYMBOL:
                        case DELAY_KEY_WRITE_SYMBOL:
                        case DESC_SYMBOL:
                        case DES_KEY_FILE_SYMBOL:
                        case DIAGNOSTICS_SYMBOL:
                        case DIRECTORY_SYMBOL:
                        case DISABLE_SYMBOL:
                        case DISCARD_SYMBOL:
                        case DISK_SYMBOL:
                        case DIV_OPERATOR:
                        case DIV_SYMBOL:
                        case DOUBLE_QUOTED_TEXT:
                        case DO_SYMBOL:
                        case DUMPFILE_SYMBOL:
                        case DUPLICATE_SYMBOL:
                        case DYNAMIC_SYMBOL:
                        case ELSE_SYMBOL:
                        case ENABLE_SYMBOL:
                        case ENDS_SYMBOL:
                        case END_SYMBOL:
                        case ENGINES_SYMBOL:
                        case ENGINE_SYMBOL:
                        case ENUM_SYMBOL:
                        case EQUAL_OPERATOR:
                        case ERRORS_SYMBOL:
                        case ERROR_SYMBOL:
                        case ESCAPE_SYMBOL:
                        case EVENTS_SYMBOL:
                        case EVENT_SYMBOL:
                        case EVERY_SYMBOL:
                        case EXECUTE_SYMBOL:
                        case EXPANSION_SYMBOL:
                        case EXPORT_SYMBOL:
                        case EXTENDED_SYMBOL:
                        case EXTENT_SIZE_SYMBOL:
                        case FAST_SYMBOL:
                        case FAULTS_SYMBOL:
                        case FILE_SYMBOL:
                        case FIRST_SYMBOL:
                        case FIXED_SYMBOL:
                        case FLUSH_SYMBOL:
                        case FORMAT_SYMBOL:
                        case FOR_SYMBOL:
                        case FOUND_SYMBOL:
                        case FRAC_SECOND_SYMBOL:
                        case FROM_SYMBOL:
                        case FULL_SYMBOL:
                        case FUNCTION_SYMBOL:
                        case GENERAL_SYMBOL:
                        case GEOMETRYCOLLECTION_SYMBOL:
                        case GEOMETRY_SYMBOL:
                        case GET_FORMAT_SYMBOL:
                        case GLOBAL_SYMBOL:
                        case GRANTS_SYMBOL:
                        case GREATER_OR_EQUAL_OPERATOR:
                        case GREATER_THAN_OPERATOR:
                        case GROUP_SYMBOL:
                        case HANDLER_SYMBOL:
                        case HASH_SYMBOL:
                        case HAVING_SYMBOL:
                        case HELP_SYMBOL:
                        case HOSTS_SYMBOL:
                        case HOST_SYMBOL:
                        case HOUR_MICROSECOND_SYMBOL:
                        case HOUR_MINUTE_SYMBOL:
                        case HOUR_SECOND_SYMBOL:
                        case HOUR_SYMBOL:
                        case IDENTIFIED_SYMBOL:
                        case IDENTIFIER:
                        case IGNORE_SERVER_IDS_SYMBOL:
                        case IMPORT_SYMBOL:
                        case INDEXES_SYMBOL:
                        case INITIAL_SIZE_SYMBOL:
                        case INNER_SYMBOL:
                        case INNODB_SYMBOL:
                        case INSERT_METHOD_SYMBOL:
                        case INSTALL_SYMBOL:
                        case INTO_SYMBOL:
                        case INVOKER_SYMBOL:
                        case IN_SYMBOL:
                        case IO_SYMBOL:
                        case IPC_SYMBOL:
                        case ISOLATION_SYMBOL:
                        case ISSUER_SYMBOL:
                        case IS_SYMBOL:
                        case JOIN_SYMBOL:
                        case KEY_BLOCK_SIZE_SYMBOL:
                        case LANGUAGE_SYMBOL:
                        case LAST_SYMBOL:
                        case LEAVES_SYMBOL:
                        case LEFT_SYMBOL:
                        case LESS_OR_EQUAL_OPERATOR:
                        case LESS_SYMBOL:
                        case LESS_THAN_OPERATOR:
                        case LEVEL_SYMBOL:
                        case LIKE_SYMBOL:
                        case LIMIT_SYMBOL:
                        case LINESTRING_SYMBOL:
                        case LIST_SYMBOL:
                        case LOCAL_SYMBOL:
                        case LOCKS_SYMBOL:
                        case LOCK_SYMBOL:
                        case LOGFILE_SYMBOL:
                        case LOGICAL_AND_OPERATOR:
                        case LOGICAL_OR_OPERATOR:
                        case LOGS_SYMBOL:
                        case MASTER_AUTO_POSITION_SYMBOL:
                        case MASTER_CONNECT_RETRY_SYMBOL:
                        case MASTER_DELAY_SYMBOL:
                        case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                        case MASTER_HOST_SYMBOL:
                        case MASTER_LOG_FILE_SYMBOL:
                        case MASTER_LOG_POS_SYMBOL:
                        case MASTER_PASSWORD_SYMBOL:
                        case MASTER_PORT_SYMBOL:
                        case MASTER_RETRY_COUNT_SYMBOL:
                        case MASTER_SERVER_ID_SYMBOL:
                        case MASTER_SSL_CAPATH_SYMBOL:
                        case MASTER_SSL_CA_SYMBOL:
                        case MASTER_SSL_CERT_SYMBOL:
                        case MASTER_SSL_CIPHER_SYMBOL:
                        case MASTER_SSL_CRLPATH_SYMBOL:
                        case MASTER_SSL_CRL_SYMBOL:
                        case MASTER_SSL_KEY_SYMBOL:
                        case MASTER_SSL_SYMBOL:
                        case MASTER_SYMBOL:
                        case MASTER_USER_SYMBOL:
                        case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                        case MAX_QUERIES_PER_HOUR_SYMBOL:
                        case MAX_ROWS_SYMBOL:
                        case MAX_SIZE_SYMBOL:
                        case MAX_UPDATES_PER_HOUR_SYMBOL:
                        case MAX_USER_CONNECTIONS_SYMBOL:
                        case MEDIUM_SYMBOL:
                        case MEMORY_SYMBOL:
                        case MERGE_SYMBOL:
                        case MESSAGE_TEXT_SYMBOL:
                        case MICROSECOND_SYMBOL:
                        case MIGRATE_SYMBOL:
                        case MINUS_OPERATOR:
                        case MINUTE_MICROSECOND_SYMBOL:
                        case MINUTE_SECOND_SYMBOL:
                        case MINUTE_SYMBOL:
                        case MIN_ROWS_SYMBOL:
                        case MODE_SYMBOL:
                        case MODIFY_SYMBOL:
                        case MOD_OPERATOR:
                        case MOD_SYMBOL:
                        case MONTH_SYMBOL:
                        case MULTILINESTRING_SYMBOL:
                        case MULTIPOINT_SYMBOL:
                        case MULTIPOLYGON_SYMBOL:
                        case MULT_OPERATOR:
                        case MUTEX_SYMBOL:
                        case MYSQL_ERRNO_SYMBOL:
                        case NAMES_SYMBOL:
                        case NAME_SYMBOL:
                        case NATIONAL_SYMBOL:
                        case NATURAL_SYMBOL:
                        case NCHAR_SYMBOL:
                        case NCHAR_TEXT:
                        case NDBCLUSTER_SYMBOL:
                        case NEW_SYMBOL:
                        case NEXT_SYMBOL:
                        case NODEGROUP_SYMBOL:
                        case NONE_SYMBOL:
                        case NOT_EQUAL2_OPERATOR:
                        case NOT_EQUAL_OPERATOR:
                        case NOT_SYMBOL:
                        case NO_SYMBOL:
                        case NO_WAIT_SYMBOL:
                        case NULL_SAFE_EQUAL_OPERATOR:
                        case NUMBER_SYMBOL:
                        case NVARCHAR_SYMBOL:
                        case OFFSET_SYMBOL:
                        case OLD_PASSWORD_SYMBOL:
                        case ONE_SHOT_SYMBOL:
                        case ONE_SYMBOL:
                        case ON_SYMBOL:
                        case OPEN_SYMBOL:
                        case OPTIONS_SYMBOL:
                        case ORDER_SYMBOL:
                        case OR_SYMBOL:
                        case OWNER_SYMBOL:
                        case PACK_KEYS_SYMBOL:
                        case PAGE_SYMBOL:
                        case PARSER_SYMBOL:
                        case PARTIAL_SYMBOL:
                        case PARTITIONING_SYMBOL:
                        case PARTITIONS_SYMBOL:
                        case PARTITION_SYMBOL:
                        case PASSWORD_SYMBOL:
                        case PHASE_SYMBOL:
                        case PLUGINS_SYMBOL:
                        case PLUGIN_DIR_SYMBOL:
                        case PLUGIN_SYMBOL:
                        case PLUS_OPERATOR:
                        case POINT_SYMBOL:
                        case POLYGON_SYMBOL:
                        case PORT_SYMBOL:
                        case PREPARE_SYMBOL:
                        case PRESERVE_SYMBOL:
                        case PREV_SYMBOL:
                        case PRIVILEGES_SYMBOL:
                        case PROCEDURE_SYMBOL:
                        case PROCESSLIST_SYMBOL:
                        case PROCESS_SYMBOL:
                        case PROFILES_SYMBOL:
                        case PROFILE_SYMBOL:
                        case PROXY_SYMBOL:
                        case QUARTER_SYMBOL:
                        case QUERY_SYMBOL:
                        case QUICK_SYMBOL:
                        case READ_ONLY_SYMBOL:
                        case REBUILD_SYMBOL:
                        case RECOVER_SYMBOL:
                        case REDOFILE_SYMBOL:
                        case REDO_BUFFER_SIZE_SYMBOL:
                        case REDUNDANT_SYMBOL:
                        case REGEXP_SYMBOL:
                        case RELAYLOG_SYMBOL:
                        case RELAY_LOG_FILE_SYMBOL:
                        case RELAY_LOG_POS_SYMBOL:
                        case RELAY_SYMBOL:
                        case RELAY_THREAD_SYMBOL:
                        case RELOAD_SYMBOL:
                        case REMOVE_SYMBOL:
                        case RENAME_SYMBOL:
                        case REORGANIZE_SYMBOL:
                        case REPAIR_SYMBOL:
                        case REPEATABLE_SYMBOL:
                        case REPLICATION_SYMBOL:
                        case RESET_SYMBOL:
                        case RESTORE_SYMBOL:
                        case RESUME_SYMBOL:
                        case RETURNED_SQLSTATE_SYMBOL:
                        case RETURNS_SYMBOL:
                        case REVERSE_SYMBOL:
                        case RIGHT_SYMBOL:
                        case ROLLBACK_SYMBOL:
                        case ROLLUP_SYMBOL:
                        case ROUTINE_SYMBOL:
                        case ROWS_SYMBOL:
                        case ROW_COUNT_SYMBOL:
                        case ROW_FORMAT_SYMBOL:
                        case ROW_SYMBOL:
                        case RTREE_SYMBOL:
                        case SAVEPOINT_SYMBOL:
                        case SCHEDULE_SYMBOL:
                        case SCHEMA_NAME_SYMBOL:
                        case SECOND_MICROSECOND_SYMBOL:
                        case SECOND_SYMBOL:
                        case SECURITY_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        case SEPARATOR_SYMBOL:
                        case SERIALIZABLE_SYMBOL:
                        case SERIAL_SYMBOL:
                        case SERVER_SYMBOL:
                        case SESSION_SYMBOL:
                        case SET_SYMBOL:
                        case SHARE_SYMBOL:
                        case SHIFT_LEFT_OPERATOR:
                        case SHIFT_RIGHT_OPERATOR:
                        case SHUTDOWN_SYMBOL:
                        case SIGNED_SYMBOL:
                        case SIMPLE_SYMBOL:
                        case SINGLE_QUOTED_TEXT:
                        case SLAVE_SYMBOL:
                        case SLOW_SYMBOL:
                        case SNAPSHOT_SYMBOL:
                        case SOCKET_SYMBOL:
                        case SONAME_SYMBOL:
                        case SOUNDS_SYMBOL:
                        case SOURCE_SYMBOL:
                        case SQL_AFTER_GTIDS_SYMBOL:
                        case SQL_AFTER_MTS_GAPS_SYMBOL:
                        case SQL_BEFORE_GTIDS_SYMBOL:
                        case SQL_BUFFER_RESULT_SYMBOL:
                        case SQL_CACHE_SYMBOL:
                        case SQL_NO_CACHE_SYMBOL:
                        case SQL_THREAD_SYMBOL:
                        case STARTS_SYMBOL:
                        case START_SYMBOL:
                        case STATS_AUTO_RECALC_SYMBOL:
                        case STATS_PERSISTENT_SYMBOL:
                        case STATS_SAMPLE_PAGES_SYMBOL:
                        case STATUS_SYMBOL:
                        case STOP_SYMBOL:
                        case STORAGE_SYMBOL:
                        case STRAIGHT_JOIN_SYMBOL:
                        case STRING_SYMBOL:
                        case SUBCLASS_ORIGIN_SYMBOL:
                        case SUBDATE_SYMBOL:
                        case SUBJECT_SYMBOL:
                        case SUBPARTITIONS_SYMBOL:
                        case SUBPARTITION_SYMBOL:
                        case SUPER_SYMBOL:
                        case SUSPEND_SYMBOL:
                        case SWAPS_SYMBOL:
                        case SWITCHES_SYMBOL:
                        case TABLESPACE_SYMBOL:
                        case TABLES_SYMBOL:
                        case TABLE_CHECKSUM_SYMBOL:
                        case TABLE_NAME_SYMBOL:
                        case TEMPORARY_SYMBOL:
                        case TEMPTABLE_SYMBOL:
                        case TEXT_SYMBOL:
                        case THAN_SYMBOL:
                        case THEN_SYMBOL:
                        case TIMESTAMP_ADD_SYMBOL:
                        case TIMESTAMP_DIFF_SYMBOL:
                        case TIMESTAMP_SYMBOL:
                        case TIME_SYMBOL:
                        case TRANSACTION_SYMBOL:
                        case TRIGGERS_SYMBOL:
                        case TRUNCATE_SYMBOL:
                        case TYPES_SYMBOL:
                        case TYPE_SYMBOL:
                        case UDF_RETURNS_SYMBOL:
                        case UNCOMMITTED_SYMBOL:
                        case UNDEFINED_SYMBOL:
                        case UNDERSCORE_CHARSET:
                        case UNDOFILE_SYMBOL:
                        case UNDO_BUFFER_SIZE_SYMBOL:
                        case UNICODE_SYMBOL:
                        case UNINSTALL_SYMBOL:
                        case UNION_SYMBOL:
                        case UNKNOWN_SYMBOL:
                        case UNTIL_SYMBOL:
                        case UPGRADE_SYMBOL:
                        case USER_RESOURCES_SYMBOL:
                        case USER_SYMBOL:
                        case USE_FRM_SYMBOL:
                        case USING_SYMBOL:
                        case VALUE_SYMBOL:
                        case VARIABLES_SYMBOL:
                        case VIEW_SYMBOL:
                        case WAIT_SYMBOL:
                        case WARNINGS_SYMBOL:
                        case WEEK_SYMBOL:
                        case WEIGHT_STRING_SYMBOL:
                        case WHEN_SYMBOL:
                        case WHERE_SYMBOL:
                        case WITH_SYMBOL:
                        case WORK_SYMBOL:
                        case WRAPPER_SYMBOL:
                        case X509_SYMBOL:
                        case XA_SYMBOL:
                        case XML_SYMBOL:
                        case XOR_SYMBOL:
                        case YEAR_MONTH_SYMBOL:
                        case YEAR_SYMBOL:
                        case 733:
                        	{
                        		alt527=3;
                        	}
                            break;
                        case OPEN_PAR_SYMBOL:
                        	{
                        		{
                        		    int LA527_3259 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=4;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 3259;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 527;
                            EXCEPTION->state        = 66;


                            goto ruleprimaryEx;

                        }

                    }
                    else if ( (LA527_0 == MULTILINESTRING_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case DOT_SYMBOL:
                        	{
                        		{
                        		    int LA527_3260 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 3260;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case EOF:
                        case ACTION_SYMBOL:
                        case ADDDATE_SYMBOL:
                        case AFTER_SYMBOL:
                        case AGAINST_SYMBOL:
                        case AGGREGATE_SYMBOL:
                        case ALGORITHM_SYMBOL:
                        case ANALYZE_SYMBOL:
                        case AND_SYMBOL:
                        case ANY_SYMBOL:
                        case ASCII_SYMBOL:
                        case ASC_SYMBOL:
                        case AS_SYMBOL:
                        case AT_SYMBOL:
                        case AUTHORS_SYMBOL:
                        case AUTOEXTEND_SIZE_SYMBOL:
                        case AUTO_INCREMENT_SYMBOL:
                        case AVG_ROW_LENGTH_SYMBOL:
                        case AVG_SYMBOL:
                        case BACKUP_SYMBOL:
                        case BACK_TICK_QUOTED_ID:
                        case BEGIN_SYMBOL:
                        case BETWEEN_SYMBOL:
                        case BINLOG_SYMBOL:
                        case BITWISE_AND_OPERATOR:
                        case BITWISE_OR_OPERATOR:
                        case BITWISE_XOR_OPERATOR:
                        case BIT_SYMBOL:
                        case BLOCK_SYMBOL:
                        case BOOLEAN_SYMBOL:
                        case BOOL_SYMBOL:
                        case BTREE_SYMBOL:
                        case BYTE_SYMBOL:
                        case CACHE_SYMBOL:
                        case CASCADED_SYMBOL:
                        case CATALOG_NAME_SYMBOL:
                        case CHAIN_SYMBOL:
                        case CHANGED_SYMBOL:
                        case CHARSET_SYMBOL:
                        case CHECKSUM_SYMBOL:
                        case CIPHER_SYMBOL:
                        case CLASS_ORIGIN_SYMBOL:
                        case CLIENT_SYMBOL:
                        case CLOSE_PAR_SYMBOL:
                        case CLOSE_SYMBOL:
                        case COALESCE_SYMBOL:
                        case CODE_SYMBOL:
                        case COLLATE_SYMBOL:
                        case COLLATION_SYMBOL:
                        case COLUMNS_SYMBOL:
                        case COLUMN_FORMAT_SYMBOL:
                        case COLUMN_NAME_SYMBOL:
                        case COMMA_SYMBOL:
                        case COMMENT_SYMBOL:
                        case COMMITTED_SYMBOL:
                        case COMMIT_SYMBOL:
                        case COMPACT_SYMBOL:
                        case COMPLETION_SYMBOL:
                        case COMPRESSED_SYMBOL:
                        case CONCAT_PIPES_SYMBOL:
                        case CONCURRENT_SYMBOL:
                        case CONNECTION_SYMBOL:
                        case CONSISTENT_SYMBOL:
                        case CONSTRAINT_CATALOG_SYMBOL:
                        case CONSTRAINT_NAME_SYMBOL:
                        case CONSTRAINT_SCHEMA_SYMBOL:
                        case CONTAINS_SYMBOL:
                        case CONTEXT_SYMBOL:
                        case CONTRIBUTORS_SYMBOL:
                        case CPU_SYMBOL:
                        case CROSS_SYMBOL:
                        case CUBE_SYMBOL:
                        case CURRENT_SYMBOL:
                        case CURSOR_NAME_SYMBOL:
                        case DATAFILE_SYMBOL:
                        case DATA_SYMBOL:
                        case DATETIME_SYMBOL:
                        case DATE_SYMBOL:
                        case DAY_HOUR_SYMBOL:
                        case DAY_MICROSECOND_SYMBOL:
                        case DAY_MINUTE_SYMBOL:
                        case DAY_SECOND_SYMBOL:
                        case DAY_SYMBOL:
                        case DEALLOCATE_SYMBOL:
                        case DEFAULT_AUTH_SYMBOL:
                        case DEFINER_SYMBOL:
                        case DELAY_KEY_WRITE_SYMBOL:
                        case DESC_SYMBOL:
                        case DES_KEY_FILE_SYMBOL:
                        case DIAGNOSTICS_SYMBOL:
                        case DIRECTORY_SYMBOL:
                        case DISABLE_SYMBOL:
                        case DISCARD_SYMBOL:
                        case DISK_SYMBOL:
                        case DIV_OPERATOR:
                        case DIV_SYMBOL:
                        case DOUBLE_QUOTED_TEXT:
                        case DO_SYMBOL:
                        case DUMPFILE_SYMBOL:
                        case DUPLICATE_SYMBOL:
                        case DYNAMIC_SYMBOL:
                        case ELSE_SYMBOL:
                        case ENABLE_SYMBOL:
                        case ENDS_SYMBOL:
                        case END_SYMBOL:
                        case ENGINES_SYMBOL:
                        case ENGINE_SYMBOL:
                        case ENUM_SYMBOL:
                        case EQUAL_OPERATOR:
                        case ERRORS_SYMBOL:
                        case ERROR_SYMBOL:
                        case ESCAPE_SYMBOL:
                        case EVENTS_SYMBOL:
                        case EVENT_SYMBOL:
                        case EVERY_SYMBOL:
                        case EXECUTE_SYMBOL:
                        case EXPANSION_SYMBOL:
                        case EXPORT_SYMBOL:
                        case EXTENDED_SYMBOL:
                        case EXTENT_SIZE_SYMBOL:
                        case FAST_SYMBOL:
                        case FAULTS_SYMBOL:
                        case FILE_SYMBOL:
                        case FIRST_SYMBOL:
                        case FIXED_SYMBOL:
                        case FLUSH_SYMBOL:
                        case FORMAT_SYMBOL:
                        case FOR_SYMBOL:
                        case FOUND_SYMBOL:
                        case FRAC_SECOND_SYMBOL:
                        case FROM_SYMBOL:
                        case FULL_SYMBOL:
                        case FUNCTION_SYMBOL:
                        case GENERAL_SYMBOL:
                        case GEOMETRYCOLLECTION_SYMBOL:
                        case GEOMETRY_SYMBOL:
                        case GET_FORMAT_SYMBOL:
                        case GLOBAL_SYMBOL:
                        case GRANTS_SYMBOL:
                        case GREATER_OR_EQUAL_OPERATOR:
                        case GREATER_THAN_OPERATOR:
                        case GROUP_SYMBOL:
                        case HANDLER_SYMBOL:
                        case HASH_SYMBOL:
                        case HAVING_SYMBOL:
                        case HELP_SYMBOL:
                        case HOSTS_SYMBOL:
                        case HOST_SYMBOL:
                        case HOUR_MICROSECOND_SYMBOL:
                        case HOUR_MINUTE_SYMBOL:
                        case HOUR_SECOND_SYMBOL:
                        case HOUR_SYMBOL:
                        case IDENTIFIED_SYMBOL:
                        case IDENTIFIER:
                        case IGNORE_SERVER_IDS_SYMBOL:
                        case IMPORT_SYMBOL:
                        case INDEXES_SYMBOL:
                        case INITIAL_SIZE_SYMBOL:
                        case INNER_SYMBOL:
                        case INNODB_SYMBOL:
                        case INSERT_METHOD_SYMBOL:
                        case INSTALL_SYMBOL:
                        case INTO_SYMBOL:
                        case INVOKER_SYMBOL:
                        case IN_SYMBOL:
                        case IO_SYMBOL:
                        case IPC_SYMBOL:
                        case ISOLATION_SYMBOL:
                        case ISSUER_SYMBOL:
                        case IS_SYMBOL:
                        case JOIN_SYMBOL:
                        case KEY_BLOCK_SIZE_SYMBOL:
                        case LANGUAGE_SYMBOL:
                        case LAST_SYMBOL:
                        case LEAVES_SYMBOL:
                        case LEFT_SYMBOL:
                        case LESS_OR_EQUAL_OPERATOR:
                        case LESS_SYMBOL:
                        case LESS_THAN_OPERATOR:
                        case LEVEL_SYMBOL:
                        case LIKE_SYMBOL:
                        case LIMIT_SYMBOL:
                        case LINESTRING_SYMBOL:
                        case LIST_SYMBOL:
                        case LOCAL_SYMBOL:
                        case LOCKS_SYMBOL:
                        case LOCK_SYMBOL:
                        case LOGFILE_SYMBOL:
                        case LOGICAL_AND_OPERATOR:
                        case LOGICAL_OR_OPERATOR:
                        case LOGS_SYMBOL:
                        case MASTER_AUTO_POSITION_SYMBOL:
                        case MASTER_CONNECT_RETRY_SYMBOL:
                        case MASTER_DELAY_SYMBOL:
                        case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                        case MASTER_HOST_SYMBOL:
                        case MASTER_LOG_FILE_SYMBOL:
                        case MASTER_LOG_POS_SYMBOL:
                        case MASTER_PASSWORD_SYMBOL:
                        case MASTER_PORT_SYMBOL:
                        case MASTER_RETRY_COUNT_SYMBOL:
                        case MASTER_SERVER_ID_SYMBOL:
                        case MASTER_SSL_CAPATH_SYMBOL:
                        case MASTER_SSL_CA_SYMBOL:
                        case MASTER_SSL_CERT_SYMBOL:
                        case MASTER_SSL_CIPHER_SYMBOL:
                        case MASTER_SSL_CRLPATH_SYMBOL:
                        case MASTER_SSL_CRL_SYMBOL:
                        case MASTER_SSL_KEY_SYMBOL:
                        case MASTER_SSL_SYMBOL:
                        case MASTER_SYMBOL:
                        case MASTER_USER_SYMBOL:
                        case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                        case MAX_QUERIES_PER_HOUR_SYMBOL:
                        case MAX_ROWS_SYMBOL:
                        case MAX_SIZE_SYMBOL:
                        case MAX_UPDATES_PER_HOUR_SYMBOL:
                        case MAX_USER_CONNECTIONS_SYMBOL:
                        case MEDIUM_SYMBOL:
                        case MEMORY_SYMBOL:
                        case MERGE_SYMBOL:
                        case MESSAGE_TEXT_SYMBOL:
                        case MICROSECOND_SYMBOL:
                        case MIGRATE_SYMBOL:
                        case MINUS_OPERATOR:
                        case MINUTE_MICROSECOND_SYMBOL:
                        case MINUTE_SECOND_SYMBOL:
                        case MINUTE_SYMBOL:
                        case MIN_ROWS_SYMBOL:
                        case MODE_SYMBOL:
                        case MODIFY_SYMBOL:
                        case MOD_OPERATOR:
                        case MOD_SYMBOL:
                        case MONTH_SYMBOL:
                        case MULTILINESTRING_SYMBOL:
                        case MULTIPOINT_SYMBOL:
                        case MULTIPOLYGON_SYMBOL:
                        case MULT_OPERATOR:
                        case MUTEX_SYMBOL:
                        case MYSQL_ERRNO_SYMBOL:
                        case NAMES_SYMBOL:
                        case NAME_SYMBOL:
                        case NATIONAL_SYMBOL:
                        case NATURAL_SYMBOL:
                        case NCHAR_SYMBOL:
                        case NCHAR_TEXT:
                        case NDBCLUSTER_SYMBOL:
                        case NEW_SYMBOL:
                        case NEXT_SYMBOL:
                        case NODEGROUP_SYMBOL:
                        case NONE_SYMBOL:
                        case NOT_EQUAL2_OPERATOR:
                        case NOT_EQUAL_OPERATOR:
                        case NOT_SYMBOL:
                        case NO_SYMBOL:
                        case NO_WAIT_SYMBOL:
                        case NULL_SAFE_EQUAL_OPERATOR:
                        case NUMBER_SYMBOL:
                        case NVARCHAR_SYMBOL:
                        case OFFSET_SYMBOL:
                        case OLD_PASSWORD_SYMBOL:
                        case ONE_SHOT_SYMBOL:
                        case ONE_SYMBOL:
                        case ON_SYMBOL:
                        case OPEN_SYMBOL:
                        case OPTIONS_SYMBOL:
                        case ORDER_SYMBOL:
                        case OR_SYMBOL:
                        case OWNER_SYMBOL:
                        case PACK_KEYS_SYMBOL:
                        case PAGE_SYMBOL:
                        case PARSER_SYMBOL:
                        case PARTIAL_SYMBOL:
                        case PARTITIONING_SYMBOL:
                        case PARTITIONS_SYMBOL:
                        case PARTITION_SYMBOL:
                        case PASSWORD_SYMBOL:
                        case PHASE_SYMBOL:
                        case PLUGINS_SYMBOL:
                        case PLUGIN_DIR_SYMBOL:
                        case PLUGIN_SYMBOL:
                        case PLUS_OPERATOR:
                        case POINT_SYMBOL:
                        case POLYGON_SYMBOL:
                        case PORT_SYMBOL:
                        case PREPARE_SYMBOL:
                        case PRESERVE_SYMBOL:
                        case PREV_SYMBOL:
                        case PRIVILEGES_SYMBOL:
                        case PROCEDURE_SYMBOL:
                        case PROCESSLIST_SYMBOL:
                        case PROCESS_SYMBOL:
                        case PROFILES_SYMBOL:
                        case PROFILE_SYMBOL:
                        case PROXY_SYMBOL:
                        case QUARTER_SYMBOL:
                        case QUERY_SYMBOL:
                        case QUICK_SYMBOL:
                        case READ_ONLY_SYMBOL:
                        case REBUILD_SYMBOL:
                        case RECOVER_SYMBOL:
                        case REDOFILE_SYMBOL:
                        case REDO_BUFFER_SIZE_SYMBOL:
                        case REDUNDANT_SYMBOL:
                        case REGEXP_SYMBOL:
                        case RELAYLOG_SYMBOL:
                        case RELAY_LOG_FILE_SYMBOL:
                        case RELAY_LOG_POS_SYMBOL:
                        case RELAY_SYMBOL:
                        case RELAY_THREAD_SYMBOL:
                        case RELOAD_SYMBOL:
                        case REMOVE_SYMBOL:
                        case RENAME_SYMBOL:
                        case REORGANIZE_SYMBOL:
                        case REPAIR_SYMBOL:
                        case REPEATABLE_SYMBOL:
                        case REPLICATION_SYMBOL:
                        case RESET_SYMBOL:
                        case RESTORE_SYMBOL:
                        case RESUME_SYMBOL:
                        case RETURNED_SQLSTATE_SYMBOL:
                        case RETURNS_SYMBOL:
                        case REVERSE_SYMBOL:
                        case RIGHT_SYMBOL:
                        case ROLLBACK_SYMBOL:
                        case ROLLUP_SYMBOL:
                        case ROUTINE_SYMBOL:
                        case ROWS_SYMBOL:
                        case ROW_COUNT_SYMBOL:
                        case ROW_FORMAT_SYMBOL:
                        case ROW_SYMBOL:
                        case RTREE_SYMBOL:
                        case SAVEPOINT_SYMBOL:
                        case SCHEDULE_SYMBOL:
                        case SCHEMA_NAME_SYMBOL:
                        case SECOND_MICROSECOND_SYMBOL:
                        case SECOND_SYMBOL:
                        case SECURITY_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        case SEPARATOR_SYMBOL:
                        case SERIALIZABLE_SYMBOL:
                        case SERIAL_SYMBOL:
                        case SERVER_SYMBOL:
                        case SESSION_SYMBOL:
                        case SET_SYMBOL:
                        case SHARE_SYMBOL:
                        case SHIFT_LEFT_OPERATOR:
                        case SHIFT_RIGHT_OPERATOR:
                        case SHUTDOWN_SYMBOL:
                        case SIGNED_SYMBOL:
                        case SIMPLE_SYMBOL:
                        case SINGLE_QUOTED_TEXT:
                        case SLAVE_SYMBOL:
                        case SLOW_SYMBOL:
                        case SNAPSHOT_SYMBOL:
                        case SOCKET_SYMBOL:
                        case SONAME_SYMBOL:
                        case SOUNDS_SYMBOL:
                        case SOURCE_SYMBOL:
                        case SQL_AFTER_GTIDS_SYMBOL:
                        case SQL_AFTER_MTS_GAPS_SYMBOL:
                        case SQL_BEFORE_GTIDS_SYMBOL:
                        case SQL_BUFFER_RESULT_SYMBOL:
                        case SQL_CACHE_SYMBOL:
                        case SQL_NO_CACHE_SYMBOL:
                        case SQL_THREAD_SYMBOL:
                        case STARTS_SYMBOL:
                        case START_SYMBOL:
                        case STATS_AUTO_RECALC_SYMBOL:
                        case STATS_PERSISTENT_SYMBOL:
                        case STATS_SAMPLE_PAGES_SYMBOL:
                        case STATUS_SYMBOL:
                        case STOP_SYMBOL:
                        case STORAGE_SYMBOL:
                        case STRAIGHT_JOIN_SYMBOL:
                        case STRING_SYMBOL:
                        case SUBCLASS_ORIGIN_SYMBOL:
                        case SUBDATE_SYMBOL:
                        case SUBJECT_SYMBOL:
                        case SUBPARTITIONS_SYMBOL:
                        case SUBPARTITION_SYMBOL:
                        case SUPER_SYMBOL:
                        case SUSPEND_SYMBOL:
                        case SWAPS_SYMBOL:
                        case SWITCHES_SYMBOL:
                        case TABLESPACE_SYMBOL:
                        case TABLES_SYMBOL:
                        case TABLE_CHECKSUM_SYMBOL:
                        case TABLE_NAME_SYMBOL:
                        case TEMPORARY_SYMBOL:
                        case TEMPTABLE_SYMBOL:
                        case TEXT_SYMBOL:
                        case THAN_SYMBOL:
                        case THEN_SYMBOL:
                        case TIMESTAMP_ADD_SYMBOL:
                        case TIMESTAMP_DIFF_SYMBOL:
                        case TIMESTAMP_SYMBOL:
                        case TIME_SYMBOL:
                        case TRANSACTION_SYMBOL:
                        case TRIGGERS_SYMBOL:
                        case TRUNCATE_SYMBOL:
                        case TYPES_SYMBOL:
                        case TYPE_SYMBOL:
                        case UDF_RETURNS_SYMBOL:
                        case UNCOMMITTED_SYMBOL:
                        case UNDEFINED_SYMBOL:
                        case UNDERSCORE_CHARSET:
                        case UNDOFILE_SYMBOL:
                        case UNDO_BUFFER_SIZE_SYMBOL:
                        case UNICODE_SYMBOL:
                        case UNINSTALL_SYMBOL:
                        case UNION_SYMBOL:
                        case UNKNOWN_SYMBOL:
                        case UNTIL_SYMBOL:
                        case UPGRADE_SYMBOL:
                        case USER_RESOURCES_SYMBOL:
                        case USER_SYMBOL:
                        case USE_FRM_SYMBOL:
                        case USING_SYMBOL:
                        case VALUE_SYMBOL:
                        case VARIABLES_SYMBOL:
                        case VIEW_SYMBOL:
                        case WAIT_SYMBOL:
                        case WARNINGS_SYMBOL:
                        case WEEK_SYMBOL:
                        case WEIGHT_STRING_SYMBOL:
                        case WHEN_SYMBOL:
                        case WHERE_SYMBOL:
                        case WITH_SYMBOL:
                        case WORK_SYMBOL:
                        case WRAPPER_SYMBOL:
                        case X509_SYMBOL:
                        case XA_SYMBOL:
                        case XML_SYMBOL:
                        case XOR_SYMBOL:
                        case YEAR_MONTH_SYMBOL:
                        case YEAR_SYMBOL:
                        case 733:
                        	{
                        		alt527=3;
                        	}
                            break;
                        case OPEN_PAR_SYMBOL:
                        	{
                        		{
                        		    int LA527_3352 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=4;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 3352;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 527;
                            EXCEPTION->state        = 67;


                            goto ruleprimaryEx;

                        }

                    }
                    else if ( (LA527_0 == MULTIPOINT_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case DOT_SYMBOL:
                        	{
                        		{
                        		    int LA527_3353 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 3353;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case EOF:
                        case ACTION_SYMBOL:
                        case ADDDATE_SYMBOL:
                        case AFTER_SYMBOL:
                        case AGAINST_SYMBOL:
                        case AGGREGATE_SYMBOL:
                        case ALGORITHM_SYMBOL:
                        case ANALYZE_SYMBOL:
                        case AND_SYMBOL:
                        case ANY_SYMBOL:
                        case ASCII_SYMBOL:
                        case ASC_SYMBOL:
                        case AS_SYMBOL:
                        case AT_SYMBOL:
                        case AUTHORS_SYMBOL:
                        case AUTOEXTEND_SIZE_SYMBOL:
                        case AUTO_INCREMENT_SYMBOL:
                        case AVG_ROW_LENGTH_SYMBOL:
                        case AVG_SYMBOL:
                        case BACKUP_SYMBOL:
                        case BACK_TICK_QUOTED_ID:
                        case BEGIN_SYMBOL:
                        case BETWEEN_SYMBOL:
                        case BINLOG_SYMBOL:
                        case BITWISE_AND_OPERATOR:
                        case BITWISE_OR_OPERATOR:
                        case BITWISE_XOR_OPERATOR:
                        case BIT_SYMBOL:
                        case BLOCK_SYMBOL:
                        case BOOLEAN_SYMBOL:
                        case BOOL_SYMBOL:
                        case BTREE_SYMBOL:
                        case BYTE_SYMBOL:
                        case CACHE_SYMBOL:
                        case CASCADED_SYMBOL:
                        case CATALOG_NAME_SYMBOL:
                        case CHAIN_SYMBOL:
                        case CHANGED_SYMBOL:
                        case CHARSET_SYMBOL:
                        case CHECKSUM_SYMBOL:
                        case CIPHER_SYMBOL:
                        case CLASS_ORIGIN_SYMBOL:
                        case CLIENT_SYMBOL:
                        case CLOSE_PAR_SYMBOL:
                        case CLOSE_SYMBOL:
                        case COALESCE_SYMBOL:
                        case CODE_SYMBOL:
                        case COLLATE_SYMBOL:
                        case COLLATION_SYMBOL:
                        case COLUMNS_SYMBOL:
                        case COLUMN_FORMAT_SYMBOL:
                        case COLUMN_NAME_SYMBOL:
                        case COMMA_SYMBOL:
                        case COMMENT_SYMBOL:
                        case COMMITTED_SYMBOL:
                        case COMMIT_SYMBOL:
                        case COMPACT_SYMBOL:
                        case COMPLETION_SYMBOL:
                        case COMPRESSED_SYMBOL:
                        case CONCAT_PIPES_SYMBOL:
                        case CONCURRENT_SYMBOL:
                        case CONNECTION_SYMBOL:
                        case CONSISTENT_SYMBOL:
                        case CONSTRAINT_CATALOG_SYMBOL:
                        case CONSTRAINT_NAME_SYMBOL:
                        case CONSTRAINT_SCHEMA_SYMBOL:
                        case CONTAINS_SYMBOL:
                        case CONTEXT_SYMBOL:
                        case CONTRIBUTORS_SYMBOL:
                        case CPU_SYMBOL:
                        case CROSS_SYMBOL:
                        case CUBE_SYMBOL:
                        case CURRENT_SYMBOL:
                        case CURSOR_NAME_SYMBOL:
                        case DATAFILE_SYMBOL:
                        case DATA_SYMBOL:
                        case DATETIME_SYMBOL:
                        case DATE_SYMBOL:
                        case DAY_HOUR_SYMBOL:
                        case DAY_MICROSECOND_SYMBOL:
                        case DAY_MINUTE_SYMBOL:
                        case DAY_SECOND_SYMBOL:
                        case DAY_SYMBOL:
                        case DEALLOCATE_SYMBOL:
                        case DEFAULT_AUTH_SYMBOL:
                        case DEFINER_SYMBOL:
                        case DELAY_KEY_WRITE_SYMBOL:
                        case DESC_SYMBOL:
                        case DES_KEY_FILE_SYMBOL:
                        case DIAGNOSTICS_SYMBOL:
                        case DIRECTORY_SYMBOL:
                        case DISABLE_SYMBOL:
                        case DISCARD_SYMBOL:
                        case DISK_SYMBOL:
                        case DIV_OPERATOR:
                        case DIV_SYMBOL:
                        case DOUBLE_QUOTED_TEXT:
                        case DO_SYMBOL:
                        case DUMPFILE_SYMBOL:
                        case DUPLICATE_SYMBOL:
                        case DYNAMIC_SYMBOL:
                        case ELSE_SYMBOL:
                        case ENABLE_SYMBOL:
                        case ENDS_SYMBOL:
                        case END_SYMBOL:
                        case ENGINES_SYMBOL:
                        case ENGINE_SYMBOL:
                        case ENUM_SYMBOL:
                        case EQUAL_OPERATOR:
                        case ERRORS_SYMBOL:
                        case ERROR_SYMBOL:
                        case ESCAPE_SYMBOL:
                        case EVENTS_SYMBOL:
                        case EVENT_SYMBOL:
                        case EVERY_SYMBOL:
                        case EXECUTE_SYMBOL:
                        case EXPANSION_SYMBOL:
                        case EXPORT_SYMBOL:
                        case EXTENDED_SYMBOL:
                        case EXTENT_SIZE_SYMBOL:
                        case FAST_SYMBOL:
                        case FAULTS_SYMBOL:
                        case FILE_SYMBOL:
                        case FIRST_SYMBOL:
                        case FIXED_SYMBOL:
                        case FLUSH_SYMBOL:
                        case FORMAT_SYMBOL:
                        case FOR_SYMBOL:
                        case FOUND_SYMBOL:
                        case FRAC_SECOND_SYMBOL:
                        case FROM_SYMBOL:
                        case FULL_SYMBOL:
                        case FUNCTION_SYMBOL:
                        case GENERAL_SYMBOL:
                        case GEOMETRYCOLLECTION_SYMBOL:
                        case GEOMETRY_SYMBOL:
                        case GET_FORMAT_SYMBOL:
                        case GLOBAL_SYMBOL:
                        case GRANTS_SYMBOL:
                        case GREATER_OR_EQUAL_OPERATOR:
                        case GREATER_THAN_OPERATOR:
                        case GROUP_SYMBOL:
                        case HANDLER_SYMBOL:
                        case HASH_SYMBOL:
                        case HAVING_SYMBOL:
                        case HELP_SYMBOL:
                        case HOSTS_SYMBOL:
                        case HOST_SYMBOL:
                        case HOUR_MICROSECOND_SYMBOL:
                        case HOUR_MINUTE_SYMBOL:
                        case HOUR_SECOND_SYMBOL:
                        case HOUR_SYMBOL:
                        case IDENTIFIED_SYMBOL:
                        case IDENTIFIER:
                        case IGNORE_SERVER_IDS_SYMBOL:
                        case IMPORT_SYMBOL:
                        case INDEXES_SYMBOL:
                        case INITIAL_SIZE_SYMBOL:
                        case INNER_SYMBOL:
                        case INNODB_SYMBOL:
                        case INSERT_METHOD_SYMBOL:
                        case INSTALL_SYMBOL:
                        case INTO_SYMBOL:
                        case INVOKER_SYMBOL:
                        case IN_SYMBOL:
                        case IO_SYMBOL:
                        case IPC_SYMBOL:
                        case ISOLATION_SYMBOL:
                        case ISSUER_SYMBOL:
                        case IS_SYMBOL:
                        case JOIN_SYMBOL:
                        case KEY_BLOCK_SIZE_SYMBOL:
                        case LANGUAGE_SYMBOL:
                        case LAST_SYMBOL:
                        case LEAVES_SYMBOL:
                        case LEFT_SYMBOL:
                        case LESS_OR_EQUAL_OPERATOR:
                        case LESS_SYMBOL:
                        case LESS_THAN_OPERATOR:
                        case LEVEL_SYMBOL:
                        case LIKE_SYMBOL:
                        case LIMIT_SYMBOL:
                        case LINESTRING_SYMBOL:
                        case LIST_SYMBOL:
                        case LOCAL_SYMBOL:
                        case LOCKS_SYMBOL:
                        case LOCK_SYMBOL:
                        case LOGFILE_SYMBOL:
                        case LOGICAL_AND_OPERATOR:
                        case LOGICAL_OR_OPERATOR:
                        case LOGS_SYMBOL:
                        case MASTER_AUTO_POSITION_SYMBOL:
                        case MASTER_CONNECT_RETRY_SYMBOL:
                        case MASTER_DELAY_SYMBOL:
                        case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                        case MASTER_HOST_SYMBOL:
                        case MASTER_LOG_FILE_SYMBOL:
                        case MASTER_LOG_POS_SYMBOL:
                        case MASTER_PASSWORD_SYMBOL:
                        case MASTER_PORT_SYMBOL:
                        case MASTER_RETRY_COUNT_SYMBOL:
                        case MASTER_SERVER_ID_SYMBOL:
                        case MASTER_SSL_CAPATH_SYMBOL:
                        case MASTER_SSL_CA_SYMBOL:
                        case MASTER_SSL_CERT_SYMBOL:
                        case MASTER_SSL_CIPHER_SYMBOL:
                        case MASTER_SSL_CRLPATH_SYMBOL:
                        case MASTER_SSL_CRL_SYMBOL:
                        case MASTER_SSL_KEY_SYMBOL:
                        case MASTER_SSL_SYMBOL:
                        case MASTER_SYMBOL:
                        case MASTER_USER_SYMBOL:
                        case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                        case MAX_QUERIES_PER_HOUR_SYMBOL:
                        case MAX_ROWS_SYMBOL:
                        case MAX_SIZE_SYMBOL:
                        case MAX_UPDATES_PER_HOUR_SYMBOL:
                        case MAX_USER_CONNECTIONS_SYMBOL:
                        case MEDIUM_SYMBOL:
                        case MEMORY_SYMBOL:
                        case MERGE_SYMBOL:
                        case MESSAGE_TEXT_SYMBOL:
                        case MICROSECOND_SYMBOL:
                        case MIGRATE_SYMBOL:
                        case MINUS_OPERATOR:
                        case MINUTE_MICROSECOND_SYMBOL:
                        case MINUTE_SECOND_SYMBOL:
                        case MINUTE_SYMBOL:
                        case MIN_ROWS_SYMBOL:
                        case MODE_SYMBOL:
                        case MODIFY_SYMBOL:
                        case MOD_OPERATOR:
                        case MOD_SYMBOL:
                        case MONTH_SYMBOL:
                        case MULTILINESTRING_SYMBOL:
                        case MULTIPOINT_SYMBOL:
                        case MULTIPOLYGON_SYMBOL:
                        case MULT_OPERATOR:
                        case MUTEX_SYMBOL:
                        case MYSQL_ERRNO_SYMBOL:
                        case NAMES_SYMBOL:
                        case NAME_SYMBOL:
                        case NATIONAL_SYMBOL:
                        case NATURAL_SYMBOL:
                        case NCHAR_SYMBOL:
                        case NCHAR_TEXT:
                        case NDBCLUSTER_SYMBOL:
                        case NEW_SYMBOL:
                        case NEXT_SYMBOL:
                        case NODEGROUP_SYMBOL:
                        case NONE_SYMBOL:
                        case NOT_EQUAL2_OPERATOR:
                        case NOT_EQUAL_OPERATOR:
                        case NOT_SYMBOL:
                        case NO_SYMBOL:
                        case NO_WAIT_SYMBOL:
                        case NULL_SAFE_EQUAL_OPERATOR:
                        case NUMBER_SYMBOL:
                        case NVARCHAR_SYMBOL:
                        case OFFSET_SYMBOL:
                        case OLD_PASSWORD_SYMBOL:
                        case ONE_SHOT_SYMBOL:
                        case ONE_SYMBOL:
                        case ON_SYMBOL:
                        case OPEN_SYMBOL:
                        case OPTIONS_SYMBOL:
                        case ORDER_SYMBOL:
                        case OR_SYMBOL:
                        case OWNER_SYMBOL:
                        case PACK_KEYS_SYMBOL:
                        case PAGE_SYMBOL:
                        case PARSER_SYMBOL:
                        case PARTIAL_SYMBOL:
                        case PARTITIONING_SYMBOL:
                        case PARTITIONS_SYMBOL:
                        case PARTITION_SYMBOL:
                        case PASSWORD_SYMBOL:
                        case PHASE_SYMBOL:
                        case PLUGINS_SYMBOL:
                        case PLUGIN_DIR_SYMBOL:
                        case PLUGIN_SYMBOL:
                        case PLUS_OPERATOR:
                        case POINT_SYMBOL:
                        case POLYGON_SYMBOL:
                        case PORT_SYMBOL:
                        case PREPARE_SYMBOL:
                        case PRESERVE_SYMBOL:
                        case PREV_SYMBOL:
                        case PRIVILEGES_SYMBOL:
                        case PROCEDURE_SYMBOL:
                        case PROCESSLIST_SYMBOL:
                        case PROCESS_SYMBOL:
                        case PROFILES_SYMBOL:
                        case PROFILE_SYMBOL:
                        case PROXY_SYMBOL:
                        case QUARTER_SYMBOL:
                        case QUERY_SYMBOL:
                        case QUICK_SYMBOL:
                        case READ_ONLY_SYMBOL:
                        case REBUILD_SYMBOL:
                        case RECOVER_SYMBOL:
                        case REDOFILE_SYMBOL:
                        case REDO_BUFFER_SIZE_SYMBOL:
                        case REDUNDANT_SYMBOL:
                        case REGEXP_SYMBOL:
                        case RELAYLOG_SYMBOL:
                        case RELAY_LOG_FILE_SYMBOL:
                        case RELAY_LOG_POS_SYMBOL:
                        case RELAY_SYMBOL:
                        case RELAY_THREAD_SYMBOL:
                        case RELOAD_SYMBOL:
                        case REMOVE_SYMBOL:
                        case RENAME_SYMBOL:
                        case REORGANIZE_SYMBOL:
                        case REPAIR_SYMBOL:
                        case REPEATABLE_SYMBOL:
                        case REPLICATION_SYMBOL:
                        case RESET_SYMBOL:
                        case RESTORE_SYMBOL:
                        case RESUME_SYMBOL:
                        case RETURNED_SQLSTATE_SYMBOL:
                        case RETURNS_SYMBOL:
                        case REVERSE_SYMBOL:
                        case RIGHT_SYMBOL:
                        case ROLLBACK_SYMBOL:
                        case ROLLUP_SYMBOL:
                        case ROUTINE_SYMBOL:
                        case ROWS_SYMBOL:
                        case ROW_COUNT_SYMBOL:
                        case ROW_FORMAT_SYMBOL:
                        case ROW_SYMBOL:
                        case RTREE_SYMBOL:
                        case SAVEPOINT_SYMBOL:
                        case SCHEDULE_SYMBOL:
                        case SCHEMA_NAME_SYMBOL:
                        case SECOND_MICROSECOND_SYMBOL:
                        case SECOND_SYMBOL:
                        case SECURITY_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        case SEPARATOR_SYMBOL:
                        case SERIALIZABLE_SYMBOL:
                        case SERIAL_SYMBOL:
                        case SERVER_SYMBOL:
                        case SESSION_SYMBOL:
                        case SET_SYMBOL:
                        case SHARE_SYMBOL:
                        case SHIFT_LEFT_OPERATOR:
                        case SHIFT_RIGHT_OPERATOR:
                        case SHUTDOWN_SYMBOL:
                        case SIGNED_SYMBOL:
                        case SIMPLE_SYMBOL:
                        case SINGLE_QUOTED_TEXT:
                        case SLAVE_SYMBOL:
                        case SLOW_SYMBOL:
                        case SNAPSHOT_SYMBOL:
                        case SOCKET_SYMBOL:
                        case SONAME_SYMBOL:
                        case SOUNDS_SYMBOL:
                        case SOURCE_SYMBOL:
                        case SQL_AFTER_GTIDS_SYMBOL:
                        case SQL_AFTER_MTS_GAPS_SYMBOL:
                        case SQL_BEFORE_GTIDS_SYMBOL:
                        case SQL_BUFFER_RESULT_SYMBOL:
                        case SQL_CACHE_SYMBOL:
                        case SQL_NO_CACHE_SYMBOL:
                        case SQL_THREAD_SYMBOL:
                        case STARTS_SYMBOL:
                        case START_SYMBOL:
                        case STATS_AUTO_RECALC_SYMBOL:
                        case STATS_PERSISTENT_SYMBOL:
                        case STATS_SAMPLE_PAGES_SYMBOL:
                        case STATUS_SYMBOL:
                        case STOP_SYMBOL:
                        case STORAGE_SYMBOL:
                        case STRAIGHT_JOIN_SYMBOL:
                        case STRING_SYMBOL:
                        case SUBCLASS_ORIGIN_SYMBOL:
                        case SUBDATE_SYMBOL:
                        case SUBJECT_SYMBOL:
                        case SUBPARTITIONS_SYMBOL:
                        case SUBPARTITION_SYMBOL:
                        case SUPER_SYMBOL:
                        case SUSPEND_SYMBOL:
                        case SWAPS_SYMBOL:
                        case SWITCHES_SYMBOL:
                        case TABLESPACE_SYMBOL:
                        case TABLES_SYMBOL:
                        case TABLE_CHECKSUM_SYMBOL:
                        case TABLE_NAME_SYMBOL:
                        case TEMPORARY_SYMBOL:
                        case TEMPTABLE_SYMBOL:
                        case TEXT_SYMBOL:
                        case THAN_SYMBOL:
                        case THEN_SYMBOL:
                        case TIMESTAMP_ADD_SYMBOL:
                        case TIMESTAMP_DIFF_SYMBOL:
                        case TIMESTAMP_SYMBOL:
                        case TIME_SYMBOL:
                        case TRANSACTION_SYMBOL:
                        case TRIGGERS_SYMBOL:
                        case TRUNCATE_SYMBOL:
                        case TYPES_SYMBOL:
                        case TYPE_SYMBOL:
                        case UDF_RETURNS_SYMBOL:
                        case UNCOMMITTED_SYMBOL:
                        case UNDEFINED_SYMBOL:
                        case UNDERSCORE_CHARSET:
                        case UNDOFILE_SYMBOL:
                        case UNDO_BUFFER_SIZE_SYMBOL:
                        case UNICODE_SYMBOL:
                        case UNINSTALL_SYMBOL:
                        case UNION_SYMBOL:
                        case UNKNOWN_SYMBOL:
                        case UNTIL_SYMBOL:
                        case UPGRADE_SYMBOL:
                        case USER_RESOURCES_SYMBOL:
                        case USER_SYMBOL:
                        case USE_FRM_SYMBOL:
                        case USING_SYMBOL:
                        case VALUE_SYMBOL:
                        case VARIABLES_SYMBOL:
                        case VIEW_SYMBOL:
                        case WAIT_SYMBOL:
                        case WARNINGS_SYMBOL:
                        case WEEK_SYMBOL:
                        case WEIGHT_STRING_SYMBOL:
                        case WHEN_SYMBOL:
                        case WHERE_SYMBOL:
                        case WITH_SYMBOL:
                        case WORK_SYMBOL:
                        case WRAPPER_SYMBOL:
                        case X509_SYMBOL:
                        case XA_SYMBOL:
                        case XML_SYMBOL:
                        case XOR_SYMBOL:
                        case YEAR_MONTH_SYMBOL:
                        case YEAR_SYMBOL:
                        case 733:
                        	{
                        		alt527=3;
                        	}
                            break;
                        case OPEN_PAR_SYMBOL:
                        	{
                        		{
                        		    int LA527_3445 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=4;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 3445;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 527;
                            EXCEPTION->state        = 68;


                            goto ruleprimaryEx;

                        }

                    }
                    else if ( (LA527_0 == MULTIPOLYGON_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case DOT_SYMBOL:
                        	{
                        		{
                        		    int LA527_3446 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 3446;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case EOF:
                        case ACTION_SYMBOL:
                        case ADDDATE_SYMBOL:
                        case AFTER_SYMBOL:
                        case AGAINST_SYMBOL:
                        case AGGREGATE_SYMBOL:
                        case ALGORITHM_SYMBOL:
                        case ANALYZE_SYMBOL:
                        case AND_SYMBOL:
                        case ANY_SYMBOL:
                        case ASCII_SYMBOL:
                        case ASC_SYMBOL:
                        case AS_SYMBOL:
                        case AT_SYMBOL:
                        case AUTHORS_SYMBOL:
                        case AUTOEXTEND_SIZE_SYMBOL:
                        case AUTO_INCREMENT_SYMBOL:
                        case AVG_ROW_LENGTH_SYMBOL:
                        case AVG_SYMBOL:
                        case BACKUP_SYMBOL:
                        case BACK_TICK_QUOTED_ID:
                        case BEGIN_SYMBOL:
                        case BETWEEN_SYMBOL:
                        case BINLOG_SYMBOL:
                        case BITWISE_AND_OPERATOR:
                        case BITWISE_OR_OPERATOR:
                        case BITWISE_XOR_OPERATOR:
                        case BIT_SYMBOL:
                        case BLOCK_SYMBOL:
                        case BOOLEAN_SYMBOL:
                        case BOOL_SYMBOL:
                        case BTREE_SYMBOL:
                        case BYTE_SYMBOL:
                        case CACHE_SYMBOL:
                        case CASCADED_SYMBOL:
                        case CATALOG_NAME_SYMBOL:
                        case CHAIN_SYMBOL:
                        case CHANGED_SYMBOL:
                        case CHARSET_SYMBOL:
                        case CHECKSUM_SYMBOL:
                        case CIPHER_SYMBOL:
                        case CLASS_ORIGIN_SYMBOL:
                        case CLIENT_SYMBOL:
                        case CLOSE_PAR_SYMBOL:
                        case CLOSE_SYMBOL:
                        case COALESCE_SYMBOL:
                        case CODE_SYMBOL:
                        case COLLATE_SYMBOL:
                        case COLLATION_SYMBOL:
                        case COLUMNS_SYMBOL:
                        case COLUMN_FORMAT_SYMBOL:
                        case COLUMN_NAME_SYMBOL:
                        case COMMA_SYMBOL:
                        case COMMENT_SYMBOL:
                        case COMMITTED_SYMBOL:
                        case COMMIT_SYMBOL:
                        case COMPACT_SYMBOL:
                        case COMPLETION_SYMBOL:
                        case COMPRESSED_SYMBOL:
                        case CONCAT_PIPES_SYMBOL:
                        case CONCURRENT_SYMBOL:
                        case CONNECTION_SYMBOL:
                        case CONSISTENT_SYMBOL:
                        case CONSTRAINT_CATALOG_SYMBOL:
                        case CONSTRAINT_NAME_SYMBOL:
                        case CONSTRAINT_SCHEMA_SYMBOL:
                        case CONTAINS_SYMBOL:
                        case CONTEXT_SYMBOL:
                        case CONTRIBUTORS_SYMBOL:
                        case CPU_SYMBOL:
                        case CROSS_SYMBOL:
                        case CUBE_SYMBOL:
                        case CURRENT_SYMBOL:
                        case CURSOR_NAME_SYMBOL:
                        case DATAFILE_SYMBOL:
                        case DATA_SYMBOL:
                        case DATETIME_SYMBOL:
                        case DATE_SYMBOL:
                        case DAY_HOUR_SYMBOL:
                        case DAY_MICROSECOND_SYMBOL:
                        case DAY_MINUTE_SYMBOL:
                        case DAY_SECOND_SYMBOL:
                        case DAY_SYMBOL:
                        case DEALLOCATE_SYMBOL:
                        case DEFAULT_AUTH_SYMBOL:
                        case DEFINER_SYMBOL:
                        case DELAY_KEY_WRITE_SYMBOL:
                        case DESC_SYMBOL:
                        case DES_KEY_FILE_SYMBOL:
                        case DIAGNOSTICS_SYMBOL:
                        case DIRECTORY_SYMBOL:
                        case DISABLE_SYMBOL:
                        case DISCARD_SYMBOL:
                        case DISK_SYMBOL:
                        case DIV_OPERATOR:
                        case DIV_SYMBOL:
                        case DOUBLE_QUOTED_TEXT:
                        case DO_SYMBOL:
                        case DUMPFILE_SYMBOL:
                        case DUPLICATE_SYMBOL:
                        case DYNAMIC_SYMBOL:
                        case ELSE_SYMBOL:
                        case ENABLE_SYMBOL:
                        case ENDS_SYMBOL:
                        case END_SYMBOL:
                        case ENGINES_SYMBOL:
                        case ENGINE_SYMBOL:
                        case ENUM_SYMBOL:
                        case EQUAL_OPERATOR:
                        case ERRORS_SYMBOL:
                        case ERROR_SYMBOL:
                        case ESCAPE_SYMBOL:
                        case EVENTS_SYMBOL:
                        case EVENT_SYMBOL:
                        case EVERY_SYMBOL:
                        case EXECUTE_SYMBOL:
                        case EXPANSION_SYMBOL:
                        case EXPORT_SYMBOL:
                        case EXTENDED_SYMBOL:
                        case EXTENT_SIZE_SYMBOL:
                        case FAST_SYMBOL:
                        case FAULTS_SYMBOL:
                        case FILE_SYMBOL:
                        case FIRST_SYMBOL:
                        case FIXED_SYMBOL:
                        case FLUSH_SYMBOL:
                        case FORMAT_SYMBOL:
                        case FOR_SYMBOL:
                        case FOUND_SYMBOL:
                        case FRAC_SECOND_SYMBOL:
                        case FROM_SYMBOL:
                        case FULL_SYMBOL:
                        case FUNCTION_SYMBOL:
                        case GENERAL_SYMBOL:
                        case GEOMETRYCOLLECTION_SYMBOL:
                        case GEOMETRY_SYMBOL:
                        case GET_FORMAT_SYMBOL:
                        case GLOBAL_SYMBOL:
                        case GRANTS_SYMBOL:
                        case GREATER_OR_EQUAL_OPERATOR:
                        case GREATER_THAN_OPERATOR:
                        case GROUP_SYMBOL:
                        case HANDLER_SYMBOL:
                        case HASH_SYMBOL:
                        case HAVING_SYMBOL:
                        case HELP_SYMBOL:
                        case HOSTS_SYMBOL:
                        case HOST_SYMBOL:
                        case HOUR_MICROSECOND_SYMBOL:
                        case HOUR_MINUTE_SYMBOL:
                        case HOUR_SECOND_SYMBOL:
                        case HOUR_SYMBOL:
                        case IDENTIFIED_SYMBOL:
                        case IDENTIFIER:
                        case IGNORE_SERVER_IDS_SYMBOL:
                        case IMPORT_SYMBOL:
                        case INDEXES_SYMBOL:
                        case INITIAL_SIZE_SYMBOL:
                        case INNER_SYMBOL:
                        case INNODB_SYMBOL:
                        case INSERT_METHOD_SYMBOL:
                        case INSTALL_SYMBOL:
                        case INTO_SYMBOL:
                        case INVOKER_SYMBOL:
                        case IN_SYMBOL:
                        case IO_SYMBOL:
                        case IPC_SYMBOL:
                        case ISOLATION_SYMBOL:
                        case ISSUER_SYMBOL:
                        case IS_SYMBOL:
                        case JOIN_SYMBOL:
                        case KEY_BLOCK_SIZE_SYMBOL:
                        case LANGUAGE_SYMBOL:
                        case LAST_SYMBOL:
                        case LEAVES_SYMBOL:
                        case LEFT_SYMBOL:
                        case LESS_OR_EQUAL_OPERATOR:
                        case LESS_SYMBOL:
                        case LESS_THAN_OPERATOR:
                        case LEVEL_SYMBOL:
                        case LIKE_SYMBOL:
                        case LIMIT_SYMBOL:
                        case LINESTRING_SYMBOL:
                        case LIST_SYMBOL:
                        case LOCAL_SYMBOL:
                        case LOCKS_SYMBOL:
                        case LOCK_SYMBOL:
                        case LOGFILE_SYMBOL:
                        case LOGICAL_AND_OPERATOR:
                        case LOGICAL_OR_OPERATOR:
                        case LOGS_SYMBOL:
                        case MASTER_AUTO_POSITION_SYMBOL:
                        case MASTER_CONNECT_RETRY_SYMBOL:
                        case MASTER_DELAY_SYMBOL:
                        case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                        case MASTER_HOST_SYMBOL:
                        case MASTER_LOG_FILE_SYMBOL:
                        case MASTER_LOG_POS_SYMBOL:
                        case MASTER_PASSWORD_SYMBOL:
                        case MASTER_PORT_SYMBOL:
                        case MASTER_RETRY_COUNT_SYMBOL:
                        case MASTER_SERVER_ID_SYMBOL:
                        case MASTER_SSL_CAPATH_SYMBOL:
                        case MASTER_SSL_CA_SYMBOL:
                        case MASTER_SSL_CERT_SYMBOL:
                        case MASTER_SSL_CIPHER_SYMBOL:
                        case MASTER_SSL_CRLPATH_SYMBOL:
                        case MASTER_SSL_CRL_SYMBOL:
                        case MASTER_SSL_KEY_SYMBOL:
                        case MASTER_SSL_SYMBOL:
                        case MASTER_SYMBOL:
                        case MASTER_USER_SYMBOL:
                        case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                        case MAX_QUERIES_PER_HOUR_SYMBOL:
                        case MAX_ROWS_SYMBOL:
                        case MAX_SIZE_SYMBOL:
                        case MAX_UPDATES_PER_HOUR_SYMBOL:
                        case MAX_USER_CONNECTIONS_SYMBOL:
                        case MEDIUM_SYMBOL:
                        case MEMORY_SYMBOL:
                        case MERGE_SYMBOL:
                        case MESSAGE_TEXT_SYMBOL:
                        case MICROSECOND_SYMBOL:
                        case MIGRATE_SYMBOL:
                        case MINUS_OPERATOR:
                        case MINUTE_MICROSECOND_SYMBOL:
                        case MINUTE_SECOND_SYMBOL:
                        case MINUTE_SYMBOL:
                        case MIN_ROWS_SYMBOL:
                        case MODE_SYMBOL:
                        case MODIFY_SYMBOL:
                        case MOD_OPERATOR:
                        case MOD_SYMBOL:
                        case MONTH_SYMBOL:
                        case MULTILINESTRING_SYMBOL:
                        case MULTIPOINT_SYMBOL:
                        case MULTIPOLYGON_SYMBOL:
                        case MULT_OPERATOR:
                        case MUTEX_SYMBOL:
                        case MYSQL_ERRNO_SYMBOL:
                        case NAMES_SYMBOL:
                        case NAME_SYMBOL:
                        case NATIONAL_SYMBOL:
                        case NATURAL_SYMBOL:
                        case NCHAR_SYMBOL:
                        case NCHAR_TEXT:
                        case NDBCLUSTER_SYMBOL:
                        case NEW_SYMBOL:
                        case NEXT_SYMBOL:
                        case NODEGROUP_SYMBOL:
                        case NONE_SYMBOL:
                        case NOT_EQUAL2_OPERATOR:
                        case NOT_EQUAL_OPERATOR:
                        case NOT_SYMBOL:
                        case NO_SYMBOL:
                        case NO_WAIT_SYMBOL:
                        case NULL_SAFE_EQUAL_OPERATOR:
                        case NUMBER_SYMBOL:
                        case NVARCHAR_SYMBOL:
                        case OFFSET_SYMBOL:
                        case OLD_PASSWORD_SYMBOL:
                        case ONE_SHOT_SYMBOL:
                        case ONE_SYMBOL:
                        case ON_SYMBOL:
                        case OPEN_SYMBOL:
                        case OPTIONS_SYMBOL:
                        case ORDER_SYMBOL:
                        case OR_SYMBOL:
                        case OWNER_SYMBOL:
                        case PACK_KEYS_SYMBOL:
                        case PAGE_SYMBOL:
                        case PARSER_SYMBOL:
                        case PARTIAL_SYMBOL:
                        case PARTITIONING_SYMBOL:
                        case PARTITIONS_SYMBOL:
                        case PARTITION_SYMBOL:
                        case PASSWORD_SYMBOL:
                        case PHASE_SYMBOL:
                        case PLUGINS_SYMBOL:
                        case PLUGIN_DIR_SYMBOL:
                        case PLUGIN_SYMBOL:
                        case PLUS_OPERATOR:
                        case POINT_SYMBOL:
                        case POLYGON_SYMBOL:
                        case PORT_SYMBOL:
                        case PREPARE_SYMBOL:
                        case PRESERVE_SYMBOL:
                        case PREV_SYMBOL:
                        case PRIVILEGES_SYMBOL:
                        case PROCEDURE_SYMBOL:
                        case PROCESSLIST_SYMBOL:
                        case PROCESS_SYMBOL:
                        case PROFILES_SYMBOL:
                        case PROFILE_SYMBOL:
                        case PROXY_SYMBOL:
                        case QUARTER_SYMBOL:
                        case QUERY_SYMBOL:
                        case QUICK_SYMBOL:
                        case READ_ONLY_SYMBOL:
                        case REBUILD_SYMBOL:
                        case RECOVER_SYMBOL:
                        case REDOFILE_SYMBOL:
                        case REDO_BUFFER_SIZE_SYMBOL:
                        case REDUNDANT_SYMBOL:
                        case REGEXP_SYMBOL:
                        case RELAYLOG_SYMBOL:
                        case RELAY_LOG_FILE_SYMBOL:
                        case RELAY_LOG_POS_SYMBOL:
                        case RELAY_SYMBOL:
                        case RELAY_THREAD_SYMBOL:
                        case RELOAD_SYMBOL:
                        case REMOVE_SYMBOL:
                        case RENAME_SYMBOL:
                        case REORGANIZE_SYMBOL:
                        case REPAIR_SYMBOL:
                        case REPEATABLE_SYMBOL:
                        case REPLICATION_SYMBOL:
                        case RESET_SYMBOL:
                        case RESTORE_SYMBOL:
                        case RESUME_SYMBOL:
                        case RETURNED_SQLSTATE_SYMBOL:
                        case RETURNS_SYMBOL:
                        case REVERSE_SYMBOL:
                        case RIGHT_SYMBOL:
                        case ROLLBACK_SYMBOL:
                        case ROLLUP_SYMBOL:
                        case ROUTINE_SYMBOL:
                        case ROWS_SYMBOL:
                        case ROW_COUNT_SYMBOL:
                        case ROW_FORMAT_SYMBOL:
                        case ROW_SYMBOL:
                        case RTREE_SYMBOL:
                        case SAVEPOINT_SYMBOL:
                        case SCHEDULE_SYMBOL:
                        case SCHEMA_NAME_SYMBOL:
                        case SECOND_MICROSECOND_SYMBOL:
                        case SECOND_SYMBOL:
                        case SECURITY_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        case SEPARATOR_SYMBOL:
                        case SERIALIZABLE_SYMBOL:
                        case SERIAL_SYMBOL:
                        case SERVER_SYMBOL:
                        case SESSION_SYMBOL:
                        case SET_SYMBOL:
                        case SHARE_SYMBOL:
                        case SHIFT_LEFT_OPERATOR:
                        case SHIFT_RIGHT_OPERATOR:
                        case SHUTDOWN_SYMBOL:
                        case SIGNED_SYMBOL:
                        case SIMPLE_SYMBOL:
                        case SINGLE_QUOTED_TEXT:
                        case SLAVE_SYMBOL:
                        case SLOW_SYMBOL:
                        case SNAPSHOT_SYMBOL:
                        case SOCKET_SYMBOL:
                        case SONAME_SYMBOL:
                        case SOUNDS_SYMBOL:
                        case SOURCE_SYMBOL:
                        case SQL_AFTER_GTIDS_SYMBOL:
                        case SQL_AFTER_MTS_GAPS_SYMBOL:
                        case SQL_BEFORE_GTIDS_SYMBOL:
                        case SQL_BUFFER_RESULT_SYMBOL:
                        case SQL_CACHE_SYMBOL:
                        case SQL_NO_CACHE_SYMBOL:
                        case SQL_THREAD_SYMBOL:
                        case STARTS_SYMBOL:
                        case START_SYMBOL:
                        case STATS_AUTO_RECALC_SYMBOL:
                        case STATS_PERSISTENT_SYMBOL:
                        case STATS_SAMPLE_PAGES_SYMBOL:
                        case STATUS_SYMBOL:
                        case STOP_SYMBOL:
                        case STORAGE_SYMBOL:
                        case STRAIGHT_JOIN_SYMBOL:
                        case STRING_SYMBOL:
                        case SUBCLASS_ORIGIN_SYMBOL:
                        case SUBDATE_SYMBOL:
                        case SUBJECT_SYMBOL:
                        case SUBPARTITIONS_SYMBOL:
                        case SUBPARTITION_SYMBOL:
                        case SUPER_SYMBOL:
                        case SUSPEND_SYMBOL:
                        case SWAPS_SYMBOL:
                        case SWITCHES_SYMBOL:
                        case TABLESPACE_SYMBOL:
                        case TABLES_SYMBOL:
                        case TABLE_CHECKSUM_SYMBOL:
                        case TABLE_NAME_SYMBOL:
                        case TEMPORARY_SYMBOL:
                        case TEMPTABLE_SYMBOL:
                        case TEXT_SYMBOL:
                        case THAN_SYMBOL:
                        case THEN_SYMBOL:
                        case TIMESTAMP_ADD_SYMBOL:
                        case TIMESTAMP_DIFF_SYMBOL:
                        case TIMESTAMP_SYMBOL:
                        case TIME_SYMBOL:
                        case TRANSACTION_SYMBOL:
                        case TRIGGERS_SYMBOL:
                        case TRUNCATE_SYMBOL:
                        case TYPES_SYMBOL:
                        case TYPE_SYMBOL:
                        case UDF_RETURNS_SYMBOL:
                        case UNCOMMITTED_SYMBOL:
                        case UNDEFINED_SYMBOL:
                        case UNDERSCORE_CHARSET:
                        case UNDOFILE_SYMBOL:
                        case UNDO_BUFFER_SIZE_SYMBOL:
                        case UNICODE_SYMBOL:
                        case UNINSTALL_SYMBOL:
                        case UNION_SYMBOL:
                        case UNKNOWN_SYMBOL:
                        case UNTIL_SYMBOL:
                        case UPGRADE_SYMBOL:
                        case USER_RESOURCES_SYMBOL:
                        case USER_SYMBOL:
                        case USE_FRM_SYMBOL:
                        case USING_SYMBOL:
                        case VALUE_SYMBOL:
                        case VARIABLES_SYMBOL:
                        case VIEW_SYMBOL:
                        case WAIT_SYMBOL:
                        case WARNINGS_SYMBOL:
                        case WEEK_SYMBOL:
                        case WEIGHT_STRING_SYMBOL:
                        case WHEN_SYMBOL:
                        case WHERE_SYMBOL:
                        case WITH_SYMBOL:
                        case WORK_SYMBOL:
                        case WRAPPER_SYMBOL:
                        case X509_SYMBOL:
                        case XA_SYMBOL:
                        case XML_SYMBOL:
                        case XOR_SYMBOL:
                        case YEAR_MONTH_SYMBOL:
                        case YEAR_SYMBOL:
                        case 733:
                        	{
                        		alt527=3;
                        	}
                            break;
                        case OPEN_PAR_SYMBOL:
                        	{
                        		{
                        		    int LA527_3538 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=4;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 3538;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 527;
                            EXCEPTION->state        = 69;


                            goto ruleprimaryEx;

                        }

                    }
                    else if ( (LA527_0 == POINT_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case OPEN_PAR_SYMBOL:
                        	{
                        		{
                        		    int LA527_3539 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=4;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 3539;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case DOT_SYMBOL:
                        	{
                        		{
                        		    int LA527_3540 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 3540;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case EOF:
                        case ACTION_SYMBOL:
                        case ADDDATE_SYMBOL:
                        case AFTER_SYMBOL:
                        case AGAINST_SYMBOL:
                        case AGGREGATE_SYMBOL:
                        case ALGORITHM_SYMBOL:
                        case ANALYZE_SYMBOL:
                        case AND_SYMBOL:
                        case ANY_SYMBOL:
                        case ASCII_SYMBOL:
                        case ASC_SYMBOL:
                        case AS_SYMBOL:
                        case AT_SYMBOL:
                        case AUTHORS_SYMBOL:
                        case AUTOEXTEND_SIZE_SYMBOL:
                        case AUTO_INCREMENT_SYMBOL:
                        case AVG_ROW_LENGTH_SYMBOL:
                        case AVG_SYMBOL:
                        case BACKUP_SYMBOL:
                        case BACK_TICK_QUOTED_ID:
                        case BEGIN_SYMBOL:
                        case BETWEEN_SYMBOL:
                        case BINLOG_SYMBOL:
                        case BITWISE_AND_OPERATOR:
                        case BITWISE_OR_OPERATOR:
                        case BITWISE_XOR_OPERATOR:
                        case BIT_SYMBOL:
                        case BLOCK_SYMBOL:
                        case BOOLEAN_SYMBOL:
                        case BOOL_SYMBOL:
                        case BTREE_SYMBOL:
                        case BYTE_SYMBOL:
                        case CACHE_SYMBOL:
                        case CASCADED_SYMBOL:
                        case CATALOG_NAME_SYMBOL:
                        case CHAIN_SYMBOL:
                        case CHANGED_SYMBOL:
                        case CHARSET_SYMBOL:
                        case CHECKSUM_SYMBOL:
                        case CIPHER_SYMBOL:
                        case CLASS_ORIGIN_SYMBOL:
                        case CLIENT_SYMBOL:
                        case CLOSE_PAR_SYMBOL:
                        case CLOSE_SYMBOL:
                        case COALESCE_SYMBOL:
                        case CODE_SYMBOL:
                        case COLLATE_SYMBOL:
                        case COLLATION_SYMBOL:
                        case COLUMNS_SYMBOL:
                        case COLUMN_FORMAT_SYMBOL:
                        case COLUMN_NAME_SYMBOL:
                        case COMMA_SYMBOL:
                        case COMMENT_SYMBOL:
                        case COMMITTED_SYMBOL:
                        case COMMIT_SYMBOL:
                        case COMPACT_SYMBOL:
                        case COMPLETION_SYMBOL:
                        case COMPRESSED_SYMBOL:
                        case CONCAT_PIPES_SYMBOL:
                        case CONCURRENT_SYMBOL:
                        case CONNECTION_SYMBOL:
                        case CONSISTENT_SYMBOL:
                        case CONSTRAINT_CATALOG_SYMBOL:
                        case CONSTRAINT_NAME_SYMBOL:
                        case CONSTRAINT_SCHEMA_SYMBOL:
                        case CONTAINS_SYMBOL:
                        case CONTEXT_SYMBOL:
                        case CONTRIBUTORS_SYMBOL:
                        case CPU_SYMBOL:
                        case CROSS_SYMBOL:
                        case CUBE_SYMBOL:
                        case CURRENT_SYMBOL:
                        case CURSOR_NAME_SYMBOL:
                        case DATAFILE_SYMBOL:
                        case DATA_SYMBOL:
                        case DATETIME_SYMBOL:
                        case DATE_SYMBOL:
                        case DAY_HOUR_SYMBOL:
                        case DAY_MICROSECOND_SYMBOL:
                        case DAY_MINUTE_SYMBOL:
                        case DAY_SECOND_SYMBOL:
                        case DAY_SYMBOL:
                        case DEALLOCATE_SYMBOL:
                        case DEFAULT_AUTH_SYMBOL:
                        case DEFINER_SYMBOL:
                        case DELAY_KEY_WRITE_SYMBOL:
                        case DESC_SYMBOL:
                        case DES_KEY_FILE_SYMBOL:
                        case DIAGNOSTICS_SYMBOL:
                        case DIRECTORY_SYMBOL:
                        case DISABLE_SYMBOL:
                        case DISCARD_SYMBOL:
                        case DISK_SYMBOL:
                        case DIV_OPERATOR:
                        case DIV_SYMBOL:
                        case DOUBLE_QUOTED_TEXT:
                        case DO_SYMBOL:
                        case DUMPFILE_SYMBOL:
                        case DUPLICATE_SYMBOL:
                        case DYNAMIC_SYMBOL:
                        case ELSE_SYMBOL:
                        case ENABLE_SYMBOL:
                        case ENDS_SYMBOL:
                        case END_SYMBOL:
                        case ENGINES_SYMBOL:
                        case ENGINE_SYMBOL:
                        case ENUM_SYMBOL:
                        case EQUAL_OPERATOR:
                        case ERRORS_SYMBOL:
                        case ERROR_SYMBOL:
                        case ESCAPE_SYMBOL:
                        case EVENTS_SYMBOL:
                        case EVENT_SYMBOL:
                        case EVERY_SYMBOL:
                        case EXECUTE_SYMBOL:
                        case EXPANSION_SYMBOL:
                        case EXPORT_SYMBOL:
                        case EXTENDED_SYMBOL:
                        case EXTENT_SIZE_SYMBOL:
                        case FAST_SYMBOL:
                        case FAULTS_SYMBOL:
                        case FILE_SYMBOL:
                        case FIRST_SYMBOL:
                        case FIXED_SYMBOL:
                        case FLUSH_SYMBOL:
                        case FORMAT_SYMBOL:
                        case FOR_SYMBOL:
                        case FOUND_SYMBOL:
                        case FRAC_SECOND_SYMBOL:
                        case FROM_SYMBOL:
                        case FULL_SYMBOL:
                        case FUNCTION_SYMBOL:
                        case GENERAL_SYMBOL:
                        case GEOMETRYCOLLECTION_SYMBOL:
                        case GEOMETRY_SYMBOL:
                        case GET_FORMAT_SYMBOL:
                        case GLOBAL_SYMBOL:
                        case GRANTS_SYMBOL:
                        case GREATER_OR_EQUAL_OPERATOR:
                        case GREATER_THAN_OPERATOR:
                        case GROUP_SYMBOL:
                        case HANDLER_SYMBOL:
                        case HASH_SYMBOL:
                        case HAVING_SYMBOL:
                        case HELP_SYMBOL:
                        case HOSTS_SYMBOL:
                        case HOST_SYMBOL:
                        case HOUR_MICROSECOND_SYMBOL:
                        case HOUR_MINUTE_SYMBOL:
                        case HOUR_SECOND_SYMBOL:
                        case HOUR_SYMBOL:
                        case IDENTIFIED_SYMBOL:
                        case IDENTIFIER:
                        case IGNORE_SERVER_IDS_SYMBOL:
                        case IMPORT_SYMBOL:
                        case INDEXES_SYMBOL:
                        case INITIAL_SIZE_SYMBOL:
                        case INNER_SYMBOL:
                        case INNODB_SYMBOL:
                        case INSERT_METHOD_SYMBOL:
                        case INSTALL_SYMBOL:
                        case INTO_SYMBOL:
                        case INVOKER_SYMBOL:
                        case IN_SYMBOL:
                        case IO_SYMBOL:
                        case IPC_SYMBOL:
                        case ISOLATION_SYMBOL:
                        case ISSUER_SYMBOL:
                        case IS_SYMBOL:
                        case JOIN_SYMBOL:
                        case KEY_BLOCK_SIZE_SYMBOL:
                        case LANGUAGE_SYMBOL:
                        case LAST_SYMBOL:
                        case LEAVES_SYMBOL:
                        case LEFT_SYMBOL:
                        case LESS_OR_EQUAL_OPERATOR:
                        case LESS_SYMBOL:
                        case LESS_THAN_OPERATOR:
                        case LEVEL_SYMBOL:
                        case LIKE_SYMBOL:
                        case LIMIT_SYMBOL:
                        case LINESTRING_SYMBOL:
                        case LIST_SYMBOL:
                        case LOCAL_SYMBOL:
                        case LOCKS_SYMBOL:
                        case LOCK_SYMBOL:
                        case LOGFILE_SYMBOL:
                        case LOGICAL_AND_OPERATOR:
                        case LOGICAL_OR_OPERATOR:
                        case LOGS_SYMBOL:
                        case MASTER_AUTO_POSITION_SYMBOL:
                        case MASTER_CONNECT_RETRY_SYMBOL:
                        case MASTER_DELAY_SYMBOL:
                        case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                        case MASTER_HOST_SYMBOL:
                        case MASTER_LOG_FILE_SYMBOL:
                        case MASTER_LOG_POS_SYMBOL:
                        case MASTER_PASSWORD_SYMBOL:
                        case MASTER_PORT_SYMBOL:
                        case MASTER_RETRY_COUNT_SYMBOL:
                        case MASTER_SERVER_ID_SYMBOL:
                        case MASTER_SSL_CAPATH_SYMBOL:
                        case MASTER_SSL_CA_SYMBOL:
                        case MASTER_SSL_CERT_SYMBOL:
                        case MASTER_SSL_CIPHER_SYMBOL:
                        case MASTER_SSL_CRLPATH_SYMBOL:
                        case MASTER_SSL_CRL_SYMBOL:
                        case MASTER_SSL_KEY_SYMBOL:
                        case MASTER_SSL_SYMBOL:
                        case MASTER_SYMBOL:
                        case MASTER_USER_SYMBOL:
                        case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                        case MAX_QUERIES_PER_HOUR_SYMBOL:
                        case MAX_ROWS_SYMBOL:
                        case MAX_SIZE_SYMBOL:
                        case MAX_UPDATES_PER_HOUR_SYMBOL:
                        case MAX_USER_CONNECTIONS_SYMBOL:
                        case MEDIUM_SYMBOL:
                        case MEMORY_SYMBOL:
                        case MERGE_SYMBOL:
                        case MESSAGE_TEXT_SYMBOL:
                        case MICROSECOND_SYMBOL:
                        case MIGRATE_SYMBOL:
                        case MINUS_OPERATOR:
                        case MINUTE_MICROSECOND_SYMBOL:
                        case MINUTE_SECOND_SYMBOL:
                        case MINUTE_SYMBOL:
                        case MIN_ROWS_SYMBOL:
                        case MODE_SYMBOL:
                        case MODIFY_SYMBOL:
                        case MOD_OPERATOR:
                        case MOD_SYMBOL:
                        case MONTH_SYMBOL:
                        case MULTILINESTRING_SYMBOL:
                        case MULTIPOINT_SYMBOL:
                        case MULTIPOLYGON_SYMBOL:
                        case MULT_OPERATOR:
                        case MUTEX_SYMBOL:
                        case MYSQL_ERRNO_SYMBOL:
                        case NAMES_SYMBOL:
                        case NAME_SYMBOL:
                        case NATIONAL_SYMBOL:
                        case NATURAL_SYMBOL:
                        case NCHAR_SYMBOL:
                        case NCHAR_TEXT:
                        case NDBCLUSTER_SYMBOL:
                        case NEW_SYMBOL:
                        case NEXT_SYMBOL:
                        case NODEGROUP_SYMBOL:
                        case NONE_SYMBOL:
                        case NOT_EQUAL2_OPERATOR:
                        case NOT_EQUAL_OPERATOR:
                        case NOT_SYMBOL:
                        case NO_SYMBOL:
                        case NO_WAIT_SYMBOL:
                        case NULL_SAFE_EQUAL_OPERATOR:
                        case NUMBER_SYMBOL:
                        case NVARCHAR_SYMBOL:
                        case OFFSET_SYMBOL:
                        case OLD_PASSWORD_SYMBOL:
                        case ONE_SHOT_SYMBOL:
                        case ONE_SYMBOL:
                        case ON_SYMBOL:
                        case OPEN_SYMBOL:
                        case OPTIONS_SYMBOL:
                        case ORDER_SYMBOL:
                        case OR_SYMBOL:
                        case OWNER_SYMBOL:
                        case PACK_KEYS_SYMBOL:
                        case PAGE_SYMBOL:
                        case PARSER_SYMBOL:
                        case PARTIAL_SYMBOL:
                        case PARTITIONING_SYMBOL:
                        case PARTITIONS_SYMBOL:
                        case PARTITION_SYMBOL:
                        case PASSWORD_SYMBOL:
                        case PHASE_SYMBOL:
                        case PLUGINS_SYMBOL:
                        case PLUGIN_DIR_SYMBOL:
                        case PLUGIN_SYMBOL:
                        case PLUS_OPERATOR:
                        case POINT_SYMBOL:
                        case POLYGON_SYMBOL:
                        case PORT_SYMBOL:
                        case PREPARE_SYMBOL:
                        case PRESERVE_SYMBOL:
                        case PREV_SYMBOL:
                        case PRIVILEGES_SYMBOL:
                        case PROCEDURE_SYMBOL:
                        case PROCESSLIST_SYMBOL:
                        case PROCESS_SYMBOL:
                        case PROFILES_SYMBOL:
                        case PROFILE_SYMBOL:
                        case PROXY_SYMBOL:
                        case QUARTER_SYMBOL:
                        case QUERY_SYMBOL:
                        case QUICK_SYMBOL:
                        case READ_ONLY_SYMBOL:
                        case REBUILD_SYMBOL:
                        case RECOVER_SYMBOL:
                        case REDOFILE_SYMBOL:
                        case REDO_BUFFER_SIZE_SYMBOL:
                        case REDUNDANT_SYMBOL:
                        case REGEXP_SYMBOL:
                        case RELAYLOG_SYMBOL:
                        case RELAY_LOG_FILE_SYMBOL:
                        case RELAY_LOG_POS_SYMBOL:
                        case RELAY_SYMBOL:
                        case RELAY_THREAD_SYMBOL:
                        case RELOAD_SYMBOL:
                        case REMOVE_SYMBOL:
                        case RENAME_SYMBOL:
                        case REORGANIZE_SYMBOL:
                        case REPAIR_SYMBOL:
                        case REPEATABLE_SYMBOL:
                        case REPLICATION_SYMBOL:
                        case RESET_SYMBOL:
                        case RESTORE_SYMBOL:
                        case RESUME_SYMBOL:
                        case RETURNED_SQLSTATE_SYMBOL:
                        case RETURNS_SYMBOL:
                        case REVERSE_SYMBOL:
                        case RIGHT_SYMBOL:
                        case ROLLBACK_SYMBOL:
                        case ROLLUP_SYMBOL:
                        case ROUTINE_SYMBOL:
                        case ROWS_SYMBOL:
                        case ROW_COUNT_SYMBOL:
                        case ROW_FORMAT_SYMBOL:
                        case ROW_SYMBOL:
                        case RTREE_SYMBOL:
                        case SAVEPOINT_SYMBOL:
                        case SCHEDULE_SYMBOL:
                        case SCHEMA_NAME_SYMBOL:
                        case SECOND_MICROSECOND_SYMBOL:
                        case SECOND_SYMBOL:
                        case SECURITY_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        case SEPARATOR_SYMBOL:
                        case SERIALIZABLE_SYMBOL:
                        case SERIAL_SYMBOL:
                        case SERVER_SYMBOL:
                        case SESSION_SYMBOL:
                        case SET_SYMBOL:
                        case SHARE_SYMBOL:
                        case SHIFT_LEFT_OPERATOR:
                        case SHIFT_RIGHT_OPERATOR:
                        case SHUTDOWN_SYMBOL:
                        case SIGNED_SYMBOL:
                        case SIMPLE_SYMBOL:
                        case SINGLE_QUOTED_TEXT:
                        case SLAVE_SYMBOL:
                        case SLOW_SYMBOL:
                        case SNAPSHOT_SYMBOL:
                        case SOCKET_SYMBOL:
                        case SONAME_SYMBOL:
                        case SOUNDS_SYMBOL:
                        case SOURCE_SYMBOL:
                        case SQL_AFTER_GTIDS_SYMBOL:
                        case SQL_AFTER_MTS_GAPS_SYMBOL:
                        case SQL_BEFORE_GTIDS_SYMBOL:
                        case SQL_BUFFER_RESULT_SYMBOL:
                        case SQL_CACHE_SYMBOL:
                        case SQL_NO_CACHE_SYMBOL:
                        case SQL_THREAD_SYMBOL:
                        case STARTS_SYMBOL:
                        case START_SYMBOL:
                        case STATS_AUTO_RECALC_SYMBOL:
                        case STATS_PERSISTENT_SYMBOL:
                        case STATS_SAMPLE_PAGES_SYMBOL:
                        case STATUS_SYMBOL:
                        case STOP_SYMBOL:
                        case STORAGE_SYMBOL:
                        case STRAIGHT_JOIN_SYMBOL:
                        case STRING_SYMBOL:
                        case SUBCLASS_ORIGIN_SYMBOL:
                        case SUBDATE_SYMBOL:
                        case SUBJECT_SYMBOL:
                        case SUBPARTITIONS_SYMBOL:
                        case SUBPARTITION_SYMBOL:
                        case SUPER_SYMBOL:
                        case SUSPEND_SYMBOL:
                        case SWAPS_SYMBOL:
                        case SWITCHES_SYMBOL:
                        case TABLESPACE_SYMBOL:
                        case TABLES_SYMBOL:
                        case TABLE_CHECKSUM_SYMBOL:
                        case TABLE_NAME_SYMBOL:
                        case TEMPORARY_SYMBOL:
                        case TEMPTABLE_SYMBOL:
                        case TEXT_SYMBOL:
                        case THAN_SYMBOL:
                        case THEN_SYMBOL:
                        case TIMESTAMP_ADD_SYMBOL:
                        case TIMESTAMP_DIFF_SYMBOL:
                        case TIMESTAMP_SYMBOL:
                        case TIME_SYMBOL:
                        case TRANSACTION_SYMBOL:
                        case TRIGGERS_SYMBOL:
                        case TRUNCATE_SYMBOL:
                        case TYPES_SYMBOL:
                        case TYPE_SYMBOL:
                        case UDF_RETURNS_SYMBOL:
                        case UNCOMMITTED_SYMBOL:
                        case UNDEFINED_SYMBOL:
                        case UNDERSCORE_CHARSET:
                        case UNDOFILE_SYMBOL:
                        case UNDO_BUFFER_SIZE_SYMBOL:
                        case UNICODE_SYMBOL:
                        case UNINSTALL_SYMBOL:
                        case UNION_SYMBOL:
                        case UNKNOWN_SYMBOL:
                        case UNTIL_SYMBOL:
                        case UPGRADE_SYMBOL:
                        case USER_RESOURCES_SYMBOL:
                        case USER_SYMBOL:
                        case USE_FRM_SYMBOL:
                        case USING_SYMBOL:
                        case VALUE_SYMBOL:
                        case VARIABLES_SYMBOL:
                        case VIEW_SYMBOL:
                        case WAIT_SYMBOL:
                        case WARNINGS_SYMBOL:
                        case WEEK_SYMBOL:
                        case WEIGHT_STRING_SYMBOL:
                        case WHEN_SYMBOL:
                        case WHERE_SYMBOL:
                        case WITH_SYMBOL:
                        case WORK_SYMBOL:
                        case WRAPPER_SYMBOL:
                        case X509_SYMBOL:
                        case XA_SYMBOL:
                        case XML_SYMBOL:
                        case XOR_SYMBOL:
                        case YEAR_MONTH_SYMBOL:
                        case YEAR_SYMBOL:
                        case 733:
                        	{
                        		alt527=3;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 527;
                            EXCEPTION->state        = 70;


                            goto ruleprimaryEx;

                        }

                    }
                    else if ( (LA527_0 == POLYGON_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case DOT_SYMBOL:
                        	{
                        		{
                        		    int LA527_3632 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 3632;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case EOF:
                        case ACTION_SYMBOL:
                        case ADDDATE_SYMBOL:
                        case AFTER_SYMBOL:
                        case AGAINST_SYMBOL:
                        case AGGREGATE_SYMBOL:
                        case ALGORITHM_SYMBOL:
                        case ANALYZE_SYMBOL:
                        case AND_SYMBOL:
                        case ANY_SYMBOL:
                        case ASCII_SYMBOL:
                        case ASC_SYMBOL:
                        case AS_SYMBOL:
                        case AT_SYMBOL:
                        case AUTHORS_SYMBOL:
                        case AUTOEXTEND_SIZE_SYMBOL:
                        case AUTO_INCREMENT_SYMBOL:
                        case AVG_ROW_LENGTH_SYMBOL:
                        case AVG_SYMBOL:
                        case BACKUP_SYMBOL:
                        case BACK_TICK_QUOTED_ID:
                        case BEGIN_SYMBOL:
                        case BETWEEN_SYMBOL:
                        case BINLOG_SYMBOL:
                        case BITWISE_AND_OPERATOR:
                        case BITWISE_OR_OPERATOR:
                        case BITWISE_XOR_OPERATOR:
                        case BIT_SYMBOL:
                        case BLOCK_SYMBOL:
                        case BOOLEAN_SYMBOL:
                        case BOOL_SYMBOL:
                        case BTREE_SYMBOL:
                        case BYTE_SYMBOL:
                        case CACHE_SYMBOL:
                        case CASCADED_SYMBOL:
                        case CATALOG_NAME_SYMBOL:
                        case CHAIN_SYMBOL:
                        case CHANGED_SYMBOL:
                        case CHARSET_SYMBOL:
                        case CHECKSUM_SYMBOL:
                        case CIPHER_SYMBOL:
                        case CLASS_ORIGIN_SYMBOL:
                        case CLIENT_SYMBOL:
                        case CLOSE_PAR_SYMBOL:
                        case CLOSE_SYMBOL:
                        case COALESCE_SYMBOL:
                        case CODE_SYMBOL:
                        case COLLATE_SYMBOL:
                        case COLLATION_SYMBOL:
                        case COLUMNS_SYMBOL:
                        case COLUMN_FORMAT_SYMBOL:
                        case COLUMN_NAME_SYMBOL:
                        case COMMA_SYMBOL:
                        case COMMENT_SYMBOL:
                        case COMMITTED_SYMBOL:
                        case COMMIT_SYMBOL:
                        case COMPACT_SYMBOL:
                        case COMPLETION_SYMBOL:
                        case COMPRESSED_SYMBOL:
                        case CONCAT_PIPES_SYMBOL:
                        case CONCURRENT_SYMBOL:
                        case CONNECTION_SYMBOL:
                        case CONSISTENT_SYMBOL:
                        case CONSTRAINT_CATALOG_SYMBOL:
                        case CONSTRAINT_NAME_SYMBOL:
                        case CONSTRAINT_SCHEMA_SYMBOL:
                        case CONTAINS_SYMBOL:
                        case CONTEXT_SYMBOL:
                        case CONTRIBUTORS_SYMBOL:
                        case CPU_SYMBOL:
                        case CROSS_SYMBOL:
                        case CUBE_SYMBOL:
                        case CURRENT_SYMBOL:
                        case CURSOR_NAME_SYMBOL:
                        case DATAFILE_SYMBOL:
                        case DATA_SYMBOL:
                        case DATETIME_SYMBOL:
                        case DATE_SYMBOL:
                        case DAY_HOUR_SYMBOL:
                        case DAY_MICROSECOND_SYMBOL:
                        case DAY_MINUTE_SYMBOL:
                        case DAY_SECOND_SYMBOL:
                        case DAY_SYMBOL:
                        case DEALLOCATE_SYMBOL:
                        case DEFAULT_AUTH_SYMBOL:
                        case DEFINER_SYMBOL:
                        case DELAY_KEY_WRITE_SYMBOL:
                        case DESC_SYMBOL:
                        case DES_KEY_FILE_SYMBOL:
                        case DIAGNOSTICS_SYMBOL:
                        case DIRECTORY_SYMBOL:
                        case DISABLE_SYMBOL:
                        case DISCARD_SYMBOL:
                        case DISK_SYMBOL:
                        case DIV_OPERATOR:
                        case DIV_SYMBOL:
                        case DOUBLE_QUOTED_TEXT:
                        case DO_SYMBOL:
                        case DUMPFILE_SYMBOL:
                        case DUPLICATE_SYMBOL:
                        case DYNAMIC_SYMBOL:
                        case ELSE_SYMBOL:
                        case ENABLE_SYMBOL:
                        case ENDS_SYMBOL:
                        case END_SYMBOL:
                        case ENGINES_SYMBOL:
                        case ENGINE_SYMBOL:
                        case ENUM_SYMBOL:
                        case EQUAL_OPERATOR:
                        case ERRORS_SYMBOL:
                        case ERROR_SYMBOL:
                        case ESCAPE_SYMBOL:
                        case EVENTS_SYMBOL:
                        case EVENT_SYMBOL:
                        case EVERY_SYMBOL:
                        case EXECUTE_SYMBOL:
                        case EXPANSION_SYMBOL:
                        case EXPORT_SYMBOL:
                        case EXTENDED_SYMBOL:
                        case EXTENT_SIZE_SYMBOL:
                        case FAST_SYMBOL:
                        case FAULTS_SYMBOL:
                        case FILE_SYMBOL:
                        case FIRST_SYMBOL:
                        case FIXED_SYMBOL:
                        case FLUSH_SYMBOL:
                        case FORMAT_SYMBOL:
                        case FOR_SYMBOL:
                        case FOUND_SYMBOL:
                        case FRAC_SECOND_SYMBOL:
                        case FROM_SYMBOL:
                        case FULL_SYMBOL:
                        case FUNCTION_SYMBOL:
                        case GENERAL_SYMBOL:
                        case GEOMETRYCOLLECTION_SYMBOL:
                        case GEOMETRY_SYMBOL:
                        case GET_FORMAT_SYMBOL:
                        case GLOBAL_SYMBOL:
                        case GRANTS_SYMBOL:
                        case GREATER_OR_EQUAL_OPERATOR:
                        case GREATER_THAN_OPERATOR:
                        case GROUP_SYMBOL:
                        case HANDLER_SYMBOL:
                        case HASH_SYMBOL:
                        case HAVING_SYMBOL:
                        case HELP_SYMBOL:
                        case HOSTS_SYMBOL:
                        case HOST_SYMBOL:
                        case HOUR_MICROSECOND_SYMBOL:
                        case HOUR_MINUTE_SYMBOL:
                        case HOUR_SECOND_SYMBOL:
                        case HOUR_SYMBOL:
                        case IDENTIFIED_SYMBOL:
                        case IDENTIFIER:
                        case IGNORE_SERVER_IDS_SYMBOL:
                        case IMPORT_SYMBOL:
                        case INDEXES_SYMBOL:
                        case INITIAL_SIZE_SYMBOL:
                        case INNER_SYMBOL:
                        case INNODB_SYMBOL:
                        case INSERT_METHOD_SYMBOL:
                        case INSTALL_SYMBOL:
                        case INTO_SYMBOL:
                        case INVOKER_SYMBOL:
                        case IN_SYMBOL:
                        case IO_SYMBOL:
                        case IPC_SYMBOL:
                        case ISOLATION_SYMBOL:
                        case ISSUER_SYMBOL:
                        case IS_SYMBOL:
                        case JOIN_SYMBOL:
                        case KEY_BLOCK_SIZE_SYMBOL:
                        case LANGUAGE_SYMBOL:
                        case LAST_SYMBOL:
                        case LEAVES_SYMBOL:
                        case LEFT_SYMBOL:
                        case LESS_OR_EQUAL_OPERATOR:
                        case LESS_SYMBOL:
                        case LESS_THAN_OPERATOR:
                        case LEVEL_SYMBOL:
                        case LIKE_SYMBOL:
                        case LIMIT_SYMBOL:
                        case LINESTRING_SYMBOL:
                        case LIST_SYMBOL:
                        case LOCAL_SYMBOL:
                        case LOCKS_SYMBOL:
                        case LOCK_SYMBOL:
                        case LOGFILE_SYMBOL:
                        case LOGICAL_AND_OPERATOR:
                        case LOGICAL_OR_OPERATOR:
                        case LOGS_SYMBOL:
                        case MASTER_AUTO_POSITION_SYMBOL:
                        case MASTER_CONNECT_RETRY_SYMBOL:
                        case MASTER_DELAY_SYMBOL:
                        case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                        case MASTER_HOST_SYMBOL:
                        case MASTER_LOG_FILE_SYMBOL:
                        case MASTER_LOG_POS_SYMBOL:
                        case MASTER_PASSWORD_SYMBOL:
                        case MASTER_PORT_SYMBOL:
                        case MASTER_RETRY_COUNT_SYMBOL:
                        case MASTER_SERVER_ID_SYMBOL:
                        case MASTER_SSL_CAPATH_SYMBOL:
                        case MASTER_SSL_CA_SYMBOL:
                        case MASTER_SSL_CERT_SYMBOL:
                        case MASTER_SSL_CIPHER_SYMBOL:
                        case MASTER_SSL_CRLPATH_SYMBOL:
                        case MASTER_SSL_CRL_SYMBOL:
                        case MASTER_SSL_KEY_SYMBOL:
                        case MASTER_SSL_SYMBOL:
                        case MASTER_SYMBOL:
                        case MASTER_USER_SYMBOL:
                        case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                        case MAX_QUERIES_PER_HOUR_SYMBOL:
                        case MAX_ROWS_SYMBOL:
                        case MAX_SIZE_SYMBOL:
                        case MAX_UPDATES_PER_HOUR_SYMBOL:
                        case MAX_USER_CONNECTIONS_SYMBOL:
                        case MEDIUM_SYMBOL:
                        case MEMORY_SYMBOL:
                        case MERGE_SYMBOL:
                        case MESSAGE_TEXT_SYMBOL:
                        case MICROSECOND_SYMBOL:
                        case MIGRATE_SYMBOL:
                        case MINUS_OPERATOR:
                        case MINUTE_MICROSECOND_SYMBOL:
                        case MINUTE_SECOND_SYMBOL:
                        case MINUTE_SYMBOL:
                        case MIN_ROWS_SYMBOL:
                        case MODE_SYMBOL:
                        case MODIFY_SYMBOL:
                        case MOD_OPERATOR:
                        case MOD_SYMBOL:
                        case MONTH_SYMBOL:
                        case MULTILINESTRING_SYMBOL:
                        case MULTIPOINT_SYMBOL:
                        case MULTIPOLYGON_SYMBOL:
                        case MULT_OPERATOR:
                        case MUTEX_SYMBOL:
                        case MYSQL_ERRNO_SYMBOL:
                        case NAMES_SYMBOL:
                        case NAME_SYMBOL:
                        case NATIONAL_SYMBOL:
                        case NATURAL_SYMBOL:
                        case NCHAR_SYMBOL:
                        case NCHAR_TEXT:
                        case NDBCLUSTER_SYMBOL:
                        case NEW_SYMBOL:
                        case NEXT_SYMBOL:
                        case NODEGROUP_SYMBOL:
                        case NONE_SYMBOL:
                        case NOT_EQUAL2_OPERATOR:
                        case NOT_EQUAL_OPERATOR:
                        case NOT_SYMBOL:
                        case NO_SYMBOL:
                        case NO_WAIT_SYMBOL:
                        case NULL_SAFE_EQUAL_OPERATOR:
                        case NUMBER_SYMBOL:
                        case NVARCHAR_SYMBOL:
                        case OFFSET_SYMBOL:
                        case OLD_PASSWORD_SYMBOL:
                        case ONE_SHOT_SYMBOL:
                        case ONE_SYMBOL:
                        case ON_SYMBOL:
                        case OPEN_SYMBOL:
                        case OPTIONS_SYMBOL:
                        case ORDER_SYMBOL:
                        case OR_SYMBOL:
                        case OWNER_SYMBOL:
                        case PACK_KEYS_SYMBOL:
                        case PAGE_SYMBOL:
                        case PARSER_SYMBOL:
                        case PARTIAL_SYMBOL:
                        case PARTITIONING_SYMBOL:
                        case PARTITIONS_SYMBOL:
                        case PARTITION_SYMBOL:
                        case PASSWORD_SYMBOL:
                        case PHASE_SYMBOL:
                        case PLUGINS_SYMBOL:
                        case PLUGIN_DIR_SYMBOL:
                        case PLUGIN_SYMBOL:
                        case PLUS_OPERATOR:
                        case POINT_SYMBOL:
                        case POLYGON_SYMBOL:
                        case PORT_SYMBOL:
                        case PREPARE_SYMBOL:
                        case PRESERVE_SYMBOL:
                        case PREV_SYMBOL:
                        case PRIVILEGES_SYMBOL:
                        case PROCEDURE_SYMBOL:
                        case PROCESSLIST_SYMBOL:
                        case PROCESS_SYMBOL:
                        case PROFILES_SYMBOL:
                        case PROFILE_SYMBOL:
                        case PROXY_SYMBOL:
                        case QUARTER_SYMBOL:
                        case QUERY_SYMBOL:
                        case QUICK_SYMBOL:
                        case READ_ONLY_SYMBOL:
                        case REBUILD_SYMBOL:
                        case RECOVER_SYMBOL:
                        case REDOFILE_SYMBOL:
                        case REDO_BUFFER_SIZE_SYMBOL:
                        case REDUNDANT_SYMBOL:
                        case REGEXP_SYMBOL:
                        case RELAYLOG_SYMBOL:
                        case RELAY_LOG_FILE_SYMBOL:
                        case RELAY_LOG_POS_SYMBOL:
                        case RELAY_SYMBOL:
                        case RELAY_THREAD_SYMBOL:
                        case RELOAD_SYMBOL:
                        case REMOVE_SYMBOL:
                        case RENAME_SYMBOL:
                        case REORGANIZE_SYMBOL:
                        case REPAIR_SYMBOL:
                        case REPEATABLE_SYMBOL:
                        case REPLICATION_SYMBOL:
                        case RESET_SYMBOL:
                        case RESTORE_SYMBOL:
                        case RESUME_SYMBOL:
                        case RETURNED_SQLSTATE_SYMBOL:
                        case RETURNS_SYMBOL:
                        case REVERSE_SYMBOL:
                        case RIGHT_SYMBOL:
                        case ROLLBACK_SYMBOL:
                        case ROLLUP_SYMBOL:
                        case ROUTINE_SYMBOL:
                        case ROWS_SYMBOL:
                        case ROW_COUNT_SYMBOL:
                        case ROW_FORMAT_SYMBOL:
                        case ROW_SYMBOL:
                        case RTREE_SYMBOL:
                        case SAVEPOINT_SYMBOL:
                        case SCHEDULE_SYMBOL:
                        case SCHEMA_NAME_SYMBOL:
                        case SECOND_MICROSECOND_SYMBOL:
                        case SECOND_SYMBOL:
                        case SECURITY_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        case SEPARATOR_SYMBOL:
                        case SERIALIZABLE_SYMBOL:
                        case SERIAL_SYMBOL:
                        case SERVER_SYMBOL:
                        case SESSION_SYMBOL:
                        case SET_SYMBOL:
                        case SHARE_SYMBOL:
                        case SHIFT_LEFT_OPERATOR:
                        case SHIFT_RIGHT_OPERATOR:
                        case SHUTDOWN_SYMBOL:
                        case SIGNED_SYMBOL:
                        case SIMPLE_SYMBOL:
                        case SINGLE_QUOTED_TEXT:
                        case SLAVE_SYMBOL:
                        case SLOW_SYMBOL:
                        case SNAPSHOT_SYMBOL:
                        case SOCKET_SYMBOL:
                        case SONAME_SYMBOL:
                        case SOUNDS_SYMBOL:
                        case SOURCE_SYMBOL:
                        case SQL_AFTER_GTIDS_SYMBOL:
                        case SQL_AFTER_MTS_GAPS_SYMBOL:
                        case SQL_BEFORE_GTIDS_SYMBOL:
                        case SQL_BUFFER_RESULT_SYMBOL:
                        case SQL_CACHE_SYMBOL:
                        case SQL_NO_CACHE_SYMBOL:
                        case SQL_THREAD_SYMBOL:
                        case STARTS_SYMBOL:
                        case START_SYMBOL:
                        case STATS_AUTO_RECALC_SYMBOL:
                        case STATS_PERSISTENT_SYMBOL:
                        case STATS_SAMPLE_PAGES_SYMBOL:
                        case STATUS_SYMBOL:
                        case STOP_SYMBOL:
                        case STORAGE_SYMBOL:
                        case STRAIGHT_JOIN_SYMBOL:
                        case STRING_SYMBOL:
                        case SUBCLASS_ORIGIN_SYMBOL:
                        case SUBDATE_SYMBOL:
                        case SUBJECT_SYMBOL:
                        case SUBPARTITIONS_SYMBOL:
                        case SUBPARTITION_SYMBOL:
                        case SUPER_SYMBOL:
                        case SUSPEND_SYMBOL:
                        case SWAPS_SYMBOL:
                        case SWITCHES_SYMBOL:
                        case TABLESPACE_SYMBOL:
                        case TABLES_SYMBOL:
                        case TABLE_CHECKSUM_SYMBOL:
                        case TABLE_NAME_SYMBOL:
                        case TEMPORARY_SYMBOL:
                        case TEMPTABLE_SYMBOL:
                        case TEXT_SYMBOL:
                        case THAN_SYMBOL:
                        case THEN_SYMBOL:
                        case TIMESTAMP_ADD_SYMBOL:
                        case TIMESTAMP_DIFF_SYMBOL:
                        case TIMESTAMP_SYMBOL:
                        case TIME_SYMBOL:
                        case TRANSACTION_SYMBOL:
                        case TRIGGERS_SYMBOL:
                        case TRUNCATE_SYMBOL:
                        case TYPES_SYMBOL:
                        case TYPE_SYMBOL:
                        case UDF_RETURNS_SYMBOL:
                        case UNCOMMITTED_SYMBOL:
                        case UNDEFINED_SYMBOL:
                        case UNDERSCORE_CHARSET:
                        case UNDOFILE_SYMBOL:
                        case UNDO_BUFFER_SIZE_SYMBOL:
                        case UNICODE_SYMBOL:
                        case UNINSTALL_SYMBOL:
                        case UNION_SYMBOL:
                        case UNKNOWN_SYMBOL:
                        case UNTIL_SYMBOL:
                        case UPGRADE_SYMBOL:
                        case USER_RESOURCES_SYMBOL:
                        case USER_SYMBOL:
                        case USE_FRM_SYMBOL:
                        case USING_SYMBOL:
                        case VALUE_SYMBOL:
                        case VARIABLES_SYMBOL:
                        case VIEW_SYMBOL:
                        case WAIT_SYMBOL:
                        case WARNINGS_SYMBOL:
                        case WEEK_SYMBOL:
                        case WEIGHT_STRING_SYMBOL:
                        case WHEN_SYMBOL:
                        case WHERE_SYMBOL:
                        case WITH_SYMBOL:
                        case WORK_SYMBOL:
                        case WRAPPER_SYMBOL:
                        case X509_SYMBOL:
                        case XA_SYMBOL:
                        case XML_SYMBOL:
                        case XOR_SYMBOL:
                        case YEAR_MONTH_SYMBOL:
                        case YEAR_SYMBOL:
                        case 733:
                        	{
                        		alt527=3;
                        	}
                            break;
                        case OPEN_PAR_SYMBOL:
                        	{
                        		{
                        		    int LA527_3724 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=4;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 3724;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 527;
                            EXCEPTION->state        = 71;


                            goto ruleprimaryEx;

                        }

                    }
                    else if ( (LA527_0 == AVG_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case OPEN_PAR_SYMBOL:
                        	{
                        		{
                        		    int LA527_3725 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=4;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 3725;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case DOT_SYMBOL:
                        	{
                        		{
                        		    int LA527_3726 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 3726;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case EOF:
                        case ACTION_SYMBOL:
                        case ADDDATE_SYMBOL:
                        case AFTER_SYMBOL:
                        case AGAINST_SYMBOL:
                        case AGGREGATE_SYMBOL:
                        case ALGORITHM_SYMBOL:
                        case ANALYZE_SYMBOL:
                        case AND_SYMBOL:
                        case ANY_SYMBOL:
                        case ASCII_SYMBOL:
                        case ASC_SYMBOL:
                        case AS_SYMBOL:
                        case AT_SYMBOL:
                        case AUTHORS_SYMBOL:
                        case AUTOEXTEND_SIZE_SYMBOL:
                        case AUTO_INCREMENT_SYMBOL:
                        case AVG_ROW_LENGTH_SYMBOL:
                        case AVG_SYMBOL:
                        case BACKUP_SYMBOL:
                        case BACK_TICK_QUOTED_ID:
                        case BEGIN_SYMBOL:
                        case BETWEEN_SYMBOL:
                        case BINLOG_SYMBOL:
                        case BITWISE_AND_OPERATOR:
                        case BITWISE_OR_OPERATOR:
                        case BITWISE_XOR_OPERATOR:
                        case BIT_SYMBOL:
                        case BLOCK_SYMBOL:
                        case BOOLEAN_SYMBOL:
                        case BOOL_SYMBOL:
                        case BTREE_SYMBOL:
                        case BYTE_SYMBOL:
                        case CACHE_SYMBOL:
                        case CASCADED_SYMBOL:
                        case CATALOG_NAME_SYMBOL:
                        case CHAIN_SYMBOL:
                        case CHANGED_SYMBOL:
                        case CHARSET_SYMBOL:
                        case CHECKSUM_SYMBOL:
                        case CIPHER_SYMBOL:
                        case CLASS_ORIGIN_SYMBOL:
                        case CLIENT_SYMBOL:
                        case CLOSE_PAR_SYMBOL:
                        case CLOSE_SYMBOL:
                        case COALESCE_SYMBOL:
                        case CODE_SYMBOL:
                        case COLLATE_SYMBOL:
                        case COLLATION_SYMBOL:
                        case COLUMNS_SYMBOL:
                        case COLUMN_FORMAT_SYMBOL:
                        case COLUMN_NAME_SYMBOL:
                        case COMMA_SYMBOL:
                        case COMMENT_SYMBOL:
                        case COMMITTED_SYMBOL:
                        case COMMIT_SYMBOL:
                        case COMPACT_SYMBOL:
                        case COMPLETION_SYMBOL:
                        case COMPRESSED_SYMBOL:
                        case CONCAT_PIPES_SYMBOL:
                        case CONCURRENT_SYMBOL:
                        case CONNECTION_SYMBOL:
                        case CONSISTENT_SYMBOL:
                        case CONSTRAINT_CATALOG_SYMBOL:
                        case CONSTRAINT_NAME_SYMBOL:
                        case CONSTRAINT_SCHEMA_SYMBOL:
                        case CONTAINS_SYMBOL:
                        case CONTEXT_SYMBOL:
                        case CONTRIBUTORS_SYMBOL:
                        case CPU_SYMBOL:
                        case CROSS_SYMBOL:
                        case CUBE_SYMBOL:
                        case CURRENT_SYMBOL:
                        case CURSOR_NAME_SYMBOL:
                        case DATAFILE_SYMBOL:
                        case DATA_SYMBOL:
                        case DATETIME_SYMBOL:
                        case DATE_SYMBOL:
                        case DAY_HOUR_SYMBOL:
                        case DAY_MICROSECOND_SYMBOL:
                        case DAY_MINUTE_SYMBOL:
                        case DAY_SECOND_SYMBOL:
                        case DAY_SYMBOL:
                        case DEALLOCATE_SYMBOL:
                        case DEFAULT_AUTH_SYMBOL:
                        case DEFINER_SYMBOL:
                        case DELAY_KEY_WRITE_SYMBOL:
                        case DESC_SYMBOL:
                        case DES_KEY_FILE_SYMBOL:
                        case DIAGNOSTICS_SYMBOL:
                        case DIRECTORY_SYMBOL:
                        case DISABLE_SYMBOL:
                        case DISCARD_SYMBOL:
                        case DISK_SYMBOL:
                        case DIV_OPERATOR:
                        case DIV_SYMBOL:
                        case DOUBLE_QUOTED_TEXT:
                        case DO_SYMBOL:
                        case DUMPFILE_SYMBOL:
                        case DUPLICATE_SYMBOL:
                        case DYNAMIC_SYMBOL:
                        case ELSE_SYMBOL:
                        case ENABLE_SYMBOL:
                        case ENDS_SYMBOL:
                        case END_SYMBOL:
                        case ENGINES_SYMBOL:
                        case ENGINE_SYMBOL:
                        case ENUM_SYMBOL:
                        case EQUAL_OPERATOR:
                        case ERRORS_SYMBOL:
                        case ERROR_SYMBOL:
                        case ESCAPE_SYMBOL:
                        case EVENTS_SYMBOL:
                        case EVENT_SYMBOL:
                        case EVERY_SYMBOL:
                        case EXECUTE_SYMBOL:
                        case EXPANSION_SYMBOL:
                        case EXPORT_SYMBOL:
                        case EXTENDED_SYMBOL:
                        case EXTENT_SIZE_SYMBOL:
                        case FAST_SYMBOL:
                        case FAULTS_SYMBOL:
                        case FILE_SYMBOL:
                        case FIRST_SYMBOL:
                        case FIXED_SYMBOL:
                        case FLUSH_SYMBOL:
                        case FORMAT_SYMBOL:
                        case FOR_SYMBOL:
                        case FOUND_SYMBOL:
                        case FRAC_SECOND_SYMBOL:
                        case FROM_SYMBOL:
                        case FULL_SYMBOL:
                        case FUNCTION_SYMBOL:
                        case GENERAL_SYMBOL:
                        case GEOMETRYCOLLECTION_SYMBOL:
                        case GEOMETRY_SYMBOL:
                        case GET_FORMAT_SYMBOL:
                        case GLOBAL_SYMBOL:
                        case GRANTS_SYMBOL:
                        case GREATER_OR_EQUAL_OPERATOR:
                        case GREATER_THAN_OPERATOR:
                        case GROUP_SYMBOL:
                        case HANDLER_SYMBOL:
                        case HASH_SYMBOL:
                        case HAVING_SYMBOL:
                        case HELP_SYMBOL:
                        case HOSTS_SYMBOL:
                        case HOST_SYMBOL:
                        case HOUR_MICROSECOND_SYMBOL:
                        case HOUR_MINUTE_SYMBOL:
                        case HOUR_SECOND_SYMBOL:
                        case HOUR_SYMBOL:
                        case IDENTIFIED_SYMBOL:
                        case IDENTIFIER:
                        case IGNORE_SERVER_IDS_SYMBOL:
                        case IMPORT_SYMBOL:
                        case INDEXES_SYMBOL:
                        case INITIAL_SIZE_SYMBOL:
                        case INNER_SYMBOL:
                        case INNODB_SYMBOL:
                        case INSERT_METHOD_SYMBOL:
                        case INSTALL_SYMBOL:
                        case INTO_SYMBOL:
                        case INVOKER_SYMBOL:
                        case IN_SYMBOL:
                        case IO_SYMBOL:
                        case IPC_SYMBOL:
                        case ISOLATION_SYMBOL:
                        case ISSUER_SYMBOL:
                        case IS_SYMBOL:
                        case JOIN_SYMBOL:
                        case KEY_BLOCK_SIZE_SYMBOL:
                        case LANGUAGE_SYMBOL:
                        case LAST_SYMBOL:
                        case LEAVES_SYMBOL:
                        case LEFT_SYMBOL:
                        case LESS_OR_EQUAL_OPERATOR:
                        case LESS_SYMBOL:
                        case LESS_THAN_OPERATOR:
                        case LEVEL_SYMBOL:
                        case LIKE_SYMBOL:
                        case LIMIT_SYMBOL:
                        case LINESTRING_SYMBOL:
                        case LIST_SYMBOL:
                        case LOCAL_SYMBOL:
                        case LOCKS_SYMBOL:
                        case LOCK_SYMBOL:
                        case LOGFILE_SYMBOL:
                        case LOGICAL_AND_OPERATOR:
                        case LOGICAL_OR_OPERATOR:
                        case LOGS_SYMBOL:
                        case MASTER_AUTO_POSITION_SYMBOL:
                        case MASTER_CONNECT_RETRY_SYMBOL:
                        case MASTER_DELAY_SYMBOL:
                        case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                        case MASTER_HOST_SYMBOL:
                        case MASTER_LOG_FILE_SYMBOL:
                        case MASTER_LOG_POS_SYMBOL:
                        case MASTER_PASSWORD_SYMBOL:
                        case MASTER_PORT_SYMBOL:
                        case MASTER_RETRY_COUNT_SYMBOL:
                        case MASTER_SERVER_ID_SYMBOL:
                        case MASTER_SSL_CAPATH_SYMBOL:
                        case MASTER_SSL_CA_SYMBOL:
                        case MASTER_SSL_CERT_SYMBOL:
                        case MASTER_SSL_CIPHER_SYMBOL:
                        case MASTER_SSL_CRLPATH_SYMBOL:
                        case MASTER_SSL_CRL_SYMBOL:
                        case MASTER_SSL_KEY_SYMBOL:
                        case MASTER_SSL_SYMBOL:
                        case MASTER_SYMBOL:
                        case MASTER_USER_SYMBOL:
                        case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                        case MAX_QUERIES_PER_HOUR_SYMBOL:
                        case MAX_ROWS_SYMBOL:
                        case MAX_SIZE_SYMBOL:
                        case MAX_UPDATES_PER_HOUR_SYMBOL:
                        case MAX_USER_CONNECTIONS_SYMBOL:
                        case MEDIUM_SYMBOL:
                        case MEMORY_SYMBOL:
                        case MERGE_SYMBOL:
                        case MESSAGE_TEXT_SYMBOL:
                        case MICROSECOND_SYMBOL:
                        case MIGRATE_SYMBOL:
                        case MINUS_OPERATOR:
                        case MINUTE_MICROSECOND_SYMBOL:
                        case MINUTE_SECOND_SYMBOL:
                        case MINUTE_SYMBOL:
                        case MIN_ROWS_SYMBOL:
                        case MODE_SYMBOL:
                        case MODIFY_SYMBOL:
                        case MOD_OPERATOR:
                        case MOD_SYMBOL:
                        case MONTH_SYMBOL:
                        case MULTILINESTRING_SYMBOL:
                        case MULTIPOINT_SYMBOL:
                        case MULTIPOLYGON_SYMBOL:
                        case MULT_OPERATOR:
                        case MUTEX_SYMBOL:
                        case MYSQL_ERRNO_SYMBOL:
                        case NAMES_SYMBOL:
                        case NAME_SYMBOL:
                        case NATIONAL_SYMBOL:
                        case NATURAL_SYMBOL:
                        case NCHAR_SYMBOL:
                        case NCHAR_TEXT:
                        case NDBCLUSTER_SYMBOL:
                        case NEW_SYMBOL:
                        case NEXT_SYMBOL:
                        case NODEGROUP_SYMBOL:
                        case NONE_SYMBOL:
                        case NOT_EQUAL2_OPERATOR:
                        case NOT_EQUAL_OPERATOR:
                        case NOT_SYMBOL:
                        case NO_SYMBOL:
                        case NO_WAIT_SYMBOL:
                        case NULL_SAFE_EQUAL_OPERATOR:
                        case NUMBER_SYMBOL:
                        case NVARCHAR_SYMBOL:
                        case OFFSET_SYMBOL:
                        case OLD_PASSWORD_SYMBOL:
                        case ONE_SHOT_SYMBOL:
                        case ONE_SYMBOL:
                        case ON_SYMBOL:
                        case OPEN_SYMBOL:
                        case OPTIONS_SYMBOL:
                        case ORDER_SYMBOL:
                        case OR_SYMBOL:
                        case OWNER_SYMBOL:
                        case PACK_KEYS_SYMBOL:
                        case PAGE_SYMBOL:
                        case PARSER_SYMBOL:
                        case PARTIAL_SYMBOL:
                        case PARTITIONING_SYMBOL:
                        case PARTITIONS_SYMBOL:
                        case PARTITION_SYMBOL:
                        case PASSWORD_SYMBOL:
                        case PHASE_SYMBOL:
                        case PLUGINS_SYMBOL:
                        case PLUGIN_DIR_SYMBOL:
                        case PLUGIN_SYMBOL:
                        case PLUS_OPERATOR:
                        case POINT_SYMBOL:
                        case POLYGON_SYMBOL:
                        case PORT_SYMBOL:
                        case PREPARE_SYMBOL:
                        case PRESERVE_SYMBOL:
                        case PREV_SYMBOL:
                        case PRIVILEGES_SYMBOL:
                        case PROCEDURE_SYMBOL:
                        case PROCESSLIST_SYMBOL:
                        case PROCESS_SYMBOL:
                        case PROFILES_SYMBOL:
                        case PROFILE_SYMBOL:
                        case PROXY_SYMBOL:
                        case QUARTER_SYMBOL:
                        case QUERY_SYMBOL:
                        case QUICK_SYMBOL:
                        case READ_ONLY_SYMBOL:
                        case REBUILD_SYMBOL:
                        case RECOVER_SYMBOL:
                        case REDOFILE_SYMBOL:
                        case REDO_BUFFER_SIZE_SYMBOL:
                        case REDUNDANT_SYMBOL:
                        case REGEXP_SYMBOL:
                        case RELAYLOG_SYMBOL:
                        case RELAY_LOG_FILE_SYMBOL:
                        case RELAY_LOG_POS_SYMBOL:
                        case RELAY_SYMBOL:
                        case RELAY_THREAD_SYMBOL:
                        case RELOAD_SYMBOL:
                        case REMOVE_SYMBOL:
                        case RENAME_SYMBOL:
                        case REORGANIZE_SYMBOL:
                        case REPAIR_SYMBOL:
                        case REPEATABLE_SYMBOL:
                        case REPLICATION_SYMBOL:
                        case RESET_SYMBOL:
                        case RESTORE_SYMBOL:
                        case RESUME_SYMBOL:
                        case RETURNED_SQLSTATE_SYMBOL:
                        case RETURNS_SYMBOL:
                        case REVERSE_SYMBOL:
                        case RIGHT_SYMBOL:
                        case ROLLBACK_SYMBOL:
                        case ROLLUP_SYMBOL:
                        case ROUTINE_SYMBOL:
                        case ROWS_SYMBOL:
                        case ROW_COUNT_SYMBOL:
                        case ROW_FORMAT_SYMBOL:
                        case ROW_SYMBOL:
                        case RTREE_SYMBOL:
                        case SAVEPOINT_SYMBOL:
                        case SCHEDULE_SYMBOL:
                        case SCHEMA_NAME_SYMBOL:
                        case SECOND_MICROSECOND_SYMBOL:
                        case SECOND_SYMBOL:
                        case SECURITY_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        case SEPARATOR_SYMBOL:
                        case SERIALIZABLE_SYMBOL:
                        case SERIAL_SYMBOL:
                        case SERVER_SYMBOL:
                        case SESSION_SYMBOL:
                        case SET_SYMBOL:
                        case SHARE_SYMBOL:
                        case SHIFT_LEFT_OPERATOR:
                        case SHIFT_RIGHT_OPERATOR:
                        case SHUTDOWN_SYMBOL:
                        case SIGNED_SYMBOL:
                        case SIMPLE_SYMBOL:
                        case SINGLE_QUOTED_TEXT:
                        case SLAVE_SYMBOL:
                        case SLOW_SYMBOL:
                        case SNAPSHOT_SYMBOL:
                        case SOCKET_SYMBOL:
                        case SONAME_SYMBOL:
                        case SOUNDS_SYMBOL:
                        case SOURCE_SYMBOL:
                        case SQL_AFTER_GTIDS_SYMBOL:
                        case SQL_AFTER_MTS_GAPS_SYMBOL:
                        case SQL_BEFORE_GTIDS_SYMBOL:
                        case SQL_BUFFER_RESULT_SYMBOL:
                        case SQL_CACHE_SYMBOL:
                        case SQL_NO_CACHE_SYMBOL:
                        case SQL_THREAD_SYMBOL:
                        case STARTS_SYMBOL:
                        case START_SYMBOL:
                        case STATS_AUTO_RECALC_SYMBOL:
                        case STATS_PERSISTENT_SYMBOL:
                        case STATS_SAMPLE_PAGES_SYMBOL:
                        case STATUS_SYMBOL:
                        case STOP_SYMBOL:
                        case STORAGE_SYMBOL:
                        case STRAIGHT_JOIN_SYMBOL:
                        case STRING_SYMBOL:
                        case SUBCLASS_ORIGIN_SYMBOL:
                        case SUBDATE_SYMBOL:
                        case SUBJECT_SYMBOL:
                        case SUBPARTITIONS_SYMBOL:
                        case SUBPARTITION_SYMBOL:
                        case SUPER_SYMBOL:
                        case SUSPEND_SYMBOL:
                        case SWAPS_SYMBOL:
                        case SWITCHES_SYMBOL:
                        case TABLESPACE_SYMBOL:
                        case TABLES_SYMBOL:
                        case TABLE_CHECKSUM_SYMBOL:
                        case TABLE_NAME_SYMBOL:
                        case TEMPORARY_SYMBOL:
                        case TEMPTABLE_SYMBOL:
                        case TEXT_SYMBOL:
                        case THAN_SYMBOL:
                        case THEN_SYMBOL:
                        case TIMESTAMP_ADD_SYMBOL:
                        case TIMESTAMP_DIFF_SYMBOL:
                        case TIMESTAMP_SYMBOL:
                        case TIME_SYMBOL:
                        case TRANSACTION_SYMBOL:
                        case TRIGGERS_SYMBOL:
                        case TRUNCATE_SYMBOL:
                        case TYPES_SYMBOL:
                        case TYPE_SYMBOL:
                        case UDF_RETURNS_SYMBOL:
                        case UNCOMMITTED_SYMBOL:
                        case UNDEFINED_SYMBOL:
                        case UNDERSCORE_CHARSET:
                        case UNDOFILE_SYMBOL:
                        case UNDO_BUFFER_SIZE_SYMBOL:
                        case UNICODE_SYMBOL:
                        case UNINSTALL_SYMBOL:
                        case UNION_SYMBOL:
                        case UNKNOWN_SYMBOL:
                        case UNTIL_SYMBOL:
                        case UPGRADE_SYMBOL:
                        case USER_RESOURCES_SYMBOL:
                        case USER_SYMBOL:
                        case USE_FRM_SYMBOL:
                        case USING_SYMBOL:
                        case VALUE_SYMBOL:
                        case VARIABLES_SYMBOL:
                        case VIEW_SYMBOL:
                        case WAIT_SYMBOL:
                        case WARNINGS_SYMBOL:
                        case WEEK_SYMBOL:
                        case WEIGHT_STRING_SYMBOL:
                        case WHEN_SYMBOL:
                        case WHERE_SYMBOL:
                        case WITH_SYMBOL:
                        case WORK_SYMBOL:
                        case WRAPPER_SYMBOL:
                        case X509_SYMBOL:
                        case XA_SYMBOL:
                        case XML_SYMBOL:
                        case XOR_SYMBOL:
                        case YEAR_MONTH_SYMBOL:
                        case YEAR_SYMBOL:
                        case 733:
                        	{
                        		alt527=3;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 527;
                            EXCEPTION->state        = 72;


                            goto ruleprimaryEx;

                        }

                    }
                    else if ( (LA527_0 == ROW_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case DOT_SYMBOL:
                        	{
                        		{
                        		    int LA527_3818 = LA(3);
                        		    if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=3;
                        		    }
                        		    else if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 3818;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;
                        case EOF:
                        case ACTION_SYMBOL:
                        case ADDDATE_SYMBOL:
                        case AFTER_SYMBOL:
                        case AGAINST_SYMBOL:
                        case AGGREGATE_SYMBOL:
                        case ALGORITHM_SYMBOL:
                        case ANALYZE_SYMBOL:
                        case AND_SYMBOL:
                        case ANY_SYMBOL:
                        case ASCII_SYMBOL:
                        case ASC_SYMBOL:
                        case AS_SYMBOL:
                        case AT_SYMBOL:
                        case AUTHORS_SYMBOL:
                        case AUTOEXTEND_SIZE_SYMBOL:
                        case AUTO_INCREMENT_SYMBOL:
                        case AVG_ROW_LENGTH_SYMBOL:
                        case AVG_SYMBOL:
                        case BACKUP_SYMBOL:
                        case BACK_TICK_QUOTED_ID:
                        case BEGIN_SYMBOL:
                        case BETWEEN_SYMBOL:
                        case BINLOG_SYMBOL:
                        case BITWISE_AND_OPERATOR:
                        case BITWISE_OR_OPERATOR:
                        case BITWISE_XOR_OPERATOR:
                        case BIT_SYMBOL:
                        case BLOCK_SYMBOL:
                        case BOOLEAN_SYMBOL:
                        case BOOL_SYMBOL:
                        case BTREE_SYMBOL:
                        case BYTE_SYMBOL:
                        case CACHE_SYMBOL:
                        case CASCADED_SYMBOL:
                        case CATALOG_NAME_SYMBOL:
                        case CHAIN_SYMBOL:
                        case CHANGED_SYMBOL:
                        case CHARSET_SYMBOL:
                        case CHECKSUM_SYMBOL:
                        case CIPHER_SYMBOL:
                        case CLASS_ORIGIN_SYMBOL:
                        case CLIENT_SYMBOL:
                        case CLOSE_PAR_SYMBOL:
                        case CLOSE_SYMBOL:
                        case COALESCE_SYMBOL:
                        case CODE_SYMBOL:
                        case COLLATE_SYMBOL:
                        case COLLATION_SYMBOL:
                        case COLUMNS_SYMBOL:
                        case COLUMN_FORMAT_SYMBOL:
                        case COLUMN_NAME_SYMBOL:
                        case COMMA_SYMBOL:
                        case COMMENT_SYMBOL:
                        case COMMITTED_SYMBOL:
                        case COMMIT_SYMBOL:
                        case COMPACT_SYMBOL:
                        case COMPLETION_SYMBOL:
                        case COMPRESSED_SYMBOL:
                        case CONCAT_PIPES_SYMBOL:
                        case CONCURRENT_SYMBOL:
                        case CONNECTION_SYMBOL:
                        case CONSISTENT_SYMBOL:
                        case CONSTRAINT_CATALOG_SYMBOL:
                        case CONSTRAINT_NAME_SYMBOL:
                        case CONSTRAINT_SCHEMA_SYMBOL:
                        case CONTAINS_SYMBOL:
                        case CONTEXT_SYMBOL:
                        case CONTRIBUTORS_SYMBOL:
                        case CPU_SYMBOL:
                        case CROSS_SYMBOL:
                        case CUBE_SYMBOL:
                        case CURRENT_SYMBOL:
                        case CURSOR_NAME_SYMBOL:
                        case DATAFILE_SYMBOL:
                        case DATA_SYMBOL:
                        case DATETIME_SYMBOL:
                        case DATE_SYMBOL:
                        case DAY_HOUR_SYMBOL:
                        case DAY_MICROSECOND_SYMBOL:
                        case DAY_MINUTE_SYMBOL:
                        case DAY_SECOND_SYMBOL:
                        case DAY_SYMBOL:
                        case DEALLOCATE_SYMBOL:
                        case DEFAULT_AUTH_SYMBOL:
                        case DEFINER_SYMBOL:
                        case DELAY_KEY_WRITE_SYMBOL:
                        case DESC_SYMBOL:
                        case DES_KEY_FILE_SYMBOL:
                        case DIAGNOSTICS_SYMBOL:
                        case DIRECTORY_SYMBOL:
                        case DISABLE_SYMBOL:
                        case DISCARD_SYMBOL:
                        case DISK_SYMBOL:
                        case DIV_OPERATOR:
                        case DIV_SYMBOL:
                        case DOUBLE_QUOTED_TEXT:
                        case DO_SYMBOL:
                        case DUMPFILE_SYMBOL:
                        case DUPLICATE_SYMBOL:
                        case DYNAMIC_SYMBOL:
                        case ELSE_SYMBOL:
                        case ENABLE_SYMBOL:
                        case ENDS_SYMBOL:
                        case END_SYMBOL:
                        case ENGINES_SYMBOL:
                        case ENGINE_SYMBOL:
                        case ENUM_SYMBOL:
                        case EQUAL_OPERATOR:
                        case ERRORS_SYMBOL:
                        case ERROR_SYMBOL:
                        case ESCAPE_SYMBOL:
                        case EVENTS_SYMBOL:
                        case EVENT_SYMBOL:
                        case EVERY_SYMBOL:
                        case EXECUTE_SYMBOL:
                        case EXPANSION_SYMBOL:
                        case EXPORT_SYMBOL:
                        case EXTENDED_SYMBOL:
                        case EXTENT_SIZE_SYMBOL:
                        case FAST_SYMBOL:
                        case FAULTS_SYMBOL:
                        case FILE_SYMBOL:
                        case FIRST_SYMBOL:
                        case FIXED_SYMBOL:
                        case FLUSH_SYMBOL:
                        case FORMAT_SYMBOL:
                        case FOR_SYMBOL:
                        case FOUND_SYMBOL:
                        case FRAC_SECOND_SYMBOL:
                        case FROM_SYMBOL:
                        case FULL_SYMBOL:
                        case FUNCTION_SYMBOL:
                        case GENERAL_SYMBOL:
                        case GEOMETRYCOLLECTION_SYMBOL:
                        case GEOMETRY_SYMBOL:
                        case GET_FORMAT_SYMBOL:
                        case GLOBAL_SYMBOL:
                        case GRANTS_SYMBOL:
                        case GREATER_OR_EQUAL_OPERATOR:
                        case GREATER_THAN_OPERATOR:
                        case GROUP_SYMBOL:
                        case HANDLER_SYMBOL:
                        case HASH_SYMBOL:
                        case HAVING_SYMBOL:
                        case HELP_SYMBOL:
                        case HOSTS_SYMBOL:
                        case HOST_SYMBOL:
                        case HOUR_MICROSECOND_SYMBOL:
                        case HOUR_MINUTE_SYMBOL:
                        case HOUR_SECOND_SYMBOL:
                        case HOUR_SYMBOL:
                        case IDENTIFIED_SYMBOL:
                        case IDENTIFIER:
                        case IGNORE_SERVER_IDS_SYMBOL:
                        case IMPORT_SYMBOL:
                        case INDEXES_SYMBOL:
                        case INITIAL_SIZE_SYMBOL:
                        case INNER_SYMBOL:
                        case INNODB_SYMBOL:
                        case INSERT_METHOD_SYMBOL:
                        case INSTALL_SYMBOL:
                        case INTO_SYMBOL:
                        case INVOKER_SYMBOL:
                        case IN_SYMBOL:
                        case IO_SYMBOL:
                        case IPC_SYMBOL:
                        case ISOLATION_SYMBOL:
                        case ISSUER_SYMBOL:
                        case IS_SYMBOL:
                        case JOIN_SYMBOL:
                        case KEY_BLOCK_SIZE_SYMBOL:
                        case LANGUAGE_SYMBOL:
                        case LAST_SYMBOL:
                        case LEAVES_SYMBOL:
                        case LEFT_SYMBOL:
                        case LESS_OR_EQUAL_OPERATOR:
                        case LESS_SYMBOL:
                        case LESS_THAN_OPERATOR:
                        case LEVEL_SYMBOL:
                        case LIKE_SYMBOL:
                        case LIMIT_SYMBOL:
                        case LINESTRING_SYMBOL:
                        case LIST_SYMBOL:
                        case LOCAL_SYMBOL:
                        case LOCKS_SYMBOL:
                        case LOCK_SYMBOL:
                        case LOGFILE_SYMBOL:
                        case LOGICAL_AND_OPERATOR:
                        case LOGICAL_OR_OPERATOR:
                        case LOGS_SYMBOL:
                        case MASTER_AUTO_POSITION_SYMBOL:
                        case MASTER_CONNECT_RETRY_SYMBOL:
                        case MASTER_DELAY_SYMBOL:
                        case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                        case MASTER_HOST_SYMBOL:
                        case MASTER_LOG_FILE_SYMBOL:
                        case MASTER_LOG_POS_SYMBOL:
                        case MASTER_PASSWORD_SYMBOL:
                        case MASTER_PORT_SYMBOL:
                        case MASTER_RETRY_COUNT_SYMBOL:
                        case MASTER_SERVER_ID_SYMBOL:
                        case MASTER_SSL_CAPATH_SYMBOL:
                        case MASTER_SSL_CA_SYMBOL:
                        case MASTER_SSL_CERT_SYMBOL:
                        case MASTER_SSL_CIPHER_SYMBOL:
                        case MASTER_SSL_CRLPATH_SYMBOL:
                        case MASTER_SSL_CRL_SYMBOL:
                        case MASTER_SSL_KEY_SYMBOL:
                        case MASTER_SSL_SYMBOL:
                        case MASTER_SYMBOL:
                        case MASTER_USER_SYMBOL:
                        case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                        case MAX_QUERIES_PER_HOUR_SYMBOL:
                        case MAX_ROWS_SYMBOL:
                        case MAX_SIZE_SYMBOL:
                        case MAX_UPDATES_PER_HOUR_SYMBOL:
                        case MAX_USER_CONNECTIONS_SYMBOL:
                        case MEDIUM_SYMBOL:
                        case MEMORY_SYMBOL:
                        case MERGE_SYMBOL:
                        case MESSAGE_TEXT_SYMBOL:
                        case MICROSECOND_SYMBOL:
                        case MIGRATE_SYMBOL:
                        case MINUS_OPERATOR:
                        case MINUTE_MICROSECOND_SYMBOL:
                        case MINUTE_SECOND_SYMBOL:
                        case MINUTE_SYMBOL:
                        case MIN_ROWS_SYMBOL:
                        case MODE_SYMBOL:
                        case MODIFY_SYMBOL:
                        case MOD_OPERATOR:
                        case MOD_SYMBOL:
                        case MONTH_SYMBOL:
                        case MULTILINESTRING_SYMBOL:
                        case MULTIPOINT_SYMBOL:
                        case MULTIPOLYGON_SYMBOL:
                        case MULT_OPERATOR:
                        case MUTEX_SYMBOL:
                        case MYSQL_ERRNO_SYMBOL:
                        case NAMES_SYMBOL:
                        case NAME_SYMBOL:
                        case NATIONAL_SYMBOL:
                        case NATURAL_SYMBOL:
                        case NCHAR_SYMBOL:
                        case NCHAR_TEXT:
                        case NDBCLUSTER_SYMBOL:
                        case NEW_SYMBOL:
                        case NEXT_SYMBOL:
                        case NODEGROUP_SYMBOL:
                        case NONE_SYMBOL:
                        case NOT_EQUAL2_OPERATOR:
                        case NOT_EQUAL_OPERATOR:
                        case NOT_SYMBOL:
                        case NO_SYMBOL:
                        case NO_WAIT_SYMBOL:
                        case NULL_SAFE_EQUAL_OPERATOR:
                        case NUMBER_SYMBOL:
                        case NVARCHAR_SYMBOL:
                        case OFFSET_SYMBOL:
                        case OLD_PASSWORD_SYMBOL:
                        case ONE_SHOT_SYMBOL:
                        case ONE_SYMBOL:
                        case ON_SYMBOL:
                        case OPEN_SYMBOL:
                        case OPTIONS_SYMBOL:
                        case ORDER_SYMBOL:
                        case OR_SYMBOL:
                        case OWNER_SYMBOL:
                        case PACK_KEYS_SYMBOL:
                        case PAGE_SYMBOL:
                        case PARSER_SYMBOL:
                        case PARTIAL_SYMBOL:
                        case PARTITIONING_SYMBOL:
                        case PARTITIONS_SYMBOL:
                        case PARTITION_SYMBOL:
                        case PASSWORD_SYMBOL:
                        case PHASE_SYMBOL:
                        case PLUGINS_SYMBOL:
                        case PLUGIN_DIR_SYMBOL:
                        case PLUGIN_SYMBOL:
                        case PLUS_OPERATOR:
                        case POINT_SYMBOL:
                        case POLYGON_SYMBOL:
                        case PORT_SYMBOL:
                        case PREPARE_SYMBOL:
                        case PRESERVE_SYMBOL:
                        case PREV_SYMBOL:
                        case PRIVILEGES_SYMBOL:
                        case PROCEDURE_SYMBOL:
                        case PROCESSLIST_SYMBOL:
                        case PROCESS_SYMBOL:
                        case PROFILES_SYMBOL:
                        case PROFILE_SYMBOL:
                        case PROXY_SYMBOL:
                        case QUARTER_SYMBOL:
                        case QUERY_SYMBOL:
                        case QUICK_SYMBOL:
                        case READ_ONLY_SYMBOL:
                        case REBUILD_SYMBOL:
                        case RECOVER_SYMBOL:
                        case REDOFILE_SYMBOL:
                        case REDO_BUFFER_SIZE_SYMBOL:
                        case REDUNDANT_SYMBOL:
                        case REGEXP_SYMBOL:
                        case RELAYLOG_SYMBOL:
                        case RELAY_LOG_FILE_SYMBOL:
                        case RELAY_LOG_POS_SYMBOL:
                        case RELAY_SYMBOL:
                        case RELAY_THREAD_SYMBOL:
                        case RELOAD_SYMBOL:
                        case REMOVE_SYMBOL:
                        case RENAME_SYMBOL:
                        case REORGANIZE_SYMBOL:
                        case REPAIR_SYMBOL:
                        case REPEATABLE_SYMBOL:
                        case REPLICATION_SYMBOL:
                        case RESET_SYMBOL:
                        case RESTORE_SYMBOL:
                        case RESUME_SYMBOL:
                        case RETURNED_SQLSTATE_SYMBOL:
                        case RETURNS_SYMBOL:
                        case REVERSE_SYMBOL:
                        case RIGHT_SYMBOL:
                        case ROLLBACK_SYMBOL:
                        case ROLLUP_SYMBOL:
                        case ROUTINE_SYMBOL:
                        case ROWS_SYMBOL:
                        case ROW_COUNT_SYMBOL:
                        case ROW_FORMAT_SYMBOL:
                        case ROW_SYMBOL:
                        case RTREE_SYMBOL:
                        case SAVEPOINT_SYMBOL:
                        case SCHEDULE_SYMBOL:
                        case SCHEMA_NAME_SYMBOL:
                        case SECOND_MICROSECOND_SYMBOL:
                        case SECOND_SYMBOL:
                        case SECURITY_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        case SEPARATOR_SYMBOL:
                        case SERIALIZABLE_SYMBOL:
                        case SERIAL_SYMBOL:
                        case SERVER_SYMBOL:
                        case SESSION_SYMBOL:
                        case SET_SYMBOL:
                        case SHARE_SYMBOL:
                        case SHIFT_LEFT_OPERATOR:
                        case SHIFT_RIGHT_OPERATOR:
                        case SHUTDOWN_SYMBOL:
                        case SIGNED_SYMBOL:
                        case SIMPLE_SYMBOL:
                        case SINGLE_QUOTED_TEXT:
                        case SLAVE_SYMBOL:
                        case SLOW_SYMBOL:
                        case SNAPSHOT_SYMBOL:
                        case SOCKET_SYMBOL:
                        case SONAME_SYMBOL:
                        case SOUNDS_SYMBOL:
                        case SOURCE_SYMBOL:
                        case SQL_AFTER_GTIDS_SYMBOL:
                        case SQL_AFTER_MTS_GAPS_SYMBOL:
                        case SQL_BEFORE_GTIDS_SYMBOL:
                        case SQL_BUFFER_RESULT_SYMBOL:
                        case SQL_CACHE_SYMBOL:
                        case SQL_NO_CACHE_SYMBOL:
                        case SQL_THREAD_SYMBOL:
                        case STARTS_SYMBOL:
                        case START_SYMBOL:
                        case STATS_AUTO_RECALC_SYMBOL:
                        case STATS_PERSISTENT_SYMBOL:
                        case STATS_SAMPLE_PAGES_SYMBOL:
                        case STATUS_SYMBOL:
                        case STOP_SYMBOL:
                        case STORAGE_SYMBOL:
                        case STRAIGHT_JOIN_SYMBOL:
                        case STRING_SYMBOL:
                        case SUBCLASS_ORIGIN_SYMBOL:
                        case SUBDATE_SYMBOL:
                        case SUBJECT_SYMBOL:
                        case SUBPARTITIONS_SYMBOL:
                        case SUBPARTITION_SYMBOL:
                        case SUPER_SYMBOL:
                        case SUSPEND_SYMBOL:
                        case SWAPS_SYMBOL:
                        case SWITCHES_SYMBOL:
                        case TABLESPACE_SYMBOL:
                        case TABLES_SYMBOL:
                        case TABLE_CHECKSUM_SYMBOL:
                        case TABLE_NAME_SYMBOL:
                        case TEMPORARY_SYMBOL:
                        case TEMPTABLE_SYMBOL:
                        case TEXT_SYMBOL:
                        case THAN_SYMBOL:
                        case THEN_SYMBOL:
                        case TIMESTAMP_ADD_SYMBOL:
                        case TIMESTAMP_DIFF_SYMBOL:
                        case TIMESTAMP_SYMBOL:
                        case TIME_SYMBOL:
                        case TRANSACTION_SYMBOL:
                        case TRIGGERS_SYMBOL:
                        case TRUNCATE_SYMBOL:
                        case TYPES_SYMBOL:
                        case TYPE_SYMBOL:
                        case UDF_RETURNS_SYMBOL:
                        case UNCOMMITTED_SYMBOL:
                        case UNDEFINED_SYMBOL:
                        case UNDERSCORE_CHARSET:
                        case UNDOFILE_SYMBOL:
                        case UNDO_BUFFER_SIZE_SYMBOL:
                        case UNICODE_SYMBOL:
                        case UNINSTALL_SYMBOL:
                        case UNION_SYMBOL:
                        case UNKNOWN_SYMBOL:
                        case UNTIL_SYMBOL:
                        case UPGRADE_SYMBOL:
                        case USER_RESOURCES_SYMBOL:
                        case USER_SYMBOL:
                        case USE_FRM_SYMBOL:
                        case USING_SYMBOL:
                        case VALUE_SYMBOL:
                        case VARIABLES_SYMBOL:
                        case VIEW_SYMBOL:
                        case WAIT_SYMBOL:
                        case WARNINGS_SYMBOL:
                        case WEEK_SYMBOL:
                        case WEIGHT_STRING_SYMBOL:
                        case WHEN_SYMBOL:
                        case WHERE_SYMBOL:
                        case WITH_SYMBOL:
                        case WORK_SYMBOL:
                        case WRAPPER_SYMBOL:
                        case X509_SYMBOL:
                        case XA_SYMBOL:
                        case XML_SYMBOL:
                        case XOR_SYMBOL:
                        case YEAR_MONTH_SYMBOL:
                        case YEAR_SYMBOL:
                        case 733:
                        	{
                        		alt527=3;
                        	}
                            break;
                        case OPEN_PAR_SYMBOL:
                        	{
                        		{
                        		    int LA527_3910 = LA(3);
                        		    if ( (synpred3_MySQL(ctx)))
                        		    {
                        		        alt527=5;
                        		    }
                        		    else if ( (ANTLR3_TRUE))
                        		    {
                        		        alt527=10;
                        		    }
                        		    else
                        		    {
                        		        if (BACKTRACKING>0)
                        		        {
                        		            FAILEDFLAG = ANTLR3_TRUE;
                        		            return retval;
                        		        }


                        		        CONSTRUCTEX();
                        		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        		        EXCEPTION->message      = (void *)"";
                        		        EXCEPTION->decisionNum  = 527;
                        		        EXCEPTION->state        = 3910;


                        		        goto ruleprimaryEx;

                        		    }
                        		}
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 527;
                            EXCEPTION->state        = 73;


                            goto ruleprimaryEx;

                        }

                    }
                    else if ( (LA527_0 == PARAM_MARKER))
                    {
                        alt527=6;
                    }
                    else if ( (((LA527_0 >= AT_AT_SIGN_SYMBOL) && (LA527_0 <= AT_SIGN_SYMBOL))))
                    {
                        alt527=7;
                    }
                    else if ( (LA527_0 == OPEN_PAR_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case SELECT_SYMBOL:
                        	{
                        		alt527=8;
                        	}
                            break;
                        case ACTION_SYMBOL:
                        case ADDDATE_SYMBOL:
                        case AFTER_SYMBOL:
                        case AGAINST_SYMBOL:
                        case AGGREGATE_SYMBOL:
                        case ALGORITHM_SYMBOL:
                        case ANALYZE_SYMBOL:
                        case ANY_SYMBOL:
                        case ASCII_SYMBOL:
                        case AT_AT_SIGN_SYMBOL:
                        case AT_SIGN_SYMBOL:
                        case AT_SYMBOL:
                        case AUTHORS_SYMBOL:
                        case AUTOEXTEND_SIZE_SYMBOL:
                        case AUTO_INCREMENT_SYMBOL:
                        case AVG_ROW_LENGTH_SYMBOL:
                        case AVG_SYMBOL:
                        case BACKUP_SYMBOL:
                        case BACK_TICK_QUOTED_ID:
                        case BEGIN_SYMBOL:
                        case BINARY_SYMBOL:
                        case BINLOG_SYMBOL:
                        case BITNUMBER:
                        case BITSTRING:
                        case BITWISE_NOT_OPERATOR:
                        case BIT_AND_SYMBOL:
                        case BIT_OR_SYMBOL:
                        case BIT_SYMBOL:
                        case BIT_XOR_SYMBOL:
                        case BLOCK_SYMBOL:
                        case BOOLEAN_SYMBOL:
                        case BOOL_SYMBOL:
                        case BTREE_SYMBOL:
                        case BYTE_SYMBOL:
                        case CACHE_SYMBOL:
                        case CASCADED_SYMBOL:
                        case CASE_SYMBOL:
                        case CAST_SYMBOL:
                        case CATALOG_NAME_SYMBOL:
                        case CHAIN_SYMBOL:
                        case CHANGED_SYMBOL:
                        case CHARSET_SYMBOL:
                        case CHAR_SYMBOL:
                        case CHECKSUM_SYMBOL:
                        case CIPHER_SYMBOL:
                        case CLASS_ORIGIN_SYMBOL:
                        case CLIENT_SYMBOL:
                        case CLOSE_SYMBOL:
                        case COALESCE_SYMBOL:
                        case CODE_SYMBOL:
                        case COLLATION_SYMBOL:
                        case COLUMNS_SYMBOL:
                        case COLUMN_FORMAT_SYMBOL:
                        case COLUMN_NAME_SYMBOL:
                        case COMMENT_SYMBOL:
                        case COMMITTED_SYMBOL:
                        case COMMIT_SYMBOL:
                        case COMPACT_SYMBOL:
                        case COMPLETION_SYMBOL:
                        case COMPRESSED_SYMBOL:
                        case CONCURRENT_SYMBOL:
                        case CONNECTION_SYMBOL:
                        case CONSISTENT_SYMBOL:
                        case CONSTRAINT_CATALOG_SYMBOL:
                        case CONSTRAINT_NAME_SYMBOL:
                        case CONSTRAINT_SCHEMA_SYMBOL:
                        case CONTAINS_SYMBOL:
                        case CONTEXT_SYMBOL:
                        case CONTRIBUTORS_SYMBOL:
                        case CONVERT_SYMBOL:
                        case COUNT_SYMBOL:
                        case CPU_SYMBOL:
                        case CUBE_SYMBOL:
                        case CURDATE_SYMBOL:
                        case CURRENT_SYMBOL:
                        case CURRENT_USER_SYMBOL:
                        case CURSOR_NAME_SYMBOL:
                        case CURTIME_SYMBOL:
                        case DATABASE_SYMBOL:
                        case DATAFILE_SYMBOL:
                        case DATA_SYMBOL:
                        case DATETIME_SYMBOL:
                        case DATE_ADD_SYMBOL:
                        case DATE_SUB_SYMBOL:
                        case DATE_SYMBOL:
                        case DAY_SYMBOL:
                        case DEALLOCATE_SYMBOL:
                        case DEFAULT_AUTH_SYMBOL:
                        case DEFINER_SYMBOL:
                        case DELAY_KEY_WRITE_SYMBOL:
                        case DES_KEY_FILE_SYMBOL:
                        case DIAGNOSTICS_SYMBOL:
                        case DIRECTORY_SYMBOL:
                        case DISABLE_SYMBOL:
                        case DISCARD_SYMBOL:
                        case DISK_SYMBOL:
                        case DOT_SYMBOL:
                        case DOUBLE_QUOTED_TEXT:
                        case DO_SYMBOL:
                        case DUMPFILE_SYMBOL:
                        case DUPLICATE_SYMBOL:
                        case DYNAMIC_SYMBOL:
                        case ENABLE_SYMBOL:
                        case ENDS_SYMBOL:
                        case END_SYMBOL:
                        case ENGINES_SYMBOL:
                        case ENGINE_SYMBOL:
                        case ENUM_SYMBOL:
                        case ERRORS_SYMBOL:
                        case ERROR_SYMBOL:
                        case ESCAPE_SYMBOL:
                        case EVENTS_SYMBOL:
                        case EVENT_SYMBOL:
                        case EVERY_SYMBOL:
                        case EXECUTE_SYMBOL:
                        case EXISTS_SYMBOL:
                        case EXPANSION_SYMBOL:
                        case EXPORT_SYMBOL:
                        case EXTENDED_SYMBOL:
                        case EXTENT_SIZE_SYMBOL:
                        case EXTRACT_SYMBOL:
                        case FALSE_SYMBOL:
                        case FAST_SYMBOL:
                        case FAULTS_SYMBOL:
                        case FILE_SYMBOL:
                        case FIRST_SYMBOL:
                        case FIXED_SYMBOL:
                        case FLOAT:
                        case FLUSH_SYMBOL:
                        case FORMAT_SYMBOL:
                        case FOUND_SYMBOL:
                        case FULL_SYMBOL:
                        case FUNCTION_SYMBOL:
                        case GENERAL_SYMBOL:
                        case GEOMETRYCOLLECTION_SYMBOL:
                        case GEOMETRY_SYMBOL:
                        case GET_FORMAT_SYMBOL:
                        case GLOBAL_SYMBOL:
                        case GRANTS_SYMBOL:
                        case GROUP_CONCAT_SYMBOL:
                        case HANDLER_SYMBOL:
                        case HASH_SYMBOL:
                        case HELP_SYMBOL:
                        case HEXNUMBER:
                        case HEXSTRING:
                        case HOSTS_SYMBOL:
                        case HOST_SYMBOL:
                        case HOUR_SYMBOL:
                        case IDENTIFIED_SYMBOL:
                        case IDENTIFIER:
                        case IF_SYMBOL:
                        case IGNORE_SERVER_IDS_SYMBOL:
                        case IMPORT_SYMBOL:
                        case INDEXES_SYMBOL:
                        case INITIAL_SIZE_SYMBOL:
                        case INNODB_SYMBOL:
                        case INSERT_METHOD_SYMBOL:
                        case INSERT_SYMBOL:
                        case INSTALL_SYMBOL:
                        case INTEGER:
                        case INTERVAL_SYMBOL:
                        case INVOKER_SYMBOL:
                        case IO_SYMBOL:
                        case IPC_SYMBOL:
                        case ISOLATION_SYMBOL:
                        case ISSUER_SYMBOL:
                        case KEY_BLOCK_SIZE_SYMBOL:
                        case LANGUAGE_SYMBOL:
                        case LAST_SYMBOL:
                        case LEAVES_SYMBOL:
                        case LEFT_SYMBOL:
                        case LESS_SYMBOL:
                        case LEVEL_SYMBOL:
                        case LINESTRING_SYMBOL:
                        case LIST_SYMBOL:
                        case LOCAL_SYMBOL:
                        case LOCKS_SYMBOL:
                        case LOGFILE_SYMBOL:
                        case LOGICAL_NOT_OPERATOR:
                        case LOGS_SYMBOL:
                        case MASTER_AUTO_POSITION_SYMBOL:
                        case MASTER_CONNECT_RETRY_SYMBOL:
                        case MASTER_DELAY_SYMBOL:
                        case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                        case MASTER_HOST_SYMBOL:
                        case MASTER_LOG_FILE_SYMBOL:
                        case MASTER_LOG_POS_SYMBOL:
                        case MASTER_PASSWORD_SYMBOL:
                        case MASTER_PORT_SYMBOL:
                        case MASTER_RETRY_COUNT_SYMBOL:
                        case MASTER_SERVER_ID_SYMBOL:
                        case MASTER_SSL_CAPATH_SYMBOL:
                        case MASTER_SSL_CA_SYMBOL:
                        case MASTER_SSL_CERT_SYMBOL:
                        case MASTER_SSL_CIPHER_SYMBOL:
                        case MASTER_SSL_CRLPATH_SYMBOL:
                        case MASTER_SSL_CRL_SYMBOL:
                        case MASTER_SSL_KEY_SYMBOL:
                        case MASTER_SSL_SYMBOL:
                        case MASTER_SYMBOL:
                        case MASTER_USER_SYMBOL:
                        case MATCH_SYMBOL:
                        case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                        case MAX_QUERIES_PER_HOUR_SYMBOL:
                        case MAX_ROWS_SYMBOL:
                        case MAX_SIZE_SYMBOL:
                        case MAX_SYMBOL:
                        case MAX_UPDATES_PER_HOUR_SYMBOL:
                        case MAX_USER_CONNECTIONS_SYMBOL:
                        case MEDIUM_SYMBOL:
                        case MEMORY_SYMBOL:
                        case MERGE_SYMBOL:
                        case MESSAGE_TEXT_SYMBOL:
                        case MICROSECOND_SYMBOL:
                        case MIGRATE_SYMBOL:
                        case MINUS_OPERATOR:
                        case MINUTE_SYMBOL:
                        case MIN_ROWS_SYMBOL:
                        case MIN_SYMBOL:
                        case MODE_SYMBOL:
                        case MODIFY_SYMBOL:
                        case MOD_SYMBOL:
                        case MONTH_SYMBOL:
                        case MULTILINESTRING_SYMBOL:
                        case MULTIPOINT_SYMBOL:
                        case MULTIPOLYGON_SYMBOL:
                        case MUTEX_SYMBOL:
                        case MYSQL_ERRNO_SYMBOL:
                        case NAMES_SYMBOL:
                        case NAME_SYMBOL:
                        case NATIONAL_SYMBOL:
                        case NCHAR_SYMBOL:
                        case NCHAR_TEXT:
                        case NDBCLUSTER_SYMBOL:
                        case NEW_SYMBOL:
                        case NEXT_SYMBOL:
                        case NODEGROUP_SYMBOL:
                        case NONE_SYMBOL:
                        case NOT2_SYMBOL:
                        case NOT_SYMBOL:
                        case NOW_SYMBOL:
                        case NO_SYMBOL:
                        case NO_WAIT_SYMBOL:
                        case NULL2_SYMBOL:
                        case NULL_SYMBOL:
                        case NUMBER_SYMBOL:
                        case NVARCHAR_SYMBOL:
                        case OFFSET_SYMBOL:
                        case OLD_PASSWORD_SYMBOL:
                        case ONE_SHOT_SYMBOL:
                        case ONE_SYMBOL:
                        case OPEN_PAR_SYMBOL:
                        case OPEN_SYMBOL:
                        case OPTIONS_SYMBOL:
                        case OWNER_SYMBOL:
                        case PACK_KEYS_SYMBOL:
                        case PAGE_SYMBOL:
                        case PARAM_MARKER:
                        case PARSER_SYMBOL:
                        case PARTIAL_SYMBOL:
                        case PARTITIONING_SYMBOL:
                        case PARTITIONS_SYMBOL:
                        case PARTITION_SYMBOL:
                        case PASSWORD_SYMBOL:
                        case PHASE_SYMBOL:
                        case PLUGINS_SYMBOL:
                        case PLUGIN_DIR_SYMBOL:
                        case PLUGIN_SYMBOL:
                        case PLUS_OPERATOR:
                        case POINT_SYMBOL:
                        case POLYGON_SYMBOL:
                        case PORT_SYMBOL:
                        case POSITION_SYMBOL:
                        case PREPARE_SYMBOL:
                        case PRESERVE_SYMBOL:
                        case PREV_SYMBOL:
                        case PRIVILEGES_SYMBOL:
                        case PROCESSLIST_SYMBOL:
                        case PROCESS_SYMBOL:
                        case PROFILES_SYMBOL:
                        case PROFILE_SYMBOL:
                        case PROXY_SYMBOL:
                        case QUARTER_SYMBOL:
                        case QUERY_SYMBOL:
                        case QUICK_SYMBOL:
                        case READ_ONLY_SYMBOL:
                        case REBUILD_SYMBOL:
                        case RECOVER_SYMBOL:
                        case REDOFILE_SYMBOL:
                        case REDO_BUFFER_SIZE_SYMBOL:
                        case REDUNDANT_SYMBOL:
                        case RELAYLOG_SYMBOL:
                        case RELAY_LOG_FILE_SYMBOL:
                        case RELAY_LOG_POS_SYMBOL:
                        case RELAY_SYMBOL:
                        case RELAY_THREAD_SYMBOL:
                        case RELOAD_SYMBOL:
                        case REMOVE_SYMBOL:
                        case REORGANIZE_SYMBOL:
                        case REPAIR_SYMBOL:
                        case REPEATABLE_SYMBOL:
                        case REPEAT_SYMBOL:
                        case REPLACE_SYMBOL:
                        case REPLICATION_SYMBOL:
                        case RESET_SYMBOL:
                        case RESTORE_SYMBOL:
                        case RESUME_SYMBOL:
                        case RETURNED_SQLSTATE_SYMBOL:
                        case RETURNS_SYMBOL:
                        case REVERSE_SYMBOL:
                        case RIGHT_SYMBOL:
                        case ROLLBACK_SYMBOL:
                        case ROLLUP_SYMBOL:
                        case ROUTINE_SYMBOL:
                        case ROWS_SYMBOL:
                        case ROW_COUNT_SYMBOL:
                        case ROW_FORMAT_SYMBOL:
                        case ROW_SYMBOL:
                        case RTREE_SYMBOL:
                        case SAVEPOINT_SYMBOL:
                        case SCHEDULE_SYMBOL:
                        case SCHEMA_NAME_SYMBOL:
                        case SECOND_SYMBOL:
                        case SECURITY_SYMBOL:
                        case SERIALIZABLE_SYMBOL:
                        case SERIAL_SYMBOL:
                        case SERVER_SYMBOL:
                        case SESSION_SYMBOL:
                        case SHARE_SYMBOL:
                        case SHUTDOWN_SYMBOL:
                        case SIGNED_SYMBOL:
                        case SIMPLE_SYMBOL:
                        case SINGLE_QUOTED_TEXT:
                        case SLAVE_SYMBOL:
                        case SLOW_SYMBOL:
                        case SNAPSHOT_SYMBOL:
                        case SOCKET_SYMBOL:
                        case SONAME_SYMBOL:
                        case SOUNDS_SYMBOL:
                        case SOURCE_SYMBOL:
                        case SQL_AFTER_GTIDS_SYMBOL:
                        case SQL_AFTER_MTS_GAPS_SYMBOL:
                        case SQL_BEFORE_GTIDS_SYMBOL:
                        case SQL_BUFFER_RESULT_SYMBOL:
                        case SQL_CACHE_SYMBOL:
                        case SQL_NO_CACHE_SYMBOL:
                        case SQL_THREAD_SYMBOL:
                        case STARTS_SYMBOL:
                        case START_SYMBOL:
                        case STATS_AUTO_RECALC_SYMBOL:
                        case STATS_PERSISTENT_SYMBOL:
                        case STATS_SAMPLE_PAGES_SYMBOL:
                        case STATUS_SYMBOL:
                        case STDDEV_SAMP_SYMBOL:
                        case STD_SYMBOL:
                        case STOP_SYMBOL:
                        case STORAGE_SYMBOL:
                        case STRING_SYMBOL:
                        case SUBCLASS_ORIGIN_SYMBOL:
                        case SUBDATE_SYMBOL:
                        case SUBJECT_SYMBOL:
                        case SUBPARTITIONS_SYMBOL:
                        case SUBPARTITION_SYMBOL:
                        case SUBSTRING_SYMBOL:
                        case SUM_SYMBOL:
                        case SUPER_SYMBOL:
                        case SUSPEND_SYMBOL:
                        case SWAPS_SYMBOL:
                        case SWITCHES_SYMBOL:
                        case SYSDATE_SYMBOL:
                        case TABLESPACE_SYMBOL:
                        case TABLES_SYMBOL:
                        case TABLE_CHECKSUM_SYMBOL:
                        case TABLE_NAME_SYMBOL:
                        case TEMPORARY_SYMBOL:
                        case TEMPTABLE_SYMBOL:
                        case TEXT_SYMBOL:
                        case THAN_SYMBOL:
                        case TIMESTAMP_ADD_SYMBOL:
                        case TIMESTAMP_DIFF_SYMBOL:
                        case TIMESTAMP_SYMBOL:
                        case TIME_SYMBOL:
                        case TRANSACTION_SYMBOL:
                        case TRIGGERS_SYMBOL:
                        case TRIM_SYMBOL:
                        case TRUE_SYMBOL:
                        case TRUNCATE_SYMBOL:
                        case TYPES_SYMBOL:
                        case TYPE_SYMBOL:
                        case UDF_RETURNS_SYMBOL:
                        case UNCOMMITTED_SYMBOL:
                        case UNDEFINED_SYMBOL:
                        case UNDERSCORE_CHARSET:
                        case UNDOFILE_SYMBOL:
                        case UNDO_BUFFER_SIZE_SYMBOL:
                        case UNICODE_SYMBOL:
                        case UNINSTALL_SYMBOL:
                        case UNKNOWN_SYMBOL:
                        case UNTIL_SYMBOL:
                        case UPGRADE_SYMBOL:
                        case USER_RESOURCES_SYMBOL:
                        case USER_SYMBOL:
                        case USE_FRM_SYMBOL:
                        case UTC_DATE_SYMBOL:
                        case UTC_TIMESTAMP_SYMBOL:
                        case UTC_TIME_SYMBOL:
                        case VALUES_SYMBOL:
                        case VALUE_SYMBOL:
                        case VARIABLES_SYMBOL:
                        case VARIANCE_SYMBOL:
                        case VAR_SAMP_SYMBOL:
                        case VIEW_SYMBOL:
                        case WAIT_SYMBOL:
                        case WARNINGS_SYMBOL:
                        case WEEK_SYMBOL:
                        case WEIGHT_STRING_SYMBOL:
                        case WORK_SYMBOL:
                        case WRAPPER_SYMBOL:
                        case X509_SYMBOL:
                        case XA_SYMBOL:
                        case XML_SYMBOL:
                        case YEAR_SYMBOL:
                        case 732:
                        	{
                        		alt527=10;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 527;
                            EXCEPTION->state        = 89;


                            goto ruleprimaryEx;

                        }

                    }
                    else if ( (LA527_0 == EXISTS_SYMBOL))
                    {
                        alt527=9;
                    }
                    else if ( (LA527_0 == ACTION_SYMBOL || ((LA527_0 >= AFTER_SYMBOL) && (LA527_0 <= ALGORITHM_SYMBOL)) || LA527_0 == ANALYZE_SYMBOL || LA527_0 == ANY_SYMBOL || ((LA527_0 >= AT_SYMBOL) && (LA527_0 <= AVG_ROW_LENGTH_SYMBOL)) || LA527_0 == BINLOG_SYMBOL || LA527_0 == BIT_SYMBOL || ((LA527_0 >= BLOCK_SYMBOL) && (LA527_0 <= BOOL_SYMBOL)) || LA527_0 == BTREE_SYMBOL || LA527_0 == CASCADED_SYMBOL || ((LA527_0 >= CATALOG_NAME_SYMBOL) && (LA527_0 <= CHANGED_SYMBOL)) || ((LA527_0 >= CIPHER_SYMBOL) && (LA527_0 <= CLIENT_SYMBOL)) || LA527_0 == CODE_SYMBOL || ((LA527_0 >= COLUMNS_SYMBOL) && (LA527_0 <= COLUMN_NAME_SYMBOL)) || LA527_0 == COMMITTED_SYMBOL || ((LA527_0 >= COMPACT_SYMBOL) && (LA527_0 <= COMPRESSED_SYMBOL)) || LA527_0 == CONCURRENT_SYMBOL || ((LA527_0 >= CONNECTION_SYMBOL) && (LA527_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || LA527_0 == CONTEXT_SYMBOL || LA527_0 == CONTRIBUTORS_SYMBOL || LA527_0 == CPU_SYMBOL || LA527_0 == CUBE_SYMBOL || LA527_0 == CURRENT_SYMBOL || LA527_0 == CURSOR_NAME_SYMBOL || ((LA527_0 >= DATAFILE_SYMBOL) && (LA527_0 <= DATETIME_SYMBOL)) || LA527_0 == DEFAULT_AUTH_SYMBOL || LA527_0 == DEFINER_SYMBOL || LA527_0 == DELAY_KEY_WRITE_SYMBOL || LA527_0 == DES_KEY_FILE_SYMBOL || LA527_0 == DIAGNOSTICS_SYMBOL || ((LA527_0 >= DIRECTORY_SYMBOL) && (LA527_0 <= DISK_SYMBOL)) || ((LA527_0 >= DUMPFILE_SYMBOL) && (LA527_0 <= DYNAMIC_SYMBOL)) || LA527_0 == ENABLE_SYMBOL || LA527_0 == ENDS_SYMBOL || ((LA527_0 >= ENGINES_SYMBOL) && (LA527_0 <= ENUM_SYMBOL)) || ((LA527_0 >= ERRORS_SYMBOL) && (LA527_0 <= ERROR_SYMBOL)) || ((LA527_0 >= ESCAPE_SYMBOL) && (LA527_0 <= EVERY_SYMBOL)) || LA527_0 == EXPANSION_SYMBOL || LA527_0 == EXPORT_SYMBOL || ((LA527_0 >= EXTENDED_SYMBOL) && (LA527_0 <= EXTENT_SIZE_SYMBOL)) || ((LA527_0 >= FAST_SYMBOL) && (LA527_0 <= FAULTS_SYMBOL)) || ((LA527_0 >= FILE_SYMBOL) && (LA527_0 <= FIXED_SYMBOL)) || LA527_0 == FOUND_SYMBOL || LA527_0 == FULL_SYMBOL || ((LA527_0 >= FUNCTION_SYMBOL) && (LA527_0 <= GENERAL_SYMBOL)) || LA527_0 == GEOMETRY_SYMBOL || ((LA527_0 >= GLOBAL_SYMBOL) && (LA527_0 <= GRANTS_SYMBOL)) || LA527_0 == HASH_SYMBOL || LA527_0 == HOSTS_SYMBOL || LA527_0 == IDENTIFIED_SYMBOL || LA527_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA527_0 >= IMPORT_SYMBOL) && (LA527_0 <= INDEXES_SYMBOL)) || LA527_0 == INITIAL_SIZE_SYMBOL || LA527_0 == INNODB_SYMBOL || LA527_0 == INSERT_METHOD_SYMBOL || LA527_0 == INVOKER_SYMBOL || LA527_0 == IO_SYMBOL || ((LA527_0 >= IPC_SYMBOL) && (LA527_0 <= ISSUER_SYMBOL)) || LA527_0 == KEY_BLOCK_SIZE_SYMBOL || LA527_0 == LAST_SYMBOL || LA527_0 == LEAVES_SYMBOL || LA527_0 == LESS_SYMBOL || LA527_0 == LEVEL_SYMBOL || LA527_0 == LIST_SYMBOL || LA527_0 == LOCAL_SYMBOL || LA527_0 == LOCKS_SYMBOL || LA527_0 == LOGFILE_SYMBOL || LA527_0 == LOGS_SYMBOL || LA527_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA527_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA527_0 <= MASTER_SSL_SYMBOL)) || ((LA527_0 >= MASTER_SYMBOL) && (LA527_0 <= MASTER_USER_SYMBOL)) || ((LA527_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA527_0 <= MAX_SIZE_SYMBOL)) || ((LA527_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA527_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA527_0 >= MEDIUM_SYMBOL) && (LA527_0 <= MESSAGE_TEXT_SYMBOL)) || LA527_0 == MIGRATE_SYMBOL || LA527_0 == MIN_ROWS_SYMBOL || LA527_0 == MODE_SYMBOL || LA527_0 == MODIFY_SYMBOL || ((LA527_0 >= MUTEX_SYMBOL) && (LA527_0 <= NATIONAL_SYMBOL)) || LA527_0 == NCHAR_SYMBOL || LA527_0 == NDBCLUSTER_SYMBOL || ((LA527_0 >= NEW_SYMBOL) && (LA527_0 <= NONE_SYMBOL)) || LA527_0 == NO_WAIT_SYMBOL || LA527_0 == NUMBER_SYMBOL || LA527_0 == NVARCHAR_SYMBOL || LA527_0 == OFFSET_SYMBOL || ((LA527_0 >= ONE_SHOT_SYMBOL) && (LA527_0 <= ONE_SYMBOL)) || ((LA527_0 >= PACK_KEYS_SYMBOL) && (LA527_0 <= PAGE_SYMBOL)) || ((LA527_0 >= PARTIAL_SYMBOL) && (LA527_0 <= PARTITIONS_SYMBOL)) || ((LA527_0 >= PHASE_SYMBOL) && (LA527_0 <= PLUGIN_SYMBOL)) || ((LA527_0 >= PRESERVE_SYMBOL) && (LA527_0 <= PREV_SYMBOL)) || LA527_0 == PRIVILEGES_SYMBOL || ((LA527_0 >= PROCESSLIST_SYMBOL) && (LA527_0 <= PROXY_SYMBOL)) || ((LA527_0 >= QUERY_SYMBOL) && (LA527_0 <= QUICK_SYMBOL)) || LA527_0 == READ_ONLY_SYMBOL || ((LA527_0 >= REBUILD_SYMBOL) && (LA527_0 <= REDUNDANT_SYMBOL)) || ((LA527_0 >= RELAYLOG_SYMBOL) && (LA527_0 <= RELAY_THREAD_SYMBOL)) || LA527_0 == RELOAD_SYMBOL || LA527_0 == REORGANIZE_SYMBOL || LA527_0 == REPEATABLE_SYMBOL || LA527_0 == REPLICATION_SYMBOL || ((LA527_0 >= RESUME_SYMBOL) && (LA527_0 <= RETURNS_SYMBOL)) || ((LA527_0 >= ROLLUP_SYMBOL) && (LA527_0 <= ROWS_SYMBOL)) || LA527_0 == ROW_FORMAT_SYMBOL || LA527_0 == RTREE_SYMBOL || LA527_0 == SCHEDULE_SYMBOL || LA527_0 == SCHEMA_NAME_SYMBOL || ((LA527_0 >= SERIALIZABLE_SYMBOL) && (LA527_0 <= SERIAL_SYMBOL)) || LA527_0 == SESSION_SYMBOL || LA527_0 == SHARE_SYMBOL || LA527_0 == SHUTDOWN_SYMBOL || LA527_0 == SIMPLE_SYMBOL || LA527_0 == SLOW_SYMBOL || LA527_0 == SNAPSHOT_SYMBOL || ((LA527_0 >= SOUNDS_SYMBOL) && (LA527_0 <= SOURCE_SYMBOL)) || ((LA527_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA527_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA527_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA527_0 <= SQL_CACHE_SYMBOL)) || LA527_0 == SQL_NO_CACHE_SYMBOL || LA527_0 == SQL_THREAD_SYMBOL || LA527_0 == STARTS_SYMBOL || ((LA527_0 >= STATS_AUTO_RECALC_SYMBOL) && (LA527_0 <= STATUS_SYMBOL)) || LA527_0 == STORAGE_SYMBOL || ((LA527_0 >= STRING_SYMBOL) && (LA527_0 <= SUBCLASS_ORIGIN_SYMBOL)) || ((LA527_0 >= SUBJECT_SYMBOL) && (LA527_0 <= SUBPARTITION_SYMBOL)) || ((LA527_0 >= SUPER_SYMBOL) && (LA527_0 <= SWITCHES_SYMBOL)) || ((LA527_0 >= TABLESPACE_SYMBOL) && (LA527_0 <= TABLE_NAME_SYMBOL)) || ((LA527_0 >= TEMPORARY_SYMBOL) && (LA527_0 <= TEMPTABLE_SYMBOL)) || ((LA527_0 >= TEXT_SYMBOL) && (LA527_0 <= THAN_SYMBOL)) || ((LA527_0 >= TRANSACTION_SYMBOL) && (LA527_0 <= TRIGGERS_SYMBOL)) || ((LA527_0 >= TYPES_SYMBOL) && (LA527_0 <= UDF_RETURNS_SYMBOL)) || ((LA527_0 >= UNCOMMITTED_SYMBOL) && (LA527_0 <= UNDEFINED_SYMBOL)) || ((LA527_0 >= UNDOFILE_SYMBOL) && (LA527_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || LA527_0 == UNKNOWN_SYMBOL || LA527_0 == UNTIL_SYMBOL || LA527_0 == USER_RESOURCES_SYMBOL || LA527_0 == USE_FRM_SYMBOL || LA527_0 == VALUE_SYMBOL || LA527_0 == VARIABLES_SYMBOL || ((LA527_0 >= VIEW_SYMBOL) && (LA527_0 <= WARNINGS_SYMBOL)) || LA527_0 == WORK_SYMBOL || LA527_0 == X509_SYMBOL || LA527_0 == XML_SYMBOL))
                    {
                        {
                            int LA527_91 = LA(2);
                            if ( (LA527_91 == DOT_SYMBOL))
                            {
                                {
                                    int LA527_4013 = LA(3);
                                    if ( (ANTLR3_TRUE))
                                    {
                                        alt527=3;
                                    }
                                    else if ( (synpred3_MySQL(ctx)))
                                    {
                                        alt527=5;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 527;
                                        EXCEPTION->state        = 4013;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA527_91 == EOF || ((LA527_91 >= ACTION_SYMBOL) && (LA527_91 <= ADDDATE_SYMBOL)) || ((LA527_91 >= AFTER_SYMBOL) && (LA527_91 <= ALGORITHM_SYMBOL)) || ((LA527_91 >= ANALYZE_SYMBOL) && (LA527_91 <= ASC_SYMBOL)) || LA527_91 == AS_SYMBOL || ((LA527_91 >= AT_SYMBOL) && (LA527_91 <= BACKUP_SYMBOL)) || LA527_91 == BACK_TICK_QUOTED_ID || ((LA527_91 >= BEGIN_SYMBOL) && (LA527_91 <= BETWEEN_SYMBOL)) || LA527_91 == BINLOG_SYMBOL || LA527_91 == BITWISE_AND_OPERATOR || ((LA527_91 >= BITWISE_OR_OPERATOR) && (LA527_91 <= BITWISE_XOR_OPERATOR)) || LA527_91 == BIT_SYMBOL || ((LA527_91 >= BLOCK_SYMBOL) && (LA527_91 <= BOOL_SYMBOL)) || ((LA527_91 >= BTREE_SYMBOL) && (LA527_91 <= BYTE_SYMBOL)) || LA527_91 == CACHE_SYMBOL || LA527_91 == CASCADED_SYMBOL || ((LA527_91 >= CATALOG_NAME_SYMBOL) && (LA527_91 <= CHANGED_SYMBOL)) || LA527_91 == CHARSET_SYMBOL || LA527_91 == CHECKSUM_SYMBOL || ((LA527_91 >= CIPHER_SYMBOL) && (LA527_91 <= COLLATION_SYMBOL)) || ((LA527_91 >= COLUMNS_SYMBOL) && (LA527_91 <= COLUMN_NAME_SYMBOL)) || LA527_91 == COMMA_SYMBOL || ((LA527_91 >= COMMENT_SYMBOL) && (LA527_91 <= CONCURRENT_SYMBOL)) || ((LA527_91 >= CONNECTION_SYMBOL) && (LA527_91 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA527_91 >= CONTAINS_SYMBOL) && (LA527_91 <= CONTEXT_SYMBOL)) || LA527_91 == CONTRIBUTORS_SYMBOL || LA527_91 == CPU_SYMBOL || ((LA527_91 >= CROSS_SYMBOL) && (LA527_91 <= CUBE_SYMBOL)) || LA527_91 == CURRENT_SYMBOL || LA527_91 == CURSOR_NAME_SYMBOL || ((LA527_91 >= DATAFILE_SYMBOL) && (LA527_91 <= DATETIME_SYMBOL)) || LA527_91 == DATE_SYMBOL || ((LA527_91 >= DAY_HOUR_SYMBOL) && (LA527_91 <= DEALLOCATE_SYMBOL)) || LA527_91 == DEFAULT_AUTH_SYMBOL || LA527_91 == DEFINER_SYMBOL || LA527_91 == DELAY_KEY_WRITE_SYMBOL || ((LA527_91 >= DESC_SYMBOL) && (LA527_91 <= DES_KEY_FILE_SYMBOL)) || LA527_91 == DIAGNOSTICS_SYMBOL || ((LA527_91 >= DIRECTORY_SYMBOL) && (LA527_91 <= DISK_SYMBOL)) || ((LA527_91 >= DIV_OPERATOR) && (LA527_91 <= DIV_SYMBOL)) || LA527_91 == DOUBLE_QUOTED_TEXT || LA527_91 == DO_SYMBOL || ((LA527_91 >= DUMPFILE_SYMBOL) && (LA527_91 <= DYNAMIC_SYMBOL)) || ((LA527_91 >= ELSE_SYMBOL) && (LA527_91 <= ENABLE_SYMBOL)) || LA527_91 == ENDS_SYMBOL || ((LA527_91 >= END_SYMBOL) && (LA527_91 <= ERROR_SYMBOL)) || ((LA527_91 >= ESCAPE_SYMBOL) && (LA527_91 <= EVERY_SYMBOL)) || LA527_91 == EXECUTE_SYMBOL || LA527_91 == EXPANSION_SYMBOL || LA527_91 == EXPORT_SYMBOL || ((LA527_91 >= EXTENDED_SYMBOL) && (LA527_91 <= EXTENT_SIZE_SYMBOL)) || ((LA527_91 >= FAST_SYMBOL) && (LA527_91 <= FAULTS_SYMBOL)) || ((LA527_91 >= FILE_SYMBOL) && (LA527_91 <= FIXED_SYMBOL)) || LA527_91 == FLUSH_SYMBOL || ((LA527_91 >= FORMAT_SYMBOL) && (LA527_91 <= FROM_SYMBOL)) || LA527_91 == FULL_SYMBOL || ((LA527_91 >= FUNCTION_SYMBOL) && (LA527_91 <= GET_FORMAT_SYMBOL)) || ((LA527_91 >= GLOBAL_SYMBOL) && (LA527_91 <= GRANTS_SYMBOL)) || ((LA527_91 >= GREATER_OR_EQUAL_OPERATOR) && (LA527_91 <= GREATER_THAN_OPERATOR)) || ((LA527_91 >= GROUP_SYMBOL) && (LA527_91 <= HELP_SYMBOL)) || ((LA527_91 >= HOSTS_SYMBOL) && (LA527_91 <= IDENTIFIER)) || LA527_91 == IGNORE_SERVER_IDS_SYMBOL || ((LA527_91 >= IMPORT_SYMBOL) && (LA527_91 <= INDEXES_SYMBOL)) || ((LA527_91 >= INITIAL_SIZE_SYMBOL) && (LA527_91 <= INNODB_SYMBOL)) || LA527_91 == INSERT_METHOD_SYMBOL || LA527_91 == INSTALL_SYMBOL || LA527_91 == INTO_SYMBOL || ((LA527_91 >= INVOKER_SYMBOL) && (LA527_91 <= IN_SYMBOL)) || LA527_91 == IO_SYMBOL || ((LA527_91 >= IPC_SYMBOL) && (LA527_91 <= IS_SYMBOL)) || LA527_91 == JOIN_SYMBOL || LA527_91 == KEY_BLOCK_SIZE_SYMBOL || ((LA527_91 >= LANGUAGE_SYMBOL) && (LA527_91 <= LAST_SYMBOL)) || LA527_91 == LEAVES_SYMBOL || ((LA527_91 >= LEFT_SYMBOL) && (LA527_91 <= LESS_THAN_OPERATOR)) || LA527_91 == LEVEL_SYMBOL || ((LA527_91 >= LIKE_SYMBOL) && (LA527_91 <= LIMIT_SYMBOL)) || LA527_91 == LINESTRING_SYMBOL || LA527_91 == LIST_SYMBOL || LA527_91 == LOCAL_SYMBOL || ((LA527_91 >= LOCKS_SYMBOL) && (LA527_91 <= LOGICAL_AND_OPERATOR)) || ((LA527_91 >= LOGICAL_OR_OPERATOR) && (LA527_91 <= LOGS_SYMBOL)) || LA527_91 == MASTER_AUTO_POSITION_SYMBOL || ((LA527_91 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA527_91 <= MASTER_SSL_SYMBOL)) || ((LA527_91 >= MASTER_SYMBOL) && (LA527_91 <= MASTER_USER_SYMBOL)) || ((LA527_91 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA527_91 <= MAX_SIZE_SYMBOL)) || ((LA527_91 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA527_91 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA527_91 >= MEDIUM_SYMBOL) && (LA527_91 <= MICROSECOND_SYMBOL)) || ((LA527_91 >= MIGRATE_SYMBOL) && (LA527_91 <= MIN_ROWS_SYMBOL)) || LA527_91 == MODE_SYMBOL || ((LA527_91 >= MODIFY_SYMBOL) && (LA527_91 <= MULTILINESTRING_SYMBOL)) || ((LA527_91 >= MULTIPOINT_SYMBOL) && (LA527_91 <= NATURAL_SYMBOL)) || ((LA527_91 >= NCHAR_SYMBOL) && (LA527_91 <= NDBCLUSTER_SYMBOL)) || ((LA527_91 >= NEW_SYMBOL) && (LA527_91 <= NONE_SYMBOL)) || ((LA527_91 >= NOT_EQUAL2_OPERATOR) && (LA527_91 <= NOT_SYMBOL)) || ((LA527_91 >= NO_SYMBOL) && (LA527_91 <= NO_WAIT_SYMBOL)) || LA527_91 == NULL_SAFE_EQUAL_OPERATOR || LA527_91 == NUMBER_SYMBOL || LA527_91 == NVARCHAR_SYMBOL || ((LA527_91 >= OFFSET_SYMBOL) && (LA527_91 <= ONE_SYMBOL)) || LA527_91 == ON_SYMBOL || LA527_91 == OPEN_SYMBOL || LA527_91 == OPTIONS_SYMBOL || ((LA527_91 >= ORDER_SYMBOL) && (LA527_91 <= OR_SYMBOL)) || ((LA527_91 >= OWNER_SYMBOL) && (LA527_91 <= PAGE_SYMBOL)) || ((LA527_91 >= PARSER_SYMBOL) && (LA527_91 <= PARTITION_SYMBOL)) || ((LA527_91 >= PASSWORD_SYMBOL) && (LA527_91 <= PORT_SYMBOL)) || ((LA527_91 >= PREPARE_SYMBOL) && (LA527_91 <= PREV_SYMBOL)) || ((LA527_91 >= PRIVILEGES_SYMBOL) && (LA527_91 <= PROXY_SYMBOL)) || ((LA527_91 >= QUARTER_SYMBOL) && (LA527_91 <= QUICK_SYMBOL)) || LA527_91 == READ_ONLY_SYMBOL || ((LA527_91 >= REBUILD_SYMBOL) && (LA527_91 <= REDUNDANT_SYMBOL)) || ((LA527_91 >= REGEXP_SYMBOL) && (LA527_91 <= RELAY_THREAD_SYMBOL)) || ((LA527_91 >= RELOAD_SYMBOL) && (LA527_91 <= REPEATABLE_SYMBOL)) || LA527_91 == REPLICATION_SYMBOL || LA527_91 == RESET_SYMBOL || LA527_91 == RESTORE_SYMBOL || ((LA527_91 >= RESUME_SYMBOL) && (LA527_91 <= RETURNS_SYMBOL)) || LA527_91 == REVERSE_SYMBOL || LA527_91 == RIGHT_SYMBOL || ((LA527_91 >= ROLLBACK_SYMBOL) && (LA527_91 <= SCHEDULE_SYMBOL)) || LA527_91 == SCHEMA_NAME_SYMBOL || ((LA527_91 >= SECOND_MICROSECOND_SYMBOL) && (LA527_91 <= SECURITY_SYMBOL)) || LA527_91 == SEMICOLON_SYMBOL || ((LA527_91 >= SEPARATOR_SYMBOL) && (LA527_91 <= SERIAL_SYMBOL)) || ((LA527_91 >= SERVER_SYMBOL) && (LA527_91 <= SESSION_SYMBOL)) || LA527_91 == SET_SYMBOL || ((LA527_91 >= SHARE_SYMBOL) && (LA527_91 <= SHIFT_RIGHT_OPERATOR)) || LA527_91 == SHUTDOWN_SYMBOL || ((LA527_91 >= SIGNED_SYMBOL) && (LA527_91 <= SIMPLE_SYMBOL)) || ((LA527_91 >= SINGLE_QUOTED_TEXT) && (LA527_91 <= SLOW_SYMBOL)) || ((LA527_91 >= SNAPSHOT_SYMBOL) && (LA527_91 <= SOURCE_SYMBOL)) || ((LA527_91 >= SQL_AFTER_GTIDS_SYMBOL) && (LA527_91 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA527_91 >= SQL_BUFFER_RESULT_SYMBOL) && (LA527_91 <= SQL_CACHE_SYMBOL)) || LA527_91 == SQL_NO_CACHE_SYMBOL || LA527_91 == SQL_THREAD_SYMBOL || ((LA527_91 >= STARTS_SYMBOL) && (LA527_91 <= STATUS_SYMBOL)) || ((LA527_91 >= STOP_SYMBOL) && (LA527_91 <= STRAIGHT_JOIN_SYMBOL)) || ((LA527_91 >= STRING_SYMBOL) && (LA527_91 <= SUBPARTITION_SYMBOL)) || ((LA527_91 >= SUPER_SYMBOL) && (LA527_91 <= SWITCHES_SYMBOL)) || ((LA527_91 >= TABLESPACE_SYMBOL) && (LA527_91 <= TABLE_NAME_SYMBOL)) || ((LA527_91 >= TEMPORARY_SYMBOL) && (LA527_91 <= TEMPTABLE_SYMBOL)) || ((LA527_91 >= TEXT_SYMBOL) && (LA527_91 <= TIME_SYMBOL)) || ((LA527_91 >= TRANSACTION_SYMBOL) && (LA527_91 <= TRIGGERS_SYMBOL)) || ((LA527_91 >= TRUNCATE_SYMBOL) && (LA527_91 <= UDF_RETURNS_SYMBOL)) || ((LA527_91 >= UNCOMMITTED_SYMBOL) && (LA527_91 <= UNDEFINED_SYMBOL)) || ((LA527_91 >= UNDERSCORE_CHARSET) && (LA527_91 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA527_91 >= UNICODE_SYMBOL) && (LA527_91 <= UNION_SYMBOL)) || LA527_91 == UNKNOWN_SYMBOL || LA527_91 == UNTIL_SYMBOL || LA527_91 == UPGRADE_SYMBOL || ((LA527_91 >= USER_RESOURCES_SYMBOL) && (LA527_91 <= USE_FRM_SYMBOL)) || LA527_91 == USING_SYMBOL || LA527_91 == VALUE_SYMBOL || LA527_91 == VARIABLES_SYMBOL || ((LA527_91 >= VIEW_SYMBOL) && (LA527_91 <= WHERE_SYMBOL)) || ((LA527_91 >= WITH_SYMBOL) && (LA527_91 <= WRAPPER_SYMBOL)) || LA527_91 == X509_SYMBOL || ((LA527_91 >= XA_SYMBOL) && (LA527_91 <= YEAR_SYMBOL)) || LA527_91 == 733))
                            {
                                alt527=3;
                            }
                            else if ( (synpred3_MySQL(ctx)) && (LA527_91 == OPEN_PAR_SYMBOL))
                            {
                                alt527=5;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 527;
                                EXCEPTION->state        = 91;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA527_0 == 732))
                    {
                        alt527=11;
                    }
                    else if ( (LA527_0 == MATCH_SYMBOL))
                    {
                        alt527=12;
                    }
                    else if ( (LA527_0 == CASE_SYMBOL))
                    {
                        alt527=13;
                    }
                    else if ( (LA527_0 == BINARY_SYMBOL || LA527_0 == CAST_SYMBOL || LA527_0 == CONVERT_SYMBOL))
                    {
                        alt527=14;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 527;
                        EXCEPTION->state        = 0;


                        goto ruleprimaryEx;

                    }
                }
                switch (alt527)
                {
            	case 1:
            	    // MySQL.g:1611:3: {...}? temporal_literal
            	    {
            	        if ( !((LA(1) == DATE_SYMBOL || LA(1) == TIME_SYMBOL || LA(1) == TIMESTAMP_SYMBOL)) )
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
            	                EXCEPTION->message      = (void *)"LA(1) == DATE_SYMBOL || LA(1) == TIME_SYMBOL || LA(1) == TIMESTAMP_SYMBOL";
            	                EXCEPTION->ruleName	 = (void *)"primary";


            	        }

            	        FOLLOWPUSH(FOLLOW_temporal_literal_in_primary9100);
            	        temporal_literal1761=temporal_literal(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, temporal_literal1761.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1612:5: literal
            	    {
            	        FOLLOWPUSH(FOLLOW_literal_in_primary9106);
            	        literal1762=literal(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, literal1762.tree);

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:1613:5: field_name
            	    {
            	        FOLLOWPUSH(FOLLOW_field_name_in_primary9112);
            	        field_name1763=field_name(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_name1763.tree);

            	    }
            	    break;
            	case 4:
            	    // MySQL.g:1614:5: function_call_expression
            	    {
            	        FOLLOWPUSH(FOLLOW_function_call_expression_in_primary9118);
            	        function_call_expression1764=function_call_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, function_call_expression1764.tree);

            	    }
            	    break;
            	case 5:
            	    // MySQL.g:1615:5: ( qualified_identifier OPEN_PAR_SYMBOL )=> generic_function_call
            	    {
            	        FOLLOWPUSH(FOLLOW_generic_function_call_in_primary9132);
            	        generic_function_call1765=generic_function_call(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, generic_function_call1765.tree);

            	    }
            	    break;
            	case 6:
            	    // MySQL.g:1616:5: PARAM_MARKER
            	    {
            	        PARAM_MARKER1766 = (pANTLR3_COMMON_TOKEN) MATCHT(PARAM_MARKER, &FOLLOW_PARAM_MARKER_in_primary9138);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PARAM_MARKER1766_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARAM_MARKER1766));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PARAM_MARKER1766_tree);
            	        }

            	    }
            	    break;
            	case 7:
            	    // MySQL.g:1617:5: variable
            	    {
            	        FOLLOWPUSH(FOLLOW_variable_in_primary9144);
            	        variable1767=variable(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, variable1767.tree);

            	    }
            	    break;
            	case 8:
            	    // MySQL.g:1618:5: {...}? subquery
            	    {
            	        if ( !((LA(1) == OPEN_PAR_SYMBOL && LA(2) == SELECT_SYMBOL)) )
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
            	                EXCEPTION->message      = (void *)"LA(1) == OPEN_PAR_SYMBOL && LA(2) == SELECT_SYMBOL";
            	                EXCEPTION->ruleName	 = (void *)"primary";


            	        }

            	        FOLLOWPUSH(FOLLOW_subquery_in_primary9152);
            	        subquery1768=subquery(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, subquery1768.tree);

            	    }
            	    break;
            	case 9:
            	    // MySQL.g:1619:5: EXISTS_SYMBOL subquery
            	    {
            	        EXISTS_SYMBOL1769 = (pANTLR3_COMMON_TOKEN) MATCHT(EXISTS_SYMBOL, &FOLLOW_EXISTS_SYMBOL_in_primary9158);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        EXISTS_SYMBOL1769_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXISTS_SYMBOL1769));
            	        ADAPTOR->addChild(ADAPTOR, root_0, EXISTS_SYMBOL1769_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_subquery_in_primary9160);
            	        subquery1770=subquery(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, subquery1770.tree);

            	    }
            	    break;
            	case 10:
            	    // MySQL.g:1620:5: ( ROW_SYMBOL )? expression_list_with_parentheses
            	    {
            	        // MySQL.g:1620:5: ( ROW_SYMBOL )?
            	        {
            	            int alt526=2;
            	            switch ( LA(1) )
            	            {
            	                case ROW_SYMBOL:
            	                	{
            	                		alt526=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt526)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1620:5: ROW_SYMBOL
            	        	    {
            	        	        ROW_SYMBOL1771 = (pANTLR3_COMMON_TOKEN) MATCHT(ROW_SYMBOL, &FOLLOW_ROW_SYMBOL_in_primary9166);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleprimaryEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        ROW_SYMBOL1771_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ROW_SYMBOL1771));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, ROW_SYMBOL1771_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_expression_list_with_parentheses_in_primary9169);
            	        expression_list_with_parentheses1772=expression_list_with_parentheses(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression_list_with_parentheses1772.tree);

            	    }
            	    break;
            	case 11:
            	    // MySQL.g:1621:5: '{' identifier expression '}'
            	    {
            	        char_literal1773 = (pANTLR3_COMMON_TOKEN) MATCHT(732, &FOLLOW_732_in_primary9175);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        char_literal1773_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, char_literal1773));
            	        ADAPTOR->addChild(ADAPTOR, root_0, char_literal1773_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_identifier_in_primary9177);
            	        identifier1774=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier1774.tree);

            	        FOLLOWPUSH(FOLLOW_expression_in_primary9179);
            	        expression1775=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1775.tree);

            	        char_literal1776 = (pANTLR3_COMMON_TOKEN) MATCHT(733, &FOLLOW_733_in_primary9181);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        char_literal1776_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, char_literal1776));
            	        ADAPTOR->addChild(ADAPTOR, root_0, char_literal1776_tree);
            	        }

            	    }
            	    break;
            	case 12:
            	    // MySQL.g:1622:5: match_expression
            	    {
            	        FOLLOWPUSH(FOLLOW_match_expression_in_primary9187);
            	        match_expression1777=match_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, match_expression1777.tree);

            	    }
            	    break;
            	case 13:
            	    // MySQL.g:1623:5: case_expression
            	    {
            	        FOLLOWPUSH(FOLLOW_case_expression_in_primary9193);
            	        case_expression1778=case_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, case_expression1778.tree);

            	    }
            	    break;
            	case 14:
            	    // MySQL.g:1624:5: cast_expression
            	    {
            	        FOLLOWPUSH(FOLLOW_cast_expression_in_primary9199);
            	        cast_expression1779=cast_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, cast_expression1779.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1627:2: ( options {greedy=true; } : COLLATE_SYMBOL text_or_identifier )*

            for (;;)
            {
                int alt528=2;
                switch ( LA(1) )
                {
                case COLLATE_SYMBOL:
                	{
                		alt528=1;
                	}
                    break;

                }

                switch (alt528)
                {
            	case 1:
            	    // MySQL.g:1627:32: COLLATE_SYMBOL text_or_identifier
            	    {
            	        COLLATE_SYMBOL1780 = (pANTLR3_COMMON_TOKEN) MATCHT(COLLATE_SYMBOL, &FOLLOW_COLLATE_SYMBOL_in_primary9221);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COLLATE_SYMBOL1780_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLLATE_SYMBOL1780));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COLLATE_SYMBOL1780_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_text_or_identifier_in_primary9223);
            	        text_or_identifier1781=text_or_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_identifier1781.tree);

            	    }
            	    break;

            	default:
            	    goto loop528;	/* break out of the loop */
            	    break;
                }
            }
            loop528: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto ruleprimaryEx; /* Prevent compiler warnings */
    ruleprimaryEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end primary */

/**
 * $ANTLR start comparison_operator
 * MySQL.g:1630:1: comparison_operator : ( EQUAL_OPERATOR | GREATER_OR_EQUAL_OPERATOR | GREATER_THAN_OPERATOR | LESS_OR_EQUAL_OPERATOR | LESS_THAN_OPERATOR | NOT_EQUAL_OPERATOR | NOT_EQUAL2_OPERATOR | NULL_SAFE_EQUAL_OPERATOR );
 */
static MySQLParser_comparison_operator_return
comparison_operator(pMySQLParser ctx)
{
    MySQLParser_comparison_operator_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set1782;

    pANTLR3_BASE_TREE set1782_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1782       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1782_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1630:20: ( EQUAL_OPERATOR | GREATER_OR_EQUAL_OPERATOR | GREATER_THAN_OPERATOR | LESS_OR_EQUAL_OPERATOR | LESS_THAN_OPERATOR | NOT_EQUAL_OPERATOR | NOT_EQUAL2_OPERATOR | NULL_SAFE_EQUAL_OPERATOR )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set1782=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == EQUAL_OPERATOR || ((LA(1) >= GREATER_OR_EQUAL_OPERATOR) && (LA(1) <= GREATER_THAN_OPERATOR)) || LA(1) == LESS_OR_EQUAL_OPERATOR || LA(1) == LESS_THAN_OPERATOR || ((LA(1) >= NOT_EQUAL2_OPERATOR) && (LA(1) <= NOT_EQUAL_OPERATOR)) || LA(1) == NULL_SAFE_EQUAL_OPERATOR )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1782))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto rulecomparison_operatorEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto rulecomparison_operatorEx; /* Prevent compiler warnings */
    rulecomparison_operatorEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end comparison_operator */

/**
 * $ANTLR start multiplication_operator
 * MySQL.g:1635:1: multiplication_operator : ( MULT_OPERATOR | DIV_OPERATOR | DIV_SYMBOL | MOD_OPERATOR | MOD_SYMBOL );
 */
static MySQLParser_multiplication_operator_return
multiplication_operator(pMySQLParser ctx)
{
    MySQLParser_multiplication_operator_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set1783;

    pANTLR3_BASE_TREE set1783_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1783       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1783_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1635:24: ( MULT_OPERATOR | DIV_OPERATOR | DIV_SYMBOL | MOD_OPERATOR | MOD_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set1783=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( ((LA(1) >= DIV_OPERATOR) && (LA(1) <= DIV_SYMBOL)) || ((LA(1) >= MOD_OPERATOR) && (LA(1) <= MOD_SYMBOL)) || LA(1) == MULT_OPERATOR )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1783))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto rulemultiplication_operatorEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto rulemultiplication_operatorEx; /* Prevent compiler warnings */
    rulemultiplication_operatorEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end multiplication_operator */

/**
 * $ANTLR start function_call_expression
 * MySQL.g:1641:1: function_call_expression : function_call -> ^( FUNCTION_CALL function_call ) ;
 */
static MySQLParser_function_call_expression_return
function_call_expression(pMySQLParser ctx)
{
    MySQLParser_function_call_expression_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_function_call_return function_call1784;
    #undef	RETURN_TYPE_function_call1784
    #define	RETURN_TYPE_function_call1784 MySQLParser_function_call_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_function_call;
    /* Initialize rule variables
     */

    root_0 = NULL;

    function_call1784.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;



    stream_function_call   = NULL;
    #define CREATE_stream_function_call  if (stream_function_call == NULL) {stream_function_call = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule function_call"); }

    retval.tree  = NULL;

    {
        // MySQL.g:1641:25: ( function_call -> ^( FUNCTION_CALL function_call ) )
        // MySQL.g:1642:2: function_call
        {
            FOLLOWPUSH(FOLLOW_function_call_in_function_call_expression9300);
            function_call1784=function_call(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulefunction_call_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_function_call; stream_function_call->add(stream_function_call, function_call1784.tree, NULL); }

            /* AST REWRITE
             * elements          : function_call
             * token labels      : 
             * rule labels       : retval
             * token list labels : 
             * rule list labels  : 
             */
            if ( BACKTRACKING==0 ) 

            {
            	pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_retval;

            	stream_retval=antlr3RewriteRuleSubtreeStreamNewAEE(ADAPTOR,  RECOGNIZER, (pANTLR3_UINT8)"token retval", retval.tree != NULL ? retval.tree : NULL);

            	root_0			    = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
            	retval.tree    = root_0;
            	// 1642:16: -> ^( FUNCTION_CALL function_call )
            	{
            	    // MySQL.g:1642:19: ^( FUNCTION_CALL function_call )
            	    {
            	        pANTLR3_BASE_TREE root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
            	        root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, 
            	        (pANTLR3_BASE_TREE)ADAPTOR->createTypeText(ADAPTOR, FUNCTION_CALL, (pANTLR3_UINT8)"FUNCTION_CALL")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_function_call == NULL ? NULL : stream_function_call->nextTree(stream_function_call));

            	        ADAPTOR->addChild(ADAPTOR, root_0, root_1);
            	    }

            	}


            	retval.tree = root_0; // set result root
            	if (stream_retval != NULL) stream_retval->free(stream_retval);


            }
        }

    }

    // This is where rules clean up and exit
    //
    goto rulefunction_call_expressionEx; /* Prevent compiler warnings */
    rulefunction_call_expressionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
        if (stream_function_call != NULL) stream_function_call->free(stream_function_call);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end function_call_expression */

/**
 * $ANTLR start function_call
 * MySQL.g:1645:1: function_call : ( CHAR_SYMBOL OPEN_PAR_SYMBOL expression_list ( USING_SYMBOL charset_name )? CLOSE_PAR_SYMBOL | CURRENT_USER_SYMBOL ( parentheses )? | DATE_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | DAY_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | HOUR_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | INSERT_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression COMMA_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL | LEFT_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL INTEGER CLOSE_PAR_SYMBOL | MINUTE_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | MONTH_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | RIGHT_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL INTEGER CLOSE_PAR_SYMBOL | SECOND_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | TIME_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | TIMESTAMP_SYMBOL OPEN_PAR_SYMBOL expression ( COMMA_SYMBOL expression )? CLOSE_PAR_SYMBOL | trim_function | USER_SYMBOL parentheses | VALUES_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | YEAR_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | ( ADDDATE_SYMBOL | SUBDATE_SYMBOL ) OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL | CURDATE_SYMBOL ( parentheses )? | CURTIME_SYMBOL ( time_function_parameters )? | ( DATE_ADD_SYMBOL | DATE_SUB_SYMBOL ) OPEN_PAR_SYMBOL expression COMMA_SYMBOL INTERVAL_SYMBOL interval CLOSE_PAR_SYMBOL | EXTRACT_SYMBOL OPEN_PAR_SYMBOL interval_unit FROM_SYMBOL expression CLOSE_PAR_SYMBOL | GET_FORMAT_SYMBOL OPEN_PAR_SYMBOL date_time_type COMMA_SYMBOL expression CLOSE_PAR_SYMBOL | NOW_SYMBOL ( time_function_parameters )? | POSITION_SYMBOL OPEN_PAR_SYMBOL bitwise_or_expression IN_SYMBOL expression CLOSE_PAR_SYMBOL | substring_function | SYSDATE_SYMBOL ( time_function_parameters )? | ( TIMESTAMP_ADD_SYMBOL | TIMESTAMP_DIFF_SYMBOL ) OPEN_PAR_SYMBOL interval_timestamp_unit COMMA_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL | UTC_DATE_SYMBOL ( parentheses )? | UTC_TIME_SYMBOL ( time_function_parameters )? | UTC_TIMESTAMP_SYMBOL ( time_function_parameters )? | ASCII_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | CHARSET_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | COALESCE_SYMBOL expression_list_with_parentheses | COLLATION_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | DATABASE_SYMBOL parentheses | IF_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL | FORMAT_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression ( COMMA_SYMBOL expression )? CLOSE_PAR_SYMBOL | MICROSECOND_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | MOD_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL | OLD_PASSWORD_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | PASSWORD_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | QUARTER_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | REPEAT_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL | REPLACE_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL | REVERSE_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | ROW_COUNT_SYMBOL parentheses | TRUNCATE_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL | WEEK_SYMBOL OPEN_PAR_SYMBOL expression ( COMMA_SYMBOL expression )? CLOSE_PAR_SYMBOL |{...}? => WEIGHT_STRING_SYMBOL OPEN_PAR_SYMBOL expression ( ( AS_SYMBOL CHAR_SYMBOL field_length )? ( weight_string_levels )? | AS_SYMBOL BINARY_SYMBOL field_length | COMMA_SYMBOL INTEGER COMMA_SYMBOL INTEGER COMMA_SYMBOL INTEGER ) CLOSE_PAR_SYMBOL | geometry_function | aggregate_function );
 */
static MySQLParser_function_call_return
function_call(pMySQLParser ctx)
{
    MySQLParser_function_call_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    CHAR_SYMBOL1785;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1786;
    pANTLR3_COMMON_TOKEN    USING_SYMBOL1788;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1790;
    pANTLR3_COMMON_TOKEN    CURRENT_USER_SYMBOL1791;
    pANTLR3_COMMON_TOKEN    DATE_SYMBOL1793;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1794;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1796;
    pANTLR3_COMMON_TOKEN    DAY_SYMBOL1797;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1798;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1800;
    pANTLR3_COMMON_TOKEN    HOUR_SYMBOL1801;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1802;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1804;
    pANTLR3_COMMON_TOKEN    INSERT_SYMBOL1805;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1806;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1808;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1810;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1812;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1814;
    pANTLR3_COMMON_TOKEN    LEFT_SYMBOL1815;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1816;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1818;
    pANTLR3_COMMON_TOKEN    INTEGER1819;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1820;
    pANTLR3_COMMON_TOKEN    MINUTE_SYMBOL1821;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1822;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1824;
    pANTLR3_COMMON_TOKEN    MONTH_SYMBOL1825;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1826;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1828;
    pANTLR3_COMMON_TOKEN    RIGHT_SYMBOL1829;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1830;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1832;
    pANTLR3_COMMON_TOKEN    INTEGER1833;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1834;
    pANTLR3_COMMON_TOKEN    SECOND_SYMBOL1835;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1836;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1838;
    pANTLR3_COMMON_TOKEN    TIME_SYMBOL1839;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1840;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1842;
    pANTLR3_COMMON_TOKEN    TIMESTAMP_SYMBOL1843;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1844;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1846;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1848;
    pANTLR3_COMMON_TOKEN    USER_SYMBOL1850;
    pANTLR3_COMMON_TOKEN    VALUES_SYMBOL1852;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1853;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1855;
    pANTLR3_COMMON_TOKEN    YEAR_SYMBOL1856;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1857;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1859;
    pANTLR3_COMMON_TOKEN    set1860;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1861;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1863;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1865;
    pANTLR3_COMMON_TOKEN    CURDATE_SYMBOL1866;
    pANTLR3_COMMON_TOKEN    CURTIME_SYMBOL1868;
    pANTLR3_COMMON_TOKEN    set1870;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1871;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1873;
    pANTLR3_COMMON_TOKEN    INTERVAL_SYMBOL1874;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1876;
    pANTLR3_COMMON_TOKEN    EXTRACT_SYMBOL1877;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1878;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL1880;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1882;
    pANTLR3_COMMON_TOKEN    GET_FORMAT_SYMBOL1883;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1884;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1886;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1888;
    pANTLR3_COMMON_TOKEN    NOW_SYMBOL1889;
    pANTLR3_COMMON_TOKEN    POSITION_SYMBOL1891;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1892;
    pANTLR3_COMMON_TOKEN    IN_SYMBOL1894;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1896;
    pANTLR3_COMMON_TOKEN    SYSDATE_SYMBOL1898;
    pANTLR3_COMMON_TOKEN    set1900;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1901;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1903;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1905;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1907;
    pANTLR3_COMMON_TOKEN    UTC_DATE_SYMBOL1908;
    pANTLR3_COMMON_TOKEN    UTC_TIME_SYMBOL1910;
    pANTLR3_COMMON_TOKEN    UTC_TIMESTAMP_SYMBOL1912;
    pANTLR3_COMMON_TOKEN    ASCII_SYMBOL1914;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1915;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1917;
    pANTLR3_COMMON_TOKEN    CHARSET_SYMBOL1918;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1919;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1921;
    pANTLR3_COMMON_TOKEN    COALESCE_SYMBOL1922;
    pANTLR3_COMMON_TOKEN    COLLATION_SYMBOL1924;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1925;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1927;
    pANTLR3_COMMON_TOKEN    DATABASE_SYMBOL1928;
    pANTLR3_COMMON_TOKEN    IF_SYMBOL1930;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1931;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1933;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1935;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1937;
    pANTLR3_COMMON_TOKEN    FORMAT_SYMBOL1938;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1939;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1941;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1943;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1945;
    pANTLR3_COMMON_TOKEN    MICROSECOND_SYMBOL1946;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1947;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1949;
    pANTLR3_COMMON_TOKEN    MOD_SYMBOL1950;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1951;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1953;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1955;
    pANTLR3_COMMON_TOKEN    OLD_PASSWORD_SYMBOL1956;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1957;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1959;
    pANTLR3_COMMON_TOKEN    PASSWORD_SYMBOL1960;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1961;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1963;
    pANTLR3_COMMON_TOKEN    QUARTER_SYMBOL1964;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1965;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1967;
    pANTLR3_COMMON_TOKEN    REPEAT_SYMBOL1968;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1969;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1971;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1973;
    pANTLR3_COMMON_TOKEN    REPLACE_SYMBOL1974;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1975;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1977;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1979;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1981;
    pANTLR3_COMMON_TOKEN    REVERSE_SYMBOL1982;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1983;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1985;
    pANTLR3_COMMON_TOKEN    ROW_COUNT_SYMBOL1986;
    pANTLR3_COMMON_TOKEN    TRUNCATE_SYMBOL1988;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1989;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1991;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1993;
    pANTLR3_COMMON_TOKEN    WEEK_SYMBOL1994;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1995;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1997;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1999;
    pANTLR3_COMMON_TOKEN    WEIGHT_STRING_SYMBOL2000;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2001;
    pANTLR3_COMMON_TOKEN    AS_SYMBOL2003;
    pANTLR3_COMMON_TOKEN    CHAR_SYMBOL2004;
    pANTLR3_COMMON_TOKEN    AS_SYMBOL2007;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2008;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2010;
    pANTLR3_COMMON_TOKEN    INTEGER2011;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2012;
    pANTLR3_COMMON_TOKEN    INTEGER2013;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2014;
    pANTLR3_COMMON_TOKEN    INTEGER2015;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2016;
    MySQLParser_expression_list_return expression_list1787;
    #undef	RETURN_TYPE_expression_list1787
    #define	RETURN_TYPE_expression_list1787 MySQLParser_expression_list_return

    MySQLParser_charset_name_return charset_name1789;
    #undef	RETURN_TYPE_charset_name1789
    #define	RETURN_TYPE_charset_name1789 MySQLParser_charset_name_return

    MySQLParser_parentheses_return parentheses1792;
    #undef	RETURN_TYPE_parentheses1792
    #define	RETURN_TYPE_parentheses1792 MySQLParser_parentheses_return

    MySQLParser_expression_return expression1795;
    #undef	RETURN_TYPE_expression1795
    #define	RETURN_TYPE_expression1795 MySQLParser_expression_return

    MySQLParser_expression_return expression1799;
    #undef	RETURN_TYPE_expression1799
    #define	RETURN_TYPE_expression1799 MySQLParser_expression_return

    MySQLParser_expression_return expression1803;
    #undef	RETURN_TYPE_expression1803
    #define	RETURN_TYPE_expression1803 MySQLParser_expression_return

    MySQLParser_expression_return expression1807;
    #undef	RETURN_TYPE_expression1807
    #define	RETURN_TYPE_expression1807 MySQLParser_expression_return

    MySQLParser_expression_return expression1809;
    #undef	RETURN_TYPE_expression1809
    #define	RETURN_TYPE_expression1809 MySQLParser_expression_return

    MySQLParser_expression_return expression1811;
    #undef	RETURN_TYPE_expression1811
    #define	RETURN_TYPE_expression1811 MySQLParser_expression_return

    MySQLParser_expression_return expression1813;
    #undef	RETURN_TYPE_expression1813
    #define	RETURN_TYPE_expression1813 MySQLParser_expression_return

    MySQLParser_expression_return expression1817;
    #undef	RETURN_TYPE_expression1817
    #define	RETURN_TYPE_expression1817 MySQLParser_expression_return

    MySQLParser_expression_return expression1823;
    #undef	RETURN_TYPE_expression1823
    #define	RETURN_TYPE_expression1823 MySQLParser_expression_return

    MySQLParser_expression_return expression1827;
    #undef	RETURN_TYPE_expression1827
    #define	RETURN_TYPE_expression1827 MySQLParser_expression_return

    MySQLParser_expression_return expression1831;
    #undef	RETURN_TYPE_expression1831
    #define	RETURN_TYPE_expression1831 MySQLParser_expression_return

    MySQLParser_expression_return expression1837;
    #undef	RETURN_TYPE_expression1837
    #define	RETURN_TYPE_expression1837 MySQLParser_expression_return

    MySQLParser_expression_return expression1841;
    #undef	RETURN_TYPE_expression1841
    #define	RETURN_TYPE_expression1841 MySQLParser_expression_return

    MySQLParser_expression_return expression1845;
    #undef	RETURN_TYPE_expression1845
    #define	RETURN_TYPE_expression1845 MySQLParser_expression_return

    MySQLParser_expression_return expression1847;
    #undef	RETURN_TYPE_expression1847
    #define	RETURN_TYPE_expression1847 MySQLParser_expression_return

    MySQLParser_trim_function_return trim_function1849;
    #undef	RETURN_TYPE_trim_function1849
    #define	RETURN_TYPE_trim_function1849 MySQLParser_trim_function_return

    MySQLParser_parentheses_return parentheses1851;
    #undef	RETURN_TYPE_parentheses1851
    #define	RETURN_TYPE_parentheses1851 MySQLParser_parentheses_return

    MySQLParser_expression_return expression1854;
    #undef	RETURN_TYPE_expression1854
    #define	RETURN_TYPE_expression1854 MySQLParser_expression_return

    MySQLParser_expression_return expression1858;
    #undef	RETURN_TYPE_expression1858
    #define	RETURN_TYPE_expression1858 MySQLParser_expression_return

    MySQLParser_expression_return expression1862;
    #undef	RETURN_TYPE_expression1862
    #define	RETURN_TYPE_expression1862 MySQLParser_expression_return

    MySQLParser_expression_return expression1864;
    #undef	RETURN_TYPE_expression1864
    #define	RETURN_TYPE_expression1864 MySQLParser_expression_return

    MySQLParser_parentheses_return parentheses1867;
    #undef	RETURN_TYPE_parentheses1867
    #define	RETURN_TYPE_parentheses1867 MySQLParser_parentheses_return

    MySQLParser_time_function_parameters_return time_function_parameters1869;
    #undef	RETURN_TYPE_time_function_parameters1869
    #define	RETURN_TYPE_time_function_parameters1869 MySQLParser_time_function_parameters_return

    MySQLParser_expression_return expression1872;
    #undef	RETURN_TYPE_expression1872
    #define	RETURN_TYPE_expression1872 MySQLParser_expression_return

    MySQLParser_interval_return interval1875;
    #undef	RETURN_TYPE_interval1875
    #define	RETURN_TYPE_interval1875 MySQLParser_interval_return

    MySQLParser_interval_unit_return interval_unit1879;
    #undef	RETURN_TYPE_interval_unit1879
    #define	RETURN_TYPE_interval_unit1879 MySQLParser_interval_unit_return

    MySQLParser_expression_return expression1881;
    #undef	RETURN_TYPE_expression1881
    #define	RETURN_TYPE_expression1881 MySQLParser_expression_return

    MySQLParser_date_time_type_return date_time_type1885;
    #undef	RETURN_TYPE_date_time_type1885
    #define	RETURN_TYPE_date_time_type1885 MySQLParser_date_time_type_return

    MySQLParser_expression_return expression1887;
    #undef	RETURN_TYPE_expression1887
    #define	RETURN_TYPE_expression1887 MySQLParser_expression_return

    MySQLParser_time_function_parameters_return time_function_parameters1890;
    #undef	RETURN_TYPE_time_function_parameters1890
    #define	RETURN_TYPE_time_function_parameters1890 MySQLParser_time_function_parameters_return

    MySQLParser_bitwise_or_expression_return bitwise_or_expression1893;
    #undef	RETURN_TYPE_bitwise_or_expression1893
    #define	RETURN_TYPE_bitwise_or_expression1893 MySQLParser_bitwise_or_expression_return

    MySQLParser_expression_return expression1895;
    #undef	RETURN_TYPE_expression1895
    #define	RETURN_TYPE_expression1895 MySQLParser_expression_return

    MySQLParser_substring_function_return substring_function1897;
    #undef	RETURN_TYPE_substring_function1897
    #define	RETURN_TYPE_substring_function1897 MySQLParser_substring_function_return

    MySQLParser_time_function_parameters_return time_function_parameters1899;
    #undef	RETURN_TYPE_time_function_parameters1899
    #define	RETURN_TYPE_time_function_parameters1899 MySQLParser_time_function_parameters_return

    MySQLParser_interval_timestamp_unit_return interval_timestamp_unit1902;
    #undef	RETURN_TYPE_interval_timestamp_unit1902
    #define	RETURN_TYPE_interval_timestamp_unit1902 MySQLParser_interval_timestamp_unit_return

    MySQLParser_expression_return expression1904;
    #undef	RETURN_TYPE_expression1904
    #define	RETURN_TYPE_expression1904 MySQLParser_expression_return

    MySQLParser_expression_return expression1906;
    #undef	RETURN_TYPE_expression1906
    #define	RETURN_TYPE_expression1906 MySQLParser_expression_return

    MySQLParser_parentheses_return parentheses1909;
    #undef	RETURN_TYPE_parentheses1909
    #define	RETURN_TYPE_parentheses1909 MySQLParser_parentheses_return

    MySQLParser_time_function_parameters_return time_function_parameters1911;
    #undef	RETURN_TYPE_time_function_parameters1911
    #define	RETURN_TYPE_time_function_parameters1911 MySQLParser_time_function_parameters_return

    MySQLParser_time_function_parameters_return time_function_parameters1913;
    #undef	RETURN_TYPE_time_function_parameters1913
    #define	RETURN_TYPE_time_function_parameters1913 MySQLParser_time_function_parameters_return

    MySQLParser_expression_return expression1916;
    #undef	RETURN_TYPE_expression1916
    #define	RETURN_TYPE_expression1916 MySQLParser_expression_return

    MySQLParser_expression_return expression1920;
    #undef	RETURN_TYPE_expression1920
    #define	RETURN_TYPE_expression1920 MySQLParser_expression_return

    MySQLParser_expression_list_with_parentheses_return expression_list_with_parentheses1923;
    #undef	RETURN_TYPE_expression_list_with_parentheses1923
    #define	RETURN_TYPE_expression_list_with_parentheses1923 MySQLParser_expression_list_with_parentheses_return

    MySQLParser_expression_return expression1926;
    #undef	RETURN_TYPE_expression1926
    #define	RETURN_TYPE_expression1926 MySQLParser_expression_return

    MySQLParser_parentheses_return parentheses1929;
    #undef	RETURN_TYPE_parentheses1929
    #define	RETURN_TYPE_parentheses1929 MySQLParser_parentheses_return

    MySQLParser_expression_return expression1932;
    #undef	RETURN_TYPE_expression1932
    #define	RETURN_TYPE_expression1932 MySQLParser_expression_return

    MySQLParser_expression_return expression1934;
    #undef	RETURN_TYPE_expression1934
    #define	RETURN_TYPE_expression1934 MySQLParser_expression_return

    MySQLParser_expression_return expression1936;
    #undef	RETURN_TYPE_expression1936
    #define	RETURN_TYPE_expression1936 MySQLParser_expression_return

    MySQLParser_expression_return expression1940;
    #undef	RETURN_TYPE_expression1940
    #define	RETURN_TYPE_expression1940 MySQLParser_expression_return

    MySQLParser_expression_return expression1942;
    #undef	RETURN_TYPE_expression1942
    #define	RETURN_TYPE_expression1942 MySQLParser_expression_return

    MySQLParser_expression_return expression1944;
    #undef	RETURN_TYPE_expression1944
    #define	RETURN_TYPE_expression1944 MySQLParser_expression_return

    MySQLParser_expression_return expression1948;
    #undef	RETURN_TYPE_expression1948
    #define	RETURN_TYPE_expression1948 MySQLParser_expression_return

    MySQLParser_expression_return expression1952;
    #undef	RETURN_TYPE_expression1952
    #define	RETURN_TYPE_expression1952 MySQLParser_expression_return

    MySQLParser_expression_return expression1954;
    #undef	RETURN_TYPE_expression1954
    #define	RETURN_TYPE_expression1954 MySQLParser_expression_return

    MySQLParser_expression_return expression1958;
    #undef	RETURN_TYPE_expression1958
    #define	RETURN_TYPE_expression1958 MySQLParser_expression_return

    MySQLParser_expression_return expression1962;
    #undef	RETURN_TYPE_expression1962
    #define	RETURN_TYPE_expression1962 MySQLParser_expression_return

    MySQLParser_expression_return expression1966;
    #undef	RETURN_TYPE_expression1966
    #define	RETURN_TYPE_expression1966 MySQLParser_expression_return

    MySQLParser_expression_return expression1970;
    #undef	RETURN_TYPE_expression1970
    #define	RETURN_TYPE_expression1970 MySQLParser_expression_return

    MySQLParser_expression_return expression1972;
    #undef	RETURN_TYPE_expression1972
    #define	RETURN_TYPE_expression1972 MySQLParser_expression_return

    MySQLParser_expression_return expression1976;
    #undef	RETURN_TYPE_expression1976
    #define	RETURN_TYPE_expression1976 MySQLParser_expression_return

    MySQLParser_expression_return expression1978;
    #undef	RETURN_TYPE_expression1978
    #define	RETURN_TYPE_expression1978 MySQLParser_expression_return

    MySQLParser_expression_return expression1980;
    #undef	RETURN_TYPE_expression1980
    #define	RETURN_TYPE_expression1980 MySQLParser_expression_return

    MySQLParser_expression_return expression1984;
    #undef	RETURN_TYPE_expression1984
    #define	RETURN_TYPE_expression1984 MySQLParser_expression_return

    MySQLParser_parentheses_return parentheses1987;
    #undef	RETURN_TYPE_parentheses1987
    #define	RETURN_TYPE_parentheses1987 MySQLParser_parentheses_return

    MySQLParser_expression_return expression1990;
    #undef	RETURN_TYPE_expression1990
    #define	RETURN_TYPE_expression1990 MySQLParser_expression_return

    MySQLParser_expression_return expression1992;
    #undef	RETURN_TYPE_expression1992
    #define	RETURN_TYPE_expression1992 MySQLParser_expression_return

    MySQLParser_expression_return expression1996;
    #undef	RETURN_TYPE_expression1996
    #define	RETURN_TYPE_expression1996 MySQLParser_expression_return

    MySQLParser_expression_return expression1998;
    #undef	RETURN_TYPE_expression1998
    #define	RETURN_TYPE_expression1998 MySQLParser_expression_return

    MySQLParser_expression_return expression2002;
    #undef	RETURN_TYPE_expression2002
    #define	RETURN_TYPE_expression2002 MySQLParser_expression_return

    MySQLParser_field_length_return field_length2005;
    #undef	RETURN_TYPE_field_length2005
    #define	RETURN_TYPE_field_length2005 MySQLParser_field_length_return

    MySQLParser_weight_string_levels_return weight_string_levels2006;
    #undef	RETURN_TYPE_weight_string_levels2006
    #define	RETURN_TYPE_weight_string_levels2006 MySQLParser_weight_string_levels_return

    MySQLParser_field_length_return field_length2009;
    #undef	RETURN_TYPE_field_length2009
    #define	RETURN_TYPE_field_length2009 MySQLParser_field_length_return

    MySQLParser_geometry_function_return geometry_function2017;
    #undef	RETURN_TYPE_geometry_function2017
    #define	RETURN_TYPE_geometry_function2017 MySQLParser_geometry_function_return

    MySQLParser_aggregate_function_return aggregate_function2018;
    #undef	RETURN_TYPE_aggregate_function2018
    #define	RETURN_TYPE_aggregate_function2018 MySQLParser_aggregate_function_return

    pANTLR3_BASE_TREE CHAR_SYMBOL1785_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1786_tree;
    pANTLR3_BASE_TREE USING_SYMBOL1788_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1790_tree;
    pANTLR3_BASE_TREE CURRENT_USER_SYMBOL1791_tree;
    pANTLR3_BASE_TREE DATE_SYMBOL1793_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1794_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1796_tree;
    pANTLR3_BASE_TREE DAY_SYMBOL1797_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1798_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1800_tree;
    pANTLR3_BASE_TREE HOUR_SYMBOL1801_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1802_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1804_tree;
    pANTLR3_BASE_TREE INSERT_SYMBOL1805_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1806_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1808_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1810_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1812_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1814_tree;
    pANTLR3_BASE_TREE LEFT_SYMBOL1815_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1816_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1818_tree;
    pANTLR3_BASE_TREE INTEGER1819_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1820_tree;
    pANTLR3_BASE_TREE MINUTE_SYMBOL1821_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1822_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1824_tree;
    pANTLR3_BASE_TREE MONTH_SYMBOL1825_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1826_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1828_tree;
    pANTLR3_BASE_TREE RIGHT_SYMBOL1829_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1830_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1832_tree;
    pANTLR3_BASE_TREE INTEGER1833_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1834_tree;
    pANTLR3_BASE_TREE SECOND_SYMBOL1835_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1836_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1838_tree;
    pANTLR3_BASE_TREE TIME_SYMBOL1839_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1840_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1842_tree;
    pANTLR3_BASE_TREE TIMESTAMP_SYMBOL1843_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1844_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1846_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1848_tree;
    pANTLR3_BASE_TREE USER_SYMBOL1850_tree;
    pANTLR3_BASE_TREE VALUES_SYMBOL1852_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1853_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1855_tree;
    pANTLR3_BASE_TREE YEAR_SYMBOL1856_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1857_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1859_tree;
    pANTLR3_BASE_TREE set1860_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1861_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1863_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1865_tree;
    pANTLR3_BASE_TREE CURDATE_SYMBOL1866_tree;
    pANTLR3_BASE_TREE CURTIME_SYMBOL1868_tree;
    pANTLR3_BASE_TREE set1870_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1871_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1873_tree;
    pANTLR3_BASE_TREE INTERVAL_SYMBOL1874_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1876_tree;
    pANTLR3_BASE_TREE EXTRACT_SYMBOL1877_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1878_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL1880_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1882_tree;
    pANTLR3_BASE_TREE GET_FORMAT_SYMBOL1883_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1884_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1886_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1888_tree;
    pANTLR3_BASE_TREE NOW_SYMBOL1889_tree;
    pANTLR3_BASE_TREE POSITION_SYMBOL1891_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1892_tree;
    pANTLR3_BASE_TREE IN_SYMBOL1894_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1896_tree;
    pANTLR3_BASE_TREE SYSDATE_SYMBOL1898_tree;
    pANTLR3_BASE_TREE set1900_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1901_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1903_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1905_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1907_tree;
    pANTLR3_BASE_TREE UTC_DATE_SYMBOL1908_tree;
    pANTLR3_BASE_TREE UTC_TIME_SYMBOL1910_tree;
    pANTLR3_BASE_TREE UTC_TIMESTAMP_SYMBOL1912_tree;
    pANTLR3_BASE_TREE ASCII_SYMBOL1914_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1915_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1917_tree;
    pANTLR3_BASE_TREE CHARSET_SYMBOL1918_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1919_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1921_tree;
    pANTLR3_BASE_TREE COALESCE_SYMBOL1922_tree;
    pANTLR3_BASE_TREE COLLATION_SYMBOL1924_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1925_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1927_tree;
    pANTLR3_BASE_TREE DATABASE_SYMBOL1928_tree;
    pANTLR3_BASE_TREE IF_SYMBOL1930_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1931_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1933_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1935_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1937_tree;
    pANTLR3_BASE_TREE FORMAT_SYMBOL1938_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1939_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1941_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1943_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1945_tree;
    pANTLR3_BASE_TREE MICROSECOND_SYMBOL1946_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1947_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1949_tree;
    pANTLR3_BASE_TREE MOD_SYMBOL1950_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1951_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1953_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1955_tree;
    pANTLR3_BASE_TREE OLD_PASSWORD_SYMBOL1956_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1957_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1959_tree;
    pANTLR3_BASE_TREE PASSWORD_SYMBOL1960_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1961_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1963_tree;
    pANTLR3_BASE_TREE QUARTER_SYMBOL1964_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1965_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1967_tree;
    pANTLR3_BASE_TREE REPEAT_SYMBOL1968_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1969_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1971_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1973_tree;
    pANTLR3_BASE_TREE REPLACE_SYMBOL1974_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1975_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1977_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1979_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1981_tree;
    pANTLR3_BASE_TREE REVERSE_SYMBOL1982_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1983_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1985_tree;
    pANTLR3_BASE_TREE ROW_COUNT_SYMBOL1986_tree;
    pANTLR3_BASE_TREE TRUNCATE_SYMBOL1988_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1989_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1991_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1993_tree;
    pANTLR3_BASE_TREE WEEK_SYMBOL1994_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1995_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1997_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1999_tree;
    pANTLR3_BASE_TREE WEIGHT_STRING_SYMBOL2000_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2001_tree;
    pANTLR3_BASE_TREE AS_SYMBOL2003_tree;
    pANTLR3_BASE_TREE CHAR_SYMBOL2004_tree;
    pANTLR3_BASE_TREE AS_SYMBOL2007_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2008_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2010_tree;
    pANTLR3_BASE_TREE INTEGER2011_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2012_tree;
    pANTLR3_BASE_TREE INTEGER2013_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2014_tree;
    pANTLR3_BASE_TREE INTEGER2015_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2016_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CHAR_SYMBOL1785       = NULL;
    OPEN_PAR_SYMBOL1786       = NULL;
    USING_SYMBOL1788       = NULL;
    CLOSE_PAR_SYMBOL1790       = NULL;
    CURRENT_USER_SYMBOL1791       = NULL;
    DATE_SYMBOL1793       = NULL;
    OPEN_PAR_SYMBOL1794       = NULL;
    CLOSE_PAR_SYMBOL1796       = NULL;
    DAY_SYMBOL1797       = NULL;
    OPEN_PAR_SYMBOL1798       = NULL;
    CLOSE_PAR_SYMBOL1800       = NULL;
    HOUR_SYMBOL1801       = NULL;
    OPEN_PAR_SYMBOL1802       = NULL;
    CLOSE_PAR_SYMBOL1804       = NULL;
    INSERT_SYMBOL1805       = NULL;
    OPEN_PAR_SYMBOL1806       = NULL;
    COMMA_SYMBOL1808       = NULL;
    COMMA_SYMBOL1810       = NULL;
    COMMA_SYMBOL1812       = NULL;
    CLOSE_PAR_SYMBOL1814       = NULL;
    LEFT_SYMBOL1815       = NULL;
    OPEN_PAR_SYMBOL1816       = NULL;
    COMMA_SYMBOL1818       = NULL;
    INTEGER1819       = NULL;
    CLOSE_PAR_SYMBOL1820       = NULL;
    MINUTE_SYMBOL1821       = NULL;
    OPEN_PAR_SYMBOL1822       = NULL;
    CLOSE_PAR_SYMBOL1824       = NULL;
    MONTH_SYMBOL1825       = NULL;
    OPEN_PAR_SYMBOL1826       = NULL;
    CLOSE_PAR_SYMBOL1828       = NULL;
    RIGHT_SYMBOL1829       = NULL;
    OPEN_PAR_SYMBOL1830       = NULL;
    COMMA_SYMBOL1832       = NULL;
    INTEGER1833       = NULL;
    CLOSE_PAR_SYMBOL1834       = NULL;
    SECOND_SYMBOL1835       = NULL;
    OPEN_PAR_SYMBOL1836       = NULL;
    CLOSE_PAR_SYMBOL1838       = NULL;
    TIME_SYMBOL1839       = NULL;
    OPEN_PAR_SYMBOL1840       = NULL;
    CLOSE_PAR_SYMBOL1842       = NULL;
    TIMESTAMP_SYMBOL1843       = NULL;
    OPEN_PAR_SYMBOL1844       = NULL;
    COMMA_SYMBOL1846       = NULL;
    CLOSE_PAR_SYMBOL1848       = NULL;
    USER_SYMBOL1850       = NULL;
    VALUES_SYMBOL1852       = NULL;
    OPEN_PAR_SYMBOL1853       = NULL;
    CLOSE_PAR_SYMBOL1855       = NULL;
    YEAR_SYMBOL1856       = NULL;
    OPEN_PAR_SYMBOL1857       = NULL;
    CLOSE_PAR_SYMBOL1859       = NULL;
    set1860       = NULL;
    OPEN_PAR_SYMBOL1861       = NULL;
    COMMA_SYMBOL1863       = NULL;
    CLOSE_PAR_SYMBOL1865       = NULL;
    CURDATE_SYMBOL1866       = NULL;
    CURTIME_SYMBOL1868       = NULL;
    set1870       = NULL;
    OPEN_PAR_SYMBOL1871       = NULL;
    COMMA_SYMBOL1873       = NULL;
    INTERVAL_SYMBOL1874       = NULL;
    CLOSE_PAR_SYMBOL1876       = NULL;
    EXTRACT_SYMBOL1877       = NULL;
    OPEN_PAR_SYMBOL1878       = NULL;
    FROM_SYMBOL1880       = NULL;
    CLOSE_PAR_SYMBOL1882       = NULL;
    GET_FORMAT_SYMBOL1883       = NULL;
    OPEN_PAR_SYMBOL1884       = NULL;
    COMMA_SYMBOL1886       = NULL;
    CLOSE_PAR_SYMBOL1888       = NULL;
    NOW_SYMBOL1889       = NULL;
    POSITION_SYMBOL1891       = NULL;
    OPEN_PAR_SYMBOL1892       = NULL;
    IN_SYMBOL1894       = NULL;
    CLOSE_PAR_SYMBOL1896       = NULL;
    SYSDATE_SYMBOL1898       = NULL;
    set1900       = NULL;
    OPEN_PAR_SYMBOL1901       = NULL;
    COMMA_SYMBOL1903       = NULL;
    COMMA_SYMBOL1905       = NULL;
    CLOSE_PAR_SYMBOL1907       = NULL;
    UTC_DATE_SYMBOL1908       = NULL;
    UTC_TIME_SYMBOL1910       = NULL;
    UTC_TIMESTAMP_SYMBOL1912       = NULL;
    ASCII_SYMBOL1914       = NULL;
    OPEN_PAR_SYMBOL1915       = NULL;
    CLOSE_PAR_SYMBOL1917       = NULL;
    CHARSET_SYMBOL1918       = NULL;
    OPEN_PAR_SYMBOL1919       = NULL;
    CLOSE_PAR_SYMBOL1921       = NULL;
    COALESCE_SYMBOL1922       = NULL;
    COLLATION_SYMBOL1924       = NULL;
    OPEN_PAR_SYMBOL1925       = NULL;
    CLOSE_PAR_SYMBOL1927       = NULL;
    DATABASE_SYMBOL1928       = NULL;
    IF_SYMBOL1930       = NULL;
    OPEN_PAR_SYMBOL1931       = NULL;
    COMMA_SYMBOL1933       = NULL;
    COMMA_SYMBOL1935       = NULL;
    CLOSE_PAR_SYMBOL1937       = NULL;
    FORMAT_SYMBOL1938       = NULL;
    OPEN_PAR_SYMBOL1939       = NULL;
    COMMA_SYMBOL1941       = NULL;
    COMMA_SYMBOL1943       = NULL;
    CLOSE_PAR_SYMBOL1945       = NULL;
    MICROSECOND_SYMBOL1946       = NULL;
    OPEN_PAR_SYMBOL1947       = NULL;
    CLOSE_PAR_SYMBOL1949       = NULL;
    MOD_SYMBOL1950       = NULL;
    OPEN_PAR_SYMBOL1951       = NULL;
    COMMA_SYMBOL1953       = NULL;
    CLOSE_PAR_SYMBOL1955       = NULL;
    OLD_PASSWORD_SYMBOL1956       = NULL;
    OPEN_PAR_SYMBOL1957       = NULL;
    CLOSE_PAR_SYMBOL1959       = NULL;
    PASSWORD_SYMBOL1960       = NULL;
    OPEN_PAR_SYMBOL1961       = NULL;
    CLOSE_PAR_SYMBOL1963       = NULL;
    QUARTER_SYMBOL1964       = NULL;
    OPEN_PAR_SYMBOL1965       = NULL;
    CLOSE_PAR_SYMBOL1967       = NULL;
    REPEAT_SYMBOL1968       = NULL;
    OPEN_PAR_SYMBOL1969       = NULL;
    COMMA_SYMBOL1971       = NULL;
    CLOSE_PAR_SYMBOL1973       = NULL;
    REPLACE_SYMBOL1974       = NULL;
    OPEN_PAR_SYMBOL1975       = NULL;
    COMMA_SYMBOL1977       = NULL;
    COMMA_SYMBOL1979       = NULL;
    CLOSE_PAR_SYMBOL1981       = NULL;
    REVERSE_SYMBOL1982       = NULL;
    OPEN_PAR_SYMBOL1983       = NULL;
    CLOSE_PAR_SYMBOL1985       = NULL;
    ROW_COUNT_SYMBOL1986       = NULL;
    TRUNCATE_SYMBOL1988       = NULL;
    OPEN_PAR_SYMBOL1989       = NULL;
    COMMA_SYMBOL1991       = NULL;
    CLOSE_PAR_SYMBOL1993       = NULL;
    WEEK_SYMBOL1994       = NULL;
    OPEN_PAR_SYMBOL1995       = NULL;
    COMMA_SYMBOL1997       = NULL;
    CLOSE_PAR_SYMBOL1999       = NULL;
    WEIGHT_STRING_SYMBOL2000       = NULL;
    OPEN_PAR_SYMBOL2001       = NULL;
    AS_SYMBOL2003       = NULL;
    CHAR_SYMBOL2004       = NULL;
    AS_SYMBOL2007       = NULL;
    BINARY_SYMBOL2008       = NULL;
    COMMA_SYMBOL2010       = NULL;
    INTEGER2011       = NULL;
    COMMA_SYMBOL2012       = NULL;
    INTEGER2013       = NULL;
    COMMA_SYMBOL2014       = NULL;
    INTEGER2015       = NULL;
    CLOSE_PAR_SYMBOL2016       = NULL;
    expression_list1787.tree = NULL;

    charset_name1789.tree = NULL;

    parentheses1792.tree = NULL;

    expression1795.tree = NULL;

    expression1799.tree = NULL;

    expression1803.tree = NULL;

    expression1807.tree = NULL;

    expression1809.tree = NULL;

    expression1811.tree = NULL;

    expression1813.tree = NULL;

    expression1817.tree = NULL;

    expression1823.tree = NULL;

    expression1827.tree = NULL;

    expression1831.tree = NULL;

    expression1837.tree = NULL;

    expression1841.tree = NULL;

    expression1845.tree = NULL;

    expression1847.tree = NULL;

    trim_function1849.tree = NULL;

    parentheses1851.tree = NULL;

    expression1854.tree = NULL;

    expression1858.tree = NULL;

    expression1862.tree = NULL;

    expression1864.tree = NULL;

    parentheses1867.tree = NULL;

    time_function_parameters1869.tree = NULL;

    expression1872.tree = NULL;

    interval1875.tree = NULL;

    interval_unit1879.tree = NULL;

    expression1881.tree = NULL;

    date_time_type1885.tree = NULL;

    expression1887.tree = NULL;

    time_function_parameters1890.tree = NULL;

    bitwise_or_expression1893.tree = NULL;

    expression1895.tree = NULL;

    substring_function1897.tree = NULL;

    time_function_parameters1899.tree = NULL;

    interval_timestamp_unit1902.tree = NULL;

    expression1904.tree = NULL;

    expression1906.tree = NULL;

    parentheses1909.tree = NULL;

    time_function_parameters1911.tree = NULL;

    time_function_parameters1913.tree = NULL;

    expression1916.tree = NULL;

    expression1920.tree = NULL;

    expression_list_with_parentheses1923.tree = NULL;

    expression1926.tree = NULL;

    parentheses1929.tree = NULL;

    expression1932.tree = NULL;

    expression1934.tree = NULL;

    expression1936.tree = NULL;

    expression1940.tree = NULL;

    expression1942.tree = NULL;

    expression1944.tree = NULL;

    expression1948.tree = NULL;

    expression1952.tree = NULL;

    expression1954.tree = NULL;

    expression1958.tree = NULL;

    expression1962.tree = NULL;

    expression1966.tree = NULL;

    expression1970.tree = NULL;

    expression1972.tree = NULL;

    expression1976.tree = NULL;

    expression1978.tree = NULL;

    expression1980.tree = NULL;

    expression1984.tree = NULL;

    parentheses1987.tree = NULL;

    expression1990.tree = NULL;

    expression1992.tree = NULL;

    expression1996.tree = NULL;

    expression1998.tree = NULL;

    expression2002.tree = NULL;

    field_length2005.tree = NULL;

    weight_string_levels2006.tree = NULL;

    field_length2009.tree = NULL;

    geometry_function2017.tree = NULL;

    aggregate_function2018.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CHAR_SYMBOL1785_tree   = NULL;
    OPEN_PAR_SYMBOL1786_tree   = NULL;
    USING_SYMBOL1788_tree   = NULL;
    CLOSE_PAR_SYMBOL1790_tree   = NULL;
    CURRENT_USER_SYMBOL1791_tree   = NULL;
    DATE_SYMBOL1793_tree   = NULL;
    OPEN_PAR_SYMBOL1794_tree   = NULL;
    CLOSE_PAR_SYMBOL1796_tree   = NULL;
    DAY_SYMBOL1797_tree   = NULL;
    OPEN_PAR_SYMBOL1798_tree   = NULL;
    CLOSE_PAR_SYMBOL1800_tree   = NULL;
    HOUR_SYMBOL1801_tree   = NULL;
    OPEN_PAR_SYMBOL1802_tree   = NULL;
    CLOSE_PAR_SYMBOL1804_tree   = NULL;
    INSERT_SYMBOL1805_tree   = NULL;
    OPEN_PAR_SYMBOL1806_tree   = NULL;
    COMMA_SYMBOL1808_tree   = NULL;
    COMMA_SYMBOL1810_tree   = NULL;
    COMMA_SYMBOL1812_tree   = NULL;
    CLOSE_PAR_SYMBOL1814_tree   = NULL;
    LEFT_SYMBOL1815_tree   = NULL;
    OPEN_PAR_SYMBOL1816_tree   = NULL;
    COMMA_SYMBOL1818_tree   = NULL;
    INTEGER1819_tree   = NULL;
    CLOSE_PAR_SYMBOL1820_tree   = NULL;
    MINUTE_SYMBOL1821_tree   = NULL;
    OPEN_PAR_SYMBOL1822_tree   = NULL;
    CLOSE_PAR_SYMBOL1824_tree   = NULL;
    MONTH_SYMBOL1825_tree   = NULL;
    OPEN_PAR_SYMBOL1826_tree   = NULL;
    CLOSE_PAR_SYMBOL1828_tree   = NULL;
    RIGHT_SYMBOL1829_tree   = NULL;
    OPEN_PAR_SYMBOL1830_tree   = NULL;
    COMMA_SYMBOL1832_tree   = NULL;
    INTEGER1833_tree   = NULL;
    CLOSE_PAR_SYMBOL1834_tree   = NULL;
    SECOND_SYMBOL1835_tree   = NULL;
    OPEN_PAR_SYMBOL1836_tree   = NULL;
    CLOSE_PAR_SYMBOL1838_tree   = NULL;
    TIME_SYMBOL1839_tree   = NULL;
    OPEN_PAR_SYMBOL1840_tree   = NULL;
    CLOSE_PAR_SYMBOL1842_tree   = NULL;
    TIMESTAMP_SYMBOL1843_tree   = NULL;
    OPEN_PAR_SYMBOL1844_tree   = NULL;
    COMMA_SYMBOL1846_tree   = NULL;
    CLOSE_PAR_SYMBOL1848_tree   = NULL;
    USER_SYMBOL1850_tree   = NULL;
    VALUES_SYMBOL1852_tree   = NULL;
    OPEN_PAR_SYMBOL1853_tree   = NULL;
    CLOSE_PAR_SYMBOL1855_tree   = NULL;
    YEAR_SYMBOL1856_tree   = NULL;
    OPEN_PAR_SYMBOL1857_tree   = NULL;
    CLOSE_PAR_SYMBOL1859_tree   = NULL;
    set1860_tree   = NULL;
    OPEN_PAR_SYMBOL1861_tree   = NULL;
    COMMA_SYMBOL1863_tree   = NULL;
    CLOSE_PAR_SYMBOL1865_tree   = NULL;
    CURDATE_SYMBOL1866_tree   = NULL;
    CURTIME_SYMBOL1868_tree   = NULL;
    set1870_tree   = NULL;
    OPEN_PAR_SYMBOL1871_tree   = NULL;
    COMMA_SYMBOL1873_tree   = NULL;
    INTERVAL_SYMBOL1874_tree   = NULL;
    CLOSE_PAR_SYMBOL1876_tree   = NULL;
    EXTRACT_SYMBOL1877_tree   = NULL;
    OPEN_PAR_SYMBOL1878_tree   = NULL;
    FROM_SYMBOL1880_tree   = NULL;
    CLOSE_PAR_SYMBOL1882_tree   = NULL;
    GET_FORMAT_SYMBOL1883_tree   = NULL;
    OPEN_PAR_SYMBOL1884_tree   = NULL;
    COMMA_SYMBOL1886_tree   = NULL;
    CLOSE_PAR_SYMBOL1888_tree   = NULL;
    NOW_SYMBOL1889_tree   = NULL;
    POSITION_SYMBOL1891_tree   = NULL;
    OPEN_PAR_SYMBOL1892_tree   = NULL;
    IN_SYMBOL1894_tree   = NULL;
    CLOSE_PAR_SYMBOL1896_tree   = NULL;
    SYSDATE_SYMBOL1898_tree   = NULL;
    set1900_tree   = NULL;
    OPEN_PAR_SYMBOL1901_tree   = NULL;
    COMMA_SYMBOL1903_tree   = NULL;
    COMMA_SYMBOL1905_tree   = NULL;
    CLOSE_PAR_SYMBOL1907_tree   = NULL;
    UTC_DATE_SYMBOL1908_tree   = NULL;
    UTC_TIME_SYMBOL1910_tree   = NULL;
    UTC_TIMESTAMP_SYMBOL1912_tree   = NULL;
    ASCII_SYMBOL1914_tree   = NULL;
    OPEN_PAR_SYMBOL1915_tree   = NULL;
    CLOSE_PAR_SYMBOL1917_tree   = NULL;
    CHARSET_SYMBOL1918_tree   = NULL;
    OPEN_PAR_SYMBOL1919_tree   = NULL;
    CLOSE_PAR_SYMBOL1921_tree   = NULL;
    COALESCE_SYMBOL1922_tree   = NULL;
    COLLATION_SYMBOL1924_tree   = NULL;
    OPEN_PAR_SYMBOL1925_tree   = NULL;
    CLOSE_PAR_SYMBOL1927_tree   = NULL;
    DATABASE_SYMBOL1928_tree   = NULL;
    IF_SYMBOL1930_tree   = NULL;
    OPEN_PAR_SYMBOL1931_tree   = NULL;
    COMMA_SYMBOL1933_tree   = NULL;
    COMMA_SYMBOL1935_tree   = NULL;
    CLOSE_PAR_SYMBOL1937_tree   = NULL;
    FORMAT_SYMBOL1938_tree   = NULL;
    OPEN_PAR_SYMBOL1939_tree   = NULL;
    COMMA_SYMBOL1941_tree   = NULL;
    COMMA_SYMBOL1943_tree   = NULL;
    CLOSE_PAR_SYMBOL1945_tree   = NULL;
    MICROSECOND_SYMBOL1946_tree   = NULL;
    OPEN_PAR_SYMBOL1947_tree   = NULL;
    CLOSE_PAR_SYMBOL1949_tree   = NULL;
    MOD_SYMBOL1950_tree   = NULL;
    OPEN_PAR_SYMBOL1951_tree   = NULL;
    COMMA_SYMBOL1953_tree   = NULL;
    CLOSE_PAR_SYMBOL1955_tree   = NULL;
    OLD_PASSWORD_SYMBOL1956_tree   = NULL;
    OPEN_PAR_SYMBOL1957_tree   = NULL;
    CLOSE_PAR_SYMBOL1959_tree   = NULL;
    PASSWORD_SYMBOL1960_tree   = NULL;
    OPEN_PAR_SYMBOL1961_tree   = NULL;
    CLOSE_PAR_SYMBOL1963_tree   = NULL;
    QUARTER_SYMBOL1964_tree   = NULL;
    OPEN_PAR_SYMBOL1965_tree   = NULL;
    CLOSE_PAR_SYMBOL1967_tree   = NULL;
    REPEAT_SYMBOL1968_tree   = NULL;
    OPEN_PAR_SYMBOL1969_tree   = NULL;
    COMMA_SYMBOL1971_tree   = NULL;
    CLOSE_PAR_SYMBOL1973_tree   = NULL;
    REPLACE_SYMBOL1974_tree   = NULL;
    OPEN_PAR_SYMBOL1975_tree   = NULL;
    COMMA_SYMBOL1977_tree   = NULL;
    COMMA_SYMBOL1979_tree   = NULL;
    CLOSE_PAR_SYMBOL1981_tree   = NULL;
    REVERSE_SYMBOL1982_tree   = NULL;
    OPEN_PAR_SYMBOL1983_tree   = NULL;
    CLOSE_PAR_SYMBOL1985_tree   = NULL;
    ROW_COUNT_SYMBOL1986_tree   = NULL;
    TRUNCATE_SYMBOL1988_tree   = NULL;
    OPEN_PAR_SYMBOL1989_tree   = NULL;
    COMMA_SYMBOL1991_tree   = NULL;
    CLOSE_PAR_SYMBOL1993_tree   = NULL;
    WEEK_SYMBOL1994_tree   = NULL;
    OPEN_PAR_SYMBOL1995_tree   = NULL;
    COMMA_SYMBOL1997_tree   = NULL;
    CLOSE_PAR_SYMBOL1999_tree   = NULL;
    WEIGHT_STRING_SYMBOL2000_tree   = NULL;
    OPEN_PAR_SYMBOL2001_tree   = NULL;
    AS_SYMBOL2003_tree   = NULL;
    CHAR_SYMBOL2004_tree   = NULL;
    AS_SYMBOL2007_tree   = NULL;
    BINARY_SYMBOL2008_tree   = NULL;
    COMMA_SYMBOL2010_tree   = NULL;
    INTEGER2011_tree   = NULL;
    COMMA_SYMBOL2012_tree   = NULL;
    INTEGER2013_tree   = NULL;
    COMMA_SYMBOL2014_tree   = NULL;
    INTEGER2015_tree   = NULL;
    CLOSE_PAR_SYMBOL2016_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1645:14: ( CHAR_SYMBOL OPEN_PAR_SYMBOL expression_list ( USING_SYMBOL charset_name )? CLOSE_PAR_SYMBOL | CURRENT_USER_SYMBOL ( parentheses )? | DATE_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | DAY_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | HOUR_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | INSERT_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression COMMA_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL | LEFT_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL INTEGER CLOSE_PAR_SYMBOL | MINUTE_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | MONTH_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | RIGHT_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL INTEGER CLOSE_PAR_SYMBOL | SECOND_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | TIME_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | TIMESTAMP_SYMBOL OPEN_PAR_SYMBOL expression ( COMMA_SYMBOL expression )? CLOSE_PAR_SYMBOL | trim_function | USER_SYMBOL parentheses | VALUES_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | YEAR_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | ( ADDDATE_SYMBOL | SUBDATE_SYMBOL ) OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL | CURDATE_SYMBOL ( parentheses )? | CURTIME_SYMBOL ( time_function_parameters )? | ( DATE_ADD_SYMBOL | DATE_SUB_SYMBOL ) OPEN_PAR_SYMBOL expression COMMA_SYMBOL INTERVAL_SYMBOL interval CLOSE_PAR_SYMBOL | EXTRACT_SYMBOL OPEN_PAR_SYMBOL interval_unit FROM_SYMBOL expression CLOSE_PAR_SYMBOL | GET_FORMAT_SYMBOL OPEN_PAR_SYMBOL date_time_type COMMA_SYMBOL expression CLOSE_PAR_SYMBOL | NOW_SYMBOL ( time_function_parameters )? | POSITION_SYMBOL OPEN_PAR_SYMBOL bitwise_or_expression IN_SYMBOL expression CLOSE_PAR_SYMBOL | substring_function | SYSDATE_SYMBOL ( time_function_parameters )? | ( TIMESTAMP_ADD_SYMBOL | TIMESTAMP_DIFF_SYMBOL ) OPEN_PAR_SYMBOL interval_timestamp_unit COMMA_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL | UTC_DATE_SYMBOL ( parentheses )? | UTC_TIME_SYMBOL ( time_function_parameters )? | UTC_TIMESTAMP_SYMBOL ( time_function_parameters )? | ASCII_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | CHARSET_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | COALESCE_SYMBOL expression_list_with_parentheses | COLLATION_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | DATABASE_SYMBOL parentheses | IF_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL | FORMAT_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression ( COMMA_SYMBOL expression )? CLOSE_PAR_SYMBOL | MICROSECOND_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | MOD_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL | OLD_PASSWORD_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | PASSWORD_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | QUARTER_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | REPEAT_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL | REPLACE_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL | REVERSE_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | ROW_COUNT_SYMBOL parentheses | TRUNCATE_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL | WEEK_SYMBOL OPEN_PAR_SYMBOL expression ( COMMA_SYMBOL expression )? CLOSE_PAR_SYMBOL |{...}? => WEIGHT_STRING_SYMBOL OPEN_PAR_SYMBOL expression ( ( AS_SYMBOL CHAR_SYMBOL field_length )? ( weight_string_levels )? | AS_SYMBOL BINARY_SYMBOL field_length | COMMA_SYMBOL INTEGER COMMA_SYMBOL INTEGER COMMA_SYMBOL INTEGER ) CLOSE_PAR_SYMBOL | geometry_function | aggregate_function )

            ANTLR3_UINT32 alt544;

            alt544=52;

            {
                int LA544_0 = LA(1);
                if ( (LA544_0 == CHAR_SYMBOL))
                {
                    alt544=1;
                }
                else if ( (LA544_0 == CURRENT_USER_SYMBOL))
                {
                    alt544=2;
                }
                else if ( (LA544_0 == DATE_SYMBOL))
                {
                    alt544=3;
                }
                else if ( (LA544_0 == DAY_SYMBOL))
                {
                    alt544=4;
                }
                else if ( (LA544_0 == HOUR_SYMBOL))
                {
                    alt544=5;
                }
                else if ( (LA544_0 == INSERT_SYMBOL))
                {
                    alt544=6;
                }
                else if ( (LA544_0 == LEFT_SYMBOL))
                {
                    alt544=7;
                }
                else if ( (LA544_0 == MINUTE_SYMBOL))
                {
                    alt544=8;
                }
                else if ( (LA544_0 == MONTH_SYMBOL))
                {
                    alt544=9;
                }
                else if ( (LA544_0 == RIGHT_SYMBOL))
                {
                    alt544=10;
                }
                else if ( (LA544_0 == SECOND_SYMBOL))
                {
                    alt544=11;
                }
                else if ( (LA544_0 == TIME_SYMBOL))
                {
                    alt544=12;
                }
                else if ( (LA544_0 == TIMESTAMP_SYMBOL))
                {
                    alt544=13;
                }
                else if ( (LA544_0 == TRIM_SYMBOL))
                {
                    alt544=14;
                }
                else if ( (LA544_0 == USER_SYMBOL))
                {
                    alt544=15;
                }
                else if ( (LA544_0 == VALUES_SYMBOL))
                {
                    alt544=16;
                }
                else if ( (LA544_0 == YEAR_SYMBOL))
                {
                    alt544=17;
                }
                else if ( (LA544_0 == ADDDATE_SYMBOL || LA544_0 == SUBDATE_SYMBOL))
                {
                    alt544=18;
                }
                else if ( (LA544_0 == CURDATE_SYMBOL))
                {
                    alt544=19;
                }
                else if ( (LA544_0 == CURTIME_SYMBOL))
                {
                    alt544=20;
                }
                else if ( (LA544_0 == DATE_ADD_SYMBOL || LA544_0 == DATE_SUB_SYMBOL))
                {
                    alt544=21;
                }
                else if ( (LA544_0 == EXTRACT_SYMBOL))
                {
                    alt544=22;
                }
                else if ( (LA544_0 == GET_FORMAT_SYMBOL))
                {
                    alt544=23;
                }
                else if ( (LA544_0 == NOW_SYMBOL))
                {
                    alt544=24;
                }
                else if ( (LA544_0 == POSITION_SYMBOL))
                {
                    alt544=25;
                }
                else if ( (LA544_0 == SUBSTRING_SYMBOL))
                {
                    alt544=26;
                }
                else if ( (LA544_0 == SYSDATE_SYMBOL))
                {
                    alt544=27;
                }
                else if ( (((LA544_0 >= TIMESTAMP_ADD_SYMBOL) && (LA544_0 <= TIMESTAMP_DIFF_SYMBOL))))
                {
                    alt544=28;
                }
                else if ( (LA544_0 == UTC_DATE_SYMBOL))
                {
                    alt544=29;
                }
                else if ( (LA544_0 == UTC_TIME_SYMBOL))
                {
                    alt544=30;
                }
                else if ( (LA544_0 == UTC_TIMESTAMP_SYMBOL))
                {
                    alt544=31;
                }
                else if ( (LA544_0 == ASCII_SYMBOL))
                {
                    alt544=32;
                }
                else if ( (LA544_0 == CHARSET_SYMBOL))
                {
                    alt544=33;
                }
                else if ( (LA544_0 == COALESCE_SYMBOL))
                {
                    alt544=34;
                }
                else if ( (LA544_0 == COLLATION_SYMBOL))
                {
                    alt544=35;
                }
                else if ( (LA544_0 == DATABASE_SYMBOL))
                {
                    alt544=36;
                }
                else if ( (LA544_0 == IF_SYMBOL))
                {
                    alt544=37;
                }
                else if ( (LA544_0 == FORMAT_SYMBOL))
                {
                    alt544=38;
                }
                else if ( (LA544_0 == MICROSECOND_SYMBOL))
                {
                    alt544=39;
                }
                else if ( (LA544_0 == MOD_SYMBOL))
                {
                    alt544=40;
                }
                else if ( (LA544_0 == OLD_PASSWORD_SYMBOL))
                {
                    alt544=41;
                }
                else if ( (LA544_0 == PASSWORD_SYMBOL))
                {
                    alt544=42;
                }
                else if ( (LA544_0 == QUARTER_SYMBOL))
                {
                    alt544=43;
                }
                else if ( (LA544_0 == REPEAT_SYMBOL))
                {
                    alt544=44;
                }
                else if ( (LA544_0 == REPLACE_SYMBOL))
                {
                    alt544=45;
                }
                else if ( (LA544_0 == REVERSE_SYMBOL))
                {
                    alt544=46;
                }
                else if ( (LA544_0 == ROW_COUNT_SYMBOL))
                {
                    alt544=47;
                }
                else if ( (LA544_0 == TRUNCATE_SYMBOL))
                {
                    alt544=48;
                }
                else if ( (LA544_0 == WEEK_SYMBOL))
                {
                    alt544=49;
                }
                else if ( ((SERVER_VERSION >= 50600)) && (LA544_0 == WEIGHT_STRING_SYMBOL))
                {
                    alt544=50;
                }
                else if ( (LA544_0 == CONTAINS_SYMBOL || LA544_0 == GEOMETRYCOLLECTION_SYMBOL || LA544_0 == LINESTRING_SYMBOL || LA544_0 == MULTILINESTRING_SYMBOL || ((LA544_0 >= MULTIPOINT_SYMBOL) && (LA544_0 <= MULTIPOLYGON_SYMBOL)) || ((LA544_0 >= POINT_SYMBOL) && (LA544_0 <= POLYGON_SYMBOL))))
                {
                    alt544=51;
                }
                else if ( (LA544_0 == AVG_SYMBOL || ((LA544_0 >= BIT_AND_SYMBOL) && (LA544_0 <= BIT_OR_SYMBOL)) || LA544_0 == BIT_XOR_SYMBOL || LA544_0 == COUNT_SYMBOL || LA544_0 == GROUP_CONCAT_SYMBOL || LA544_0 == MAX_SYMBOL || LA544_0 == MIN_SYMBOL || LA544_0 == STDDEV_SAMP_SYMBOL || LA544_0 == STD_SYMBOL || LA544_0 == SUM_SYMBOL || LA544_0 == VARIANCE_SYMBOL || LA544_0 == VAR_SAMP_SYMBOL))
                {
                    alt544=52;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 544;
                    EXCEPTION->state        = 0;


                    goto rulefunction_callEx;

                }
            }
            switch (alt544)
            {
        	case 1:
        	    // MySQL.g:1647:2: CHAR_SYMBOL OPEN_PAR_SYMBOL expression_list ( USING_SYMBOL charset_name )? CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CHAR_SYMBOL1785 = (pANTLR3_COMMON_TOKEN) MATCHT(CHAR_SYMBOL, &FOLLOW_CHAR_SYMBOL_in_function_call9319);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CHAR_SYMBOL1785_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHAR_SYMBOL1785));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CHAR_SYMBOL1785_tree);
        	        }

        	        OPEN_PAR_SYMBOL1786 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_function_call9321);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1786_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1786));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1786_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_list_in_function_call9323);
        	        expression_list1787=expression_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression_list1787.tree);

        	        // MySQL.g:1647:46: ( USING_SYMBOL charset_name )?
        	        {
        	            int alt529=2;
        	            switch ( LA(1) )
        	            {
        	                case USING_SYMBOL:
        	                	{
        	                		alt529=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt529)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1647:47: USING_SYMBOL charset_name
        	        	    {
        	        	        USING_SYMBOL1788 = (pANTLR3_COMMON_TOKEN) MATCHT(USING_SYMBOL, &FOLLOW_USING_SYMBOL_in_function_call9326);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefunction_callEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        USING_SYMBOL1788_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USING_SYMBOL1788));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, USING_SYMBOL1788_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_charset_name_in_function_call9328);
        	        	        charset_name1789=charset_name(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefunction_callEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset_name1789.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        CLOSE_PAR_SYMBOL1790 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9332);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1790_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1790));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1790_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1648:4: CURRENT_USER_SYMBOL ( parentheses )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CURRENT_USER_SYMBOL1791 = (pANTLR3_COMMON_TOKEN) MATCHT(CURRENT_USER_SYMBOL, &FOLLOW_CURRENT_USER_SYMBOL_in_function_call9337);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CURRENT_USER_SYMBOL1791_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CURRENT_USER_SYMBOL1791));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CURRENT_USER_SYMBOL1791_tree);
        	        }

        	        // MySQL.g:1648:24: ( parentheses )?
        	        {
        	            int alt530=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt530=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt530)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1648:24: parentheses
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_parentheses_in_function_call9339);
        	        	        parentheses1792=parentheses(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefunction_callEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, parentheses1792.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1649:4: DATE_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DATE_SYMBOL1793 = (pANTLR3_COMMON_TOKEN) MATCHT(DATE_SYMBOL, &FOLLOW_DATE_SYMBOL_in_function_call9345);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DATE_SYMBOL1793_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATE_SYMBOL1793));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DATE_SYMBOL1793_tree);
        	        }

        	        OPEN_PAR_SYMBOL1794 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_function_call9347);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1794_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1794));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1794_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9349);
        	        expression1795=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1795.tree);

        	        CLOSE_PAR_SYMBOL1796 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9351);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1796_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1796));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1796_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1650:4: DAY_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DAY_SYMBOL1797 = (pANTLR3_COMMON_TOKEN) MATCHT(DAY_SYMBOL, &FOLLOW_DAY_SYMBOL_in_function_call9356);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DAY_SYMBOL1797_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DAY_SYMBOL1797));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DAY_SYMBOL1797_tree);
        	        }

        	        OPEN_PAR_SYMBOL1798 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_function_call9358);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1798_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1798));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1798_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9360);
        	        expression1799=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1799.tree);

        	        CLOSE_PAR_SYMBOL1800 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9362);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1800_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1800));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1800_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1651:4: HOUR_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        HOUR_SYMBOL1801 = (pANTLR3_COMMON_TOKEN) MATCHT(HOUR_SYMBOL, &FOLLOW_HOUR_SYMBOL_in_function_call9367);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        HOUR_SYMBOL1801_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HOUR_SYMBOL1801));
        	        ADAPTOR->addChild(ADAPTOR, root_0, HOUR_SYMBOL1801_tree);
        	        }

        	        OPEN_PAR_SYMBOL1802 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_function_call9369);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1802_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1802));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1802_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9371);
        	        expression1803=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1803.tree);

        	        CLOSE_PAR_SYMBOL1804 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9373);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1804_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1804));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1804_tree);
        	        }

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:1652:4: INSERT_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression COMMA_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        INSERT_SYMBOL1805 = (pANTLR3_COMMON_TOKEN) MATCHT(INSERT_SYMBOL, &FOLLOW_INSERT_SYMBOL_in_function_call9378);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INSERT_SYMBOL1805_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INSERT_SYMBOL1805));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INSERT_SYMBOL1805_tree);
        	        }

        	        OPEN_PAR_SYMBOL1806 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_function_call9380);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1806_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1806));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1806_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9382);
        	        expression1807=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1807.tree);

        	        COMMA_SYMBOL1808 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_function_call9384);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL1808_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1808));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1808_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9386);
        	        expression1809=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1809.tree);

        	        COMMA_SYMBOL1810 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_function_call9388);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL1810_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1810));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1810_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9390);
        	        expression1811=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1811.tree);

        	        COMMA_SYMBOL1812 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_function_call9392);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL1812_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1812));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1812_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9394);
        	        expression1813=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1813.tree);

        	        CLOSE_PAR_SYMBOL1814 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9396);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1814_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1814));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1814_tree);
        	        }

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:1654:4: LEFT_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL INTEGER CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        LEFT_SYMBOL1815 = (pANTLR3_COMMON_TOKEN) MATCHT(LEFT_SYMBOL, &FOLLOW_LEFT_SYMBOL_in_function_call9403);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LEFT_SYMBOL1815_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LEFT_SYMBOL1815));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LEFT_SYMBOL1815_tree);
        	        }

        	        OPEN_PAR_SYMBOL1816 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_function_call9405);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1816_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1816));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1816_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9407);
        	        expression1817=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1817.tree);

        	        COMMA_SYMBOL1818 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_function_call9409);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL1818_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1818));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1818_tree);
        	        }

        	        INTEGER1819 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_function_call9411);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INTEGER1819_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER1819));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER1819_tree);
        	        }

        	        CLOSE_PAR_SYMBOL1820 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9413);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1820_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1820));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1820_tree);
        	        }

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:1655:4: MINUTE_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MINUTE_SYMBOL1821 = (pANTLR3_COMMON_TOKEN) MATCHT(MINUTE_SYMBOL, &FOLLOW_MINUTE_SYMBOL_in_function_call9418);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MINUTE_SYMBOL1821_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MINUTE_SYMBOL1821));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MINUTE_SYMBOL1821_tree);
        	        }

        	        OPEN_PAR_SYMBOL1822 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_function_call9420);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1822_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1822));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1822_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9422);
        	        expression1823=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1823.tree);

        	        CLOSE_PAR_SYMBOL1824 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9424);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1824_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1824));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1824_tree);
        	        }

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:1656:4: MONTH_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MONTH_SYMBOL1825 = (pANTLR3_COMMON_TOKEN) MATCHT(MONTH_SYMBOL, &FOLLOW_MONTH_SYMBOL_in_function_call9429);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MONTH_SYMBOL1825_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MONTH_SYMBOL1825));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MONTH_SYMBOL1825_tree);
        	        }

        	        OPEN_PAR_SYMBOL1826 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_function_call9431);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1826_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1826));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1826_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9433);
        	        expression1827=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1827.tree);

        	        CLOSE_PAR_SYMBOL1828 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9435);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1828_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1828));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1828_tree);
        	        }

        	    }
        	    break;
        	case 10:
        	    // MySQL.g:1657:4: RIGHT_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL INTEGER CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        RIGHT_SYMBOL1829 = (pANTLR3_COMMON_TOKEN) MATCHT(RIGHT_SYMBOL, &FOLLOW_RIGHT_SYMBOL_in_function_call9440);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        RIGHT_SYMBOL1829_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RIGHT_SYMBOL1829));
        	        ADAPTOR->addChild(ADAPTOR, root_0, RIGHT_SYMBOL1829_tree);
        	        }

        	        OPEN_PAR_SYMBOL1830 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_function_call9442);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1830_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1830));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1830_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9444);
        	        expression1831=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1831.tree);

        	        COMMA_SYMBOL1832 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_function_call9446);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL1832_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1832));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1832_tree);
        	        }

        	        INTEGER1833 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_function_call9448);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INTEGER1833_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER1833));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER1833_tree);
        	        }

        	        CLOSE_PAR_SYMBOL1834 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9450);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1834_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1834));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1834_tree);
        	        }

        	    }
        	    break;
        	case 11:
        	    // MySQL.g:1658:4: SECOND_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SECOND_SYMBOL1835 = (pANTLR3_COMMON_TOKEN) MATCHT(SECOND_SYMBOL, &FOLLOW_SECOND_SYMBOL_in_function_call9455);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SECOND_SYMBOL1835_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SECOND_SYMBOL1835));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SECOND_SYMBOL1835_tree);
        	        }

        	        OPEN_PAR_SYMBOL1836 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_function_call9457);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1836_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1836));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1836_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9459);
        	        expression1837=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1837.tree);

        	        CLOSE_PAR_SYMBOL1838 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9461);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1838_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1838));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1838_tree);
        	        }

        	    }
        	    break;
        	case 12:
        	    // MySQL.g:1659:4: TIME_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TIME_SYMBOL1839 = (pANTLR3_COMMON_TOKEN) MATCHT(TIME_SYMBOL, &FOLLOW_TIME_SYMBOL_in_function_call9466);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TIME_SYMBOL1839_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TIME_SYMBOL1839));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TIME_SYMBOL1839_tree);
        	        }

        	        OPEN_PAR_SYMBOL1840 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_function_call9468);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1840_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1840));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1840_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9470);
        	        expression1841=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1841.tree);

        	        CLOSE_PAR_SYMBOL1842 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9472);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1842_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1842));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1842_tree);
        	        }

        	    }
        	    break;
        	case 13:
        	    // MySQL.g:1660:4: TIMESTAMP_SYMBOL OPEN_PAR_SYMBOL expression ( COMMA_SYMBOL expression )? CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TIMESTAMP_SYMBOL1843 = (pANTLR3_COMMON_TOKEN) MATCHT(TIMESTAMP_SYMBOL, &FOLLOW_TIMESTAMP_SYMBOL_in_function_call9477);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TIMESTAMP_SYMBOL1843_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TIMESTAMP_SYMBOL1843));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TIMESTAMP_SYMBOL1843_tree);
        	        }

        	        OPEN_PAR_SYMBOL1844 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_function_call9479);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1844_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1844));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1844_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9481);
        	        expression1845=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1845.tree);

        	        // MySQL.g:1660:48: ( COMMA_SYMBOL expression )?
        	        {
        	            int alt531=2;
        	            switch ( LA(1) )
        	            {
        	                case COMMA_SYMBOL:
        	                	{
        	                		alt531=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt531)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1660:49: COMMA_SYMBOL expression
        	        	    {
        	        	        COMMA_SYMBOL1846 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_function_call9484);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefunction_callEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COMMA_SYMBOL1846_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1846));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1846_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9486);
        	        	        expression1847=expression(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefunction_callEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1847.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        CLOSE_PAR_SYMBOL1848 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9490);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1848_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1848));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1848_tree);
        	        }

        	    }
        	    break;
        	case 14:
        	    // MySQL.g:1661:4: trim_function
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_trim_function_in_function_call9495);
        	        trim_function1849=trim_function(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, trim_function1849.tree);

        	    }
        	    break;
        	case 15:
        	    // MySQL.g:1662:4: USER_SYMBOL parentheses
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        USER_SYMBOL1850 = (pANTLR3_COMMON_TOKEN) MATCHT(USER_SYMBOL, &FOLLOW_USER_SYMBOL_in_function_call9500);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        USER_SYMBOL1850_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USER_SYMBOL1850));
        	        ADAPTOR->addChild(ADAPTOR, root_0, USER_SYMBOL1850_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_parentheses_in_function_call9502);
        	        parentheses1851=parentheses(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, parentheses1851.tree);

        	    }
        	    break;
        	case 16:
        	    // MySQL.g:1663:4: VALUES_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        VALUES_SYMBOL1852 = (pANTLR3_COMMON_TOKEN) MATCHT(VALUES_SYMBOL, &FOLLOW_VALUES_SYMBOL_in_function_call9507);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        VALUES_SYMBOL1852_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VALUES_SYMBOL1852));
        	        ADAPTOR->addChild(ADAPTOR, root_0, VALUES_SYMBOL1852_tree);
        	        }

        	        OPEN_PAR_SYMBOL1853 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_function_call9509);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1853_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1853));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1853_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9511);
        	        expression1854=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1854.tree);

        	        CLOSE_PAR_SYMBOL1855 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9513);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1855_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1855));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1855_tree);
        	        }

        	    }
        	    break;
        	case 17:
        	    // MySQL.g:1664:4: YEAR_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        YEAR_SYMBOL1856 = (pANTLR3_COMMON_TOKEN) MATCHT(YEAR_SYMBOL, &FOLLOW_YEAR_SYMBOL_in_function_call9518);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        YEAR_SYMBOL1856_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, YEAR_SYMBOL1856));
        	        ADAPTOR->addChild(ADAPTOR, root_0, YEAR_SYMBOL1856_tree);
        	        }

        	        OPEN_PAR_SYMBOL1857 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_function_call9520);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1857_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1857));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1857_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9522);
        	        expression1858=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1858.tree);

        	        CLOSE_PAR_SYMBOL1859 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9524);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1859_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1859));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1859_tree);
        	        }

        	    }
        	    break;
        	case 18:
        	    // MySQL.g:1667:4: ( ADDDATE_SYMBOL | SUBDATE_SYMBOL ) OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set1860=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == ADDDATE_SYMBOL || LA(1) == SUBDATE_SYMBOL )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1860))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	            CONSTRUCTEX();
        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
        	            EXCEPTION->expectingSet = NULL;

        	            goto rulefunction_callEx;
        	        }


        	        OPEN_PAR_SYMBOL1861 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_function_call9540);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1861_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1861));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1861_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9542);
        	        expression1862=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1862.tree);

        	        COMMA_SYMBOL1863 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_function_call9544);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL1863_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1863));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1863_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9546);
        	        expression1864=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1864.tree);

        	        CLOSE_PAR_SYMBOL1865 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9548);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1865_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1865));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1865_tree);
        	        }

        	    }
        	    break;
        	case 19:
        	    // MySQL.g:1668:4: CURDATE_SYMBOL ( parentheses )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CURDATE_SYMBOL1866 = (pANTLR3_COMMON_TOKEN) MATCHT(CURDATE_SYMBOL, &FOLLOW_CURDATE_SYMBOL_in_function_call9553);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CURDATE_SYMBOL1866_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CURDATE_SYMBOL1866));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CURDATE_SYMBOL1866_tree);
        	        }

        	        // MySQL.g:1668:19: ( parentheses )?
        	        {
        	            int alt532=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt532=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt532)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1668:19: parentheses
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_parentheses_in_function_call9555);
        	        	        parentheses1867=parentheses(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefunction_callEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, parentheses1867.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 20:
        	    // MySQL.g:1669:4: CURTIME_SYMBOL ( time_function_parameters )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CURTIME_SYMBOL1868 = (pANTLR3_COMMON_TOKEN) MATCHT(CURTIME_SYMBOL, &FOLLOW_CURTIME_SYMBOL_in_function_call9561);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CURTIME_SYMBOL1868_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CURTIME_SYMBOL1868));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CURTIME_SYMBOL1868_tree);
        	        }

        	        // MySQL.g:1669:19: ( time_function_parameters )?
        	        {
        	            int alt533=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt533=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt533)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1669:19: time_function_parameters
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_time_function_parameters_in_function_call9563);
        	        	        time_function_parameters1869=time_function_parameters(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefunction_callEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, time_function_parameters1869.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 21:
        	    // MySQL.g:1670:4: ( DATE_ADD_SYMBOL | DATE_SUB_SYMBOL ) OPEN_PAR_SYMBOL expression COMMA_SYMBOL INTERVAL_SYMBOL interval CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set1870=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == DATE_ADD_SYMBOL || LA(1) == DATE_SUB_SYMBOL )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1870))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	            CONSTRUCTEX();
        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
        	            EXCEPTION->expectingSet = NULL;

        	            goto rulefunction_callEx;
        	        }


        	        OPEN_PAR_SYMBOL1871 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_function_call9577);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1871_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1871));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1871_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9579);
        	        expression1872=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1872.tree);

        	        COMMA_SYMBOL1873 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_function_call9581);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL1873_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1873));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1873_tree);
        	        }

        	        INTERVAL_SYMBOL1874 = (pANTLR3_COMMON_TOKEN) MATCHT(INTERVAL_SYMBOL, &FOLLOW_INTERVAL_SYMBOL_in_function_call9583);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INTERVAL_SYMBOL1874_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTERVAL_SYMBOL1874));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INTERVAL_SYMBOL1874_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_interval_in_function_call9585);
        	        interval1875=interval(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, interval1875.tree);

        	        CLOSE_PAR_SYMBOL1876 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9587);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1876_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1876));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1876_tree);
        	        }

        	    }
        	    break;
        	case 22:
        	    // MySQL.g:1671:4: EXTRACT_SYMBOL OPEN_PAR_SYMBOL interval_unit FROM_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        EXTRACT_SYMBOL1877 = (pANTLR3_COMMON_TOKEN) MATCHT(EXTRACT_SYMBOL, &FOLLOW_EXTRACT_SYMBOL_in_function_call9592);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EXTRACT_SYMBOL1877_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXTRACT_SYMBOL1877));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EXTRACT_SYMBOL1877_tree);
        	        }

        	        OPEN_PAR_SYMBOL1878 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_function_call9594);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1878_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1878));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1878_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_interval_unit_in_function_call9596);
        	        interval_unit1879=interval_unit(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, interval_unit1879.tree);

        	        FROM_SYMBOL1880 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_function_call9598);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FROM_SYMBOL1880_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL1880));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL1880_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9600);
        	        expression1881=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1881.tree);

        	        CLOSE_PAR_SYMBOL1882 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9602);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1882_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1882));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1882_tree);
        	        }

        	    }
        	    break;
        	case 23:
        	    // MySQL.g:1672:4: GET_FORMAT_SYMBOL OPEN_PAR_SYMBOL date_time_type COMMA_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        GET_FORMAT_SYMBOL1883 = (pANTLR3_COMMON_TOKEN) MATCHT(GET_FORMAT_SYMBOL, &FOLLOW_GET_FORMAT_SYMBOL_in_function_call9607);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        GET_FORMAT_SYMBOL1883_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GET_FORMAT_SYMBOL1883));
        	        ADAPTOR->addChild(ADAPTOR, root_0, GET_FORMAT_SYMBOL1883_tree);
        	        }

        	        OPEN_PAR_SYMBOL1884 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_function_call9609);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1884_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1884));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1884_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_date_time_type_in_function_call9611);
        	        date_time_type1885=date_time_type(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, date_time_type1885.tree);

        	        COMMA_SYMBOL1886 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_function_call9614);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL1886_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1886));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1886_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9616);
        	        expression1887=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1887.tree);

        	        CLOSE_PAR_SYMBOL1888 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9618);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1888_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1888));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1888_tree);
        	        }

        	    }
        	    break;
        	case 24:
        	    // MySQL.g:1673:4: NOW_SYMBOL ( time_function_parameters )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NOW_SYMBOL1889 = (pANTLR3_COMMON_TOKEN) MATCHT(NOW_SYMBOL, &FOLLOW_NOW_SYMBOL_in_function_call9623);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NOW_SYMBOL1889_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NOW_SYMBOL1889));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NOW_SYMBOL1889_tree);
        	        }

        	        // MySQL.g:1673:15: ( time_function_parameters )?
        	        {
        	            int alt534=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt534=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt534)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1673:15: time_function_parameters
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_time_function_parameters_in_function_call9625);
        	        	        time_function_parameters1890=time_function_parameters(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefunction_callEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, time_function_parameters1890.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 25:
        	    // MySQL.g:1674:4: POSITION_SYMBOL OPEN_PAR_SYMBOL bitwise_or_expression IN_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        POSITION_SYMBOL1891 = (pANTLR3_COMMON_TOKEN) MATCHT(POSITION_SYMBOL, &FOLLOW_POSITION_SYMBOL_in_function_call9631);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        POSITION_SYMBOL1891_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, POSITION_SYMBOL1891));
        	        ADAPTOR->addChild(ADAPTOR, root_0, POSITION_SYMBOL1891_tree);
        	        }

        	        OPEN_PAR_SYMBOL1892 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_function_call9633);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1892_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1892));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1892_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_bitwise_or_expression_in_function_call9635);
        	        bitwise_or_expression1893=bitwise_or_expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, bitwise_or_expression1893.tree);

        	        IN_SYMBOL1894 = (pANTLR3_COMMON_TOKEN) MATCHT(IN_SYMBOL, &FOLLOW_IN_SYMBOL_in_function_call9637);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        IN_SYMBOL1894_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IN_SYMBOL1894));
        	        ADAPTOR->addChild(ADAPTOR, root_0, IN_SYMBOL1894_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9639);
        	        expression1895=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1895.tree);

        	        CLOSE_PAR_SYMBOL1896 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9641);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1896_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1896));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1896_tree);
        	        }

        	    }
        	    break;
        	case 26:
        	    // MySQL.g:1675:4: substring_function
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_substring_function_in_function_call9646);
        	        substring_function1897=substring_function(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, substring_function1897.tree);

        	    }
        	    break;
        	case 27:
        	    // MySQL.g:1676:4: SYSDATE_SYMBOL ( time_function_parameters )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SYSDATE_SYMBOL1898 = (pANTLR3_COMMON_TOKEN) MATCHT(SYSDATE_SYMBOL, &FOLLOW_SYSDATE_SYMBOL_in_function_call9651);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SYSDATE_SYMBOL1898_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SYSDATE_SYMBOL1898));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SYSDATE_SYMBOL1898_tree);
        	        }

        	        // MySQL.g:1676:19: ( time_function_parameters )?
        	        {
        	            int alt535=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt535=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt535)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1676:19: time_function_parameters
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_time_function_parameters_in_function_call9653);
        	        	        time_function_parameters1899=time_function_parameters(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefunction_callEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, time_function_parameters1899.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 28:
        	    // MySQL.g:1677:4: ( TIMESTAMP_ADD_SYMBOL | TIMESTAMP_DIFF_SYMBOL ) OPEN_PAR_SYMBOL interval_timestamp_unit COMMA_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set1900=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( ((LA(1) >= TIMESTAMP_ADD_SYMBOL) && (LA(1) <= TIMESTAMP_DIFF_SYMBOL)) )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1900))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	            CONSTRUCTEX();
        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
        	            EXCEPTION->expectingSet = NULL;

        	            goto rulefunction_callEx;
        	        }


        	        OPEN_PAR_SYMBOL1901 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_function_call9667);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1901_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1901));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1901_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_interval_timestamp_unit_in_function_call9669);
        	        interval_timestamp_unit1902=interval_timestamp_unit(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, interval_timestamp_unit1902.tree);

        	        COMMA_SYMBOL1903 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_function_call9671);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL1903_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1903));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1903_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9673);
        	        expression1904=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1904.tree);

        	        COMMA_SYMBOL1905 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_function_call9675);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL1905_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1905));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1905_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9677);
        	        expression1906=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1906.tree);

        	        CLOSE_PAR_SYMBOL1907 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9679);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1907_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1907));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1907_tree);
        	        }

        	    }
        	    break;
        	case 29:
        	    // MySQL.g:1678:4: UTC_DATE_SYMBOL ( parentheses )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        UTC_DATE_SYMBOL1908 = (pANTLR3_COMMON_TOKEN) MATCHT(UTC_DATE_SYMBOL, &FOLLOW_UTC_DATE_SYMBOL_in_function_call9684);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UTC_DATE_SYMBOL1908_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UTC_DATE_SYMBOL1908));
        	        ADAPTOR->addChild(ADAPTOR, root_0, UTC_DATE_SYMBOL1908_tree);
        	        }

        	        // MySQL.g:1678:20: ( parentheses )?
        	        {
        	            int alt536=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt536=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt536)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1678:20: parentheses
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_parentheses_in_function_call9686);
        	        	        parentheses1909=parentheses(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefunction_callEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, parentheses1909.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 30:
        	    // MySQL.g:1679:4: UTC_TIME_SYMBOL ( time_function_parameters )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        UTC_TIME_SYMBOL1910 = (pANTLR3_COMMON_TOKEN) MATCHT(UTC_TIME_SYMBOL, &FOLLOW_UTC_TIME_SYMBOL_in_function_call9692);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UTC_TIME_SYMBOL1910_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UTC_TIME_SYMBOL1910));
        	        ADAPTOR->addChild(ADAPTOR, root_0, UTC_TIME_SYMBOL1910_tree);
        	        }

        	        // MySQL.g:1679:20: ( time_function_parameters )?
        	        {
        	            int alt537=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt537=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt537)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1679:20: time_function_parameters
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_time_function_parameters_in_function_call9694);
        	        	        time_function_parameters1911=time_function_parameters(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefunction_callEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, time_function_parameters1911.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 31:
        	    // MySQL.g:1680:4: UTC_TIMESTAMP_SYMBOL ( time_function_parameters )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        UTC_TIMESTAMP_SYMBOL1912 = (pANTLR3_COMMON_TOKEN) MATCHT(UTC_TIMESTAMP_SYMBOL, &FOLLOW_UTC_TIMESTAMP_SYMBOL_in_function_call9700);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UTC_TIMESTAMP_SYMBOL1912_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UTC_TIMESTAMP_SYMBOL1912));
        	        ADAPTOR->addChild(ADAPTOR, root_0, UTC_TIMESTAMP_SYMBOL1912_tree);
        	        }

        	        // MySQL.g:1680:25: ( time_function_parameters )?
        	        {
        	            int alt538=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt538=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt538)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1680:25: time_function_parameters
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_time_function_parameters_in_function_call9702);
        	        	        time_function_parameters1913=time_function_parameters(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefunction_callEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, time_function_parameters1913.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 32:
        	    // MySQL.g:1683:4: ASCII_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ASCII_SYMBOL1914 = (pANTLR3_COMMON_TOKEN) MATCHT(ASCII_SYMBOL, &FOLLOW_ASCII_SYMBOL_in_function_call9711);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ASCII_SYMBOL1914_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ASCII_SYMBOL1914));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ASCII_SYMBOL1914_tree);
        	        }

        	        OPEN_PAR_SYMBOL1915 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_function_call9713);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1915_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1915));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1915_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9715);
        	        expression1916=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1916.tree);

        	        CLOSE_PAR_SYMBOL1917 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9717);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1917_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1917));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1917_tree);
        	        }

        	    }
        	    break;
        	case 33:
        	    // MySQL.g:1684:4: CHARSET_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CHARSET_SYMBOL1918 = (pANTLR3_COMMON_TOKEN) MATCHT(CHARSET_SYMBOL, &FOLLOW_CHARSET_SYMBOL_in_function_call9722);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CHARSET_SYMBOL1918_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHARSET_SYMBOL1918));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CHARSET_SYMBOL1918_tree);
        	        }

        	        OPEN_PAR_SYMBOL1919 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_function_call9724);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1919_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1919));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1919_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9726);
        	        expression1920=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1920.tree);

        	        CLOSE_PAR_SYMBOL1921 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9728);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1921_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1921));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1921_tree);
        	        }

        	    }
        	    break;
        	case 34:
        	    // MySQL.g:1685:4: COALESCE_SYMBOL expression_list_with_parentheses
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        COALESCE_SYMBOL1922 = (pANTLR3_COMMON_TOKEN) MATCHT(COALESCE_SYMBOL, &FOLLOW_COALESCE_SYMBOL_in_function_call9733);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COALESCE_SYMBOL1922_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COALESCE_SYMBOL1922));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COALESCE_SYMBOL1922_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_list_with_parentheses_in_function_call9735);
        	        expression_list_with_parentheses1923=expression_list_with_parentheses(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression_list_with_parentheses1923.tree);

        	    }
        	    break;
        	case 35:
        	    // MySQL.g:1686:4: COLLATION_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        COLLATION_SYMBOL1924 = (pANTLR3_COMMON_TOKEN) MATCHT(COLLATION_SYMBOL, &FOLLOW_COLLATION_SYMBOL_in_function_call9740);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COLLATION_SYMBOL1924_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLLATION_SYMBOL1924));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COLLATION_SYMBOL1924_tree);
        	        }

        	        OPEN_PAR_SYMBOL1925 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_function_call9742);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1925_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1925));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1925_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9744);
        	        expression1926=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1926.tree);

        	        CLOSE_PAR_SYMBOL1927 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9746);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1927_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1927));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1927_tree);
        	        }

        	    }
        	    break;
        	case 36:
        	    // MySQL.g:1687:4: DATABASE_SYMBOL parentheses
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DATABASE_SYMBOL1928 = (pANTLR3_COMMON_TOKEN) MATCHT(DATABASE_SYMBOL, &FOLLOW_DATABASE_SYMBOL_in_function_call9751);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DATABASE_SYMBOL1928_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATABASE_SYMBOL1928));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DATABASE_SYMBOL1928_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_parentheses_in_function_call9753);
        	        parentheses1929=parentheses(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, parentheses1929.tree);

        	    }
        	    break;
        	case 37:
        	    // MySQL.g:1688:4: IF_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        IF_SYMBOL1930 = (pANTLR3_COMMON_TOKEN) MATCHT(IF_SYMBOL, &FOLLOW_IF_SYMBOL_in_function_call9758);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        IF_SYMBOL1930_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IF_SYMBOL1930));
        	        ADAPTOR->addChild(ADAPTOR, root_0, IF_SYMBOL1930_tree);
        	        }

        	        OPEN_PAR_SYMBOL1931 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_function_call9760);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1931_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1931));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1931_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9762);
        	        expression1932=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1932.tree);

        	        COMMA_SYMBOL1933 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_function_call9764);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL1933_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1933));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1933_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9766);
        	        expression1934=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1934.tree);

        	        COMMA_SYMBOL1935 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_function_call9768);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL1935_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1935));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1935_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9770);
        	        expression1936=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1936.tree);

        	        CLOSE_PAR_SYMBOL1937 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9772);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1937_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1937));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1937_tree);
        	        }

        	    }
        	    break;
        	case 38:
        	    // MySQL.g:1689:4: FORMAT_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression ( COMMA_SYMBOL expression )? CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FORMAT_SYMBOL1938 = (pANTLR3_COMMON_TOKEN) MATCHT(FORMAT_SYMBOL, &FOLLOW_FORMAT_SYMBOL_in_function_call9777);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FORMAT_SYMBOL1938_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FORMAT_SYMBOL1938));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FORMAT_SYMBOL1938_tree);
        	        }

        	        OPEN_PAR_SYMBOL1939 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_function_call9779);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1939_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1939));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1939_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9781);
        	        expression1940=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1940.tree);

        	        COMMA_SYMBOL1941 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_function_call9783);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL1941_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1941));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1941_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9785);
        	        expression1942=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1942.tree);

        	        // MySQL.g:1689:69: ( COMMA_SYMBOL expression )?
        	        {
        	            int alt539=2;
        	            switch ( LA(1) )
        	            {
        	                case COMMA_SYMBOL:
        	                	{
        	                		alt539=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt539)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1689:70: COMMA_SYMBOL expression
        	        	    {
        	        	        COMMA_SYMBOL1943 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_function_call9788);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefunction_callEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COMMA_SYMBOL1943_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1943));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1943_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9790);
        	        	        expression1944=expression(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefunction_callEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1944.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        CLOSE_PAR_SYMBOL1945 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9794);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1945_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1945));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1945_tree);
        	        }

        	    }
        	    break;
        	case 39:
        	    // MySQL.g:1690:4: MICROSECOND_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MICROSECOND_SYMBOL1946 = (pANTLR3_COMMON_TOKEN) MATCHT(MICROSECOND_SYMBOL, &FOLLOW_MICROSECOND_SYMBOL_in_function_call9799);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MICROSECOND_SYMBOL1946_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MICROSECOND_SYMBOL1946));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MICROSECOND_SYMBOL1946_tree);
        	        }

        	        OPEN_PAR_SYMBOL1947 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_function_call9801);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1947_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1947));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1947_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9803);
        	        expression1948=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1948.tree);

        	        CLOSE_PAR_SYMBOL1949 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9805);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1949_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1949));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1949_tree);
        	        }

        	    }
        	    break;
        	case 40:
        	    // MySQL.g:1691:4: MOD_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MOD_SYMBOL1950 = (pANTLR3_COMMON_TOKEN) MATCHT(MOD_SYMBOL, &FOLLOW_MOD_SYMBOL_in_function_call9810);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MOD_SYMBOL1950_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MOD_SYMBOL1950));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MOD_SYMBOL1950_tree);
        	        }

        	        OPEN_PAR_SYMBOL1951 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_function_call9812);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1951_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1951));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1951_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9814);
        	        expression1952=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1952.tree);

        	        COMMA_SYMBOL1953 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_function_call9816);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL1953_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1953));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1953_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9818);
        	        expression1954=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1954.tree);

        	        CLOSE_PAR_SYMBOL1955 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9820);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1955_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1955));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1955_tree);
        	        }

        	    }
        	    break;
        	case 41:
        	    // MySQL.g:1692:4: OLD_PASSWORD_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        OLD_PASSWORD_SYMBOL1956 = (pANTLR3_COMMON_TOKEN) MATCHT(OLD_PASSWORD_SYMBOL, &FOLLOW_OLD_PASSWORD_SYMBOL_in_function_call9825);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OLD_PASSWORD_SYMBOL1956_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OLD_PASSWORD_SYMBOL1956));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OLD_PASSWORD_SYMBOL1956_tree);
        	        }

        	        OPEN_PAR_SYMBOL1957 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_function_call9827);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1957_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1957));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1957_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9829);
        	        expression1958=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1958.tree);

        	        CLOSE_PAR_SYMBOL1959 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9831);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1959_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1959));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1959_tree);
        	        }

        	    }
        	    break;
        	case 42:
        	    // MySQL.g:1693:4: PASSWORD_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PASSWORD_SYMBOL1960 = (pANTLR3_COMMON_TOKEN) MATCHT(PASSWORD_SYMBOL, &FOLLOW_PASSWORD_SYMBOL_in_function_call9836);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PASSWORD_SYMBOL1960_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PASSWORD_SYMBOL1960));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PASSWORD_SYMBOL1960_tree);
        	        }

        	        OPEN_PAR_SYMBOL1961 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_function_call9838);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1961_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1961));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1961_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9840);
        	        expression1962=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1962.tree);

        	        CLOSE_PAR_SYMBOL1963 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9842);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1963_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1963));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1963_tree);
        	        }

        	    }
        	    break;
        	case 43:
        	    // MySQL.g:1694:4: QUARTER_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        QUARTER_SYMBOL1964 = (pANTLR3_COMMON_TOKEN) MATCHT(QUARTER_SYMBOL, &FOLLOW_QUARTER_SYMBOL_in_function_call9847);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        QUARTER_SYMBOL1964_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, QUARTER_SYMBOL1964));
        	        ADAPTOR->addChild(ADAPTOR, root_0, QUARTER_SYMBOL1964_tree);
        	        }

        	        OPEN_PAR_SYMBOL1965 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_function_call9849);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1965_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1965));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1965_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9851);
        	        expression1966=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1966.tree);

        	        CLOSE_PAR_SYMBOL1967 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9853);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1967_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1967));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1967_tree);
        	        }

        	    }
        	    break;
        	case 44:
        	    // MySQL.g:1695:4: REPEAT_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        REPEAT_SYMBOL1968 = (pANTLR3_COMMON_TOKEN) MATCHT(REPEAT_SYMBOL, &FOLLOW_REPEAT_SYMBOL_in_function_call9858);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REPEAT_SYMBOL1968_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPEAT_SYMBOL1968));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REPEAT_SYMBOL1968_tree);
        	        }

        	        OPEN_PAR_SYMBOL1969 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_function_call9860);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1969_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1969));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1969_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9862);
        	        expression1970=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1970.tree);

        	        COMMA_SYMBOL1971 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_function_call9864);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL1971_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1971));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1971_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9866);
        	        expression1972=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1972.tree);

        	        CLOSE_PAR_SYMBOL1973 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9868);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1973_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1973));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1973_tree);
        	        }

        	    }
        	    break;
        	case 45:
        	    // MySQL.g:1696:4: REPLACE_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        REPLACE_SYMBOL1974 = (pANTLR3_COMMON_TOKEN) MATCHT(REPLACE_SYMBOL, &FOLLOW_REPLACE_SYMBOL_in_function_call9873);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REPLACE_SYMBOL1974_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPLACE_SYMBOL1974));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REPLACE_SYMBOL1974_tree);
        	        }

        	        OPEN_PAR_SYMBOL1975 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_function_call9875);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1975_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1975));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1975_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9877);
        	        expression1976=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1976.tree);

        	        COMMA_SYMBOL1977 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_function_call9879);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL1977_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1977));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1977_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9881);
        	        expression1978=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1978.tree);

        	        COMMA_SYMBOL1979 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_function_call9883);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL1979_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1979));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1979_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9885);
        	        expression1980=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1980.tree);

        	        CLOSE_PAR_SYMBOL1981 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9887);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1981_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1981));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1981_tree);
        	        }

        	    }
        	    break;
        	case 46:
        	    // MySQL.g:1697:4: REVERSE_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        REVERSE_SYMBOL1982 = (pANTLR3_COMMON_TOKEN) MATCHT(REVERSE_SYMBOL, &FOLLOW_REVERSE_SYMBOL_in_function_call9892);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REVERSE_SYMBOL1982_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REVERSE_SYMBOL1982));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REVERSE_SYMBOL1982_tree);
        	        }

        	        OPEN_PAR_SYMBOL1983 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_function_call9894);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1983_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1983));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1983_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9896);
        	        expression1984=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1984.tree);

        	        CLOSE_PAR_SYMBOL1985 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9898);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1985_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1985));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1985_tree);
        	        }

        	    }
        	    break;
        	case 47:
        	    // MySQL.g:1698:4: ROW_COUNT_SYMBOL parentheses
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ROW_COUNT_SYMBOL1986 = (pANTLR3_COMMON_TOKEN) MATCHT(ROW_COUNT_SYMBOL, &FOLLOW_ROW_COUNT_SYMBOL_in_function_call9903);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ROW_COUNT_SYMBOL1986_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ROW_COUNT_SYMBOL1986));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ROW_COUNT_SYMBOL1986_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_parentheses_in_function_call9905);
        	        parentheses1987=parentheses(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, parentheses1987.tree);

        	    }
        	    break;
        	case 48:
        	    // MySQL.g:1699:4: TRUNCATE_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TRUNCATE_SYMBOL1988 = (pANTLR3_COMMON_TOKEN) MATCHT(TRUNCATE_SYMBOL, &FOLLOW_TRUNCATE_SYMBOL_in_function_call9910);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TRUNCATE_SYMBOL1988_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TRUNCATE_SYMBOL1988));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TRUNCATE_SYMBOL1988_tree);
        	        }

        	        OPEN_PAR_SYMBOL1989 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_function_call9912);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1989_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1989));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1989_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9914);
        	        expression1990=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1990.tree);

        	        COMMA_SYMBOL1991 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_function_call9916);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL1991_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1991));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1991_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9918);
        	        expression1992=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1992.tree);

        	        CLOSE_PAR_SYMBOL1993 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9920);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1993_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1993));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1993_tree);
        	        }

        	    }
        	    break;
        	case 49:
        	    // MySQL.g:1700:4: WEEK_SYMBOL OPEN_PAR_SYMBOL expression ( COMMA_SYMBOL expression )? CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        WEEK_SYMBOL1994 = (pANTLR3_COMMON_TOKEN) MATCHT(WEEK_SYMBOL, &FOLLOW_WEEK_SYMBOL_in_function_call9925);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        WEEK_SYMBOL1994_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WEEK_SYMBOL1994));
        	        ADAPTOR->addChild(ADAPTOR, root_0, WEEK_SYMBOL1994_tree);
        	        }

        	        OPEN_PAR_SYMBOL1995 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_function_call9927);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1995_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1995));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1995_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9929);
        	        expression1996=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1996.tree);

        	        // MySQL.g:1700:43: ( COMMA_SYMBOL expression )?
        	        {
        	            int alt540=2;
        	            switch ( LA(1) )
        	            {
        	                case COMMA_SYMBOL:
        	                	{
        	                		alt540=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt540)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1700:44: COMMA_SYMBOL expression
        	        	    {
        	        	        COMMA_SYMBOL1997 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_function_call9932);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefunction_callEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COMMA_SYMBOL1997_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1997));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1997_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9934);
        	        	        expression1998=expression(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefunction_callEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1998.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        CLOSE_PAR_SYMBOL1999 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_function_call9938);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1999_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1999));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1999_tree);
        	        }

        	    }
        	    break;
        	case 50:
        	    // MySQL.g:1701:4: {...}? => WEIGHT_STRING_SYMBOL OPEN_PAR_SYMBOL expression ( ( AS_SYMBOL CHAR_SYMBOL field_length )? ( weight_string_levels )? | AS_SYMBOL BINARY_SYMBOL field_length | COMMA_SYMBOL INTEGER COMMA_SYMBOL INTEGER COMMA_SYMBOL INTEGER ) CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((SERVER_VERSION >= 50600)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50600";
        	                EXCEPTION->ruleName	 = (void *)"function_call";


        	        }

        	        WEIGHT_STRING_SYMBOL2000 = (pANTLR3_COMMON_TOKEN) MATCHT(WEIGHT_STRING_SYMBOL, &FOLLOW_WEIGHT_STRING_SYMBOL_in_function_call9947);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        WEIGHT_STRING_SYMBOL2000_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WEIGHT_STRING_SYMBOL2000));
        	        ADAPTOR->addChild(ADAPTOR, root_0, WEIGHT_STRING_SYMBOL2000_tree);
        	        }

        	        OPEN_PAR_SYMBOL2001 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_function_call9949);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2001_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2001));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2001_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_function_call9951);
        	        expression2002=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2002.tree);

        	        // MySQL.g:1702:3: ( ( AS_SYMBOL CHAR_SYMBOL field_length )? ( weight_string_levels )? | AS_SYMBOL BINARY_SYMBOL field_length | COMMA_SYMBOL INTEGER COMMA_SYMBOL INTEGER COMMA_SYMBOL INTEGER )
        	        {
        	            int alt543=3;
        	            switch ( LA(1) )
        	            {
        	            case AS_SYMBOL:
        	            	{
        	            		switch ( LA(2) )
        	            		{
        	            		case CHAR_SYMBOL:
        	            			{
        	            				alt543=1;
        	            			}
        	            		    break;
        	            		case BINARY_SYMBOL:
        	            			{
        	            				alt543=2;
        	            			}
        	            		    break;

        	            		default:
        	            		    if (BACKTRACKING>0)
        	            		    {
        	            		        FAILEDFLAG = ANTLR3_TRUE;
        	            		        return retval;
        	            		    }

        	            		    CONSTRUCTEX();
        	            		    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	            		    EXCEPTION->message      = (void *)"";
        	            		    EXCEPTION->decisionNum  = 543;
        	            		    EXCEPTION->state        = 1;


        	            		    goto rulefunction_callEx;

        	            		}

        	            	}
        	                break;
        	            case CLOSE_PAR_SYMBOL:
        	            case LEVEL_SYMBOL:
        	            	{
        	            		alt543=1;
        	            	}
        	                break;
        	            case COMMA_SYMBOL:
        	            	{
        	            		alt543=3;
        	            	}
        	                break;

        	            default:
        	                if (BACKTRACKING>0)
        	                {
        	                    FAILEDFLAG = ANTLR3_TRUE;
        	                    return retval;
        	                }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                EXCEPTION->message      = (void *)"";
        	                EXCEPTION->decisionNum  = 543;
        	                EXCEPTION->state        = 0;


        	                goto rulefunction_callEx;

        	            }

        	            switch (alt543)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1703:4: ( AS_SYMBOL CHAR_SYMBOL field_length )? ( weight_string_levels )?
        	        	    {
        	        	        // MySQL.g:1703:4: ( AS_SYMBOL CHAR_SYMBOL field_length )?
        	        	        {
        	        	            int alt541=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case AS_SYMBOL:
        	        	                	{
        	        	                		alt541=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt541)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:1703:5: AS_SYMBOL CHAR_SYMBOL field_length
        	        	        	    {
        	        	        	        AS_SYMBOL2003 = (pANTLR3_COMMON_TOKEN) MATCHT(AS_SYMBOL, &FOLLOW_AS_SYMBOL_in_function_call9961);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulefunction_callEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        AS_SYMBOL2003_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AS_SYMBOL2003));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, AS_SYMBOL2003_tree);
        	        	        	        }

        	        	        	        CHAR_SYMBOL2004 = (pANTLR3_COMMON_TOKEN) MATCHT(CHAR_SYMBOL, &FOLLOW_CHAR_SYMBOL_in_function_call9963);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulefunction_callEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        CHAR_SYMBOL2004_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHAR_SYMBOL2004));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, CHAR_SYMBOL2004_tree);
        	        	        	        }

        	        	        	        FOLLOWPUSH(FOLLOW_field_length_in_function_call9965);
        	        	        	        field_length2005=field_length(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulefunction_callEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2005.tree);

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        // MySQL.g:1703:42: ( weight_string_levels )?
        	        	        {
        	        	            int alt542=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case LEVEL_SYMBOL:
        	        	                	{
        	        	                		alt542=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt542)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:1703:42: weight_string_levels
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_weight_string_levels_in_function_call9969);
        	        	        	        weight_string_levels2006=weight_string_levels(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulefunction_callEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, weight_string_levels2006.tree);

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:1704:6: AS_SYMBOL BINARY_SYMBOL field_length
        	        	    {
        	        	        AS_SYMBOL2007 = (pANTLR3_COMMON_TOKEN) MATCHT(AS_SYMBOL, &FOLLOW_AS_SYMBOL_in_function_call9977);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefunction_callEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        AS_SYMBOL2007_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AS_SYMBOL2007));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, AS_SYMBOL2007_tree);
        	        	        }

        	        	        BINARY_SYMBOL2008 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_function_call9979);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefunction_callEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        BINARY_SYMBOL2008_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2008));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2008_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_field_length_in_function_call9981);
        	        	        field_length2009=field_length(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefunction_callEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2009.tree);

        	        	    }
        	        	    break;
        	        	case 3:
        	        	    // MySQL.g:1705:6: COMMA_SYMBOL INTEGER COMMA_SYMBOL INTEGER COMMA_SYMBOL INTEGER
        	        	    {
        	        	        COMMA_SYMBOL2010 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_function_call9988);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefunction_callEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COMMA_SYMBOL2010_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2010));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2010_tree);
        	        	        }

        	        	        INTEGER2011 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_function_call9990);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefunction_callEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        INTEGER2011_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER2011));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER2011_tree);
        	        	        }

        	        	        COMMA_SYMBOL2012 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_function_call9992);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefunction_callEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COMMA_SYMBOL2012_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2012));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2012_tree);
        	        	        }

        	        	        INTEGER2013 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_function_call9994);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefunction_callEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        INTEGER2013_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER2013));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER2013_tree);
        	        	        }

        	        	        COMMA_SYMBOL2014 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_function_call9996);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefunction_callEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COMMA_SYMBOL2014_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2014));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2014_tree);
        	        	        }

        	        	        INTEGER2015 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_function_call9998);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefunction_callEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        INTEGER2015_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER2015));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER2015_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        CLOSE_PAR_SYMBOL2016 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_function_call10006);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2016_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2016));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2016_tree);
        	        }

        	    }
        	    break;
        	case 51:
        	    // MySQL.g:1708:4: geometry_function
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_geometry_function_in_function_call10011);
        	        geometry_function2017=geometry_function(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, geometry_function2017.tree);

        	    }
        	    break;
        	case 52:
        	    // MySQL.g:1709:4: aggregate_function
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_aggregate_function_in_function_call10016);
        	        aggregate_function2018=aggregate_function(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_callEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, aggregate_function2018.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulefunction_callEx; /* Prevent compiler warnings */
    rulefunction_callEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end function_call */

/**
 * $ANTLR start time_function_parameters
 * MySQL.g:1712:1: time_function_parameters : OPEN_PAR_SYMBOL ( fractional_precision )? CLOSE_PAR_SYMBOL ;
 */
static MySQLParser_time_function_parameters_return
time_function_parameters(pMySQLParser ctx)
{
    MySQLParser_time_function_parameters_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2019;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2021;
    MySQLParser_fractional_precision_return fractional_precision2020;
    #undef	RETURN_TYPE_fractional_precision2020
    #define	RETURN_TYPE_fractional_precision2020 MySQLParser_fractional_precision_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2019_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2021_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL2019       = NULL;
    CLOSE_PAR_SYMBOL2021       = NULL;
    fractional_precision2020.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL2019_tree   = NULL;
    CLOSE_PAR_SYMBOL2021_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1712:25: ( OPEN_PAR_SYMBOL ( fractional_precision )? CLOSE_PAR_SYMBOL )
        // MySQL.g:1713:2: OPEN_PAR_SYMBOL ( fractional_precision )? CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPEN_PAR_SYMBOL2019 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_time_function_parameters10025);
            if  (HASEXCEPTION())
            {
                goto ruletime_function_parametersEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL2019_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2019));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2019_tree);
            }

            // MySQL.g:1713:18: ( fractional_precision )?
            {
                int alt545=2;
                {
                    int LA545_0 = LA(1);
                    if ( ((SERVER_VERSION >= 50604)) && (LA545_0 == INTEGER))
                    {
                        alt545=1;
                    }
                }
                switch (alt545)
                {
            	case 1:
            	    // MySQL.g:1713:18: fractional_precision
            	    {
            	        FOLLOWPUSH(FOLLOW_fractional_precision_in_time_function_parameters10027);
            	        fractional_precision2020=fractional_precision(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletime_function_parametersEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, fractional_precision2020.tree);

            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL2021 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_time_function_parameters10030);
            if  (HASEXCEPTION())
            {
                goto ruletime_function_parametersEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL2021_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2021));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2021_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruletime_function_parametersEx; /* Prevent compiler warnings */
    ruletime_function_parametersEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end time_function_parameters */

/**
 * $ANTLR start fractional_precision
 * MySQL.g:1716:1: fractional_precision :{...}? => INTEGER ;
 */
static MySQLParser_fractional_precision_return
fractional_precision(pMySQLParser ctx)
{
    MySQLParser_fractional_precision_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    INTEGER2022;

    pANTLR3_BASE_TREE INTEGER2022_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    INTEGER2022       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    INTEGER2022_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1716:21: ({...}? => INTEGER )
        // MySQL.g:1717:2: {...}? => INTEGER
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            if ( !((SERVER_VERSION >= 50604)) )
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
                    EXCEPTION->message      = (void *)"SERVER_VERSION >= 50604";
                    EXCEPTION->ruleName	 = (void *)"fractional_precision";


            }

            INTEGER2022 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_fractional_precision10043);
            if  (HASEXCEPTION())
            {
                goto rulefractional_precisionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            INTEGER2022_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER2022));
            ADAPTOR->addChild(ADAPTOR, root_0, INTEGER2022_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulefractional_precisionEx; /* Prevent compiler warnings */
    rulefractional_precisionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end fractional_precision */

/**
 * $ANTLR start weight_string_levels
 * MySQL.g:1720:1: weight_string_levels : LEVEL_SYMBOL ( INTEGER MINUS_OPERATOR INTEGER | weight_string_level_list_item ( COMMA_SYMBOL weight_string_level_list_item )* ) ;
 */
static MySQLParser_weight_string_levels_return
weight_string_levels(pMySQLParser ctx)
{
    MySQLParser_weight_string_levels_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    LEVEL_SYMBOL2023;
    pANTLR3_COMMON_TOKEN    INTEGER2024;
    pANTLR3_COMMON_TOKEN    MINUS_OPERATOR2025;
    pANTLR3_COMMON_TOKEN    INTEGER2026;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2028;
    MySQLParser_weight_string_level_list_item_return weight_string_level_list_item2027;
    #undef	RETURN_TYPE_weight_string_level_list_item2027
    #define	RETURN_TYPE_weight_string_level_list_item2027 MySQLParser_weight_string_level_list_item_return

    MySQLParser_weight_string_level_list_item_return weight_string_level_list_item2029;
    #undef	RETURN_TYPE_weight_string_level_list_item2029
    #define	RETURN_TYPE_weight_string_level_list_item2029 MySQLParser_weight_string_level_list_item_return

    pANTLR3_BASE_TREE LEVEL_SYMBOL2023_tree;
    pANTLR3_BASE_TREE INTEGER2024_tree;
    pANTLR3_BASE_TREE MINUS_OPERATOR2025_tree;
    pANTLR3_BASE_TREE INTEGER2026_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2028_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    LEVEL_SYMBOL2023       = NULL;
    INTEGER2024       = NULL;
    MINUS_OPERATOR2025       = NULL;
    INTEGER2026       = NULL;
    COMMA_SYMBOL2028       = NULL;
    weight_string_level_list_item2027.tree = NULL;

    weight_string_level_list_item2029.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    LEVEL_SYMBOL2023_tree   = NULL;
    INTEGER2024_tree   = NULL;
    MINUS_OPERATOR2025_tree   = NULL;
    INTEGER2026_tree   = NULL;
    COMMA_SYMBOL2028_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1720:21: ( LEVEL_SYMBOL ( INTEGER MINUS_OPERATOR INTEGER | weight_string_level_list_item ( COMMA_SYMBOL weight_string_level_list_item )* ) )
        // MySQL.g:1721:2: LEVEL_SYMBOL ( INTEGER MINUS_OPERATOR INTEGER | weight_string_level_list_item ( COMMA_SYMBOL weight_string_level_list_item )* )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            LEVEL_SYMBOL2023 = (pANTLR3_COMMON_TOKEN) MATCHT(LEVEL_SYMBOL, &FOLLOW_LEVEL_SYMBOL_in_weight_string_levels10052);
            if  (HASEXCEPTION())
            {
                goto ruleweight_string_levelsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            LEVEL_SYMBOL2023_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LEVEL_SYMBOL2023));
            ADAPTOR->addChild(ADAPTOR, root_0, LEVEL_SYMBOL2023_tree);
            }

            // MySQL.g:1722:3: ( INTEGER MINUS_OPERATOR INTEGER | weight_string_level_list_item ( COMMA_SYMBOL weight_string_level_list_item )* )
            {
                int alt547=2;
                switch ( LA(1) )
                {
                case INTEGER:
                	{
                		switch ( LA(2) )
                		{
                		case MINUS_OPERATOR:
                			{
                				alt547=1;
                			}
                		    break;
                		case ASC_SYMBOL:
                		case CLOSE_PAR_SYMBOL:
                		case COMMA_SYMBOL:
                		case DESC_SYMBOL:
                		case REVERSE_SYMBOL:
                			{
                				alt547=2;
                			}
                		    break;

                		default:
                		    if (BACKTRACKING>0)
                		    {
                		        FAILEDFLAG = ANTLR3_TRUE;
                		        return retval;
                		    }

                		    CONSTRUCTEX();
                		    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                		    EXCEPTION->message      = (void *)"";
                		    EXCEPTION->decisionNum  = 547;
                		    EXCEPTION->state        = 1;


                		    goto ruleweight_string_levelsEx;

                		}

                	}
                    break;

                default:
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 547;
                    EXCEPTION->state        = 0;


                    goto ruleweight_string_levelsEx;

                }

                switch (alt547)
                {
            	case 1:
            	    // MySQL.g:1723:4: INTEGER MINUS_OPERATOR INTEGER
            	    {
            	        INTEGER2024 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_weight_string_levels10061);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleweight_string_levelsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INTEGER2024_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER2024));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER2024_tree);
            	        }

            	        MINUS_OPERATOR2025 = (pANTLR3_COMMON_TOKEN) MATCHT(MINUS_OPERATOR, &FOLLOW_MINUS_OPERATOR_in_weight_string_levels10063);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleweight_string_levelsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        MINUS_OPERATOR2025_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MINUS_OPERATOR2025));
            	        ADAPTOR->addChild(ADAPTOR, root_0, MINUS_OPERATOR2025_tree);
            	        }

            	        INTEGER2026 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_weight_string_levels10065);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleweight_string_levelsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INTEGER2026_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER2026));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER2026_tree);
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1724:6: weight_string_level_list_item ( COMMA_SYMBOL weight_string_level_list_item )*
            	    {
            	        FOLLOWPUSH(FOLLOW_weight_string_level_list_item_in_weight_string_levels10072);
            	        weight_string_level_list_item2027=weight_string_level_list_item(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleweight_string_levelsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, weight_string_level_list_item2027.tree);

            	        // MySQL.g:1724:36: ( COMMA_SYMBOL weight_string_level_list_item )*

            	        for (;;)
            	        {
            	            int alt546=2;
            	            switch ( LA(1) )
            	            {
            	            case COMMA_SYMBOL:
            	            	{
            	            		alt546=1;
            	            	}
            	                break;

            	            }

            	            switch (alt546)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1724:37: COMMA_SYMBOL weight_string_level_list_item
            	        	    {
            	        	        COMMA_SYMBOL2028 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_weight_string_levels10075);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleweight_string_levelsEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COMMA_SYMBOL2028_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2028));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2028_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_weight_string_level_list_item_in_weight_string_levels10077);
            	        	        weight_string_level_list_item2029=weight_string_level_list_item(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleweight_string_levelsEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, weight_string_level_list_item2029.tree);

            	        	    }
            	        	    break;

            	        	default:
            	        	    goto loop546;	/* break out of the loop */
            	        	    break;
            	            }
            	        }
            	        loop546: ; /* Jump out to here if this rule does not match */


            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleweight_string_levelsEx; /* Prevent compiler warnings */
    ruleweight_string_levelsEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end weight_string_levels */

/**
 * $ANTLR start weight_string_level_list_item
 * MySQL.g:1728:1: weight_string_level_list_item : INTEGER ( ( ASC_SYMBOL | DESC_SYMBOL ) ( REVERSE_SYMBOL )? | REVERSE_SYMBOL )? ;
 */
static MySQLParser_weight_string_level_list_item_return
weight_string_level_list_item(pMySQLParser ctx)
{
    MySQLParser_weight_string_level_list_item_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    INTEGER2030;
    pANTLR3_COMMON_TOKEN    set2031;
    pANTLR3_COMMON_TOKEN    REVERSE_SYMBOL2032;
    pANTLR3_COMMON_TOKEN    REVERSE_SYMBOL2033;

    pANTLR3_BASE_TREE INTEGER2030_tree;
    pANTLR3_BASE_TREE set2031_tree;
    pANTLR3_BASE_TREE REVERSE_SYMBOL2032_tree;
    pANTLR3_BASE_TREE REVERSE_SYMBOL2033_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    INTEGER2030       = NULL;
    set2031       = NULL;
    REVERSE_SYMBOL2032       = NULL;
    REVERSE_SYMBOL2033       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    INTEGER2030_tree   = NULL;
    set2031_tree   = NULL;
    REVERSE_SYMBOL2032_tree   = NULL;
    REVERSE_SYMBOL2033_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1728:30: ( INTEGER ( ( ASC_SYMBOL | DESC_SYMBOL ) ( REVERSE_SYMBOL )? | REVERSE_SYMBOL )? )
        // MySQL.g:1729:2: INTEGER ( ( ASC_SYMBOL | DESC_SYMBOL ) ( REVERSE_SYMBOL )? | REVERSE_SYMBOL )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            INTEGER2030 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_weight_string_level_list_item10092);
            if  (HASEXCEPTION())
            {
                goto ruleweight_string_level_list_itemEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            INTEGER2030_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER2030));
            ADAPTOR->addChild(ADAPTOR, root_0, INTEGER2030_tree);
            }

            // MySQL.g:1730:3: ( ( ASC_SYMBOL | DESC_SYMBOL ) ( REVERSE_SYMBOL )? | REVERSE_SYMBOL )?
            {
                int alt549=3;
                switch ( LA(1) )
                {
                    case ASC_SYMBOL:
                    case DESC_SYMBOL:
                    	{
                    		alt549=1;
                    	}
                        break;
                    case REVERSE_SYMBOL:
                    	{
                    		alt549=2;
                    	}
                        break;
                }

                switch (alt549)
                {
            	case 1:
            	    // MySQL.g:1731:4: ( ASC_SYMBOL | DESC_SYMBOL ) ( REVERSE_SYMBOL )?
            	    {
            	        set2031=(pANTLR3_COMMON_TOKEN)LT(1);

            	        if ( LA(1) == ASC_SYMBOL || LA(1) == DESC_SYMBOL )
            	        {
            	            CONSUME();
            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2031))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	            CONSTRUCTEX();
            	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	            EXCEPTION->expectingSet = NULL;

            	            goto ruleweight_string_level_list_itemEx;
            	        }


            	        // MySQL.g:1731:31: ( REVERSE_SYMBOL )?
            	        {
            	            int alt548=2;
            	            switch ( LA(1) )
            	            {
            	                case REVERSE_SYMBOL:
            	                	{
            	                		alt548=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt548)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1731:31: REVERSE_SYMBOL
            	        	    {
            	        	        REVERSE_SYMBOL2032 = (pANTLR3_COMMON_TOKEN) MATCHT(REVERSE_SYMBOL, &FOLLOW_REVERSE_SYMBOL_in_weight_string_level_list_item10109);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleweight_string_level_list_itemEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        REVERSE_SYMBOL2032_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REVERSE_SYMBOL2032));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, REVERSE_SYMBOL2032_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1732:6: REVERSE_SYMBOL
            	    {
            	        REVERSE_SYMBOL2033 = (pANTLR3_COMMON_TOKEN) MATCHT(REVERSE_SYMBOL, &FOLLOW_REVERSE_SYMBOL_in_weight_string_level_list_item10117);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleweight_string_level_list_itemEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        REVERSE_SYMBOL2033_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REVERSE_SYMBOL2033));
            	        ADAPTOR->addChild(ADAPTOR, root_0, REVERSE_SYMBOL2033_tree);
            	        }

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleweight_string_level_list_itemEx; /* Prevent compiler warnings */
    ruleweight_string_level_list_itemEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end weight_string_level_list_item */

/**
 * $ANTLR start generic_function_call
 * MySQL.g:1736:1: generic_function_call : qualified_identifier OPEN_PAR_SYMBOL ( expression_list )? CLOSE_PAR_SYMBOL -> ^( FUNCTION_CALL qualified_identifier OPEN_PAR_SYMBOL ( expression_list )? CLOSE_PAR_SYMBOL ) ;
 */
static MySQLParser_generic_function_call_return
generic_function_call(pMySQLParser ctx)
{
    MySQLParser_generic_function_call_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2035;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2037;
    MySQLParser_qualified_identifier_return qualified_identifier2034;
    #undef	RETURN_TYPE_qualified_identifier2034
    #define	RETURN_TYPE_qualified_identifier2034 MySQLParser_qualified_identifier_return

    MySQLParser_expression_list_return expression_list2036;
    #undef	RETURN_TYPE_expression_list2036
    #define	RETURN_TYPE_expression_list2036 MySQLParser_expression_list_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2035_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2037_tree;
    pANTLR3_REWRITE_RULE_TOKEN_STREAM stream_CLOSE_PAR_SYMBOL;
    pANTLR3_REWRITE_RULE_TOKEN_STREAM stream_OPEN_PAR_SYMBOL;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_expression_list;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_qualified_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL2035       = NULL;
    CLOSE_PAR_SYMBOL2037       = NULL;
    qualified_identifier2034.tree = NULL;

    expression_list2036.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL2035_tree   = NULL;
    CLOSE_PAR_SYMBOL2037_tree   = NULL;

    stream_CLOSE_PAR_SYMBOL   = NULL;
    #define CREATE_stream_CLOSE_PAR_SYMBOL  if (stream_CLOSE_PAR_SYMBOL == NULL) {stream_CLOSE_PAR_SYMBOL = antlr3RewriteRuleTOKENStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"token CLOSE_PAR_SYMBOL"); } 
    stream_OPEN_PAR_SYMBOL   = NULL;
    #define CREATE_stream_OPEN_PAR_SYMBOL  if (stream_OPEN_PAR_SYMBOL == NULL) {stream_OPEN_PAR_SYMBOL = antlr3RewriteRuleTOKENStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"token OPEN_PAR_SYMBOL"); } 
    stream_expression_list   = NULL;
    #define CREATE_stream_expression_list  if (stream_expression_list == NULL) {stream_expression_list = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule expression_list"); }
    stream_qualified_identifier   = NULL;
    #define CREATE_stream_qualified_identifier  if (stream_qualified_identifier == NULL) {stream_qualified_identifier = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule qualified_identifier"); }

    retval.tree  = NULL;

    {
        // MySQL.g:1736:22: ( qualified_identifier OPEN_PAR_SYMBOL ( expression_list )? CLOSE_PAR_SYMBOL -> ^( FUNCTION_CALL qualified_identifier OPEN_PAR_SYMBOL ( expression_list )? CLOSE_PAR_SYMBOL ) )
        // MySQL.g:1737:2: qualified_identifier OPEN_PAR_SYMBOL ( expression_list )? CLOSE_PAR_SYMBOL
        {
            FOLLOWPUSH(FOLLOW_qualified_identifier_in_generic_function_call10131);
            qualified_identifier2034=qualified_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulegeneric_function_callEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_qualified_identifier; stream_qualified_identifier->add(stream_qualified_identifier, qualified_identifier2034.tree, NULL); }

            OPEN_PAR_SYMBOL2035 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_generic_function_call10133);
            if  (HASEXCEPTION())
            {
                goto rulegeneric_function_callEx;
            }
            if (HASFAILED())
            {
                return retval;
            }
             
            if ( BACKTRACKING==0 ) { CREATE_stream_OPEN_PAR_SYMBOL; stream_OPEN_PAR_SYMBOL->add(stream_OPEN_PAR_SYMBOL, OPEN_PAR_SYMBOL2035, NULL); }


            // MySQL.g:1737:39: ( expression_list )?
            {
                int alt550=2;
                {
                    int LA550_0 = LA(1);
                    if ( (LA550_0 == BITWISE_NOT_OPERATOR || LA550_0 == DATE_SYMBOL || LA550_0 == INTERVAL_SYMBOL || LA550_0 == LOGICAL_NOT_OPERATOR || LA550_0 == MINUS_OPERATOR || LA550_0 == NCHAR_TEXT || LA550_0 == NOT2_SYMBOL || LA550_0 == NOT_SYMBOL || LA550_0 == PLUS_OPERATOR || LA550_0 == SINGLE_QUOTED_TEXT || ((LA550_0 >= TIMESTAMP_SYMBOL) && (LA550_0 <= TIME_SYMBOL)) || LA550_0 == UNDERSCORE_CHARSET))
                    {
                        alt550=1;
                    }
                    else if ( ((((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)))||((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))) && (LA550_0 == DOUBLE_QUOTED_TEXT))
                    {
                        alt550=1;
                    }
                    else if ( (LA550_0 == FALSE_SYMBOL || LA550_0 == FLOAT || ((LA550_0 >= HEXNUMBER) && (LA550_0 <= HEXSTRING)) || LA550_0 == INTEGER || LA550_0 == TRUE_SYMBOL))
                    {
                        alt550=1;
                    }
                    else if ( ((SERVER_VERSION >= 50003)) && (((LA550_0 >= BITNUMBER) && (LA550_0 <= BITSTRING))))
                    {
                        alt550=1;
                    }
                    else if ( (((LA550_0 >= ACTION_SYMBOL) && (LA550_0 <= ADDDATE_SYMBOL)) || ((LA550_0 >= AFTER_SYMBOL) && (LA550_0 <= ALGORITHM_SYMBOL)) || LA550_0 == ANALYZE_SYMBOL || ((LA550_0 >= ANY_SYMBOL) && (LA550_0 <= ASCII_SYMBOL)) || ((LA550_0 >= AT_AT_SIGN_SYMBOL) && (LA550_0 <= BACKUP_SYMBOL)) || LA550_0 == BACK_TICK_QUOTED_ID || LA550_0 == BEGIN_SYMBOL || ((LA550_0 >= BINARY_SYMBOL) && (LA550_0 <= BINLOG_SYMBOL)) || ((LA550_0 >= BIT_AND_SYMBOL) && (LA550_0 <= BIT_XOR_SYMBOL)) || ((LA550_0 >= BLOCK_SYMBOL) && (LA550_0 <= BOOL_SYMBOL)) || ((LA550_0 >= BTREE_SYMBOL) && (LA550_0 <= BYTE_SYMBOL)) || LA550_0 == CACHE_SYMBOL || LA550_0 == CASCADED_SYMBOL || ((LA550_0 >= CASE_SYMBOL) && (LA550_0 <= CHANGED_SYMBOL)) || ((LA550_0 >= CHARSET_SYMBOL) && (LA550_0 <= CHECKSUM_SYMBOL)) || ((LA550_0 >= CIPHER_SYMBOL) && (LA550_0 <= CLIENT_SYMBOL)) || ((LA550_0 >= CLOSE_SYMBOL) && (LA550_0 <= CODE_SYMBOL)) || LA550_0 == COLLATION_SYMBOL || ((LA550_0 >= COLUMNS_SYMBOL) && (LA550_0 <= COLUMN_NAME_SYMBOL)) || ((LA550_0 >= COMMENT_SYMBOL) && (LA550_0 <= COMPRESSED_SYMBOL)) || LA550_0 == CONCURRENT_SYMBOL || ((LA550_0 >= CONNECTION_SYMBOL) && (LA550_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA550_0 >= CONTAINS_SYMBOL) && (LA550_0 <= CONTEXT_SYMBOL)) || ((LA550_0 >= CONTRIBUTORS_SYMBOL) && (LA550_0 <= CPU_SYMBOL)) || ((LA550_0 >= CUBE_SYMBOL) && (LA550_0 <= CURRENT_SYMBOL)) || ((LA550_0 >= CURRENT_USER_SYMBOL) && (LA550_0 <= CURSOR_NAME_SYMBOL)) || LA550_0 == CURTIME_SYMBOL || ((LA550_0 >= DATABASE_SYMBOL) && (LA550_0 <= DATETIME_SYMBOL)) || LA550_0 == DATE_ADD_SYMBOL || LA550_0 == DATE_SUB_SYMBOL || ((LA550_0 >= DAY_SYMBOL) && (LA550_0 <= DEALLOCATE_SYMBOL)) || LA550_0 == DEFAULT_AUTH_SYMBOL || LA550_0 == DEFINER_SYMBOL || LA550_0 == DELAY_KEY_WRITE_SYMBOL || LA550_0 == DES_KEY_FILE_SYMBOL || LA550_0 == DIAGNOSTICS_SYMBOL || ((LA550_0 >= DIRECTORY_SYMBOL) && (LA550_0 <= DISK_SYMBOL)) || LA550_0 == DOT_SYMBOL || LA550_0 == DO_SYMBOL || ((LA550_0 >= DUMPFILE_SYMBOL) && (LA550_0 <= DYNAMIC_SYMBOL)) || LA550_0 == ENABLE_SYMBOL || LA550_0 == ENDS_SYMBOL || ((LA550_0 >= END_SYMBOL) && (LA550_0 <= ENUM_SYMBOL)) || ((LA550_0 >= ERRORS_SYMBOL) && (LA550_0 <= ERROR_SYMBOL)) || ((LA550_0 >= ESCAPE_SYMBOL) && (LA550_0 <= EVERY_SYMBOL)) || ((LA550_0 >= EXECUTE_SYMBOL) && (LA550_0 <= EXISTS_SYMBOL)) || LA550_0 == EXPANSION_SYMBOL || LA550_0 == EXPORT_SYMBOL || ((LA550_0 >= EXTENDED_SYMBOL) && (LA550_0 <= EXTRACT_SYMBOL)) || ((LA550_0 >= FAST_SYMBOL) && (LA550_0 <= FAULTS_SYMBOL)) || ((LA550_0 >= FILE_SYMBOL) && (LA550_0 <= FIXED_SYMBOL)) || LA550_0 == FLUSH_SYMBOL || LA550_0 == FORMAT_SYMBOL || LA550_0 == FOUND_SYMBOL || LA550_0 == FULL_SYMBOL || ((LA550_0 >= FUNCTION_SYMBOL) && (LA550_0 <= GET_FORMAT_SYMBOL)) || ((LA550_0 >= GLOBAL_SYMBOL) && (LA550_0 <= GRANTS_SYMBOL)) || LA550_0 == GROUP_CONCAT_SYMBOL || ((LA550_0 >= HANDLER_SYMBOL) && (LA550_0 <= HASH_SYMBOL)) || LA550_0 == HELP_SYMBOL || ((LA550_0 >= HOSTS_SYMBOL) && (LA550_0 <= HOST_SYMBOL)) || ((LA550_0 >= HOUR_SYMBOL) && (LA550_0 <= IGNORE_SERVER_IDS_SYMBOL)) || ((LA550_0 >= IMPORT_SYMBOL) && (LA550_0 <= INDEXES_SYMBOL)) || LA550_0 == INITIAL_SIZE_SYMBOL || LA550_0 == INNODB_SYMBOL || ((LA550_0 >= INSERT_METHOD_SYMBOL) && (LA550_0 <= INSTALL_SYMBOL)) || LA550_0 == INVOKER_SYMBOL || LA550_0 == IO_SYMBOL || ((LA550_0 >= IPC_SYMBOL) && (LA550_0 <= ISSUER_SYMBOL)) || LA550_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA550_0 >= LANGUAGE_SYMBOL) && (LA550_0 <= LAST_SYMBOL)) || LA550_0 == LEAVES_SYMBOL || LA550_0 == LEFT_SYMBOL || LA550_0 == LESS_SYMBOL || LA550_0 == LEVEL_SYMBOL || LA550_0 == LINESTRING_SYMBOL || LA550_0 == LIST_SYMBOL || LA550_0 == LOCAL_SYMBOL || LA550_0 == LOCKS_SYMBOL || LA550_0 == LOGFILE_SYMBOL || LA550_0 == LOGS_SYMBOL || LA550_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA550_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA550_0 <= MASTER_SSL_SYMBOL)) || ((LA550_0 >= MASTER_SYMBOL) && (LA550_0 <= MATCH_SYMBOL)) || ((LA550_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA550_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA550_0 >= MEDIUM_SYMBOL) && (LA550_0 <= MICROSECOND_SYMBOL)) || LA550_0 == MIGRATE_SYMBOL || ((LA550_0 >= MINUTE_SYMBOL) && (LA550_0 <= MIN_SYMBOL)) || LA550_0 == MODE_SYMBOL || LA550_0 == MODIFY_SYMBOL || ((LA550_0 >= MOD_SYMBOL) && (LA550_0 <= MULTILINESTRING_SYMBOL)) || ((LA550_0 >= MULTIPOINT_SYMBOL) && (LA550_0 <= MULTIPOLYGON_SYMBOL)) || ((LA550_0 >= MUTEX_SYMBOL) && (LA550_0 <= NATIONAL_SYMBOL)) || LA550_0 == NCHAR_SYMBOL || LA550_0 == NDBCLUSTER_SYMBOL || ((LA550_0 >= NEW_SYMBOL) && (LA550_0 <= NONE_SYMBOL)) || ((LA550_0 >= NOW_SYMBOL) && (LA550_0 <= NO_WAIT_SYMBOL)) || LA550_0 == NULL2_SYMBOL || ((LA550_0 >= NULL_SYMBOL) && (LA550_0 <= NUMBER_SYMBOL)) || LA550_0 == NVARCHAR_SYMBOL || ((LA550_0 >= OFFSET_SYMBOL) && (LA550_0 <= ONE_SYMBOL)) || ((LA550_0 >= OPEN_PAR_SYMBOL) && (LA550_0 <= OPEN_SYMBOL)) || LA550_0 == OPTIONS_SYMBOL || ((LA550_0 >= OWNER_SYMBOL) && (LA550_0 <= PARAM_MARKER)) || ((LA550_0 >= PARSER_SYMBOL) && (LA550_0 <= PARTITION_SYMBOL)) || ((LA550_0 >= PASSWORD_SYMBOL) && (LA550_0 <= PLUGIN_SYMBOL)) || ((LA550_0 >= POINT_SYMBOL) && (LA550_0 <= POSITION_SYMBOL)) || ((LA550_0 >= PREPARE_SYMBOL) && (LA550_0 <= PREV_SYMBOL)) || LA550_0 == PRIVILEGES_SYMBOL || ((LA550_0 >= PROCESSLIST_SYMBOL) && (LA550_0 <= PROXY_SYMBOL)) || ((LA550_0 >= QUARTER_SYMBOL) && (LA550_0 <= QUICK_SYMBOL)) || LA550_0 == READ_ONLY_SYMBOL || ((LA550_0 >= REBUILD_SYMBOL) && (LA550_0 <= REDUNDANT_SYMBOL)) || ((LA550_0 >= RELAYLOG_SYMBOL) && (LA550_0 <= RELAY_THREAD_SYMBOL)) || ((LA550_0 >= RELOAD_SYMBOL) && (LA550_0 <= REMOVE_SYMBOL)) || ((LA550_0 >= REORGANIZE_SYMBOL) && (LA550_0 <= REPLICATION_SYMBOL)) || LA550_0 == RESET_SYMBOL || LA550_0 == RESTORE_SYMBOL || ((LA550_0 >= RESUME_SYMBOL) && (LA550_0 <= RETURNS_SYMBOL)) || LA550_0 == REVERSE_SYMBOL || LA550_0 == RIGHT_SYMBOL || ((LA550_0 >= ROLLBACK_SYMBOL) && (LA550_0 <= SCHEDULE_SYMBOL)) || LA550_0 == SCHEMA_NAME_SYMBOL || ((LA550_0 >= SECOND_SYMBOL) && (LA550_0 <= SECURITY_SYMBOL)) || ((LA550_0 >= SERIALIZABLE_SYMBOL) && (LA550_0 <= SERIAL_SYMBOL)) || ((LA550_0 >= SERVER_SYMBOL) && (LA550_0 <= SESSION_SYMBOL)) || LA550_0 == SHARE_SYMBOL || LA550_0 == SHUTDOWN_SYMBOL || ((LA550_0 >= SIGNED_SYMBOL) && (LA550_0 <= SIMPLE_SYMBOL)) || ((LA550_0 >= SLAVE_SYMBOL) && (LA550_0 <= SLOW_SYMBOL)) || ((LA550_0 >= SNAPSHOT_SYMBOL) && (LA550_0 <= SOURCE_SYMBOL)) || ((LA550_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA550_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA550_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA550_0 <= SQL_CACHE_SYMBOL)) || LA550_0 == SQL_NO_CACHE_SYMBOL || LA550_0 == SQL_THREAD_SYMBOL || ((LA550_0 >= STARTS_SYMBOL) && (LA550_0 <= STATUS_SYMBOL)) || LA550_0 == STDDEV_SAMP_SYMBOL || ((LA550_0 >= STD_SYMBOL) && (LA550_0 <= STORAGE_SYMBOL)) || ((LA550_0 >= STRING_SYMBOL) && (LA550_0 <= SUBPARTITION_SYMBOL)) || LA550_0 == SUBSTRING_SYMBOL || ((LA550_0 >= SUM_SYMBOL) && (LA550_0 <= SYSDATE_SYMBOL)) || ((LA550_0 >= TABLESPACE_SYMBOL) && (LA550_0 <= TABLE_NAME_SYMBOL)) || ((LA550_0 >= TEMPORARY_SYMBOL) && (LA550_0 <= TEMPTABLE_SYMBOL)) || ((LA550_0 >= TEXT_SYMBOL) && (LA550_0 <= THAN_SYMBOL)) || ((LA550_0 >= TIMESTAMP_ADD_SYMBOL) && (LA550_0 <= TIMESTAMP_DIFF_SYMBOL)) || ((LA550_0 >= TRANSACTION_SYMBOL) && (LA550_0 <= TRIGGERS_SYMBOL)) || LA550_0 == TRIM_SYMBOL || ((LA550_0 >= TRUNCATE_SYMBOL) && (LA550_0 <= UDF_RETURNS_SYMBOL)) || ((LA550_0 >= UNCOMMITTED_SYMBOL) && (LA550_0 <= UNDEFINED_SYMBOL)) || ((LA550_0 >= UNDOFILE_SYMBOL) && (LA550_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA550_0 >= UNICODE_SYMBOL) && (LA550_0 <= UNINSTALL_SYMBOL)) || LA550_0 == UNKNOWN_SYMBOL || LA550_0 == UNTIL_SYMBOL || LA550_0 == UPGRADE_SYMBOL || ((LA550_0 >= USER_RESOURCES_SYMBOL) && (LA550_0 <= USE_FRM_SYMBOL)) || ((LA550_0 >= UTC_DATE_SYMBOL) && (LA550_0 <= VALUE_SYMBOL)) || ((LA550_0 >= VARIABLES_SYMBOL) && (LA550_0 <= VARIANCE_SYMBOL)) || LA550_0 == VAR_SAMP_SYMBOL || ((LA550_0 >= VIEW_SYMBOL) && (LA550_0 <= WEIGHT_STRING_SYMBOL)) || ((LA550_0 >= WORK_SYMBOL) && (LA550_0 <= WRAPPER_SYMBOL)) || LA550_0 == X509_SYMBOL || ((LA550_0 >= XA_SYMBOL) && (LA550_0 <= XML_SYMBOL)) || LA550_0 == YEAR_SYMBOL || LA550_0 == 732))
                    {
                        alt550=1;
                    }
                }
                switch (alt550)
                {
            	case 1:
            	    // MySQL.g:1737:39: expression_list
            	    {
            	        FOLLOWPUSH(FOLLOW_expression_list_in_generic_function_call10135);
            	        expression_list2036=expression_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulegeneric_function_callEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) { CREATE_stream_expression_list; stream_expression_list->add(stream_expression_list, expression_list2036.tree, NULL); }

            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL2037 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_generic_function_call10138);
            if  (HASEXCEPTION())
            {
                goto rulegeneric_function_callEx;
            }
            if (HASFAILED())
            {
                return retval;
            }
             
            if ( BACKTRACKING==0 ) { CREATE_stream_CLOSE_PAR_SYMBOL; stream_CLOSE_PAR_SYMBOL->add(stream_CLOSE_PAR_SYMBOL, CLOSE_PAR_SYMBOL2037, NULL); }


            /* AST REWRITE
             * elements          : qualified_identifier, CLOSE_PAR_SYMBOL, expression_list, OPEN_PAR_SYMBOL
             * token labels      : 
             * rule labels       : retval
             * token list labels : 
             * rule list labels  : 
             */
            if ( BACKTRACKING==0 ) 

            {
            	pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_retval;

            	stream_retval=antlr3RewriteRuleSubtreeStreamNewAEE(ADAPTOR,  RECOGNIZER, (pANTLR3_UINT8)"token retval", retval.tree != NULL ? retval.tree : NULL);

            	root_0			    = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
            	retval.tree    = root_0;
            	// 1738:4: -> ^( FUNCTION_CALL qualified_identifier OPEN_PAR_SYMBOL ( expression_list )? CLOSE_PAR_SYMBOL )
            	{
            	    // MySQL.g:1738:7: ^( FUNCTION_CALL qualified_identifier OPEN_PAR_SYMBOL ( expression_list )? CLOSE_PAR_SYMBOL )
            	    {
            	        pANTLR3_BASE_TREE root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
            	        root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, 
            	        (pANTLR3_BASE_TREE)ADAPTOR->createTypeText(ADAPTOR, FUNCTION_CALL, (pANTLR3_UINT8)"FUNCTION_CALL")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_qualified_identifier == NULL ? NULL : stream_qualified_identifier->nextTree(stream_qualified_identifier));

            	        ADAPTOR->addChild(ADAPTOR, root_1, 
            	        stream_OPEN_PAR_SYMBOL == NULL ? NULL : stream_OPEN_PAR_SYMBOL->nextNode(stream_OPEN_PAR_SYMBOL)
            	        );

            	        // MySQL.g:1738:60: ( expression_list )?
            	        {
            	        	if ( (stream_expression_list != NULL && stream_expression_list->hasNext(stream_expression_list))  )
            	        	{
            	        		ADAPTOR->addChild(ADAPTOR, root_1, stream_expression_list == NULL ? NULL : stream_expression_list->nextTree(stream_expression_list));

            	        	}
            	        	if ( stream_expression_list != NULL) stream_expression_list->reset(stream_expression_list);

            	        }

            	        ADAPTOR->addChild(ADAPTOR, root_1, 
            	        stream_CLOSE_PAR_SYMBOL == NULL ? NULL : stream_CLOSE_PAR_SYMBOL->nextNode(stream_CLOSE_PAR_SYMBOL)
            	        );

            	        ADAPTOR->addChild(ADAPTOR, root_0, root_1);
            	    }

            	}


            	retval.tree = root_0; // set result root
            	if (stream_retval != NULL) stream_retval->free(stream_retval);


            }
        }

    }

    // This is where rules clean up and exit
    //
    goto rulegeneric_function_callEx; /* Prevent compiler warnings */
    rulegeneric_function_callEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
        if (stream_CLOSE_PAR_SYMBOL != NULL) stream_CLOSE_PAR_SYMBOL->free(stream_CLOSE_PAR_SYMBOL);
        if (stream_OPEN_PAR_SYMBOL != NULL) stream_OPEN_PAR_SYMBOL->free(stream_OPEN_PAR_SYMBOL);
        if (stream_expression_list != NULL) stream_expression_list->free(stream_expression_list);
        if (stream_qualified_identifier != NULL) stream_qualified_identifier->free(stream_qualified_identifier);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end generic_function_call */

/**
 * $ANTLR start date_time_type
 * MySQL.g:1741:1: date_time_type : ( DATE_SYMBOL | TIME_SYMBOL | DATETIME_SYMBOL | TIMESTAMP_SYMBOL );
 */
static MySQLParser_date_time_type_return
date_time_type(pMySQLParser ctx)
{
    MySQLParser_date_time_type_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set2038;

    pANTLR3_BASE_TREE set2038_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2038       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2038_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1741:15: ( DATE_SYMBOL | TIME_SYMBOL | DATETIME_SYMBOL | TIMESTAMP_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set2038=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == DATETIME_SYMBOL || LA(1) == DATE_SYMBOL || ((LA(1) >= TIMESTAMP_SYMBOL) && (LA(1) <= TIME_SYMBOL)) )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2038))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto ruledate_time_typeEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto ruledate_time_typeEx; /* Prevent compiler warnings */
    ruledate_time_typeEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end date_time_type */

/**
 * $ANTLR start trim_function
 * MySQL.g:1748:1: trim_function : TRIM_SYMBOL OPEN_PAR_SYMBOL ( expression ( FROM_SYMBOL expression )? | LEADING_SYMBOL ( expression )? FROM_SYMBOL expression | TRAILING_SYMBOL ( expression )? FROM_SYMBOL expression | BOTH_SYMBOL ( expression )? FROM_SYMBOL expression ) CLOSE_PAR_SYMBOL ;
 */
static MySQLParser_trim_function_return
trim_function(pMySQLParser ctx)
{
    MySQLParser_trim_function_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    TRIM_SYMBOL2039;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2040;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL2042;
    pANTLR3_COMMON_TOKEN    LEADING_SYMBOL2044;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL2046;
    pANTLR3_COMMON_TOKEN    TRAILING_SYMBOL2048;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL2050;
    pANTLR3_COMMON_TOKEN    BOTH_SYMBOL2052;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL2054;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2056;
    MySQLParser_expression_return expression2041;
    #undef	RETURN_TYPE_expression2041
    #define	RETURN_TYPE_expression2041 MySQLParser_expression_return

    MySQLParser_expression_return expression2043;
    #undef	RETURN_TYPE_expression2043
    #define	RETURN_TYPE_expression2043 MySQLParser_expression_return

    MySQLParser_expression_return expression2045;
    #undef	RETURN_TYPE_expression2045
    #define	RETURN_TYPE_expression2045 MySQLParser_expression_return

    MySQLParser_expression_return expression2047;
    #undef	RETURN_TYPE_expression2047
    #define	RETURN_TYPE_expression2047 MySQLParser_expression_return

    MySQLParser_expression_return expression2049;
    #undef	RETURN_TYPE_expression2049
    #define	RETURN_TYPE_expression2049 MySQLParser_expression_return

    MySQLParser_expression_return expression2051;
    #undef	RETURN_TYPE_expression2051
    #define	RETURN_TYPE_expression2051 MySQLParser_expression_return

    MySQLParser_expression_return expression2053;
    #undef	RETURN_TYPE_expression2053
    #define	RETURN_TYPE_expression2053 MySQLParser_expression_return

    MySQLParser_expression_return expression2055;
    #undef	RETURN_TYPE_expression2055
    #define	RETURN_TYPE_expression2055 MySQLParser_expression_return

    pANTLR3_BASE_TREE TRIM_SYMBOL2039_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2040_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL2042_tree;
    pANTLR3_BASE_TREE LEADING_SYMBOL2044_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL2046_tree;
    pANTLR3_BASE_TREE TRAILING_SYMBOL2048_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL2050_tree;
    pANTLR3_BASE_TREE BOTH_SYMBOL2052_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL2054_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2056_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    TRIM_SYMBOL2039       = NULL;
    OPEN_PAR_SYMBOL2040       = NULL;
    FROM_SYMBOL2042       = NULL;
    LEADING_SYMBOL2044       = NULL;
    FROM_SYMBOL2046       = NULL;
    TRAILING_SYMBOL2048       = NULL;
    FROM_SYMBOL2050       = NULL;
    BOTH_SYMBOL2052       = NULL;
    FROM_SYMBOL2054       = NULL;
    CLOSE_PAR_SYMBOL2056       = NULL;
    expression2041.tree = NULL;

    expression2043.tree = NULL;

    expression2045.tree = NULL;

    expression2047.tree = NULL;

    expression2049.tree = NULL;

    expression2051.tree = NULL;

    expression2053.tree = NULL;

    expression2055.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    TRIM_SYMBOL2039_tree   = NULL;
    OPEN_PAR_SYMBOL2040_tree   = NULL;
    FROM_SYMBOL2042_tree   = NULL;
    LEADING_SYMBOL2044_tree   = NULL;
    FROM_SYMBOL2046_tree   = NULL;
    TRAILING_SYMBOL2048_tree   = NULL;
    FROM_SYMBOL2050_tree   = NULL;
    BOTH_SYMBOL2052_tree   = NULL;
    FROM_SYMBOL2054_tree   = NULL;
    CLOSE_PAR_SYMBOL2056_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1748:14: ( TRIM_SYMBOL OPEN_PAR_SYMBOL ( expression ( FROM_SYMBOL expression )? | LEADING_SYMBOL ( expression )? FROM_SYMBOL expression | TRAILING_SYMBOL ( expression )? FROM_SYMBOL expression | BOTH_SYMBOL ( expression )? FROM_SYMBOL expression ) CLOSE_PAR_SYMBOL )
        // MySQL.g:1749:2: TRIM_SYMBOL OPEN_PAR_SYMBOL ( expression ( FROM_SYMBOL expression )? | LEADING_SYMBOL ( expression )? FROM_SYMBOL expression | TRAILING_SYMBOL ( expression )? FROM_SYMBOL expression | BOTH_SYMBOL ( expression )? FROM_SYMBOL expression ) CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            TRIM_SYMBOL2039 = (pANTLR3_COMMON_TOKEN) MATCHT(TRIM_SYMBOL, &FOLLOW_TRIM_SYMBOL_in_trim_function10189);
            if  (HASEXCEPTION())
            {
                goto ruletrim_functionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            TRIM_SYMBOL2039_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TRIM_SYMBOL2039));
            ADAPTOR->addChild(ADAPTOR, root_0, TRIM_SYMBOL2039_tree);
            }

            OPEN_PAR_SYMBOL2040 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_trim_function10191);
            if  (HASEXCEPTION())
            {
                goto ruletrim_functionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL2040_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2040));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2040_tree);
            }

            // MySQL.g:1750:2: ( expression ( FROM_SYMBOL expression )? | LEADING_SYMBOL ( expression )? FROM_SYMBOL expression | TRAILING_SYMBOL ( expression )? FROM_SYMBOL expression | BOTH_SYMBOL ( expression )? FROM_SYMBOL expression )
            {
                int alt555=4;
                {
                    int LA555_0 = LA(1);
                    if ( (LA555_0 == BITWISE_NOT_OPERATOR || LA555_0 == DATE_SYMBOL || LA555_0 == INTERVAL_SYMBOL || LA555_0 == LOGICAL_NOT_OPERATOR || LA555_0 == MINUS_OPERATOR || LA555_0 == NCHAR_TEXT || LA555_0 == NOT2_SYMBOL || LA555_0 == NOT_SYMBOL || LA555_0 == PLUS_OPERATOR || LA555_0 == SINGLE_QUOTED_TEXT || ((LA555_0 >= TIMESTAMP_SYMBOL) && (LA555_0 <= TIME_SYMBOL)) || LA555_0 == UNDERSCORE_CHARSET))
                    {
                        alt555=1;
                    }
                    else if ( ((((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)))||((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))) && (LA555_0 == DOUBLE_QUOTED_TEXT))
                    {
                        alt555=1;
                    }
                    else if ( (LA555_0 == FALSE_SYMBOL || LA555_0 == FLOAT || ((LA555_0 >= HEXNUMBER) && (LA555_0 <= HEXSTRING)) || LA555_0 == INTEGER || LA555_0 == TRUE_SYMBOL))
                    {
                        alt555=1;
                    }
                    else if ( ((SERVER_VERSION >= 50003)) && (((LA555_0 >= BITNUMBER) && (LA555_0 <= BITSTRING))))
                    {
                        alt555=1;
                    }
                    else if ( (((LA555_0 >= ACTION_SYMBOL) && (LA555_0 <= ADDDATE_SYMBOL)) || ((LA555_0 >= AFTER_SYMBOL) && (LA555_0 <= ALGORITHM_SYMBOL)) || LA555_0 == ANALYZE_SYMBOL || ((LA555_0 >= ANY_SYMBOL) && (LA555_0 <= ASCII_SYMBOL)) || ((LA555_0 >= AT_AT_SIGN_SYMBOL) && (LA555_0 <= BACKUP_SYMBOL)) || LA555_0 == BACK_TICK_QUOTED_ID || LA555_0 == BEGIN_SYMBOL || ((LA555_0 >= BINARY_SYMBOL) && (LA555_0 <= BINLOG_SYMBOL)) || ((LA555_0 >= BIT_AND_SYMBOL) && (LA555_0 <= BIT_XOR_SYMBOL)) || ((LA555_0 >= BLOCK_SYMBOL) && (LA555_0 <= BOOL_SYMBOL)) || ((LA555_0 >= BTREE_SYMBOL) && (LA555_0 <= BYTE_SYMBOL)) || LA555_0 == CACHE_SYMBOL || LA555_0 == CASCADED_SYMBOL || ((LA555_0 >= CASE_SYMBOL) && (LA555_0 <= CHANGED_SYMBOL)) || ((LA555_0 >= CHARSET_SYMBOL) && (LA555_0 <= CHECKSUM_SYMBOL)) || ((LA555_0 >= CIPHER_SYMBOL) && (LA555_0 <= CLIENT_SYMBOL)) || ((LA555_0 >= CLOSE_SYMBOL) && (LA555_0 <= CODE_SYMBOL)) || LA555_0 == COLLATION_SYMBOL || ((LA555_0 >= COLUMNS_SYMBOL) && (LA555_0 <= COLUMN_NAME_SYMBOL)) || ((LA555_0 >= COMMENT_SYMBOL) && (LA555_0 <= COMPRESSED_SYMBOL)) || LA555_0 == CONCURRENT_SYMBOL || ((LA555_0 >= CONNECTION_SYMBOL) && (LA555_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA555_0 >= CONTAINS_SYMBOL) && (LA555_0 <= CONTEXT_SYMBOL)) || ((LA555_0 >= CONTRIBUTORS_SYMBOL) && (LA555_0 <= CPU_SYMBOL)) || ((LA555_0 >= CUBE_SYMBOL) && (LA555_0 <= CURRENT_SYMBOL)) || ((LA555_0 >= CURRENT_USER_SYMBOL) && (LA555_0 <= CURSOR_NAME_SYMBOL)) || LA555_0 == CURTIME_SYMBOL || ((LA555_0 >= DATABASE_SYMBOL) && (LA555_0 <= DATETIME_SYMBOL)) || LA555_0 == DATE_ADD_SYMBOL || LA555_0 == DATE_SUB_SYMBOL || ((LA555_0 >= DAY_SYMBOL) && (LA555_0 <= DEALLOCATE_SYMBOL)) || LA555_0 == DEFAULT_AUTH_SYMBOL || LA555_0 == DEFINER_SYMBOL || LA555_0 == DELAY_KEY_WRITE_SYMBOL || LA555_0 == DES_KEY_FILE_SYMBOL || LA555_0 == DIAGNOSTICS_SYMBOL || ((LA555_0 >= DIRECTORY_SYMBOL) && (LA555_0 <= DISK_SYMBOL)) || LA555_0 == DOT_SYMBOL || LA555_0 == DO_SYMBOL || ((LA555_0 >= DUMPFILE_SYMBOL) && (LA555_0 <= DYNAMIC_SYMBOL)) || LA555_0 == ENABLE_SYMBOL || LA555_0 == ENDS_SYMBOL || ((LA555_0 >= END_SYMBOL) && (LA555_0 <= ENUM_SYMBOL)) || ((LA555_0 >= ERRORS_SYMBOL) && (LA555_0 <= ERROR_SYMBOL)) || ((LA555_0 >= ESCAPE_SYMBOL) && (LA555_0 <= EVERY_SYMBOL)) || ((LA555_0 >= EXECUTE_SYMBOL) && (LA555_0 <= EXISTS_SYMBOL)) || LA555_0 == EXPANSION_SYMBOL || LA555_0 == EXPORT_SYMBOL || ((LA555_0 >= EXTENDED_SYMBOL) && (LA555_0 <= EXTRACT_SYMBOL)) || ((LA555_0 >= FAST_SYMBOL) && (LA555_0 <= FAULTS_SYMBOL)) || ((LA555_0 >= FILE_SYMBOL) && (LA555_0 <= FIXED_SYMBOL)) || LA555_0 == FLUSH_SYMBOL || LA555_0 == FORMAT_SYMBOL || LA555_0 == FOUND_SYMBOL || LA555_0 == FULL_SYMBOL || ((LA555_0 >= FUNCTION_SYMBOL) && (LA555_0 <= GET_FORMAT_SYMBOL)) || ((LA555_0 >= GLOBAL_SYMBOL) && (LA555_0 <= GRANTS_SYMBOL)) || LA555_0 == GROUP_CONCAT_SYMBOL || ((LA555_0 >= HANDLER_SYMBOL) && (LA555_0 <= HASH_SYMBOL)) || LA555_0 == HELP_SYMBOL || ((LA555_0 >= HOSTS_SYMBOL) && (LA555_0 <= HOST_SYMBOL)) || ((LA555_0 >= HOUR_SYMBOL) && (LA555_0 <= IGNORE_SERVER_IDS_SYMBOL)) || ((LA555_0 >= IMPORT_SYMBOL) && (LA555_0 <= INDEXES_SYMBOL)) || LA555_0 == INITIAL_SIZE_SYMBOL || LA555_0 == INNODB_SYMBOL || ((LA555_0 >= INSERT_METHOD_SYMBOL) && (LA555_0 <= INSTALL_SYMBOL)) || LA555_0 == INVOKER_SYMBOL || LA555_0 == IO_SYMBOL || ((LA555_0 >= IPC_SYMBOL) && (LA555_0 <= ISSUER_SYMBOL)) || LA555_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA555_0 >= LANGUAGE_SYMBOL) && (LA555_0 <= LAST_SYMBOL)) || LA555_0 == LEAVES_SYMBOL || LA555_0 == LEFT_SYMBOL || LA555_0 == LESS_SYMBOL || LA555_0 == LEVEL_SYMBOL || LA555_0 == LINESTRING_SYMBOL || LA555_0 == LIST_SYMBOL || LA555_0 == LOCAL_SYMBOL || LA555_0 == LOCKS_SYMBOL || LA555_0 == LOGFILE_SYMBOL || LA555_0 == LOGS_SYMBOL || LA555_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA555_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA555_0 <= MASTER_SSL_SYMBOL)) || ((LA555_0 >= MASTER_SYMBOL) && (LA555_0 <= MATCH_SYMBOL)) || ((LA555_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA555_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA555_0 >= MEDIUM_SYMBOL) && (LA555_0 <= MICROSECOND_SYMBOL)) || LA555_0 == MIGRATE_SYMBOL || ((LA555_0 >= MINUTE_SYMBOL) && (LA555_0 <= MIN_SYMBOL)) || LA555_0 == MODE_SYMBOL || LA555_0 == MODIFY_SYMBOL || ((LA555_0 >= MOD_SYMBOL) && (LA555_0 <= MULTILINESTRING_SYMBOL)) || ((LA555_0 >= MULTIPOINT_SYMBOL) && (LA555_0 <= MULTIPOLYGON_SYMBOL)) || ((LA555_0 >= MUTEX_SYMBOL) && (LA555_0 <= NATIONAL_SYMBOL)) || LA555_0 == NCHAR_SYMBOL || LA555_0 == NDBCLUSTER_SYMBOL || ((LA555_0 >= NEW_SYMBOL) && (LA555_0 <= NONE_SYMBOL)) || ((LA555_0 >= NOW_SYMBOL) && (LA555_0 <= NO_WAIT_SYMBOL)) || LA555_0 == NULL2_SYMBOL || ((LA555_0 >= NULL_SYMBOL) && (LA555_0 <= NUMBER_SYMBOL)) || LA555_0 == NVARCHAR_SYMBOL || ((LA555_0 >= OFFSET_SYMBOL) && (LA555_0 <= ONE_SYMBOL)) || ((LA555_0 >= OPEN_PAR_SYMBOL) && (LA555_0 <= OPEN_SYMBOL)) || LA555_0 == OPTIONS_SYMBOL || ((LA555_0 >= OWNER_SYMBOL) && (LA555_0 <= PARAM_MARKER)) || ((LA555_0 >= PARSER_SYMBOL) && (LA555_0 <= PARTITION_SYMBOL)) || ((LA555_0 >= PASSWORD_SYMBOL) && (LA555_0 <= PLUGIN_SYMBOL)) || ((LA555_0 >= POINT_SYMBOL) && (LA555_0 <= POSITION_SYMBOL)) || ((LA555_0 >= PREPARE_SYMBOL) && (LA555_0 <= PREV_SYMBOL)) || LA555_0 == PRIVILEGES_SYMBOL || ((LA555_0 >= PROCESSLIST_SYMBOL) && (LA555_0 <= PROXY_SYMBOL)) || ((LA555_0 >= QUARTER_SYMBOL) && (LA555_0 <= QUICK_SYMBOL)) || LA555_0 == READ_ONLY_SYMBOL || ((LA555_0 >= REBUILD_SYMBOL) && (LA555_0 <= REDUNDANT_SYMBOL)) || ((LA555_0 >= RELAYLOG_SYMBOL) && (LA555_0 <= RELAY_THREAD_SYMBOL)) || ((LA555_0 >= RELOAD_SYMBOL) && (LA555_0 <= REMOVE_SYMBOL)) || ((LA555_0 >= REORGANIZE_SYMBOL) && (LA555_0 <= REPLICATION_SYMBOL)) || LA555_0 == RESET_SYMBOL || LA555_0 == RESTORE_SYMBOL || ((LA555_0 >= RESUME_SYMBOL) && (LA555_0 <= RETURNS_SYMBOL)) || LA555_0 == REVERSE_SYMBOL || LA555_0 == RIGHT_SYMBOL || ((LA555_0 >= ROLLBACK_SYMBOL) && (LA555_0 <= SCHEDULE_SYMBOL)) || LA555_0 == SCHEMA_NAME_SYMBOL || ((LA555_0 >= SECOND_SYMBOL) && (LA555_0 <= SECURITY_SYMBOL)) || ((LA555_0 >= SERIALIZABLE_SYMBOL) && (LA555_0 <= SERIAL_SYMBOL)) || ((LA555_0 >= SERVER_SYMBOL) && (LA555_0 <= SESSION_SYMBOL)) || LA555_0 == SHARE_SYMBOL || LA555_0 == SHUTDOWN_SYMBOL || ((LA555_0 >= SIGNED_SYMBOL) && (LA555_0 <= SIMPLE_SYMBOL)) || ((LA555_0 >= SLAVE_SYMBOL) && (LA555_0 <= SLOW_SYMBOL)) || ((LA555_0 >= SNAPSHOT_SYMBOL) && (LA555_0 <= SOURCE_SYMBOL)) || ((LA555_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA555_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA555_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA555_0 <= SQL_CACHE_SYMBOL)) || LA555_0 == SQL_NO_CACHE_SYMBOL || LA555_0 == SQL_THREAD_SYMBOL || ((LA555_0 >= STARTS_SYMBOL) && (LA555_0 <= STATUS_SYMBOL)) || LA555_0 == STDDEV_SAMP_SYMBOL || ((LA555_0 >= STD_SYMBOL) && (LA555_0 <= STORAGE_SYMBOL)) || ((LA555_0 >= STRING_SYMBOL) && (LA555_0 <= SUBPARTITION_SYMBOL)) || LA555_0 == SUBSTRING_SYMBOL || ((LA555_0 >= SUM_SYMBOL) && (LA555_0 <= SYSDATE_SYMBOL)) || ((LA555_0 >= TABLESPACE_SYMBOL) && (LA555_0 <= TABLE_NAME_SYMBOL)) || ((LA555_0 >= TEMPORARY_SYMBOL) && (LA555_0 <= TEMPTABLE_SYMBOL)) || ((LA555_0 >= TEXT_SYMBOL) && (LA555_0 <= THAN_SYMBOL)) || ((LA555_0 >= TIMESTAMP_ADD_SYMBOL) && (LA555_0 <= TIMESTAMP_DIFF_SYMBOL)) || ((LA555_0 >= TRANSACTION_SYMBOL) && (LA555_0 <= TRIGGERS_SYMBOL)) || LA555_0 == TRIM_SYMBOL || ((LA555_0 >= TRUNCATE_SYMBOL) && (LA555_0 <= UDF_RETURNS_SYMBOL)) || ((LA555_0 >= UNCOMMITTED_SYMBOL) && (LA555_0 <= UNDEFINED_SYMBOL)) || ((LA555_0 >= UNDOFILE_SYMBOL) && (LA555_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA555_0 >= UNICODE_SYMBOL) && (LA555_0 <= UNINSTALL_SYMBOL)) || LA555_0 == UNKNOWN_SYMBOL || LA555_0 == UNTIL_SYMBOL || LA555_0 == UPGRADE_SYMBOL || ((LA555_0 >= USER_RESOURCES_SYMBOL) && (LA555_0 <= USE_FRM_SYMBOL)) || ((LA555_0 >= UTC_DATE_SYMBOL) && (LA555_0 <= VALUE_SYMBOL)) || ((LA555_0 >= VARIABLES_SYMBOL) && (LA555_0 <= VARIANCE_SYMBOL)) || LA555_0 == VAR_SAMP_SYMBOL || ((LA555_0 >= VIEW_SYMBOL) && (LA555_0 <= WEIGHT_STRING_SYMBOL)) || ((LA555_0 >= WORK_SYMBOL) && (LA555_0 <= WRAPPER_SYMBOL)) || LA555_0 == X509_SYMBOL || ((LA555_0 >= XA_SYMBOL) && (LA555_0 <= XML_SYMBOL)) || LA555_0 == YEAR_SYMBOL || LA555_0 == 732))
                    {
                        alt555=1;
                    }
                    else if ( (LA555_0 == LEADING_SYMBOL))
                    {
                        alt555=2;
                    }
                    else if ( (LA555_0 == TRAILING_SYMBOL))
                    {
                        alt555=3;
                    }
                    else if ( (LA555_0 == BOTH_SYMBOL))
                    {
                        alt555=4;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 555;
                        EXCEPTION->state        = 0;


                        goto ruletrim_functionEx;

                    }
                }
                switch (alt555)
                {
            	case 1:
            	    // MySQL.g:1751:3: expression ( FROM_SYMBOL expression )?
            	    {
            	        FOLLOWPUSH(FOLLOW_expression_in_trim_function10198);
            	        expression2041=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletrim_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2041.tree);

            	        // MySQL.g:1751:14: ( FROM_SYMBOL expression )?
            	        {
            	            int alt551=2;
            	            switch ( LA(1) )
            	            {
            	                case FROM_SYMBOL:
            	                	{
            	                		alt551=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt551)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1751:15: FROM_SYMBOL expression
            	        	    {
            	        	        FROM_SYMBOL2042 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_trim_function10201);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruletrim_functionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        FROM_SYMBOL2042_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL2042));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL2042_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_expression_in_trim_function10203);
            	        	        expression2043=expression(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruletrim_functionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2043.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1752:5: LEADING_SYMBOL ( expression )? FROM_SYMBOL expression
            	    {
            	        LEADING_SYMBOL2044 = (pANTLR3_COMMON_TOKEN) MATCHT(LEADING_SYMBOL, &FOLLOW_LEADING_SYMBOL_in_trim_function10211);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletrim_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        LEADING_SYMBOL2044_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LEADING_SYMBOL2044));
            	        ADAPTOR->addChild(ADAPTOR, root_0, LEADING_SYMBOL2044_tree);
            	        }

            	        // MySQL.g:1752:20: ( expression )?
            	        {
            	            int alt552=2;
            	            {
            	                int LA552_0 = LA(1);
            	                if ( (LA552_0 == BITWISE_NOT_OPERATOR || LA552_0 == DATE_SYMBOL || LA552_0 == INTERVAL_SYMBOL || LA552_0 == LOGICAL_NOT_OPERATOR || LA552_0 == MINUS_OPERATOR || LA552_0 == NCHAR_TEXT || LA552_0 == NOT2_SYMBOL || LA552_0 == NOT_SYMBOL || LA552_0 == PLUS_OPERATOR || LA552_0 == SINGLE_QUOTED_TEXT || ((LA552_0 >= TIMESTAMP_SYMBOL) && (LA552_0 <= TIME_SYMBOL)) || LA552_0 == UNDERSCORE_CHARSET))
            	                {
            	                    alt552=1;
            	                }
            	                else if ( ((((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)))||((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))) && (LA552_0 == DOUBLE_QUOTED_TEXT))
            	                {
            	                    alt552=1;
            	                }
            	                else if ( (LA552_0 == FALSE_SYMBOL || LA552_0 == FLOAT || ((LA552_0 >= HEXNUMBER) && (LA552_0 <= HEXSTRING)) || LA552_0 == INTEGER || LA552_0 == TRUE_SYMBOL))
            	                {
            	                    alt552=1;
            	                }
            	                else if ( ((SERVER_VERSION >= 50003)) && (((LA552_0 >= BITNUMBER) && (LA552_0 <= BITSTRING))))
            	                {
            	                    alt552=1;
            	                }
            	                else if ( (((LA552_0 >= ACTION_SYMBOL) && (LA552_0 <= ADDDATE_SYMBOL)) || ((LA552_0 >= AFTER_SYMBOL) && (LA552_0 <= ALGORITHM_SYMBOL)) || LA552_0 == ANALYZE_SYMBOL || ((LA552_0 >= ANY_SYMBOL) && (LA552_0 <= ASCII_SYMBOL)) || ((LA552_0 >= AT_AT_SIGN_SYMBOL) && (LA552_0 <= BACKUP_SYMBOL)) || LA552_0 == BACK_TICK_QUOTED_ID || LA552_0 == BEGIN_SYMBOL || ((LA552_0 >= BINARY_SYMBOL) && (LA552_0 <= BINLOG_SYMBOL)) || ((LA552_0 >= BIT_AND_SYMBOL) && (LA552_0 <= BIT_XOR_SYMBOL)) || ((LA552_0 >= BLOCK_SYMBOL) && (LA552_0 <= BOOL_SYMBOL)) || ((LA552_0 >= BTREE_SYMBOL) && (LA552_0 <= BYTE_SYMBOL)) || LA552_0 == CACHE_SYMBOL || LA552_0 == CASCADED_SYMBOL || ((LA552_0 >= CASE_SYMBOL) && (LA552_0 <= CHANGED_SYMBOL)) || ((LA552_0 >= CHARSET_SYMBOL) && (LA552_0 <= CHECKSUM_SYMBOL)) || ((LA552_0 >= CIPHER_SYMBOL) && (LA552_0 <= CLIENT_SYMBOL)) || ((LA552_0 >= CLOSE_SYMBOL) && (LA552_0 <= CODE_SYMBOL)) || LA552_0 == COLLATION_SYMBOL || ((LA552_0 >= COLUMNS_SYMBOL) && (LA552_0 <= COLUMN_NAME_SYMBOL)) || ((LA552_0 >= COMMENT_SYMBOL) && (LA552_0 <= COMPRESSED_SYMBOL)) || LA552_0 == CONCURRENT_SYMBOL || ((LA552_0 >= CONNECTION_SYMBOL) && (LA552_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA552_0 >= CONTAINS_SYMBOL) && (LA552_0 <= CONTEXT_SYMBOL)) || ((LA552_0 >= CONTRIBUTORS_SYMBOL) && (LA552_0 <= CPU_SYMBOL)) || ((LA552_0 >= CUBE_SYMBOL) && (LA552_0 <= CURRENT_SYMBOL)) || ((LA552_0 >= CURRENT_USER_SYMBOL) && (LA552_0 <= CURSOR_NAME_SYMBOL)) || LA552_0 == CURTIME_SYMBOL || ((LA552_0 >= DATABASE_SYMBOL) && (LA552_0 <= DATETIME_SYMBOL)) || LA552_0 == DATE_ADD_SYMBOL || LA552_0 == DATE_SUB_SYMBOL || ((LA552_0 >= DAY_SYMBOL) && (LA552_0 <= DEALLOCATE_SYMBOL)) || LA552_0 == DEFAULT_AUTH_SYMBOL || LA552_0 == DEFINER_SYMBOL || LA552_0 == DELAY_KEY_WRITE_SYMBOL || LA552_0 == DES_KEY_FILE_SYMBOL || LA552_0 == DIAGNOSTICS_SYMBOL || ((LA552_0 >= DIRECTORY_SYMBOL) && (LA552_0 <= DISK_SYMBOL)) || LA552_0 == DOT_SYMBOL || LA552_0 == DO_SYMBOL || ((LA552_0 >= DUMPFILE_SYMBOL) && (LA552_0 <= DYNAMIC_SYMBOL)) || LA552_0 == ENABLE_SYMBOL || LA552_0 == ENDS_SYMBOL || ((LA552_0 >= END_SYMBOL) && (LA552_0 <= ENUM_SYMBOL)) || ((LA552_0 >= ERRORS_SYMBOL) && (LA552_0 <= ERROR_SYMBOL)) || ((LA552_0 >= ESCAPE_SYMBOL) && (LA552_0 <= EVERY_SYMBOL)) || ((LA552_0 >= EXECUTE_SYMBOL) && (LA552_0 <= EXISTS_SYMBOL)) || LA552_0 == EXPANSION_SYMBOL || LA552_0 == EXPORT_SYMBOL || ((LA552_0 >= EXTENDED_SYMBOL) && (LA552_0 <= EXTRACT_SYMBOL)) || ((LA552_0 >= FAST_SYMBOL) && (LA552_0 <= FAULTS_SYMBOL)) || ((LA552_0 >= FILE_SYMBOL) && (LA552_0 <= FIXED_SYMBOL)) || LA552_0 == FLUSH_SYMBOL || LA552_0 == FORMAT_SYMBOL || LA552_0 == FOUND_SYMBOL || LA552_0 == FULL_SYMBOL || ((LA552_0 >= FUNCTION_SYMBOL) && (LA552_0 <= GET_FORMAT_SYMBOL)) || ((LA552_0 >= GLOBAL_SYMBOL) && (LA552_0 <= GRANTS_SYMBOL)) || LA552_0 == GROUP_CONCAT_SYMBOL || ((LA552_0 >= HANDLER_SYMBOL) && (LA552_0 <= HASH_SYMBOL)) || LA552_0 == HELP_SYMBOL || ((LA552_0 >= HOSTS_SYMBOL) && (LA552_0 <= HOST_SYMBOL)) || ((LA552_0 >= HOUR_SYMBOL) && (LA552_0 <= IGNORE_SERVER_IDS_SYMBOL)) || ((LA552_0 >= IMPORT_SYMBOL) && (LA552_0 <= INDEXES_SYMBOL)) || LA552_0 == INITIAL_SIZE_SYMBOL || LA552_0 == INNODB_SYMBOL || ((LA552_0 >= INSERT_METHOD_SYMBOL) && (LA552_0 <= INSTALL_SYMBOL)) || LA552_0 == INVOKER_SYMBOL || LA552_0 == IO_SYMBOL || ((LA552_0 >= IPC_SYMBOL) && (LA552_0 <= ISSUER_SYMBOL)) || LA552_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA552_0 >= LANGUAGE_SYMBOL) && (LA552_0 <= LAST_SYMBOL)) || LA552_0 == LEAVES_SYMBOL || LA552_0 == LEFT_SYMBOL || LA552_0 == LESS_SYMBOL || LA552_0 == LEVEL_SYMBOL || LA552_0 == LINESTRING_SYMBOL || LA552_0 == LIST_SYMBOL || LA552_0 == LOCAL_SYMBOL || LA552_0 == LOCKS_SYMBOL || LA552_0 == LOGFILE_SYMBOL || LA552_0 == LOGS_SYMBOL || LA552_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA552_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA552_0 <= MASTER_SSL_SYMBOL)) || ((LA552_0 >= MASTER_SYMBOL) && (LA552_0 <= MATCH_SYMBOL)) || ((LA552_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA552_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA552_0 >= MEDIUM_SYMBOL) && (LA552_0 <= MICROSECOND_SYMBOL)) || LA552_0 == MIGRATE_SYMBOL || ((LA552_0 >= MINUTE_SYMBOL) && (LA552_0 <= MIN_SYMBOL)) || LA552_0 == MODE_SYMBOL || LA552_0 == MODIFY_SYMBOL || ((LA552_0 >= MOD_SYMBOL) && (LA552_0 <= MULTILINESTRING_SYMBOL)) || ((LA552_0 >= MULTIPOINT_SYMBOL) && (LA552_0 <= MULTIPOLYGON_SYMBOL)) || ((LA552_0 >= MUTEX_SYMBOL) && (LA552_0 <= NATIONAL_SYMBOL)) || LA552_0 == NCHAR_SYMBOL || LA552_0 == NDBCLUSTER_SYMBOL || ((LA552_0 >= NEW_SYMBOL) && (LA552_0 <= NONE_SYMBOL)) || ((LA552_0 >= NOW_SYMBOL) && (LA552_0 <= NO_WAIT_SYMBOL)) || LA552_0 == NULL2_SYMBOL || ((LA552_0 >= NULL_SYMBOL) && (LA552_0 <= NUMBER_SYMBOL)) || LA552_0 == NVARCHAR_SYMBOL || ((LA552_0 >= OFFSET_SYMBOL) && (LA552_0 <= ONE_SYMBOL)) || ((LA552_0 >= OPEN_PAR_SYMBOL) && (LA552_0 <= OPEN_SYMBOL)) || LA552_0 == OPTIONS_SYMBOL || ((LA552_0 >= OWNER_SYMBOL) && (LA552_0 <= PARAM_MARKER)) || ((LA552_0 >= PARSER_SYMBOL) && (LA552_0 <= PARTITION_SYMBOL)) || ((LA552_0 >= PASSWORD_SYMBOL) && (LA552_0 <= PLUGIN_SYMBOL)) || ((LA552_0 >= POINT_SYMBOL) && (LA552_0 <= POSITION_SYMBOL)) || ((LA552_0 >= PREPARE_SYMBOL) && (LA552_0 <= PREV_SYMBOL)) || LA552_0 == PRIVILEGES_SYMBOL || ((LA552_0 >= PROCESSLIST_SYMBOL) && (LA552_0 <= PROXY_SYMBOL)) || ((LA552_0 >= QUARTER_SYMBOL) && (LA552_0 <= QUICK_SYMBOL)) || LA552_0 == READ_ONLY_SYMBOL || ((LA552_0 >= REBUILD_SYMBOL) && (LA552_0 <= REDUNDANT_SYMBOL)) || ((LA552_0 >= RELAYLOG_SYMBOL) && (LA552_0 <= RELAY_THREAD_SYMBOL)) || ((LA552_0 >= RELOAD_SYMBOL) && (LA552_0 <= REMOVE_SYMBOL)) || ((LA552_0 >= REORGANIZE_SYMBOL) && (LA552_0 <= REPLICATION_SYMBOL)) || LA552_0 == RESET_SYMBOL || LA552_0 == RESTORE_SYMBOL || ((LA552_0 >= RESUME_SYMBOL) && (LA552_0 <= RETURNS_SYMBOL)) || LA552_0 == REVERSE_SYMBOL || LA552_0 == RIGHT_SYMBOL || ((LA552_0 >= ROLLBACK_SYMBOL) && (LA552_0 <= SCHEDULE_SYMBOL)) || LA552_0 == SCHEMA_NAME_SYMBOL || ((LA552_0 >= SECOND_SYMBOL) && (LA552_0 <= SECURITY_SYMBOL)) || ((LA552_0 >= SERIALIZABLE_SYMBOL) && (LA552_0 <= SERIAL_SYMBOL)) || ((LA552_0 >= SERVER_SYMBOL) && (LA552_0 <= SESSION_SYMBOL)) || LA552_0 == SHARE_SYMBOL || LA552_0 == SHUTDOWN_SYMBOL || ((LA552_0 >= SIGNED_SYMBOL) && (LA552_0 <= SIMPLE_SYMBOL)) || ((LA552_0 >= SLAVE_SYMBOL) && (LA552_0 <= SLOW_SYMBOL)) || ((LA552_0 >= SNAPSHOT_SYMBOL) && (LA552_0 <= SOURCE_SYMBOL)) || ((LA552_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA552_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA552_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA552_0 <= SQL_CACHE_SYMBOL)) || LA552_0 == SQL_NO_CACHE_SYMBOL || LA552_0 == SQL_THREAD_SYMBOL || ((LA552_0 >= STARTS_SYMBOL) && (LA552_0 <= STATUS_SYMBOL)) || LA552_0 == STDDEV_SAMP_SYMBOL || ((LA552_0 >= STD_SYMBOL) && (LA552_0 <= STORAGE_SYMBOL)) || ((LA552_0 >= STRING_SYMBOL) && (LA552_0 <= SUBPARTITION_SYMBOL)) || LA552_0 == SUBSTRING_SYMBOL || ((LA552_0 >= SUM_SYMBOL) && (LA552_0 <= SYSDATE_SYMBOL)) || ((LA552_0 >= TABLESPACE_SYMBOL) && (LA552_0 <= TABLE_NAME_SYMBOL)) || ((LA552_0 >= TEMPORARY_SYMBOL) && (LA552_0 <= TEMPTABLE_SYMBOL)) || ((LA552_0 >= TEXT_SYMBOL) && (LA552_0 <= THAN_SYMBOL)) || ((LA552_0 >= TIMESTAMP_ADD_SYMBOL) && (LA552_0 <= TIMESTAMP_DIFF_SYMBOL)) || ((LA552_0 >= TRANSACTION_SYMBOL) && (LA552_0 <= TRIGGERS_SYMBOL)) || LA552_0 == TRIM_SYMBOL || ((LA552_0 >= TRUNCATE_SYMBOL) && (LA552_0 <= UDF_RETURNS_SYMBOL)) || ((LA552_0 >= UNCOMMITTED_SYMBOL) && (LA552_0 <= UNDEFINED_SYMBOL)) || ((LA552_0 >= UNDOFILE_SYMBOL) && (LA552_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA552_0 >= UNICODE_SYMBOL) && (LA552_0 <= UNINSTALL_SYMBOL)) || LA552_0 == UNKNOWN_SYMBOL || LA552_0 == UNTIL_SYMBOL || LA552_0 == UPGRADE_SYMBOL || ((LA552_0 >= USER_RESOURCES_SYMBOL) && (LA552_0 <= USE_FRM_SYMBOL)) || ((LA552_0 >= UTC_DATE_SYMBOL) && (LA552_0 <= VALUE_SYMBOL)) || ((LA552_0 >= VARIABLES_SYMBOL) && (LA552_0 <= VARIANCE_SYMBOL)) || LA552_0 == VAR_SAMP_SYMBOL || ((LA552_0 >= VIEW_SYMBOL) && (LA552_0 <= WEIGHT_STRING_SYMBOL)) || ((LA552_0 >= WORK_SYMBOL) && (LA552_0 <= WRAPPER_SYMBOL)) || LA552_0 == X509_SYMBOL || ((LA552_0 >= XA_SYMBOL) && (LA552_0 <= XML_SYMBOL)) || LA552_0 == YEAR_SYMBOL || LA552_0 == 732))
            	                {
            	                    alt552=1;
            	                }
            	            }
            	            switch (alt552)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1752:20: expression
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_expression_in_trim_function10213);
            	        	        expression2045=expression(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruletrim_functionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2045.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FROM_SYMBOL2046 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_trim_function10216);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletrim_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FROM_SYMBOL2046_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL2046));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL2046_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_expression_in_trim_function10218);
            	        expression2047=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletrim_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2047.tree);

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:1753:5: TRAILING_SYMBOL ( expression )? FROM_SYMBOL expression
            	    {
            	        TRAILING_SYMBOL2048 = (pANTLR3_COMMON_TOKEN) MATCHT(TRAILING_SYMBOL, &FOLLOW_TRAILING_SYMBOL_in_trim_function10224);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletrim_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TRAILING_SYMBOL2048_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TRAILING_SYMBOL2048));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TRAILING_SYMBOL2048_tree);
            	        }

            	        // MySQL.g:1753:21: ( expression )?
            	        {
            	            int alt553=2;
            	            {
            	                int LA553_0 = LA(1);
            	                if ( (LA553_0 == BITWISE_NOT_OPERATOR || LA553_0 == DATE_SYMBOL || LA553_0 == INTERVAL_SYMBOL || LA553_0 == LOGICAL_NOT_OPERATOR || LA553_0 == MINUS_OPERATOR || LA553_0 == NCHAR_TEXT || LA553_0 == NOT2_SYMBOL || LA553_0 == NOT_SYMBOL || LA553_0 == PLUS_OPERATOR || LA553_0 == SINGLE_QUOTED_TEXT || ((LA553_0 >= TIMESTAMP_SYMBOL) && (LA553_0 <= TIME_SYMBOL)) || LA553_0 == UNDERSCORE_CHARSET))
            	                {
            	                    alt553=1;
            	                }
            	                else if ( ((((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)))||((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))) && (LA553_0 == DOUBLE_QUOTED_TEXT))
            	                {
            	                    alt553=1;
            	                }
            	                else if ( (LA553_0 == FALSE_SYMBOL || LA553_0 == FLOAT || ((LA553_0 >= HEXNUMBER) && (LA553_0 <= HEXSTRING)) || LA553_0 == INTEGER || LA553_0 == TRUE_SYMBOL))
            	                {
            	                    alt553=1;
            	                }
            	                else if ( ((SERVER_VERSION >= 50003)) && (((LA553_0 >= BITNUMBER) && (LA553_0 <= BITSTRING))))
            	                {
            	                    alt553=1;
            	                }
            	                else if ( (((LA553_0 >= ACTION_SYMBOL) && (LA553_0 <= ADDDATE_SYMBOL)) || ((LA553_0 >= AFTER_SYMBOL) && (LA553_0 <= ALGORITHM_SYMBOL)) || LA553_0 == ANALYZE_SYMBOL || ((LA553_0 >= ANY_SYMBOL) && (LA553_0 <= ASCII_SYMBOL)) || ((LA553_0 >= AT_AT_SIGN_SYMBOL) && (LA553_0 <= BACKUP_SYMBOL)) || LA553_0 == BACK_TICK_QUOTED_ID || LA553_0 == BEGIN_SYMBOL || ((LA553_0 >= BINARY_SYMBOL) && (LA553_0 <= BINLOG_SYMBOL)) || ((LA553_0 >= BIT_AND_SYMBOL) && (LA553_0 <= BIT_XOR_SYMBOL)) || ((LA553_0 >= BLOCK_SYMBOL) && (LA553_0 <= BOOL_SYMBOL)) || ((LA553_0 >= BTREE_SYMBOL) && (LA553_0 <= BYTE_SYMBOL)) || LA553_0 == CACHE_SYMBOL || LA553_0 == CASCADED_SYMBOL || ((LA553_0 >= CASE_SYMBOL) && (LA553_0 <= CHANGED_SYMBOL)) || ((LA553_0 >= CHARSET_SYMBOL) && (LA553_0 <= CHECKSUM_SYMBOL)) || ((LA553_0 >= CIPHER_SYMBOL) && (LA553_0 <= CLIENT_SYMBOL)) || ((LA553_0 >= CLOSE_SYMBOL) && (LA553_0 <= CODE_SYMBOL)) || LA553_0 == COLLATION_SYMBOL || ((LA553_0 >= COLUMNS_SYMBOL) && (LA553_0 <= COLUMN_NAME_SYMBOL)) || ((LA553_0 >= COMMENT_SYMBOL) && (LA553_0 <= COMPRESSED_SYMBOL)) || LA553_0 == CONCURRENT_SYMBOL || ((LA553_0 >= CONNECTION_SYMBOL) && (LA553_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA553_0 >= CONTAINS_SYMBOL) && (LA553_0 <= CONTEXT_SYMBOL)) || ((LA553_0 >= CONTRIBUTORS_SYMBOL) && (LA553_0 <= CPU_SYMBOL)) || ((LA553_0 >= CUBE_SYMBOL) && (LA553_0 <= CURRENT_SYMBOL)) || ((LA553_0 >= CURRENT_USER_SYMBOL) && (LA553_0 <= CURSOR_NAME_SYMBOL)) || LA553_0 == CURTIME_SYMBOL || ((LA553_0 >= DATABASE_SYMBOL) && (LA553_0 <= DATETIME_SYMBOL)) || LA553_0 == DATE_ADD_SYMBOL || LA553_0 == DATE_SUB_SYMBOL || ((LA553_0 >= DAY_SYMBOL) && (LA553_0 <= DEALLOCATE_SYMBOL)) || LA553_0 == DEFAULT_AUTH_SYMBOL || LA553_0 == DEFINER_SYMBOL || LA553_0 == DELAY_KEY_WRITE_SYMBOL || LA553_0 == DES_KEY_FILE_SYMBOL || LA553_0 == DIAGNOSTICS_SYMBOL || ((LA553_0 >= DIRECTORY_SYMBOL) && (LA553_0 <= DISK_SYMBOL)) || LA553_0 == DOT_SYMBOL || LA553_0 == DO_SYMBOL || ((LA553_0 >= DUMPFILE_SYMBOL) && (LA553_0 <= DYNAMIC_SYMBOL)) || LA553_0 == ENABLE_SYMBOL || LA553_0 == ENDS_SYMBOL || ((LA553_0 >= END_SYMBOL) && (LA553_0 <= ENUM_SYMBOL)) || ((LA553_0 >= ERRORS_SYMBOL) && (LA553_0 <= ERROR_SYMBOL)) || ((LA553_0 >= ESCAPE_SYMBOL) && (LA553_0 <= EVERY_SYMBOL)) || ((LA553_0 >= EXECUTE_SYMBOL) && (LA553_0 <= EXISTS_SYMBOL)) || LA553_0 == EXPANSION_SYMBOL || LA553_0 == EXPORT_SYMBOL || ((LA553_0 >= EXTENDED_SYMBOL) && (LA553_0 <= EXTRACT_SYMBOL)) || ((LA553_0 >= FAST_SYMBOL) && (LA553_0 <= FAULTS_SYMBOL)) || ((LA553_0 >= FILE_SYMBOL) && (LA553_0 <= FIXED_SYMBOL)) || LA553_0 == FLUSH_SYMBOL || LA553_0 == FORMAT_SYMBOL || LA553_0 == FOUND_SYMBOL || LA553_0 == FULL_SYMBOL || ((LA553_0 >= FUNCTION_SYMBOL) && (LA553_0 <= GET_FORMAT_SYMBOL)) || ((LA553_0 >= GLOBAL_SYMBOL) && (LA553_0 <= GRANTS_SYMBOL)) || LA553_0 == GROUP_CONCAT_SYMBOL || ((LA553_0 >= HANDLER_SYMBOL) && (LA553_0 <= HASH_SYMBOL)) || LA553_0 == HELP_SYMBOL || ((LA553_0 >= HOSTS_SYMBOL) && (LA553_0 <= HOST_SYMBOL)) || ((LA553_0 >= HOUR_SYMBOL) && (LA553_0 <= IGNORE_SERVER_IDS_SYMBOL)) || ((LA553_0 >= IMPORT_SYMBOL) && (LA553_0 <= INDEXES_SYMBOL)) || LA553_0 == INITIAL_SIZE_SYMBOL || LA553_0 == INNODB_SYMBOL || ((LA553_0 >= INSERT_METHOD_SYMBOL) && (LA553_0 <= INSTALL_SYMBOL)) || LA553_0 == INVOKER_SYMBOL || LA553_0 == IO_SYMBOL || ((LA553_0 >= IPC_SYMBOL) && (LA553_0 <= ISSUER_SYMBOL)) || LA553_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA553_0 >= LANGUAGE_SYMBOL) && (LA553_0 <= LAST_SYMBOL)) || LA553_0 == LEAVES_SYMBOL || LA553_0 == LEFT_SYMBOL || LA553_0 == LESS_SYMBOL || LA553_0 == LEVEL_SYMBOL || LA553_0 == LINESTRING_SYMBOL || LA553_0 == LIST_SYMBOL || LA553_0 == LOCAL_SYMBOL || LA553_0 == LOCKS_SYMBOL || LA553_0 == LOGFILE_SYMBOL || LA553_0 == LOGS_SYMBOL || LA553_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA553_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA553_0 <= MASTER_SSL_SYMBOL)) || ((LA553_0 >= MASTER_SYMBOL) && (LA553_0 <= MATCH_SYMBOL)) || ((LA553_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA553_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA553_0 >= MEDIUM_SYMBOL) && (LA553_0 <= MICROSECOND_SYMBOL)) || LA553_0 == MIGRATE_SYMBOL || ((LA553_0 >= MINUTE_SYMBOL) && (LA553_0 <= MIN_SYMBOL)) || LA553_0 == MODE_SYMBOL || LA553_0 == MODIFY_SYMBOL || ((LA553_0 >= MOD_SYMBOL) && (LA553_0 <= MULTILINESTRING_SYMBOL)) || ((LA553_0 >= MULTIPOINT_SYMBOL) && (LA553_0 <= MULTIPOLYGON_SYMBOL)) || ((LA553_0 >= MUTEX_SYMBOL) && (LA553_0 <= NATIONAL_SYMBOL)) || LA553_0 == NCHAR_SYMBOL || LA553_0 == NDBCLUSTER_SYMBOL || ((LA553_0 >= NEW_SYMBOL) && (LA553_0 <= NONE_SYMBOL)) || ((LA553_0 >= NOW_SYMBOL) && (LA553_0 <= NO_WAIT_SYMBOL)) || LA553_0 == NULL2_SYMBOL || ((LA553_0 >= NULL_SYMBOL) && (LA553_0 <= NUMBER_SYMBOL)) || LA553_0 == NVARCHAR_SYMBOL || ((LA553_0 >= OFFSET_SYMBOL) && (LA553_0 <= ONE_SYMBOL)) || ((LA553_0 >= OPEN_PAR_SYMBOL) && (LA553_0 <= OPEN_SYMBOL)) || LA553_0 == OPTIONS_SYMBOL || ((LA553_0 >= OWNER_SYMBOL) && (LA553_0 <= PARAM_MARKER)) || ((LA553_0 >= PARSER_SYMBOL) && (LA553_0 <= PARTITION_SYMBOL)) || ((LA553_0 >= PASSWORD_SYMBOL) && (LA553_0 <= PLUGIN_SYMBOL)) || ((LA553_0 >= POINT_SYMBOL) && (LA553_0 <= POSITION_SYMBOL)) || ((LA553_0 >= PREPARE_SYMBOL) && (LA553_0 <= PREV_SYMBOL)) || LA553_0 == PRIVILEGES_SYMBOL || ((LA553_0 >= PROCESSLIST_SYMBOL) && (LA553_0 <= PROXY_SYMBOL)) || ((LA553_0 >= QUARTER_SYMBOL) && (LA553_0 <= QUICK_SYMBOL)) || LA553_0 == READ_ONLY_SYMBOL || ((LA553_0 >= REBUILD_SYMBOL) && (LA553_0 <= REDUNDANT_SYMBOL)) || ((LA553_0 >= RELAYLOG_SYMBOL) && (LA553_0 <= RELAY_THREAD_SYMBOL)) || ((LA553_0 >= RELOAD_SYMBOL) && (LA553_0 <= REMOVE_SYMBOL)) || ((LA553_0 >= REORGANIZE_SYMBOL) && (LA553_0 <= REPLICATION_SYMBOL)) || LA553_0 == RESET_SYMBOL || LA553_0 == RESTORE_SYMBOL || ((LA553_0 >= RESUME_SYMBOL) && (LA553_0 <= RETURNS_SYMBOL)) || LA553_0 == REVERSE_SYMBOL || LA553_0 == RIGHT_SYMBOL || ((LA553_0 >= ROLLBACK_SYMBOL) && (LA553_0 <= SCHEDULE_SYMBOL)) || LA553_0 == SCHEMA_NAME_SYMBOL || ((LA553_0 >= SECOND_SYMBOL) && (LA553_0 <= SECURITY_SYMBOL)) || ((LA553_0 >= SERIALIZABLE_SYMBOL) && (LA553_0 <= SERIAL_SYMBOL)) || ((LA553_0 >= SERVER_SYMBOL) && (LA553_0 <= SESSION_SYMBOL)) || LA553_0 == SHARE_SYMBOL || LA553_0 == SHUTDOWN_SYMBOL || ((LA553_0 >= SIGNED_SYMBOL) && (LA553_0 <= SIMPLE_SYMBOL)) || ((LA553_0 >= SLAVE_SYMBOL) && (LA553_0 <= SLOW_SYMBOL)) || ((LA553_0 >= SNAPSHOT_SYMBOL) && (LA553_0 <= SOURCE_SYMBOL)) || ((LA553_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA553_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA553_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA553_0 <= SQL_CACHE_SYMBOL)) || LA553_0 == SQL_NO_CACHE_SYMBOL || LA553_0 == SQL_THREAD_SYMBOL || ((LA553_0 >= STARTS_SYMBOL) && (LA553_0 <= STATUS_SYMBOL)) || LA553_0 == STDDEV_SAMP_SYMBOL || ((LA553_0 >= STD_SYMBOL) && (LA553_0 <= STORAGE_SYMBOL)) || ((LA553_0 >= STRING_SYMBOL) && (LA553_0 <= SUBPARTITION_SYMBOL)) || LA553_0 == SUBSTRING_SYMBOL || ((LA553_0 >= SUM_SYMBOL) && (LA553_0 <= SYSDATE_SYMBOL)) || ((LA553_0 >= TABLESPACE_SYMBOL) && (LA553_0 <= TABLE_NAME_SYMBOL)) || ((LA553_0 >= TEMPORARY_SYMBOL) && (LA553_0 <= TEMPTABLE_SYMBOL)) || ((LA553_0 >= TEXT_SYMBOL) && (LA553_0 <= THAN_SYMBOL)) || ((LA553_0 >= TIMESTAMP_ADD_SYMBOL) && (LA553_0 <= TIMESTAMP_DIFF_SYMBOL)) || ((LA553_0 >= TRANSACTION_SYMBOL) && (LA553_0 <= TRIGGERS_SYMBOL)) || LA553_0 == TRIM_SYMBOL || ((LA553_0 >= TRUNCATE_SYMBOL) && (LA553_0 <= UDF_RETURNS_SYMBOL)) || ((LA553_0 >= UNCOMMITTED_SYMBOL) && (LA553_0 <= UNDEFINED_SYMBOL)) || ((LA553_0 >= UNDOFILE_SYMBOL) && (LA553_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA553_0 >= UNICODE_SYMBOL) && (LA553_0 <= UNINSTALL_SYMBOL)) || LA553_0 == UNKNOWN_SYMBOL || LA553_0 == UNTIL_SYMBOL || LA553_0 == UPGRADE_SYMBOL || ((LA553_0 >= USER_RESOURCES_SYMBOL) && (LA553_0 <= USE_FRM_SYMBOL)) || ((LA553_0 >= UTC_DATE_SYMBOL) && (LA553_0 <= VALUE_SYMBOL)) || ((LA553_0 >= VARIABLES_SYMBOL) && (LA553_0 <= VARIANCE_SYMBOL)) || LA553_0 == VAR_SAMP_SYMBOL || ((LA553_0 >= VIEW_SYMBOL) && (LA553_0 <= WEIGHT_STRING_SYMBOL)) || ((LA553_0 >= WORK_SYMBOL) && (LA553_0 <= WRAPPER_SYMBOL)) || LA553_0 == X509_SYMBOL || ((LA553_0 >= XA_SYMBOL) && (LA553_0 <= XML_SYMBOL)) || LA553_0 == YEAR_SYMBOL || LA553_0 == 732))
            	                {
            	                    alt553=1;
            	                }
            	            }
            	            switch (alt553)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1753:21: expression
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_expression_in_trim_function10226);
            	        	        expression2049=expression(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruletrim_functionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2049.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FROM_SYMBOL2050 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_trim_function10229);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletrim_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FROM_SYMBOL2050_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL2050));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL2050_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_expression_in_trim_function10231);
            	        expression2051=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletrim_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2051.tree);

            	    }
            	    break;
            	case 4:
            	    // MySQL.g:1754:5: BOTH_SYMBOL ( expression )? FROM_SYMBOL expression
            	    {
            	        BOTH_SYMBOL2052 = (pANTLR3_COMMON_TOKEN) MATCHT(BOTH_SYMBOL, &FOLLOW_BOTH_SYMBOL_in_trim_function10237);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletrim_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        BOTH_SYMBOL2052_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BOTH_SYMBOL2052));
            	        ADAPTOR->addChild(ADAPTOR, root_0, BOTH_SYMBOL2052_tree);
            	        }

            	        // MySQL.g:1754:17: ( expression )?
            	        {
            	            int alt554=2;
            	            {
            	                int LA554_0 = LA(1);
            	                if ( (LA554_0 == BITWISE_NOT_OPERATOR || LA554_0 == DATE_SYMBOL || LA554_0 == INTERVAL_SYMBOL || LA554_0 == LOGICAL_NOT_OPERATOR || LA554_0 == MINUS_OPERATOR || LA554_0 == NCHAR_TEXT || LA554_0 == NOT2_SYMBOL || LA554_0 == NOT_SYMBOL || LA554_0 == PLUS_OPERATOR || LA554_0 == SINGLE_QUOTED_TEXT || ((LA554_0 >= TIMESTAMP_SYMBOL) && (LA554_0 <= TIME_SYMBOL)) || LA554_0 == UNDERSCORE_CHARSET))
            	                {
            	                    alt554=1;
            	                }
            	                else if ( ((((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)))||((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))) && (LA554_0 == DOUBLE_QUOTED_TEXT))
            	                {
            	                    alt554=1;
            	                }
            	                else if ( (LA554_0 == FALSE_SYMBOL || LA554_0 == FLOAT || ((LA554_0 >= HEXNUMBER) && (LA554_0 <= HEXSTRING)) || LA554_0 == INTEGER || LA554_0 == TRUE_SYMBOL))
            	                {
            	                    alt554=1;
            	                }
            	                else if ( ((SERVER_VERSION >= 50003)) && (((LA554_0 >= BITNUMBER) && (LA554_0 <= BITSTRING))))
            	                {
            	                    alt554=1;
            	                }
            	                else if ( (((LA554_0 >= ACTION_SYMBOL) && (LA554_0 <= ADDDATE_SYMBOL)) || ((LA554_0 >= AFTER_SYMBOL) && (LA554_0 <= ALGORITHM_SYMBOL)) || LA554_0 == ANALYZE_SYMBOL || ((LA554_0 >= ANY_SYMBOL) && (LA554_0 <= ASCII_SYMBOL)) || ((LA554_0 >= AT_AT_SIGN_SYMBOL) && (LA554_0 <= BACKUP_SYMBOL)) || LA554_0 == BACK_TICK_QUOTED_ID || LA554_0 == BEGIN_SYMBOL || ((LA554_0 >= BINARY_SYMBOL) && (LA554_0 <= BINLOG_SYMBOL)) || ((LA554_0 >= BIT_AND_SYMBOL) && (LA554_0 <= BIT_XOR_SYMBOL)) || ((LA554_0 >= BLOCK_SYMBOL) && (LA554_0 <= BOOL_SYMBOL)) || ((LA554_0 >= BTREE_SYMBOL) && (LA554_0 <= BYTE_SYMBOL)) || LA554_0 == CACHE_SYMBOL || LA554_0 == CASCADED_SYMBOL || ((LA554_0 >= CASE_SYMBOL) && (LA554_0 <= CHANGED_SYMBOL)) || ((LA554_0 >= CHARSET_SYMBOL) && (LA554_0 <= CHECKSUM_SYMBOL)) || ((LA554_0 >= CIPHER_SYMBOL) && (LA554_0 <= CLIENT_SYMBOL)) || ((LA554_0 >= CLOSE_SYMBOL) && (LA554_0 <= CODE_SYMBOL)) || LA554_0 == COLLATION_SYMBOL || ((LA554_0 >= COLUMNS_SYMBOL) && (LA554_0 <= COLUMN_NAME_SYMBOL)) || ((LA554_0 >= COMMENT_SYMBOL) && (LA554_0 <= COMPRESSED_SYMBOL)) || LA554_0 == CONCURRENT_SYMBOL || ((LA554_0 >= CONNECTION_SYMBOL) && (LA554_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA554_0 >= CONTAINS_SYMBOL) && (LA554_0 <= CONTEXT_SYMBOL)) || ((LA554_0 >= CONTRIBUTORS_SYMBOL) && (LA554_0 <= CPU_SYMBOL)) || ((LA554_0 >= CUBE_SYMBOL) && (LA554_0 <= CURRENT_SYMBOL)) || ((LA554_0 >= CURRENT_USER_SYMBOL) && (LA554_0 <= CURSOR_NAME_SYMBOL)) || LA554_0 == CURTIME_SYMBOL || ((LA554_0 >= DATABASE_SYMBOL) && (LA554_0 <= DATETIME_SYMBOL)) || LA554_0 == DATE_ADD_SYMBOL || LA554_0 == DATE_SUB_SYMBOL || ((LA554_0 >= DAY_SYMBOL) && (LA554_0 <= DEALLOCATE_SYMBOL)) || LA554_0 == DEFAULT_AUTH_SYMBOL || LA554_0 == DEFINER_SYMBOL || LA554_0 == DELAY_KEY_WRITE_SYMBOL || LA554_0 == DES_KEY_FILE_SYMBOL || LA554_0 == DIAGNOSTICS_SYMBOL || ((LA554_0 >= DIRECTORY_SYMBOL) && (LA554_0 <= DISK_SYMBOL)) || LA554_0 == DOT_SYMBOL || LA554_0 == DO_SYMBOL || ((LA554_0 >= DUMPFILE_SYMBOL) && (LA554_0 <= DYNAMIC_SYMBOL)) || LA554_0 == ENABLE_SYMBOL || LA554_0 == ENDS_SYMBOL || ((LA554_0 >= END_SYMBOL) && (LA554_0 <= ENUM_SYMBOL)) || ((LA554_0 >= ERRORS_SYMBOL) && (LA554_0 <= ERROR_SYMBOL)) || ((LA554_0 >= ESCAPE_SYMBOL) && (LA554_0 <= EVERY_SYMBOL)) || ((LA554_0 >= EXECUTE_SYMBOL) && (LA554_0 <= EXISTS_SYMBOL)) || LA554_0 == EXPANSION_SYMBOL || LA554_0 == EXPORT_SYMBOL || ((LA554_0 >= EXTENDED_SYMBOL) && (LA554_0 <= EXTRACT_SYMBOL)) || ((LA554_0 >= FAST_SYMBOL) && (LA554_0 <= FAULTS_SYMBOL)) || ((LA554_0 >= FILE_SYMBOL) && (LA554_0 <= FIXED_SYMBOL)) || LA554_0 == FLUSH_SYMBOL || LA554_0 == FORMAT_SYMBOL || LA554_0 == FOUND_SYMBOL || LA554_0 == FULL_SYMBOL || ((LA554_0 >= FUNCTION_SYMBOL) && (LA554_0 <= GET_FORMAT_SYMBOL)) || ((LA554_0 >= GLOBAL_SYMBOL) && (LA554_0 <= GRANTS_SYMBOL)) || LA554_0 == GROUP_CONCAT_SYMBOL || ((LA554_0 >= HANDLER_SYMBOL) && (LA554_0 <= HASH_SYMBOL)) || LA554_0 == HELP_SYMBOL || ((LA554_0 >= HOSTS_SYMBOL) && (LA554_0 <= HOST_SYMBOL)) || ((LA554_0 >= HOUR_SYMBOL) && (LA554_0 <= IGNORE_SERVER_IDS_SYMBOL)) || ((LA554_0 >= IMPORT_SYMBOL) && (LA554_0 <= INDEXES_SYMBOL)) || LA554_0 == INITIAL_SIZE_SYMBOL || LA554_0 == INNODB_SYMBOL || ((LA554_0 >= INSERT_METHOD_SYMBOL) && (LA554_0 <= INSTALL_SYMBOL)) || LA554_0 == INVOKER_SYMBOL || LA554_0 == IO_SYMBOL || ((LA554_0 >= IPC_SYMBOL) && (LA554_0 <= ISSUER_SYMBOL)) || LA554_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA554_0 >= LANGUAGE_SYMBOL) && (LA554_0 <= LAST_SYMBOL)) || LA554_0 == LEAVES_SYMBOL || LA554_0 == LEFT_SYMBOL || LA554_0 == LESS_SYMBOL || LA554_0 == LEVEL_SYMBOL || LA554_0 == LINESTRING_SYMBOL || LA554_0 == LIST_SYMBOL || LA554_0 == LOCAL_SYMBOL || LA554_0 == LOCKS_SYMBOL || LA554_0 == LOGFILE_SYMBOL || LA554_0 == LOGS_SYMBOL || LA554_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA554_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA554_0 <= MASTER_SSL_SYMBOL)) || ((LA554_0 >= MASTER_SYMBOL) && (LA554_0 <= MATCH_SYMBOL)) || ((LA554_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA554_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA554_0 >= MEDIUM_SYMBOL) && (LA554_0 <= MICROSECOND_SYMBOL)) || LA554_0 == MIGRATE_SYMBOL || ((LA554_0 >= MINUTE_SYMBOL) && (LA554_0 <= MIN_SYMBOL)) || LA554_0 == MODE_SYMBOL || LA554_0 == MODIFY_SYMBOL || ((LA554_0 >= MOD_SYMBOL) && (LA554_0 <= MULTILINESTRING_SYMBOL)) || ((LA554_0 >= MULTIPOINT_SYMBOL) && (LA554_0 <= MULTIPOLYGON_SYMBOL)) || ((LA554_0 >= MUTEX_SYMBOL) && (LA554_0 <= NATIONAL_SYMBOL)) || LA554_0 == NCHAR_SYMBOL || LA554_0 == NDBCLUSTER_SYMBOL || ((LA554_0 >= NEW_SYMBOL) && (LA554_0 <= NONE_SYMBOL)) || ((LA554_0 >= NOW_SYMBOL) && (LA554_0 <= NO_WAIT_SYMBOL)) || LA554_0 == NULL2_SYMBOL || ((LA554_0 >= NULL_SYMBOL) && (LA554_0 <= NUMBER_SYMBOL)) || LA554_0 == NVARCHAR_SYMBOL || ((LA554_0 >= OFFSET_SYMBOL) && (LA554_0 <= ONE_SYMBOL)) || ((LA554_0 >= OPEN_PAR_SYMBOL) && (LA554_0 <= OPEN_SYMBOL)) || LA554_0 == OPTIONS_SYMBOL || ((LA554_0 >= OWNER_SYMBOL) && (LA554_0 <= PARAM_MARKER)) || ((LA554_0 >= PARSER_SYMBOL) && (LA554_0 <= PARTITION_SYMBOL)) || ((LA554_0 >= PASSWORD_SYMBOL) && (LA554_0 <= PLUGIN_SYMBOL)) || ((LA554_0 >= POINT_SYMBOL) && (LA554_0 <= POSITION_SYMBOL)) || ((LA554_0 >= PREPARE_SYMBOL) && (LA554_0 <= PREV_SYMBOL)) || LA554_0 == PRIVILEGES_SYMBOL || ((LA554_0 >= PROCESSLIST_SYMBOL) && (LA554_0 <= PROXY_SYMBOL)) || ((LA554_0 >= QUARTER_SYMBOL) && (LA554_0 <= QUICK_SYMBOL)) || LA554_0 == READ_ONLY_SYMBOL || ((LA554_0 >= REBUILD_SYMBOL) && (LA554_0 <= REDUNDANT_SYMBOL)) || ((LA554_0 >= RELAYLOG_SYMBOL) && (LA554_0 <= RELAY_THREAD_SYMBOL)) || ((LA554_0 >= RELOAD_SYMBOL) && (LA554_0 <= REMOVE_SYMBOL)) || ((LA554_0 >= REORGANIZE_SYMBOL) && (LA554_0 <= REPLICATION_SYMBOL)) || LA554_0 == RESET_SYMBOL || LA554_0 == RESTORE_SYMBOL || ((LA554_0 >= RESUME_SYMBOL) && (LA554_0 <= RETURNS_SYMBOL)) || LA554_0 == REVERSE_SYMBOL || LA554_0 == RIGHT_SYMBOL || ((LA554_0 >= ROLLBACK_SYMBOL) && (LA554_0 <= SCHEDULE_SYMBOL)) || LA554_0 == SCHEMA_NAME_SYMBOL || ((LA554_0 >= SECOND_SYMBOL) && (LA554_0 <= SECURITY_SYMBOL)) || ((LA554_0 >= SERIALIZABLE_SYMBOL) && (LA554_0 <= SERIAL_SYMBOL)) || ((LA554_0 >= SERVER_SYMBOL) && (LA554_0 <= SESSION_SYMBOL)) || LA554_0 == SHARE_SYMBOL || LA554_0 == SHUTDOWN_SYMBOL || ((LA554_0 >= SIGNED_SYMBOL) && (LA554_0 <= SIMPLE_SYMBOL)) || ((LA554_0 >= SLAVE_SYMBOL) && (LA554_0 <= SLOW_SYMBOL)) || ((LA554_0 >= SNAPSHOT_SYMBOL) && (LA554_0 <= SOURCE_SYMBOL)) || ((LA554_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA554_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA554_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA554_0 <= SQL_CACHE_SYMBOL)) || LA554_0 == SQL_NO_CACHE_SYMBOL || LA554_0 == SQL_THREAD_SYMBOL || ((LA554_0 >= STARTS_SYMBOL) && (LA554_0 <= STATUS_SYMBOL)) || LA554_0 == STDDEV_SAMP_SYMBOL || ((LA554_0 >= STD_SYMBOL) && (LA554_0 <= STORAGE_SYMBOL)) || ((LA554_0 >= STRING_SYMBOL) && (LA554_0 <= SUBPARTITION_SYMBOL)) || LA554_0 == SUBSTRING_SYMBOL || ((LA554_0 >= SUM_SYMBOL) && (LA554_0 <= SYSDATE_SYMBOL)) || ((LA554_0 >= TABLESPACE_SYMBOL) && (LA554_0 <= TABLE_NAME_SYMBOL)) || ((LA554_0 >= TEMPORARY_SYMBOL) && (LA554_0 <= TEMPTABLE_SYMBOL)) || ((LA554_0 >= TEXT_SYMBOL) && (LA554_0 <= THAN_SYMBOL)) || ((LA554_0 >= TIMESTAMP_ADD_SYMBOL) && (LA554_0 <= TIMESTAMP_DIFF_SYMBOL)) || ((LA554_0 >= TRANSACTION_SYMBOL) && (LA554_0 <= TRIGGERS_SYMBOL)) || LA554_0 == TRIM_SYMBOL || ((LA554_0 >= TRUNCATE_SYMBOL) && (LA554_0 <= UDF_RETURNS_SYMBOL)) || ((LA554_0 >= UNCOMMITTED_SYMBOL) && (LA554_0 <= UNDEFINED_SYMBOL)) || ((LA554_0 >= UNDOFILE_SYMBOL) && (LA554_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA554_0 >= UNICODE_SYMBOL) && (LA554_0 <= UNINSTALL_SYMBOL)) || LA554_0 == UNKNOWN_SYMBOL || LA554_0 == UNTIL_SYMBOL || LA554_0 == UPGRADE_SYMBOL || ((LA554_0 >= USER_RESOURCES_SYMBOL) && (LA554_0 <= USE_FRM_SYMBOL)) || ((LA554_0 >= UTC_DATE_SYMBOL) && (LA554_0 <= VALUE_SYMBOL)) || ((LA554_0 >= VARIABLES_SYMBOL) && (LA554_0 <= VARIANCE_SYMBOL)) || LA554_0 == VAR_SAMP_SYMBOL || ((LA554_0 >= VIEW_SYMBOL) && (LA554_0 <= WEIGHT_STRING_SYMBOL)) || ((LA554_0 >= WORK_SYMBOL) && (LA554_0 <= WRAPPER_SYMBOL)) || LA554_0 == X509_SYMBOL || ((LA554_0 >= XA_SYMBOL) && (LA554_0 <= XML_SYMBOL)) || LA554_0 == YEAR_SYMBOL || LA554_0 == 732))
            	                {
            	                    alt554=1;
            	                }
            	            }
            	            switch (alt554)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1754:17: expression
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_expression_in_trim_function10239);
            	        	        expression2053=expression(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruletrim_functionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2053.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FROM_SYMBOL2054 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_trim_function10242);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletrim_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FROM_SYMBOL2054_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL2054));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL2054_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_expression_in_trim_function10244);
            	        expression2055=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletrim_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2055.tree);

            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL2056 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_trim_function10250);
            if  (HASEXCEPTION())
            {
                goto ruletrim_functionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL2056_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2056));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2056_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruletrim_functionEx; /* Prevent compiler warnings */
    ruletrim_functionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end trim_function */

/**
 * $ANTLR start substring_function
 * MySQL.g:1759:1: substring_function : SUBSTRING_SYMBOL OPEN_PAR_SYMBOL expression ( COMMA_SYMBOL expression ( COMMA_SYMBOL expression )? | FROM_SYMBOL expression ( FOR_SYMBOL expression )? ) CLOSE_PAR_SYMBOL ;
 */
static MySQLParser_substring_function_return
substring_function(pMySQLParser ctx)
{
    MySQLParser_substring_function_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    SUBSTRING_SYMBOL2057;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2058;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2060;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2062;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL2064;
    pANTLR3_COMMON_TOKEN    FOR_SYMBOL2066;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2068;
    MySQLParser_expression_return expression2059;
    #undef	RETURN_TYPE_expression2059
    #define	RETURN_TYPE_expression2059 MySQLParser_expression_return

    MySQLParser_expression_return expression2061;
    #undef	RETURN_TYPE_expression2061
    #define	RETURN_TYPE_expression2061 MySQLParser_expression_return

    MySQLParser_expression_return expression2063;
    #undef	RETURN_TYPE_expression2063
    #define	RETURN_TYPE_expression2063 MySQLParser_expression_return

    MySQLParser_expression_return expression2065;
    #undef	RETURN_TYPE_expression2065
    #define	RETURN_TYPE_expression2065 MySQLParser_expression_return

    MySQLParser_expression_return expression2067;
    #undef	RETURN_TYPE_expression2067
    #define	RETURN_TYPE_expression2067 MySQLParser_expression_return

    pANTLR3_BASE_TREE SUBSTRING_SYMBOL2057_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2058_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2060_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2062_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL2064_tree;
    pANTLR3_BASE_TREE FOR_SYMBOL2066_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2068_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SUBSTRING_SYMBOL2057       = NULL;
    OPEN_PAR_SYMBOL2058       = NULL;
    COMMA_SYMBOL2060       = NULL;
    COMMA_SYMBOL2062       = NULL;
    FROM_SYMBOL2064       = NULL;
    FOR_SYMBOL2066       = NULL;
    CLOSE_PAR_SYMBOL2068       = NULL;
    expression2059.tree = NULL;

    expression2061.tree = NULL;

    expression2063.tree = NULL;

    expression2065.tree = NULL;

    expression2067.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SUBSTRING_SYMBOL2057_tree   = NULL;
    OPEN_PAR_SYMBOL2058_tree   = NULL;
    COMMA_SYMBOL2060_tree   = NULL;
    COMMA_SYMBOL2062_tree   = NULL;
    FROM_SYMBOL2064_tree   = NULL;
    FOR_SYMBOL2066_tree   = NULL;
    CLOSE_PAR_SYMBOL2068_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1759:19: ( SUBSTRING_SYMBOL OPEN_PAR_SYMBOL expression ( COMMA_SYMBOL expression ( COMMA_SYMBOL expression )? | FROM_SYMBOL expression ( FOR_SYMBOL expression )? ) CLOSE_PAR_SYMBOL )
        // MySQL.g:1760:2: SUBSTRING_SYMBOL OPEN_PAR_SYMBOL expression ( COMMA_SYMBOL expression ( COMMA_SYMBOL expression )? | FROM_SYMBOL expression ( FOR_SYMBOL expression )? ) CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            SUBSTRING_SYMBOL2057 = (pANTLR3_COMMON_TOKEN) MATCHT(SUBSTRING_SYMBOL, &FOLLOW_SUBSTRING_SYMBOL_in_substring_function10259);
            if  (HASEXCEPTION())
            {
                goto rulesubstring_functionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SUBSTRING_SYMBOL2057_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SUBSTRING_SYMBOL2057));
            ADAPTOR->addChild(ADAPTOR, root_0, SUBSTRING_SYMBOL2057_tree);
            }

            OPEN_PAR_SYMBOL2058 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_substring_function10261);
            if  (HASEXCEPTION())
            {
                goto rulesubstring_functionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL2058_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2058));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2058_tree);
            }

            FOLLOWPUSH(FOLLOW_expression_in_substring_function10263);
            expression2059=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulesubstring_functionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2059.tree);

            // MySQL.g:1761:2: ( COMMA_SYMBOL expression ( COMMA_SYMBOL expression )? | FROM_SYMBOL expression ( FOR_SYMBOL expression )? )
            {
                int alt558=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt558=1;
                	}
                    break;
                case FROM_SYMBOL:
                	{
                		alt558=2;
                	}
                    break;

                default:
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 558;
                    EXCEPTION->state        = 0;


                    goto rulesubstring_functionEx;

                }

                switch (alt558)
                {
            	case 1:
            	    // MySQL.g:1762:3: COMMA_SYMBOL expression ( COMMA_SYMBOL expression )?
            	    {
            	        COMMA_SYMBOL2060 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_substring_function10270);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesubstring_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL2060_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2060));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2060_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_expression_in_substring_function10272);
            	        expression2061=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesubstring_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2061.tree);

            	        // MySQL.g:1762:27: ( COMMA_SYMBOL expression )?
            	        {
            	            int alt556=2;
            	            switch ( LA(1) )
            	            {
            	                case COMMA_SYMBOL:
            	                	{
            	                		alt556=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt556)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1762:28: COMMA_SYMBOL expression
            	        	    {
            	        	        COMMA_SYMBOL2062 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_substring_function10275);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulesubstring_functionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COMMA_SYMBOL2062_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2062));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2062_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_expression_in_substring_function10277);
            	        	        expression2063=expression(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulesubstring_functionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2063.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1763:5: FROM_SYMBOL expression ( FOR_SYMBOL expression )?
            	    {
            	        FROM_SYMBOL2064 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_substring_function10285);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesubstring_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FROM_SYMBOL2064_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL2064));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL2064_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_expression_in_substring_function10287);
            	        expression2065=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesubstring_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2065.tree);

            	        // MySQL.g:1763:28: ( FOR_SYMBOL expression )?
            	        {
            	            int alt557=2;
            	            switch ( LA(1) )
            	            {
            	                case FOR_SYMBOL:
            	                	{
            	                		alt557=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt557)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1763:29: FOR_SYMBOL expression
            	        	    {
            	        	        FOR_SYMBOL2066 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_substring_function10290);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulesubstring_functionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        FOR_SYMBOL2066_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL2066));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL2066_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_expression_in_substring_function10292);
            	        	        expression2067=expression(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulesubstring_functionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2067.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL2068 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_substring_function10300);
            if  (HASEXCEPTION())
            {
                goto rulesubstring_functionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL2068_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2068));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2068_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulesubstring_functionEx; /* Prevent compiler warnings */
    rulesubstring_functionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end substring_function */

/**
 * $ANTLR start geometry_function
 * MySQL.g:1768:1: geometry_function : ( CONTAINS_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL | GEOMETRYCOLLECTION_SYMBOL expression_list_with_parentheses | LINESTRING_SYMBOL expression_list_with_parentheses | MULTILINESTRING_SYMBOL expression_list_with_parentheses | MULTIPOINT_SYMBOL expression_list_with_parentheses | MULTIPOLYGON_SYMBOL expression_list_with_parentheses | POINT_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL | POLYGON_SYMBOL expression_list_with_parentheses );
 */
static MySQLParser_geometry_function_return
geometry_function(pMySQLParser ctx)
{
    MySQLParser_geometry_function_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    CONTAINS_SYMBOL2069;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2070;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2072;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2074;
    pANTLR3_COMMON_TOKEN    GEOMETRYCOLLECTION_SYMBOL2075;
    pANTLR3_COMMON_TOKEN    LINESTRING_SYMBOL2077;
    pANTLR3_COMMON_TOKEN    MULTILINESTRING_SYMBOL2079;
    pANTLR3_COMMON_TOKEN    MULTIPOINT_SYMBOL2081;
    pANTLR3_COMMON_TOKEN    MULTIPOLYGON_SYMBOL2083;
    pANTLR3_COMMON_TOKEN    POINT_SYMBOL2085;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2086;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2088;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2090;
    pANTLR3_COMMON_TOKEN    POLYGON_SYMBOL2091;
    MySQLParser_expression_return expression2071;
    #undef	RETURN_TYPE_expression2071
    #define	RETURN_TYPE_expression2071 MySQLParser_expression_return

    MySQLParser_expression_return expression2073;
    #undef	RETURN_TYPE_expression2073
    #define	RETURN_TYPE_expression2073 MySQLParser_expression_return

    MySQLParser_expression_list_with_parentheses_return expression_list_with_parentheses2076;
    #undef	RETURN_TYPE_expression_list_with_parentheses2076
    #define	RETURN_TYPE_expression_list_with_parentheses2076 MySQLParser_expression_list_with_parentheses_return

    MySQLParser_expression_list_with_parentheses_return expression_list_with_parentheses2078;
    #undef	RETURN_TYPE_expression_list_with_parentheses2078
    #define	RETURN_TYPE_expression_list_with_parentheses2078 MySQLParser_expression_list_with_parentheses_return

    MySQLParser_expression_list_with_parentheses_return expression_list_with_parentheses2080;
    #undef	RETURN_TYPE_expression_list_with_parentheses2080
    #define	RETURN_TYPE_expression_list_with_parentheses2080 MySQLParser_expression_list_with_parentheses_return

    MySQLParser_expression_list_with_parentheses_return expression_list_with_parentheses2082;
    #undef	RETURN_TYPE_expression_list_with_parentheses2082
    #define	RETURN_TYPE_expression_list_with_parentheses2082 MySQLParser_expression_list_with_parentheses_return

    MySQLParser_expression_list_with_parentheses_return expression_list_with_parentheses2084;
    #undef	RETURN_TYPE_expression_list_with_parentheses2084
    #define	RETURN_TYPE_expression_list_with_parentheses2084 MySQLParser_expression_list_with_parentheses_return

    MySQLParser_expression_return expression2087;
    #undef	RETURN_TYPE_expression2087
    #define	RETURN_TYPE_expression2087 MySQLParser_expression_return

    MySQLParser_expression_return expression2089;
    #undef	RETURN_TYPE_expression2089
    #define	RETURN_TYPE_expression2089 MySQLParser_expression_return

    MySQLParser_expression_list_with_parentheses_return expression_list_with_parentheses2092;
    #undef	RETURN_TYPE_expression_list_with_parentheses2092
    #define	RETURN_TYPE_expression_list_with_parentheses2092 MySQLParser_expression_list_with_parentheses_return

    pANTLR3_BASE_TREE CONTAINS_SYMBOL2069_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2070_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2072_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2074_tree;
    pANTLR3_BASE_TREE GEOMETRYCOLLECTION_SYMBOL2075_tree;
    pANTLR3_BASE_TREE LINESTRING_SYMBOL2077_tree;
    pANTLR3_BASE_TREE MULTILINESTRING_SYMBOL2079_tree;
    pANTLR3_BASE_TREE MULTIPOINT_SYMBOL2081_tree;
    pANTLR3_BASE_TREE MULTIPOLYGON_SYMBOL2083_tree;
    pANTLR3_BASE_TREE POINT_SYMBOL2085_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2086_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2088_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2090_tree;
    pANTLR3_BASE_TREE POLYGON_SYMBOL2091_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CONTAINS_SYMBOL2069       = NULL;
    OPEN_PAR_SYMBOL2070       = NULL;
    COMMA_SYMBOL2072       = NULL;
    CLOSE_PAR_SYMBOL2074       = NULL;
    GEOMETRYCOLLECTION_SYMBOL2075       = NULL;
    LINESTRING_SYMBOL2077       = NULL;
    MULTILINESTRING_SYMBOL2079       = NULL;
    MULTIPOINT_SYMBOL2081       = NULL;
    MULTIPOLYGON_SYMBOL2083       = NULL;
    POINT_SYMBOL2085       = NULL;
    OPEN_PAR_SYMBOL2086       = NULL;
    COMMA_SYMBOL2088       = NULL;
    CLOSE_PAR_SYMBOL2090       = NULL;
    POLYGON_SYMBOL2091       = NULL;
    expression2071.tree = NULL;

    expression2073.tree = NULL;

    expression_list_with_parentheses2076.tree = NULL;

    expression_list_with_parentheses2078.tree = NULL;

    expression_list_with_parentheses2080.tree = NULL;

    expression_list_with_parentheses2082.tree = NULL;

    expression_list_with_parentheses2084.tree = NULL;

    expression2087.tree = NULL;

    expression2089.tree = NULL;

    expression_list_with_parentheses2092.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CONTAINS_SYMBOL2069_tree   = NULL;
    OPEN_PAR_SYMBOL2070_tree   = NULL;
    COMMA_SYMBOL2072_tree   = NULL;
    CLOSE_PAR_SYMBOL2074_tree   = NULL;
    GEOMETRYCOLLECTION_SYMBOL2075_tree   = NULL;
    LINESTRING_SYMBOL2077_tree   = NULL;
    MULTILINESTRING_SYMBOL2079_tree   = NULL;
    MULTIPOINT_SYMBOL2081_tree   = NULL;
    MULTIPOLYGON_SYMBOL2083_tree   = NULL;
    POINT_SYMBOL2085_tree   = NULL;
    OPEN_PAR_SYMBOL2086_tree   = NULL;
    COMMA_SYMBOL2088_tree   = NULL;
    CLOSE_PAR_SYMBOL2090_tree   = NULL;
    POLYGON_SYMBOL2091_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1768:18: ( CONTAINS_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL | GEOMETRYCOLLECTION_SYMBOL expression_list_with_parentheses | LINESTRING_SYMBOL expression_list_with_parentheses | MULTILINESTRING_SYMBOL expression_list_with_parentheses | MULTIPOINT_SYMBOL expression_list_with_parentheses | MULTIPOLYGON_SYMBOL expression_list_with_parentheses | POINT_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL | POLYGON_SYMBOL expression_list_with_parentheses )

            ANTLR3_UINT32 alt559;

            alt559=8;

            switch ( LA(1) )
            {
            case CONTAINS_SYMBOL:
            	{
            		alt559=1;
            	}
                break;
            case GEOMETRYCOLLECTION_SYMBOL:
            	{
            		alt559=2;
            	}
                break;
            case LINESTRING_SYMBOL:
            	{
            		alt559=3;
            	}
                break;
            case MULTILINESTRING_SYMBOL:
            	{
            		alt559=4;
            	}
                break;
            case MULTIPOINT_SYMBOL:
            	{
            		alt559=5;
            	}
                break;
            case MULTIPOLYGON_SYMBOL:
            	{
            		alt559=6;
            	}
                break;
            case POINT_SYMBOL:
            	{
            		alt559=7;
            	}
                break;
            case POLYGON_SYMBOL:
            	{
            		alt559=8;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 559;
                EXCEPTION->state        = 0;


                goto rulegeometry_functionEx;

            }

            switch (alt559)
            {
        	case 1:
        	    // MySQL.g:1769:2: CONTAINS_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CONTAINS_SYMBOL2069 = (pANTLR3_COMMON_TOKEN) MATCHT(CONTAINS_SYMBOL, &FOLLOW_CONTAINS_SYMBOL_in_geometry_function10310);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CONTAINS_SYMBOL2069_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CONTAINS_SYMBOL2069));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CONTAINS_SYMBOL2069_tree);
        	        }

        	        OPEN_PAR_SYMBOL2070 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_geometry_function10312);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2070_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2070));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2070_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_geometry_function10314);
        	        expression2071=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2071.tree);

        	        COMMA_SYMBOL2072 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_geometry_function10316);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2072_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2072));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2072_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_geometry_function10318);
        	        expression2073=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2073.tree);

        	        CLOSE_PAR_SYMBOL2074 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_geometry_function10320);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2074_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2074));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2074_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1770:4: GEOMETRYCOLLECTION_SYMBOL expression_list_with_parentheses
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        GEOMETRYCOLLECTION_SYMBOL2075 = (pANTLR3_COMMON_TOKEN) MATCHT(GEOMETRYCOLLECTION_SYMBOL, &FOLLOW_GEOMETRYCOLLECTION_SYMBOL_in_geometry_function10325);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        GEOMETRYCOLLECTION_SYMBOL2075_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GEOMETRYCOLLECTION_SYMBOL2075));
        	        ADAPTOR->addChild(ADAPTOR, root_0, GEOMETRYCOLLECTION_SYMBOL2075_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_list_with_parentheses_in_geometry_function10327);
        	        expression_list_with_parentheses2076=expression_list_with_parentheses(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression_list_with_parentheses2076.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1771:4: LINESTRING_SYMBOL expression_list_with_parentheses
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        LINESTRING_SYMBOL2077 = (pANTLR3_COMMON_TOKEN) MATCHT(LINESTRING_SYMBOL, &FOLLOW_LINESTRING_SYMBOL_in_geometry_function10332);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LINESTRING_SYMBOL2077_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LINESTRING_SYMBOL2077));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LINESTRING_SYMBOL2077_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_list_with_parentheses_in_geometry_function10334);
        	        expression_list_with_parentheses2078=expression_list_with_parentheses(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression_list_with_parentheses2078.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1772:4: MULTILINESTRING_SYMBOL expression_list_with_parentheses
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MULTILINESTRING_SYMBOL2079 = (pANTLR3_COMMON_TOKEN) MATCHT(MULTILINESTRING_SYMBOL, &FOLLOW_MULTILINESTRING_SYMBOL_in_geometry_function10339);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MULTILINESTRING_SYMBOL2079_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MULTILINESTRING_SYMBOL2079));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MULTILINESTRING_SYMBOL2079_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_list_with_parentheses_in_geometry_function10341);
        	        expression_list_with_parentheses2080=expression_list_with_parentheses(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression_list_with_parentheses2080.tree);

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1773:4: MULTIPOINT_SYMBOL expression_list_with_parentheses
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MULTIPOINT_SYMBOL2081 = (pANTLR3_COMMON_TOKEN) MATCHT(MULTIPOINT_SYMBOL, &FOLLOW_MULTIPOINT_SYMBOL_in_geometry_function10346);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MULTIPOINT_SYMBOL2081_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MULTIPOINT_SYMBOL2081));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MULTIPOINT_SYMBOL2081_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_list_with_parentheses_in_geometry_function10348);
        	        expression_list_with_parentheses2082=expression_list_with_parentheses(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression_list_with_parentheses2082.tree);

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:1774:4: MULTIPOLYGON_SYMBOL expression_list_with_parentheses
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MULTIPOLYGON_SYMBOL2083 = (pANTLR3_COMMON_TOKEN) MATCHT(MULTIPOLYGON_SYMBOL, &FOLLOW_MULTIPOLYGON_SYMBOL_in_geometry_function10353);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MULTIPOLYGON_SYMBOL2083_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MULTIPOLYGON_SYMBOL2083));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MULTIPOLYGON_SYMBOL2083_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_list_with_parentheses_in_geometry_function10355);
        	        expression_list_with_parentheses2084=expression_list_with_parentheses(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression_list_with_parentheses2084.tree);

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:1775:4: POINT_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        POINT_SYMBOL2085 = (pANTLR3_COMMON_TOKEN) MATCHT(POINT_SYMBOL, &FOLLOW_POINT_SYMBOL_in_geometry_function10360);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        POINT_SYMBOL2085_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, POINT_SYMBOL2085));
        	        ADAPTOR->addChild(ADAPTOR, root_0, POINT_SYMBOL2085_tree);
        	        }

        	        OPEN_PAR_SYMBOL2086 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_geometry_function10362);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2086_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2086));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2086_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_geometry_function10364);
        	        expression2087=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2087.tree);

        	        COMMA_SYMBOL2088 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_geometry_function10366);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2088_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2088));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2088_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_geometry_function10368);
        	        expression2089=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2089.tree);

        	        CLOSE_PAR_SYMBOL2090 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_geometry_function10370);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2090_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2090));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2090_tree);
        	        }

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:1776:4: POLYGON_SYMBOL expression_list_with_parentheses
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        POLYGON_SYMBOL2091 = (pANTLR3_COMMON_TOKEN) MATCHT(POLYGON_SYMBOL, &FOLLOW_POLYGON_SYMBOL_in_geometry_function10375);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        POLYGON_SYMBOL2091_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, POLYGON_SYMBOL2091));
        	        ADAPTOR->addChild(ADAPTOR, root_0, POLYGON_SYMBOL2091_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_list_with_parentheses_in_geometry_function10377);
        	        expression_list_with_parentheses2092=expression_list_with_parentheses(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression_list_with_parentheses2092.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulegeometry_functionEx; /* Prevent compiler warnings */
    rulegeometry_functionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end geometry_function */

/**
 * $ANTLR start aggregate_function
 * MySQL.g:1779:1: aggregate_function : ( AVG_SYMBOL OPEN_PAR_SYMBOL ( DISTINCT_SYMBOL )? expression CLOSE_PAR_SYMBOL | BIT_AND_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | BIT_OR_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | BIT_XOR_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | count_function | MIN_SYMBOL OPEN_PAR_SYMBOL ( DISTINCT_SYMBOL )? expression CLOSE_PAR_SYMBOL | MAX_SYMBOL OPEN_PAR_SYMBOL ( DISTINCT_SYMBOL )? expression CLOSE_PAR_SYMBOL | STD_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | VARIANCE_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | STDDEV_SAMP_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | VAR_SAMP_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | SUM_SYMBOL OPEN_PAR_SYMBOL ( DISTINCT_SYMBOL )? expression CLOSE_PAR_SYMBOL | GROUP_CONCAT_SYMBOL OPEN_PAR_SYMBOL ( DISTINCT_SYMBOL )? expression_list ( order_by_clause )? ( SEPARATOR_SYMBOL string_literal )? CLOSE_PAR_SYMBOL );
 */
static MySQLParser_aggregate_function_return
aggregate_function(pMySQLParser ctx)
{
    MySQLParser_aggregate_function_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    AVG_SYMBOL2093;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2094;
    pANTLR3_COMMON_TOKEN    DISTINCT_SYMBOL2095;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2097;
    pANTLR3_COMMON_TOKEN    BIT_AND_SYMBOL2098;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2099;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2101;
    pANTLR3_COMMON_TOKEN    BIT_OR_SYMBOL2102;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2103;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2105;
    pANTLR3_COMMON_TOKEN    BIT_XOR_SYMBOL2106;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2107;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2109;
    pANTLR3_COMMON_TOKEN    MIN_SYMBOL2111;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2112;
    pANTLR3_COMMON_TOKEN    DISTINCT_SYMBOL2113;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2115;
    pANTLR3_COMMON_TOKEN    MAX_SYMBOL2116;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2117;
    pANTLR3_COMMON_TOKEN    DISTINCT_SYMBOL2118;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2120;
    pANTLR3_COMMON_TOKEN    STD_SYMBOL2121;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2122;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2124;
    pANTLR3_COMMON_TOKEN    VARIANCE_SYMBOL2125;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2126;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2128;
    pANTLR3_COMMON_TOKEN    STDDEV_SAMP_SYMBOL2129;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2130;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2132;
    pANTLR3_COMMON_TOKEN    VAR_SAMP_SYMBOL2133;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2134;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2136;
    pANTLR3_COMMON_TOKEN    SUM_SYMBOL2137;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2138;
    pANTLR3_COMMON_TOKEN    DISTINCT_SYMBOL2139;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2141;
    pANTLR3_COMMON_TOKEN    GROUP_CONCAT_SYMBOL2142;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2143;
    pANTLR3_COMMON_TOKEN    DISTINCT_SYMBOL2144;
    pANTLR3_COMMON_TOKEN    SEPARATOR_SYMBOL2147;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2149;
    MySQLParser_expression_return expression2096;
    #undef	RETURN_TYPE_expression2096
    #define	RETURN_TYPE_expression2096 MySQLParser_expression_return

    MySQLParser_expression_return expression2100;
    #undef	RETURN_TYPE_expression2100
    #define	RETURN_TYPE_expression2100 MySQLParser_expression_return

    MySQLParser_expression_return expression2104;
    #undef	RETURN_TYPE_expression2104
    #define	RETURN_TYPE_expression2104 MySQLParser_expression_return

    MySQLParser_expression_return expression2108;
    #undef	RETURN_TYPE_expression2108
    #define	RETURN_TYPE_expression2108 MySQLParser_expression_return

    MySQLParser_count_function_return count_function2110;
    #undef	RETURN_TYPE_count_function2110
    #define	RETURN_TYPE_count_function2110 MySQLParser_count_function_return

    MySQLParser_expression_return expression2114;
    #undef	RETURN_TYPE_expression2114
    #define	RETURN_TYPE_expression2114 MySQLParser_expression_return

    MySQLParser_expression_return expression2119;
    #undef	RETURN_TYPE_expression2119
    #define	RETURN_TYPE_expression2119 MySQLParser_expression_return

    MySQLParser_expression_return expression2123;
    #undef	RETURN_TYPE_expression2123
    #define	RETURN_TYPE_expression2123 MySQLParser_expression_return

    MySQLParser_expression_return expression2127;
    #undef	RETURN_TYPE_expression2127
    #define	RETURN_TYPE_expression2127 MySQLParser_expression_return

    MySQLParser_expression_return expression2131;
    #undef	RETURN_TYPE_expression2131
    #define	RETURN_TYPE_expression2131 MySQLParser_expression_return

    MySQLParser_expression_return expression2135;
    #undef	RETURN_TYPE_expression2135
    #define	RETURN_TYPE_expression2135 MySQLParser_expression_return

    MySQLParser_expression_return expression2140;
    #undef	RETURN_TYPE_expression2140
    #define	RETURN_TYPE_expression2140 MySQLParser_expression_return

    MySQLParser_expression_list_return expression_list2145;
    #undef	RETURN_TYPE_expression_list2145
    #define	RETURN_TYPE_expression_list2145 MySQLParser_expression_list_return

    MySQLParser_order_by_clause_return order_by_clause2146;
    #undef	RETURN_TYPE_order_by_clause2146
    #define	RETURN_TYPE_order_by_clause2146 MySQLParser_order_by_clause_return

    MySQLParser_string_literal_return string_literal2148;
    #undef	RETURN_TYPE_string_literal2148
    #define	RETURN_TYPE_string_literal2148 MySQLParser_string_literal_return

    pANTLR3_BASE_TREE AVG_SYMBOL2093_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2094_tree;
    pANTLR3_BASE_TREE DISTINCT_SYMBOL2095_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2097_tree;
    pANTLR3_BASE_TREE BIT_AND_SYMBOL2098_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2099_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2101_tree;
    pANTLR3_BASE_TREE BIT_OR_SYMBOL2102_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2103_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2105_tree;
    pANTLR3_BASE_TREE BIT_XOR_SYMBOL2106_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2107_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2109_tree;
    pANTLR3_BASE_TREE MIN_SYMBOL2111_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2112_tree;
    pANTLR3_BASE_TREE DISTINCT_SYMBOL2113_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2115_tree;
    pANTLR3_BASE_TREE MAX_SYMBOL2116_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2117_tree;
    pANTLR3_BASE_TREE DISTINCT_SYMBOL2118_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2120_tree;
    pANTLR3_BASE_TREE STD_SYMBOL2121_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2122_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2124_tree;
    pANTLR3_BASE_TREE VARIANCE_SYMBOL2125_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2126_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2128_tree;
    pANTLR3_BASE_TREE STDDEV_SAMP_SYMBOL2129_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2130_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2132_tree;
    pANTLR3_BASE_TREE VAR_SAMP_SYMBOL2133_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2134_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2136_tree;
    pANTLR3_BASE_TREE SUM_SYMBOL2137_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2138_tree;
    pANTLR3_BASE_TREE DISTINCT_SYMBOL2139_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2141_tree;
    pANTLR3_BASE_TREE GROUP_CONCAT_SYMBOL2142_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2143_tree;
    pANTLR3_BASE_TREE DISTINCT_SYMBOL2144_tree;
    pANTLR3_BASE_TREE SEPARATOR_SYMBOL2147_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2149_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    AVG_SYMBOL2093       = NULL;
    OPEN_PAR_SYMBOL2094       = NULL;
    DISTINCT_SYMBOL2095       = NULL;
    CLOSE_PAR_SYMBOL2097       = NULL;
    BIT_AND_SYMBOL2098       = NULL;
    OPEN_PAR_SYMBOL2099       = NULL;
    CLOSE_PAR_SYMBOL2101       = NULL;
    BIT_OR_SYMBOL2102       = NULL;
    OPEN_PAR_SYMBOL2103       = NULL;
    CLOSE_PAR_SYMBOL2105       = NULL;
    BIT_XOR_SYMBOL2106       = NULL;
    OPEN_PAR_SYMBOL2107       = NULL;
    CLOSE_PAR_SYMBOL2109       = NULL;
    MIN_SYMBOL2111       = NULL;
    OPEN_PAR_SYMBOL2112       = NULL;
    DISTINCT_SYMBOL2113       = NULL;
    CLOSE_PAR_SYMBOL2115       = NULL;
    MAX_SYMBOL2116       = NULL;
    OPEN_PAR_SYMBOL2117       = NULL;
    DISTINCT_SYMBOL2118       = NULL;
    CLOSE_PAR_SYMBOL2120       = NULL;
    STD_SYMBOL2121       = NULL;
    OPEN_PAR_SYMBOL2122       = NULL;
    CLOSE_PAR_SYMBOL2124       = NULL;
    VARIANCE_SYMBOL2125       = NULL;
    OPEN_PAR_SYMBOL2126       = NULL;
    CLOSE_PAR_SYMBOL2128       = NULL;
    STDDEV_SAMP_SYMBOL2129       = NULL;
    OPEN_PAR_SYMBOL2130       = NULL;
    CLOSE_PAR_SYMBOL2132       = NULL;
    VAR_SAMP_SYMBOL2133       = NULL;
    OPEN_PAR_SYMBOL2134       = NULL;
    CLOSE_PAR_SYMBOL2136       = NULL;
    SUM_SYMBOL2137       = NULL;
    OPEN_PAR_SYMBOL2138       = NULL;
    DISTINCT_SYMBOL2139       = NULL;
    CLOSE_PAR_SYMBOL2141       = NULL;
    GROUP_CONCAT_SYMBOL2142       = NULL;
    OPEN_PAR_SYMBOL2143       = NULL;
    DISTINCT_SYMBOL2144       = NULL;
    SEPARATOR_SYMBOL2147       = NULL;
    CLOSE_PAR_SYMBOL2149       = NULL;
    expression2096.tree = NULL;

    expression2100.tree = NULL;

    expression2104.tree = NULL;

    expression2108.tree = NULL;

    count_function2110.tree = NULL;

    expression2114.tree = NULL;

    expression2119.tree = NULL;

    expression2123.tree = NULL;

    expression2127.tree = NULL;

    expression2131.tree = NULL;

    expression2135.tree = NULL;

    expression2140.tree = NULL;

    expression_list2145.tree = NULL;

    order_by_clause2146.tree = NULL;

    string_literal2148.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    AVG_SYMBOL2093_tree   = NULL;
    OPEN_PAR_SYMBOL2094_tree   = NULL;
    DISTINCT_SYMBOL2095_tree   = NULL;
    CLOSE_PAR_SYMBOL2097_tree   = NULL;
    BIT_AND_SYMBOL2098_tree   = NULL;
    OPEN_PAR_SYMBOL2099_tree   = NULL;
    CLOSE_PAR_SYMBOL2101_tree   = NULL;
    BIT_OR_SYMBOL2102_tree   = NULL;
    OPEN_PAR_SYMBOL2103_tree   = NULL;
    CLOSE_PAR_SYMBOL2105_tree   = NULL;
    BIT_XOR_SYMBOL2106_tree   = NULL;
    OPEN_PAR_SYMBOL2107_tree   = NULL;
    CLOSE_PAR_SYMBOL2109_tree   = NULL;
    MIN_SYMBOL2111_tree   = NULL;
    OPEN_PAR_SYMBOL2112_tree   = NULL;
    DISTINCT_SYMBOL2113_tree   = NULL;
    CLOSE_PAR_SYMBOL2115_tree   = NULL;
    MAX_SYMBOL2116_tree   = NULL;
    OPEN_PAR_SYMBOL2117_tree   = NULL;
    DISTINCT_SYMBOL2118_tree   = NULL;
    CLOSE_PAR_SYMBOL2120_tree   = NULL;
    STD_SYMBOL2121_tree   = NULL;
    OPEN_PAR_SYMBOL2122_tree   = NULL;
    CLOSE_PAR_SYMBOL2124_tree   = NULL;
    VARIANCE_SYMBOL2125_tree   = NULL;
    OPEN_PAR_SYMBOL2126_tree   = NULL;
    CLOSE_PAR_SYMBOL2128_tree   = NULL;
    STDDEV_SAMP_SYMBOL2129_tree   = NULL;
    OPEN_PAR_SYMBOL2130_tree   = NULL;
    CLOSE_PAR_SYMBOL2132_tree   = NULL;
    VAR_SAMP_SYMBOL2133_tree   = NULL;
    OPEN_PAR_SYMBOL2134_tree   = NULL;
    CLOSE_PAR_SYMBOL2136_tree   = NULL;
    SUM_SYMBOL2137_tree   = NULL;
    OPEN_PAR_SYMBOL2138_tree   = NULL;
    DISTINCT_SYMBOL2139_tree   = NULL;
    CLOSE_PAR_SYMBOL2141_tree   = NULL;
    GROUP_CONCAT_SYMBOL2142_tree   = NULL;
    OPEN_PAR_SYMBOL2143_tree   = NULL;
    DISTINCT_SYMBOL2144_tree   = NULL;
    SEPARATOR_SYMBOL2147_tree   = NULL;
    CLOSE_PAR_SYMBOL2149_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1779:19: ( AVG_SYMBOL OPEN_PAR_SYMBOL ( DISTINCT_SYMBOL )? expression CLOSE_PAR_SYMBOL | BIT_AND_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | BIT_OR_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | BIT_XOR_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | count_function | MIN_SYMBOL OPEN_PAR_SYMBOL ( DISTINCT_SYMBOL )? expression CLOSE_PAR_SYMBOL | MAX_SYMBOL OPEN_PAR_SYMBOL ( DISTINCT_SYMBOL )? expression CLOSE_PAR_SYMBOL | STD_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | VARIANCE_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | STDDEV_SAMP_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | VAR_SAMP_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | SUM_SYMBOL OPEN_PAR_SYMBOL ( DISTINCT_SYMBOL )? expression CLOSE_PAR_SYMBOL | GROUP_CONCAT_SYMBOL OPEN_PAR_SYMBOL ( DISTINCT_SYMBOL )? expression_list ( order_by_clause )? ( SEPARATOR_SYMBOL string_literal )? CLOSE_PAR_SYMBOL )

            ANTLR3_UINT32 alt567;

            alt567=13;

            switch ( LA(1) )
            {
            case AVG_SYMBOL:
            	{
            		alt567=1;
            	}
                break;
            case BIT_AND_SYMBOL:
            	{
            		alt567=2;
            	}
                break;
            case BIT_OR_SYMBOL:
            	{
            		alt567=3;
            	}
                break;
            case BIT_XOR_SYMBOL:
            	{
            		alt567=4;
            	}
                break;
            case COUNT_SYMBOL:
            	{
            		alt567=5;
            	}
                break;
            case MIN_SYMBOL:
            	{
            		alt567=6;
            	}
                break;
            case MAX_SYMBOL:
            	{
            		alt567=7;
            	}
                break;
            case STD_SYMBOL:
            	{
            		alt567=8;
            	}
                break;
            case VARIANCE_SYMBOL:
            	{
            		alt567=9;
            	}
                break;
            case STDDEV_SAMP_SYMBOL:
            	{
            		alt567=10;
            	}
                break;
            case VAR_SAMP_SYMBOL:
            	{
            		alt567=11;
            	}
                break;
            case SUM_SYMBOL:
            	{
            		alt567=12;
            	}
                break;
            case GROUP_CONCAT_SYMBOL:
            	{
            		alt567=13;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 567;
                EXCEPTION->state        = 0;


                goto ruleaggregate_functionEx;

            }

            switch (alt567)
            {
        	case 1:
        	    // MySQL.g:1780:2: AVG_SYMBOL OPEN_PAR_SYMBOL ( DISTINCT_SYMBOL )? expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        AVG_SYMBOL2093 = (pANTLR3_COMMON_TOKEN) MATCHT(AVG_SYMBOL, &FOLLOW_AVG_SYMBOL_in_aggregate_function10386);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        AVG_SYMBOL2093_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AVG_SYMBOL2093));
        	        ADAPTOR->addChild(ADAPTOR, root_0, AVG_SYMBOL2093_tree);
        	        }

        	        OPEN_PAR_SYMBOL2094 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10388);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2094_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2094));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2094_tree);
        	        }

        	        // MySQL.g:1780:29: ( DISTINCT_SYMBOL )?
        	        {
        	            int alt560=2;
        	            switch ( LA(1) )
        	            {
        	                case DISTINCT_SYMBOL:
        	                	{
        	                		alt560=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt560)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1780:29: DISTINCT_SYMBOL
        	        	    {
        	        	        DISTINCT_SYMBOL2095 = (pANTLR3_COMMON_TOKEN) MATCHT(DISTINCT_SYMBOL, &FOLLOW_DISTINCT_SYMBOL_in_aggregate_function10390);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleaggregate_functionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DISTINCT_SYMBOL2095_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DISTINCT_SYMBOL2095));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DISTINCT_SYMBOL2095_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_aggregate_function10393);
        	        expression2096=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2096.tree);

        	        CLOSE_PAR_SYMBOL2097 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10395);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2097_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2097));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2097_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1781:4: BIT_AND_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BIT_AND_SYMBOL2098 = (pANTLR3_COMMON_TOKEN) MATCHT(BIT_AND_SYMBOL, &FOLLOW_BIT_AND_SYMBOL_in_aggregate_function10400);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BIT_AND_SYMBOL2098_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BIT_AND_SYMBOL2098));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BIT_AND_SYMBOL2098_tree);
        	        }

        	        OPEN_PAR_SYMBOL2099 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10402);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2099_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2099));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2099_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_aggregate_function10404);
        	        expression2100=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2100.tree);

        	        CLOSE_PAR_SYMBOL2101 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10406);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2101_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2101));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2101_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1782:4: BIT_OR_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BIT_OR_SYMBOL2102 = (pANTLR3_COMMON_TOKEN) MATCHT(BIT_OR_SYMBOL, &FOLLOW_BIT_OR_SYMBOL_in_aggregate_function10411);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BIT_OR_SYMBOL2102_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BIT_OR_SYMBOL2102));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BIT_OR_SYMBOL2102_tree);
        	        }

        	        OPEN_PAR_SYMBOL2103 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10413);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2103_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2103));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2103_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_aggregate_function10415);
        	        expression2104=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2104.tree);

        	        CLOSE_PAR_SYMBOL2105 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10417);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2105_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2105));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2105_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1783:4: BIT_XOR_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BIT_XOR_SYMBOL2106 = (pANTLR3_COMMON_TOKEN) MATCHT(BIT_XOR_SYMBOL, &FOLLOW_BIT_XOR_SYMBOL_in_aggregate_function10422);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BIT_XOR_SYMBOL2106_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BIT_XOR_SYMBOL2106));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BIT_XOR_SYMBOL2106_tree);
        	        }

        	        OPEN_PAR_SYMBOL2107 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10424);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2107_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2107));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2107_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_aggregate_function10426);
        	        expression2108=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2108.tree);

        	        CLOSE_PAR_SYMBOL2109 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10428);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2109_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2109));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2109_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1784:4: count_function
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_count_function_in_aggregate_function10433);
        	        count_function2110=count_function(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, count_function2110.tree);

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:1785:4: MIN_SYMBOL OPEN_PAR_SYMBOL ( DISTINCT_SYMBOL )? expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MIN_SYMBOL2111 = (pANTLR3_COMMON_TOKEN) MATCHT(MIN_SYMBOL, &FOLLOW_MIN_SYMBOL_in_aggregate_function10438);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MIN_SYMBOL2111_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MIN_SYMBOL2111));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MIN_SYMBOL2111_tree);
        	        }

        	        OPEN_PAR_SYMBOL2112 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10440);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2112_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2112));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2112_tree);
        	        }

        	        // MySQL.g:1785:31: ( DISTINCT_SYMBOL )?
        	        {
        	            int alt561=2;
        	            switch ( LA(1) )
        	            {
        	                case DISTINCT_SYMBOL:
        	                	{
        	                		alt561=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt561)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1785:31: DISTINCT_SYMBOL
        	        	    {
        	        	        DISTINCT_SYMBOL2113 = (pANTLR3_COMMON_TOKEN) MATCHT(DISTINCT_SYMBOL, &FOLLOW_DISTINCT_SYMBOL_in_aggregate_function10442);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleaggregate_functionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DISTINCT_SYMBOL2113_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DISTINCT_SYMBOL2113));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DISTINCT_SYMBOL2113_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_aggregate_function10445);
        	        expression2114=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2114.tree);

        	        CLOSE_PAR_SYMBOL2115 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10447);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2115_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2115));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2115_tree);
        	        }

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:1786:4: MAX_SYMBOL OPEN_PAR_SYMBOL ( DISTINCT_SYMBOL )? expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MAX_SYMBOL2116 = (pANTLR3_COMMON_TOKEN) MATCHT(MAX_SYMBOL, &FOLLOW_MAX_SYMBOL_in_aggregate_function10452);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MAX_SYMBOL2116_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAX_SYMBOL2116));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MAX_SYMBOL2116_tree);
        	        }

        	        OPEN_PAR_SYMBOL2117 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10454);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2117_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2117));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2117_tree);
        	        }

        	        // MySQL.g:1786:31: ( DISTINCT_SYMBOL )?
        	        {
        	            int alt562=2;
        	            switch ( LA(1) )
        	            {
        	                case DISTINCT_SYMBOL:
        	                	{
        	                		alt562=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt562)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1786:31: DISTINCT_SYMBOL
        	        	    {
        	        	        DISTINCT_SYMBOL2118 = (pANTLR3_COMMON_TOKEN) MATCHT(DISTINCT_SYMBOL, &FOLLOW_DISTINCT_SYMBOL_in_aggregate_function10456);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleaggregate_functionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DISTINCT_SYMBOL2118_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DISTINCT_SYMBOL2118));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DISTINCT_SYMBOL2118_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_aggregate_function10459);
        	        expression2119=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2119.tree);

        	        CLOSE_PAR_SYMBOL2120 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10461);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2120_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2120));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2120_tree);
        	        }

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:1787:4: STD_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        STD_SYMBOL2121 = (pANTLR3_COMMON_TOKEN) MATCHT(STD_SYMBOL, &FOLLOW_STD_SYMBOL_in_aggregate_function10466);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        STD_SYMBOL2121_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STD_SYMBOL2121));
        	        ADAPTOR->addChild(ADAPTOR, root_0, STD_SYMBOL2121_tree);
        	        }

        	        OPEN_PAR_SYMBOL2122 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10468);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2122_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2122));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2122_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_aggregate_function10470);
        	        expression2123=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2123.tree);

        	        CLOSE_PAR_SYMBOL2124 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10472);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2124_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2124));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2124_tree);
        	        }

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:1788:4: VARIANCE_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        VARIANCE_SYMBOL2125 = (pANTLR3_COMMON_TOKEN) MATCHT(VARIANCE_SYMBOL, &FOLLOW_VARIANCE_SYMBOL_in_aggregate_function10477);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        VARIANCE_SYMBOL2125_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VARIANCE_SYMBOL2125));
        	        ADAPTOR->addChild(ADAPTOR, root_0, VARIANCE_SYMBOL2125_tree);
        	        }

        	        OPEN_PAR_SYMBOL2126 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10479);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2126_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2126));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2126_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_aggregate_function10481);
        	        expression2127=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2127.tree);

        	        CLOSE_PAR_SYMBOL2128 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10483);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2128_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2128));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2128_tree);
        	        }

        	    }
        	    break;
        	case 10:
        	    // MySQL.g:1789:4: STDDEV_SAMP_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        STDDEV_SAMP_SYMBOL2129 = (pANTLR3_COMMON_TOKEN) MATCHT(STDDEV_SAMP_SYMBOL, &FOLLOW_STDDEV_SAMP_SYMBOL_in_aggregate_function10488);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        STDDEV_SAMP_SYMBOL2129_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STDDEV_SAMP_SYMBOL2129));
        	        ADAPTOR->addChild(ADAPTOR, root_0, STDDEV_SAMP_SYMBOL2129_tree);
        	        }

        	        OPEN_PAR_SYMBOL2130 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10490);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2130_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2130));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2130_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_aggregate_function10492);
        	        expression2131=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2131.tree);

        	        CLOSE_PAR_SYMBOL2132 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10494);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2132_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2132));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2132_tree);
        	        }

        	    }
        	    break;
        	case 11:
        	    // MySQL.g:1790:4: VAR_SAMP_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        VAR_SAMP_SYMBOL2133 = (pANTLR3_COMMON_TOKEN) MATCHT(VAR_SAMP_SYMBOL, &FOLLOW_VAR_SAMP_SYMBOL_in_aggregate_function10499);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        VAR_SAMP_SYMBOL2133_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VAR_SAMP_SYMBOL2133));
        	        ADAPTOR->addChild(ADAPTOR, root_0, VAR_SAMP_SYMBOL2133_tree);
        	        }

        	        OPEN_PAR_SYMBOL2134 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10501);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2134_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2134));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2134_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_aggregate_function10503);
        	        expression2135=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2135.tree);

        	        CLOSE_PAR_SYMBOL2136 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10505);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2136_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2136));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2136_tree);
        	        }

        	    }
        	    break;
        	case 12:
        	    // MySQL.g:1791:4: SUM_SYMBOL OPEN_PAR_SYMBOL ( DISTINCT_SYMBOL )? expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SUM_SYMBOL2137 = (pANTLR3_COMMON_TOKEN) MATCHT(SUM_SYMBOL, &FOLLOW_SUM_SYMBOL_in_aggregate_function10510);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SUM_SYMBOL2137_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SUM_SYMBOL2137));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SUM_SYMBOL2137_tree);
        	        }

        	        OPEN_PAR_SYMBOL2138 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10512);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2138_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2138));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2138_tree);
        	        }

        	        // MySQL.g:1791:31: ( DISTINCT_SYMBOL )?
        	        {
        	            int alt563=2;
        	            switch ( LA(1) )
        	            {
        	                case DISTINCT_SYMBOL:
        	                	{
        	                		alt563=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt563)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1791:31: DISTINCT_SYMBOL
        	        	    {
        	        	        DISTINCT_SYMBOL2139 = (pANTLR3_COMMON_TOKEN) MATCHT(DISTINCT_SYMBOL, &FOLLOW_DISTINCT_SYMBOL_in_aggregate_function10514);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleaggregate_functionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DISTINCT_SYMBOL2139_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DISTINCT_SYMBOL2139));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DISTINCT_SYMBOL2139_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_aggregate_function10517);
        	        expression2140=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2140.tree);

        	        CLOSE_PAR_SYMBOL2141 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10519);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2141_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2141));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2141_tree);
        	        }

        	    }
        	    break;
        	case 13:
        	    // MySQL.g:1792:4: GROUP_CONCAT_SYMBOL OPEN_PAR_SYMBOL ( DISTINCT_SYMBOL )? expression_list ( order_by_clause )? ( SEPARATOR_SYMBOL string_literal )? CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        GROUP_CONCAT_SYMBOL2142 = (pANTLR3_COMMON_TOKEN) MATCHT(GROUP_CONCAT_SYMBOL, &FOLLOW_GROUP_CONCAT_SYMBOL_in_aggregate_function10524);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        GROUP_CONCAT_SYMBOL2142_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GROUP_CONCAT_SYMBOL2142));
        	        ADAPTOR->addChild(ADAPTOR, root_0, GROUP_CONCAT_SYMBOL2142_tree);
        	        }

        	        OPEN_PAR_SYMBOL2143 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function10526);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2143_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2143));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2143_tree);
        	        }

        	        // MySQL.g:1792:40: ( DISTINCT_SYMBOL )?
        	        {
        	            int alt564=2;
        	            switch ( LA(1) )
        	            {
        	                case DISTINCT_SYMBOL:
        	                	{
        	                		alt564=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt564)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1792:40: DISTINCT_SYMBOL
        	        	    {
        	        	        DISTINCT_SYMBOL2144 = (pANTLR3_COMMON_TOKEN) MATCHT(DISTINCT_SYMBOL, &FOLLOW_DISTINCT_SYMBOL_in_aggregate_function10528);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleaggregate_functionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DISTINCT_SYMBOL2144_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DISTINCT_SYMBOL2144));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DISTINCT_SYMBOL2144_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_list_in_aggregate_function10531);
        	        expression_list2145=expression_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression_list2145.tree);

        	        // MySQL.g:1792:73: ( order_by_clause )?
        	        {
        	            int alt565=2;
        	            switch ( LA(1) )
        	            {
        	                case ORDER_SYMBOL:
        	                	{
        	                		alt565=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt565)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1792:73: order_by_clause
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_order_by_clause_in_aggregate_function10533);
        	        	        order_by_clause2146=order_by_clause(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleaggregate_functionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, order_by_clause2146.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:1792:90: ( SEPARATOR_SYMBOL string_literal )?
        	        {
        	            int alt566=2;
        	            switch ( LA(1) )
        	            {
        	                case SEPARATOR_SYMBOL:
        	                	{
        	                		alt566=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt566)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1792:91: SEPARATOR_SYMBOL string_literal
        	        	    {
        	        	        SEPARATOR_SYMBOL2147 = (pANTLR3_COMMON_TOKEN) MATCHT(SEPARATOR_SYMBOL, &FOLLOW_SEPARATOR_SYMBOL_in_aggregate_function10537);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleaggregate_functionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        SEPARATOR_SYMBOL2147_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SEPARATOR_SYMBOL2147));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, SEPARATOR_SYMBOL2147_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_string_literal_in_aggregate_function10539);
        	        	        string_literal2148=string_literal(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleaggregate_functionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal2148.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        CLOSE_PAR_SYMBOL2149 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function10543);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2149_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2149));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2149_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleaggregate_functionEx; /* Prevent compiler warnings */
    ruleaggregate_functionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end aggregate_function */

/**
 * $ANTLR start count_function
 * MySQL.g:1795:1: count_function : COUNT_SYMBOL OPEN_PAR_SYMBOL ( ( ALL_SYMBOL )? MULT_OPERATOR CLOSE_PAR_SYMBOL | ( DISTINCT_SYMBOL )? expression_list CLOSE_PAR_SYMBOL ) ;
 */
static MySQLParser_count_function_return
count_function(pMySQLParser ctx)
{
    MySQLParser_count_function_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COUNT_SYMBOL2150;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2151;
    pANTLR3_COMMON_TOKEN    ALL_SYMBOL2152;
    pANTLR3_COMMON_TOKEN    MULT_OPERATOR2153;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2154;
    pANTLR3_COMMON_TOKEN    DISTINCT_SYMBOL2155;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2157;
    MySQLParser_expression_list_return expression_list2156;
    #undef	RETURN_TYPE_expression_list2156
    #define	RETURN_TYPE_expression_list2156 MySQLParser_expression_list_return

    pANTLR3_BASE_TREE COUNT_SYMBOL2150_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2151_tree;
    pANTLR3_BASE_TREE ALL_SYMBOL2152_tree;
    pANTLR3_BASE_TREE MULT_OPERATOR2153_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2154_tree;
    pANTLR3_BASE_TREE DISTINCT_SYMBOL2155_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2157_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COUNT_SYMBOL2150       = NULL;
    OPEN_PAR_SYMBOL2151       = NULL;
    ALL_SYMBOL2152       = NULL;
    MULT_OPERATOR2153       = NULL;
    CLOSE_PAR_SYMBOL2154       = NULL;
    DISTINCT_SYMBOL2155       = NULL;
    CLOSE_PAR_SYMBOL2157       = NULL;
    expression_list2156.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COUNT_SYMBOL2150_tree   = NULL;
    OPEN_PAR_SYMBOL2151_tree   = NULL;
    ALL_SYMBOL2152_tree   = NULL;
    MULT_OPERATOR2153_tree   = NULL;
    CLOSE_PAR_SYMBOL2154_tree   = NULL;
    DISTINCT_SYMBOL2155_tree   = NULL;
    CLOSE_PAR_SYMBOL2157_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1795:15: ( COUNT_SYMBOL OPEN_PAR_SYMBOL ( ( ALL_SYMBOL )? MULT_OPERATOR CLOSE_PAR_SYMBOL | ( DISTINCT_SYMBOL )? expression_list CLOSE_PAR_SYMBOL ) )
        // MySQL.g:1796:2: COUNT_SYMBOL OPEN_PAR_SYMBOL ( ( ALL_SYMBOL )? MULT_OPERATOR CLOSE_PAR_SYMBOL | ( DISTINCT_SYMBOL )? expression_list CLOSE_PAR_SYMBOL )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            COUNT_SYMBOL2150 = (pANTLR3_COMMON_TOKEN) MATCHT(COUNT_SYMBOL, &FOLLOW_COUNT_SYMBOL_in_count_function10552);
            if  (HASEXCEPTION())
            {
                goto rulecount_functionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            COUNT_SYMBOL2150_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COUNT_SYMBOL2150));
            ADAPTOR->addChild(ADAPTOR, root_0, COUNT_SYMBOL2150_tree);
            }

            OPEN_PAR_SYMBOL2151 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_count_function10554);
            if  (HASEXCEPTION())
            {
                goto rulecount_functionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL2151_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2151));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2151_tree);
            }

            // MySQL.g:1797:2: ( ( ALL_SYMBOL )? MULT_OPERATOR CLOSE_PAR_SYMBOL | ( DISTINCT_SYMBOL )? expression_list CLOSE_PAR_SYMBOL )
            {
                int alt570=2;
                {
                    int LA570_0 = LA(1);
                    if ( (LA570_0 == ALL_SYMBOL || LA570_0 == MULT_OPERATOR))
                    {
                        alt570=1;
                    }
                    else if ( (LA570_0 == BITWISE_NOT_OPERATOR || LA570_0 == DATE_SYMBOL || LA570_0 == DISTINCT_SYMBOL || LA570_0 == INTERVAL_SYMBOL || LA570_0 == LOGICAL_NOT_OPERATOR || LA570_0 == MINUS_OPERATOR || LA570_0 == NCHAR_TEXT || LA570_0 == NOT2_SYMBOL || LA570_0 == NOT_SYMBOL || LA570_0 == PLUS_OPERATOR || LA570_0 == SINGLE_QUOTED_TEXT || ((LA570_0 >= TIMESTAMP_SYMBOL) && (LA570_0 <= TIME_SYMBOL)) || LA570_0 == UNDERSCORE_CHARSET))
                    {
                        alt570=2;
                    }
                    else if ( ((((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)))||((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))) && (LA570_0 == DOUBLE_QUOTED_TEXT))
                    {
                        alt570=2;
                    }
                    else if ( (LA570_0 == FALSE_SYMBOL || LA570_0 == FLOAT || ((LA570_0 >= HEXNUMBER) && (LA570_0 <= HEXSTRING)) || LA570_0 == INTEGER || LA570_0 == TRUE_SYMBOL))
                    {
                        alt570=2;
                    }
                    else if ( ((SERVER_VERSION >= 50003)) && (((LA570_0 >= BITNUMBER) && (LA570_0 <= BITSTRING))))
                    {
                        alt570=2;
                    }
                    else if ( (((LA570_0 >= ACTION_SYMBOL) && (LA570_0 <= ADDDATE_SYMBOL)) || ((LA570_0 >= AFTER_SYMBOL) && (LA570_0 <= ALGORITHM_SYMBOL)) || LA570_0 == ANALYZE_SYMBOL || ((LA570_0 >= ANY_SYMBOL) && (LA570_0 <= ASCII_SYMBOL)) || ((LA570_0 >= AT_AT_SIGN_SYMBOL) && (LA570_0 <= BACKUP_SYMBOL)) || LA570_0 == BACK_TICK_QUOTED_ID || LA570_0 == BEGIN_SYMBOL || ((LA570_0 >= BINARY_SYMBOL) && (LA570_0 <= BINLOG_SYMBOL)) || ((LA570_0 >= BIT_AND_SYMBOL) && (LA570_0 <= BIT_XOR_SYMBOL)) || ((LA570_0 >= BLOCK_SYMBOL) && (LA570_0 <= BOOL_SYMBOL)) || ((LA570_0 >= BTREE_SYMBOL) && (LA570_0 <= BYTE_SYMBOL)) || LA570_0 == CACHE_SYMBOL || LA570_0 == CASCADED_SYMBOL || ((LA570_0 >= CASE_SYMBOL) && (LA570_0 <= CHANGED_SYMBOL)) || ((LA570_0 >= CHARSET_SYMBOL) && (LA570_0 <= CHECKSUM_SYMBOL)) || ((LA570_0 >= CIPHER_SYMBOL) && (LA570_0 <= CLIENT_SYMBOL)) || ((LA570_0 >= CLOSE_SYMBOL) && (LA570_0 <= CODE_SYMBOL)) || LA570_0 == COLLATION_SYMBOL || ((LA570_0 >= COLUMNS_SYMBOL) && (LA570_0 <= COLUMN_NAME_SYMBOL)) || ((LA570_0 >= COMMENT_SYMBOL) && (LA570_0 <= COMPRESSED_SYMBOL)) || LA570_0 == CONCURRENT_SYMBOL || ((LA570_0 >= CONNECTION_SYMBOL) && (LA570_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA570_0 >= CONTAINS_SYMBOL) && (LA570_0 <= CONTEXT_SYMBOL)) || ((LA570_0 >= CONTRIBUTORS_SYMBOL) && (LA570_0 <= CPU_SYMBOL)) || ((LA570_0 >= CUBE_SYMBOL) && (LA570_0 <= CURRENT_SYMBOL)) || ((LA570_0 >= CURRENT_USER_SYMBOL) && (LA570_0 <= CURSOR_NAME_SYMBOL)) || LA570_0 == CURTIME_SYMBOL || ((LA570_0 >= DATABASE_SYMBOL) && (LA570_0 <= DATETIME_SYMBOL)) || LA570_0 == DATE_ADD_SYMBOL || LA570_0 == DATE_SUB_SYMBOL || ((LA570_0 >= DAY_SYMBOL) && (LA570_0 <= DEALLOCATE_SYMBOL)) || LA570_0 == DEFAULT_AUTH_SYMBOL || LA570_0 == DEFINER_SYMBOL || LA570_0 == DELAY_KEY_WRITE_SYMBOL || LA570_0 == DES_KEY_FILE_SYMBOL || LA570_0 == DIAGNOSTICS_SYMBOL || ((LA570_0 >= DIRECTORY_SYMBOL) && (LA570_0 <= DISK_SYMBOL)) || LA570_0 == DOT_SYMBOL || LA570_0 == DO_SYMBOL || ((LA570_0 >= DUMPFILE_SYMBOL) && (LA570_0 <= DYNAMIC_SYMBOL)) || LA570_0 == ENABLE_SYMBOL || LA570_0 == ENDS_SYMBOL || ((LA570_0 >= END_SYMBOL) && (LA570_0 <= ENUM_SYMBOL)) || ((LA570_0 >= ERRORS_SYMBOL) && (LA570_0 <= ERROR_SYMBOL)) || ((LA570_0 >= ESCAPE_SYMBOL) && (LA570_0 <= EVERY_SYMBOL)) || ((LA570_0 >= EXECUTE_SYMBOL) && (LA570_0 <= EXISTS_SYMBOL)) || LA570_0 == EXPANSION_SYMBOL || LA570_0 == EXPORT_SYMBOL || ((LA570_0 >= EXTENDED_SYMBOL) && (LA570_0 <= EXTRACT_SYMBOL)) || ((LA570_0 >= FAST_SYMBOL) && (LA570_0 <= FAULTS_SYMBOL)) || ((LA570_0 >= FILE_SYMBOL) && (LA570_0 <= FIXED_SYMBOL)) || LA570_0 == FLUSH_SYMBOL || LA570_0 == FORMAT_SYMBOL || LA570_0 == FOUND_SYMBOL || LA570_0 == FULL_SYMBOL || ((LA570_0 >= FUNCTION_SYMBOL) && (LA570_0 <= GET_FORMAT_SYMBOL)) || ((LA570_0 >= GLOBAL_SYMBOL) && (LA570_0 <= GRANTS_SYMBOL)) || LA570_0 == GROUP_CONCAT_SYMBOL || ((LA570_0 >= HANDLER_SYMBOL) && (LA570_0 <= HASH_SYMBOL)) || LA570_0 == HELP_SYMBOL || ((LA570_0 >= HOSTS_SYMBOL) && (LA570_0 <= HOST_SYMBOL)) || ((LA570_0 >= HOUR_SYMBOL) && (LA570_0 <= IGNORE_SERVER_IDS_SYMBOL)) || ((LA570_0 >= IMPORT_SYMBOL) && (LA570_0 <= INDEXES_SYMBOL)) || LA570_0 == INITIAL_SIZE_SYMBOL || LA570_0 == INNODB_SYMBOL || ((LA570_0 >= INSERT_METHOD_SYMBOL) && (LA570_0 <= INSTALL_SYMBOL)) || LA570_0 == INVOKER_SYMBOL || LA570_0 == IO_SYMBOL || ((LA570_0 >= IPC_SYMBOL) && (LA570_0 <= ISSUER_SYMBOL)) || LA570_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA570_0 >= LANGUAGE_SYMBOL) && (LA570_0 <= LAST_SYMBOL)) || LA570_0 == LEAVES_SYMBOL || LA570_0 == LEFT_SYMBOL || LA570_0 == LESS_SYMBOL || LA570_0 == LEVEL_SYMBOL || LA570_0 == LINESTRING_SYMBOL || LA570_0 == LIST_SYMBOL || LA570_0 == LOCAL_SYMBOL || LA570_0 == LOCKS_SYMBOL || LA570_0 == LOGFILE_SYMBOL || LA570_0 == LOGS_SYMBOL || LA570_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA570_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA570_0 <= MASTER_SSL_SYMBOL)) || ((LA570_0 >= MASTER_SYMBOL) && (LA570_0 <= MATCH_SYMBOL)) || ((LA570_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA570_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA570_0 >= MEDIUM_SYMBOL) && (LA570_0 <= MICROSECOND_SYMBOL)) || LA570_0 == MIGRATE_SYMBOL || ((LA570_0 >= MINUTE_SYMBOL) && (LA570_0 <= MIN_SYMBOL)) || LA570_0 == MODE_SYMBOL || LA570_0 == MODIFY_SYMBOL || ((LA570_0 >= MOD_SYMBOL) && (LA570_0 <= MULTILINESTRING_SYMBOL)) || ((LA570_0 >= MULTIPOINT_SYMBOL) && (LA570_0 <= MULTIPOLYGON_SYMBOL)) || ((LA570_0 >= MUTEX_SYMBOL) && (LA570_0 <= NATIONAL_SYMBOL)) || LA570_0 == NCHAR_SYMBOL || LA570_0 == NDBCLUSTER_SYMBOL || ((LA570_0 >= NEW_SYMBOL) && (LA570_0 <= NONE_SYMBOL)) || ((LA570_0 >= NOW_SYMBOL) && (LA570_0 <= NO_WAIT_SYMBOL)) || LA570_0 == NULL2_SYMBOL || ((LA570_0 >= NULL_SYMBOL) && (LA570_0 <= NUMBER_SYMBOL)) || LA570_0 == NVARCHAR_SYMBOL || ((LA570_0 >= OFFSET_SYMBOL) && (LA570_0 <= ONE_SYMBOL)) || ((LA570_0 >= OPEN_PAR_SYMBOL) && (LA570_0 <= OPEN_SYMBOL)) || LA570_0 == OPTIONS_SYMBOL || ((LA570_0 >= OWNER_SYMBOL) && (LA570_0 <= PARAM_MARKER)) || ((LA570_0 >= PARSER_SYMBOL) && (LA570_0 <= PARTITION_SYMBOL)) || ((LA570_0 >= PASSWORD_SYMBOL) && (LA570_0 <= PLUGIN_SYMBOL)) || ((LA570_0 >= POINT_SYMBOL) && (LA570_0 <= POSITION_SYMBOL)) || ((LA570_0 >= PREPARE_SYMBOL) && (LA570_0 <= PREV_SYMBOL)) || LA570_0 == PRIVILEGES_SYMBOL || ((LA570_0 >= PROCESSLIST_SYMBOL) && (LA570_0 <= PROXY_SYMBOL)) || ((LA570_0 >= QUARTER_SYMBOL) && (LA570_0 <= QUICK_SYMBOL)) || LA570_0 == READ_ONLY_SYMBOL || ((LA570_0 >= REBUILD_SYMBOL) && (LA570_0 <= REDUNDANT_SYMBOL)) || ((LA570_0 >= RELAYLOG_SYMBOL) && (LA570_0 <= RELAY_THREAD_SYMBOL)) || ((LA570_0 >= RELOAD_SYMBOL) && (LA570_0 <= REMOVE_SYMBOL)) || ((LA570_0 >= REORGANIZE_SYMBOL) && (LA570_0 <= REPLICATION_SYMBOL)) || LA570_0 == RESET_SYMBOL || LA570_0 == RESTORE_SYMBOL || ((LA570_0 >= RESUME_SYMBOL) && (LA570_0 <= RETURNS_SYMBOL)) || LA570_0 == REVERSE_SYMBOL || LA570_0 == RIGHT_SYMBOL || ((LA570_0 >= ROLLBACK_SYMBOL) && (LA570_0 <= SCHEDULE_SYMBOL)) || LA570_0 == SCHEMA_NAME_SYMBOL || ((LA570_0 >= SECOND_SYMBOL) && (LA570_0 <= SECURITY_SYMBOL)) || ((LA570_0 >= SERIALIZABLE_SYMBOL) && (LA570_0 <= SERIAL_SYMBOL)) || ((LA570_0 >= SERVER_SYMBOL) && (LA570_0 <= SESSION_SYMBOL)) || LA570_0 == SHARE_SYMBOL || LA570_0 == SHUTDOWN_SYMBOL || ((LA570_0 >= SIGNED_SYMBOL) && (LA570_0 <= SIMPLE_SYMBOL)) || ((LA570_0 >= SLAVE_SYMBOL) && (LA570_0 <= SLOW_SYMBOL)) || ((LA570_0 >= SNAPSHOT_SYMBOL) && (LA570_0 <= SOURCE_SYMBOL)) || ((LA570_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA570_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA570_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA570_0 <= SQL_CACHE_SYMBOL)) || LA570_0 == SQL_NO_CACHE_SYMBOL || LA570_0 == SQL_THREAD_SYMBOL || ((LA570_0 >= STARTS_SYMBOL) && (LA570_0 <= STATUS_SYMBOL)) || LA570_0 == STDDEV_SAMP_SYMBOL || ((LA570_0 >= STD_SYMBOL) && (LA570_0 <= STORAGE_SYMBOL)) || ((LA570_0 >= STRING_SYMBOL) && (LA570_0 <= SUBPARTITION_SYMBOL)) || LA570_0 == SUBSTRING_SYMBOL || ((LA570_0 >= SUM_SYMBOL) && (LA570_0 <= SYSDATE_SYMBOL)) || ((LA570_0 >= TABLESPACE_SYMBOL) && (LA570_0 <= TABLE_NAME_SYMBOL)) || ((LA570_0 >= TEMPORARY_SYMBOL) && (LA570_0 <= TEMPTABLE_SYMBOL)) || ((LA570_0 >= TEXT_SYMBOL) && (LA570_0 <= THAN_SYMBOL)) || ((LA570_0 >= TIMESTAMP_ADD_SYMBOL) && (LA570_0 <= TIMESTAMP_DIFF_SYMBOL)) || ((LA570_0 >= TRANSACTION_SYMBOL) && (LA570_0 <= TRIGGERS_SYMBOL)) || LA570_0 == TRIM_SYMBOL || ((LA570_0 >= TRUNCATE_SYMBOL) && (LA570_0 <= UDF_RETURNS_SYMBOL)) || ((LA570_0 >= UNCOMMITTED_SYMBOL) && (LA570_0 <= UNDEFINED_SYMBOL)) || ((LA570_0 >= UNDOFILE_SYMBOL) && (LA570_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA570_0 >= UNICODE_SYMBOL) && (LA570_0 <= UNINSTALL_SYMBOL)) || LA570_0 == UNKNOWN_SYMBOL || LA570_0 == UNTIL_SYMBOL || LA570_0 == UPGRADE_SYMBOL || ((LA570_0 >= USER_RESOURCES_SYMBOL) && (LA570_0 <= USE_FRM_SYMBOL)) || ((LA570_0 >= UTC_DATE_SYMBOL) && (LA570_0 <= VALUE_SYMBOL)) || ((LA570_0 >= VARIABLES_SYMBOL) && (LA570_0 <= VARIANCE_SYMBOL)) || LA570_0 == VAR_SAMP_SYMBOL || ((LA570_0 >= VIEW_SYMBOL) && (LA570_0 <= WEIGHT_STRING_SYMBOL)) || ((LA570_0 >= WORK_SYMBOL) && (LA570_0 <= WRAPPER_SYMBOL)) || LA570_0 == X509_SYMBOL || ((LA570_0 >= XA_SYMBOL) && (LA570_0 <= XML_SYMBOL)) || LA570_0 == YEAR_SYMBOL || LA570_0 == 732))
                    {
                        alt570=2;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 570;
                        EXCEPTION->state        = 0;


                        goto rulecount_functionEx;

                    }
                }
                switch (alt570)
                {
            	case 1:
            	    // MySQL.g:1798:3: ( ALL_SYMBOL )? MULT_OPERATOR CLOSE_PAR_SYMBOL
            	    {
            	        // MySQL.g:1798:3: ( ALL_SYMBOL )?
            	        {
            	            int alt568=2;
            	            switch ( LA(1) )
            	            {
            	                case ALL_SYMBOL:
            	                	{
            	                		alt568=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt568)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1798:3: ALL_SYMBOL
            	        	    {
            	        	        ALL_SYMBOL2152 = (pANTLR3_COMMON_TOKEN) MATCHT(ALL_SYMBOL, &FOLLOW_ALL_SYMBOL_in_count_function10561);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecount_functionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        ALL_SYMBOL2152_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALL_SYMBOL2152));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, ALL_SYMBOL2152_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        MULT_OPERATOR2153 = (pANTLR3_COMMON_TOKEN) MATCHT(MULT_OPERATOR, &FOLLOW_MULT_OPERATOR_in_count_function10564);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecount_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        MULT_OPERATOR2153_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MULT_OPERATOR2153));
            	        ADAPTOR->addChild(ADAPTOR, root_0, MULT_OPERATOR2153_tree);
            	        }

            	        CLOSE_PAR_SYMBOL2154 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_count_function10566);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecount_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CLOSE_PAR_SYMBOL2154_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2154));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2154_tree);
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1799:5: ( DISTINCT_SYMBOL )? expression_list CLOSE_PAR_SYMBOL
            	    {
            	        // MySQL.g:1799:5: ( DISTINCT_SYMBOL )?
            	        {
            	            int alt569=2;
            	            switch ( LA(1) )
            	            {
            	                case DISTINCT_SYMBOL:
            	                	{
            	                		alt569=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt569)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1799:5: DISTINCT_SYMBOL
            	        	    {
            	        	        DISTINCT_SYMBOL2155 = (pANTLR3_COMMON_TOKEN) MATCHT(DISTINCT_SYMBOL, &FOLLOW_DISTINCT_SYMBOL_in_count_function10572);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecount_functionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        DISTINCT_SYMBOL2155_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DISTINCT_SYMBOL2155));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, DISTINCT_SYMBOL2155_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_expression_list_in_count_function10575);
            	        expression_list2156=expression_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecount_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression_list2156.tree);

            	        CLOSE_PAR_SYMBOL2157 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_count_function10577);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecount_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CLOSE_PAR_SYMBOL2157_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2157));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2157_tree);
            	        }

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulecount_functionEx; /* Prevent compiler warnings */
    rulecount_functionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end count_function */

/**
 * $ANTLR start aliased_expression_list
 * MySQL.g:1803:1: aliased_expression_list : aliased_expression ( COMMA_SYMBOL aliased_expression )* ;
 */
static MySQLParser_aliased_expression_list_return
aliased_expression_list(pMySQLParser ctx)
{
    MySQLParser_aliased_expression_list_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2159;
    MySQLParser_aliased_expression_return aliased_expression2158;
    #undef	RETURN_TYPE_aliased_expression2158
    #define	RETURN_TYPE_aliased_expression2158 MySQLParser_aliased_expression_return

    MySQLParser_aliased_expression_return aliased_expression2160;
    #undef	RETURN_TYPE_aliased_expression2160
    #define	RETURN_TYPE_aliased_expression2160 MySQLParser_aliased_expression_return

    pANTLR3_BASE_TREE COMMA_SYMBOL2159_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL2159       = NULL;
    aliased_expression2158.tree = NULL;

    aliased_expression2160.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL2159_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1803:24: ( aliased_expression ( COMMA_SYMBOL aliased_expression )* )
        // MySQL.g:1804:2: aliased_expression ( COMMA_SYMBOL aliased_expression )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_aliased_expression_in_aliased_expression_list10589);
            aliased_expression2158=aliased_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulealiased_expression_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, aliased_expression2158.tree);

            // MySQL.g:1804:21: ( COMMA_SYMBOL aliased_expression )*

            for (;;)
            {
                int alt571=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt571=1;
                	}
                    break;

                }

                switch (alt571)
                {
            	case 1:
            	    // MySQL.g:1804:22: COMMA_SYMBOL aliased_expression
            	    {
            	        COMMA_SYMBOL2159 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_aliased_expression_list10592);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealiased_expression_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL2159_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2159));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2159_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_aliased_expression_in_aliased_expression_list10594);
            	        aliased_expression2160=aliased_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealiased_expression_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, aliased_expression2160.tree);

            	    }
            	    break;

            	default:
            	    goto loop571;	/* break out of the loop */
            	    break;
                }
            }
            loop571: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto rulealiased_expression_listEx; /* Prevent compiler warnings */
    rulealiased_expression_listEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end aliased_expression_list */

/**
 * $ANTLR start aliased_expression
 * MySQL.g:1807:1: aliased_expression : expression ( select_alias )? ;
 */
static MySQLParser_aliased_expression_return
aliased_expression(pMySQLParser ctx)
{
    MySQLParser_aliased_expression_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_expression_return expression2161;
    #undef	RETURN_TYPE_expression2161
    #define	RETURN_TYPE_expression2161 MySQLParser_expression_return

    MySQLParser_select_alias_return select_alias2162;
    #undef	RETURN_TYPE_select_alias2162
    #define	RETURN_TYPE_select_alias2162 MySQLParser_select_alias_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    expression2161.tree = NULL;

    select_alias2162.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:1807:19: ( expression ( select_alias )? )
        // MySQL.g:1808:2: expression ( select_alias )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_expression_in_aliased_expression10605);
            expression2161=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulealiased_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2161.tree);

            // MySQL.g:1808:13: ( select_alias )?
            {
                int alt572=2;
                {
                    int LA572_0 = LA(1);
                    if ( (LA572_0 == AS_SYMBOL || LA572_0 == NCHAR_TEXT || LA572_0 == SINGLE_QUOTED_TEXT || LA572_0 == UNDERSCORE_CHARSET))
                    {
                        alt572=1;
                    }
                    else if ( ((((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)))||((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))) && (LA572_0 == DOUBLE_QUOTED_TEXT))
                    {
                        alt572=1;
                    }
                    else if ( (((LA572_0 >= ACTION_SYMBOL) && (LA572_0 <= ADDDATE_SYMBOL)) || ((LA572_0 >= AFTER_SYMBOL) && (LA572_0 <= ALGORITHM_SYMBOL)) || LA572_0 == ANALYZE_SYMBOL || ((LA572_0 >= ANY_SYMBOL) && (LA572_0 <= ASCII_SYMBOL)) || ((LA572_0 >= AT_SYMBOL) && (LA572_0 <= BACKUP_SYMBOL)) || LA572_0 == BACK_TICK_QUOTED_ID || LA572_0 == BEGIN_SYMBOL || LA572_0 == BINLOG_SYMBOL || LA572_0 == BIT_SYMBOL || ((LA572_0 >= BLOCK_SYMBOL) && (LA572_0 <= BOOL_SYMBOL)) || ((LA572_0 >= BTREE_SYMBOL) && (LA572_0 <= BYTE_SYMBOL)) || LA572_0 == CACHE_SYMBOL || LA572_0 == CASCADED_SYMBOL || ((LA572_0 >= CATALOG_NAME_SYMBOL) && (LA572_0 <= CHANGED_SYMBOL)) || LA572_0 == CHARSET_SYMBOL || LA572_0 == CHECKSUM_SYMBOL || ((LA572_0 >= CIPHER_SYMBOL) && (LA572_0 <= CLIENT_SYMBOL)) || ((LA572_0 >= CLOSE_SYMBOL) && (LA572_0 <= CODE_SYMBOL)) || LA572_0 == COLLATION_SYMBOL || ((LA572_0 >= COLUMNS_SYMBOL) && (LA572_0 <= COLUMN_NAME_SYMBOL)) || ((LA572_0 >= COMMENT_SYMBOL) && (LA572_0 <= COMPRESSED_SYMBOL)) || LA572_0 == CONCURRENT_SYMBOL || ((LA572_0 >= CONNECTION_SYMBOL) && (LA572_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA572_0 >= CONTAINS_SYMBOL) && (LA572_0 <= CONTEXT_SYMBOL)) || LA572_0 == CONTRIBUTORS_SYMBOL || LA572_0 == CPU_SYMBOL || LA572_0 == CUBE_SYMBOL || LA572_0 == CURRENT_SYMBOL || LA572_0 == CURSOR_NAME_SYMBOL || ((LA572_0 >= DATAFILE_SYMBOL) && (LA572_0 <= DATETIME_SYMBOL)) || LA572_0 == DATE_SYMBOL || ((LA572_0 >= DAY_SYMBOL) && (LA572_0 <= DEALLOCATE_SYMBOL)) || LA572_0 == DEFAULT_AUTH_SYMBOL || LA572_0 == DEFINER_SYMBOL || LA572_0 == DELAY_KEY_WRITE_SYMBOL || LA572_0 == DES_KEY_FILE_SYMBOL || LA572_0 == DIAGNOSTICS_SYMBOL || ((LA572_0 >= DIRECTORY_SYMBOL) && (LA572_0 <= DISK_SYMBOL)) || LA572_0 == DO_SYMBOL || ((LA572_0 >= DUMPFILE_SYMBOL) && (LA572_0 <= DYNAMIC_SYMBOL)) || LA572_0 == ENABLE_SYMBOL || LA572_0 == ENDS_SYMBOL || ((LA572_0 >= END_SYMBOL) && (LA572_0 <= ENUM_SYMBOL)) || ((LA572_0 >= ERRORS_SYMBOL) && (LA572_0 <= ERROR_SYMBOL)) || ((LA572_0 >= ESCAPE_SYMBOL) && (LA572_0 <= EVERY_SYMBOL)) || LA572_0 == EXECUTE_SYMBOL || LA572_0 == EXPANSION_SYMBOL || LA572_0 == EXPORT_SYMBOL || ((LA572_0 >= EXTENDED_SYMBOL) && (LA572_0 <= EXTENT_SIZE_SYMBOL)) || ((LA572_0 >= FAST_SYMBOL) && (LA572_0 <= FAULTS_SYMBOL)) || ((LA572_0 >= FILE_SYMBOL) && (LA572_0 <= FIXED_SYMBOL)) || LA572_0 == FLUSH_SYMBOL || LA572_0 == FORMAT_SYMBOL || LA572_0 == FOUND_SYMBOL || LA572_0 == FULL_SYMBOL || ((LA572_0 >= FUNCTION_SYMBOL) && (LA572_0 <= GET_FORMAT_SYMBOL)) || ((LA572_0 >= GLOBAL_SYMBOL) && (LA572_0 <= GRANTS_SYMBOL)) || ((LA572_0 >= HANDLER_SYMBOL) && (LA572_0 <= HASH_SYMBOL)) || LA572_0 == HELP_SYMBOL || ((LA572_0 >= HOSTS_SYMBOL) && (LA572_0 <= HOST_SYMBOL)) || ((LA572_0 >= HOUR_SYMBOL) && (LA572_0 <= IDENTIFIER)) || LA572_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA572_0 >= IMPORT_SYMBOL) && (LA572_0 <= INDEXES_SYMBOL)) || LA572_0 == INITIAL_SIZE_SYMBOL || LA572_0 == INNODB_SYMBOL || LA572_0 == INSERT_METHOD_SYMBOL || LA572_0 == INSTALL_SYMBOL || LA572_0 == INVOKER_SYMBOL || LA572_0 == IO_SYMBOL || ((LA572_0 >= IPC_SYMBOL) && (LA572_0 <= ISSUER_SYMBOL)) || LA572_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA572_0 >= LANGUAGE_SYMBOL) && (LA572_0 <= LAST_SYMBOL)) || LA572_0 == LEAVES_SYMBOL || LA572_0 == LESS_SYMBOL || LA572_0 == LEVEL_SYMBOL || LA572_0 == LINESTRING_SYMBOL || LA572_0 == LIST_SYMBOL || LA572_0 == LOCAL_SYMBOL || LA572_0 == LOCKS_SYMBOL || LA572_0 == LOGFILE_SYMBOL || LA572_0 == LOGS_SYMBOL || LA572_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA572_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA572_0 <= MASTER_SSL_SYMBOL)) || ((LA572_0 >= MASTER_SYMBOL) && (LA572_0 <= MASTER_USER_SYMBOL)) || ((LA572_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA572_0 <= MAX_SIZE_SYMBOL)) || ((LA572_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA572_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA572_0 >= MEDIUM_SYMBOL) && (LA572_0 <= MICROSECOND_SYMBOL)) || LA572_0 == MIGRATE_SYMBOL || ((LA572_0 >= MINUTE_SYMBOL) && (LA572_0 <= MIN_ROWS_SYMBOL)) || LA572_0 == MODE_SYMBOL || LA572_0 == MODIFY_SYMBOL || ((LA572_0 >= MONTH_SYMBOL) && (LA572_0 <= MULTILINESTRING_SYMBOL)) || ((LA572_0 >= MULTIPOINT_SYMBOL) && (LA572_0 <= MULTIPOLYGON_SYMBOL)) || ((LA572_0 >= MUTEX_SYMBOL) && (LA572_0 <= NATIONAL_SYMBOL)) || LA572_0 == NCHAR_SYMBOL || LA572_0 == NDBCLUSTER_SYMBOL || ((LA572_0 >= NEW_SYMBOL) && (LA572_0 <= NONE_SYMBOL)) || ((LA572_0 >= NO_SYMBOL) && (LA572_0 <= NO_WAIT_SYMBOL)) || LA572_0 == NUMBER_SYMBOL || LA572_0 == NVARCHAR_SYMBOL || ((LA572_0 >= OFFSET_SYMBOL) && (LA572_0 <= ONE_SYMBOL)) || LA572_0 == OPEN_SYMBOL || LA572_0 == OPTIONS_SYMBOL || ((LA572_0 >= OWNER_SYMBOL) && (LA572_0 <= PAGE_SYMBOL)) || ((LA572_0 >= PARSER_SYMBOL) && (LA572_0 <= PARTITION_SYMBOL)) || ((LA572_0 >= PASSWORD_SYMBOL) && (LA572_0 <= PLUGIN_SYMBOL)) || ((LA572_0 >= POINT_SYMBOL) && (LA572_0 <= PORT_SYMBOL)) || ((LA572_0 >= PREPARE_SYMBOL) && (LA572_0 <= PREV_SYMBOL)) || LA572_0 == PRIVILEGES_SYMBOL || ((LA572_0 >= PROCESSLIST_SYMBOL) && (LA572_0 <= PROXY_SYMBOL)) || ((LA572_0 >= QUARTER_SYMBOL) && (LA572_0 <= QUICK_SYMBOL)) || LA572_0 == READ_ONLY_SYMBOL || ((LA572_0 >= REBUILD_SYMBOL) && (LA572_0 <= REDUNDANT_SYMBOL)) || ((LA572_0 >= RELAYLOG_SYMBOL) && (LA572_0 <= RELAY_THREAD_SYMBOL)) || ((LA572_0 >= RELOAD_SYMBOL) && (LA572_0 <= REMOVE_SYMBOL)) || ((LA572_0 >= REORGANIZE_SYMBOL) && (LA572_0 <= REPEATABLE_SYMBOL)) || LA572_0 == REPLICATION_SYMBOL || LA572_0 == RESET_SYMBOL || LA572_0 == RESTORE_SYMBOL || ((LA572_0 >= RESUME_SYMBOL) && (LA572_0 <= RETURNS_SYMBOL)) || LA572_0 == REVERSE_SYMBOL || ((LA572_0 >= ROLLBACK_SYMBOL) && (LA572_0 <= SCHEDULE_SYMBOL)) || LA572_0 == SCHEMA_NAME_SYMBOL || ((LA572_0 >= SECOND_SYMBOL) && (LA572_0 <= SECURITY_SYMBOL)) || ((LA572_0 >= SERIALIZABLE_SYMBOL) && (LA572_0 <= SERIAL_SYMBOL)) || ((LA572_0 >= SERVER_SYMBOL) && (LA572_0 <= SESSION_SYMBOL)) || LA572_0 == SHARE_SYMBOL || LA572_0 == SHUTDOWN_SYMBOL || ((LA572_0 >= SIGNED_SYMBOL) && (LA572_0 <= SIMPLE_SYMBOL)) || ((LA572_0 >= SLAVE_SYMBOL) && (LA572_0 <= SLOW_SYMBOL)) || ((LA572_0 >= SNAPSHOT_SYMBOL) && (LA572_0 <= SOURCE_SYMBOL)) || ((LA572_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA572_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA572_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA572_0 <= SQL_CACHE_SYMBOL)) || LA572_0 == SQL_NO_CACHE_SYMBOL || LA572_0 == SQL_THREAD_SYMBOL || ((LA572_0 >= STARTS_SYMBOL) && (LA572_0 <= STATUS_SYMBOL)) || ((LA572_0 >= STOP_SYMBOL) && (LA572_0 <= STORAGE_SYMBOL)) || ((LA572_0 >= STRING_SYMBOL) && (LA572_0 <= SUBPARTITION_SYMBOL)) || ((LA572_0 >= SUPER_SYMBOL) && (LA572_0 <= SWITCHES_SYMBOL)) || ((LA572_0 >= TABLESPACE_SYMBOL) && (LA572_0 <= TABLE_NAME_SYMBOL)) || ((LA572_0 >= TEMPORARY_SYMBOL) && (LA572_0 <= TEMPTABLE_SYMBOL)) || ((LA572_0 >= TEXT_SYMBOL) && (LA572_0 <= THAN_SYMBOL)) || ((LA572_0 >= TIMESTAMP_ADD_SYMBOL) && (LA572_0 <= TIME_SYMBOL)) || ((LA572_0 >= TRANSACTION_SYMBOL) && (LA572_0 <= TRIGGERS_SYMBOL)) || ((LA572_0 >= TRUNCATE_SYMBOL) && (LA572_0 <= UDF_RETURNS_SYMBOL)) || ((LA572_0 >= UNCOMMITTED_SYMBOL) && (LA572_0 <= UNDEFINED_SYMBOL)) || ((LA572_0 >= UNDOFILE_SYMBOL) && (LA572_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA572_0 >= UNICODE_SYMBOL) && (LA572_0 <= UNINSTALL_SYMBOL)) || LA572_0 == UNKNOWN_SYMBOL || LA572_0 == UNTIL_SYMBOL || LA572_0 == UPGRADE_SYMBOL || ((LA572_0 >= USER_RESOURCES_SYMBOL) && (LA572_0 <= USE_FRM_SYMBOL)) || LA572_0 == VALUE_SYMBOL || LA572_0 == VARIABLES_SYMBOL || ((LA572_0 >= VIEW_SYMBOL) && (LA572_0 <= WEIGHT_STRING_SYMBOL)) || ((LA572_0 >= WORK_SYMBOL) && (LA572_0 <= WRAPPER_SYMBOL)) || LA572_0 == X509_SYMBOL || ((LA572_0 >= XA_SYMBOL) && (LA572_0 <= XML_SYMBOL)) || LA572_0 == YEAR_SYMBOL))
                    {
                        alt572=1;
                    }
                }
                switch (alt572)
                {
            	case 1:
            	    // MySQL.g:1808:13: select_alias
            	    {
            	        FOLLOWPUSH(FOLLOW_select_alias_in_aliased_expression10607);
            	        select_alias2162=select_alias(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealiased_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_alias2162.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulealiased_expressionEx; /* Prevent compiler warnings */
    rulealiased_expressionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end aliased_expression */

/**
 * $ANTLR start variable
 * MySQL.g:1811:1: variable options {greedy=true; } : ( user_variable ( ASSIGN_OPERATOR ^ expression )? | system_variable );
 */
static MySQLParser_variable_return
variable(pMySQLParser ctx)
{
    MySQLParser_variable_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    ASSIGN_OPERATOR2164;
    MySQLParser_user_variable_return user_variable2163;
    #undef	RETURN_TYPE_user_variable2163
    #define	RETURN_TYPE_user_variable2163 MySQLParser_user_variable_return

    MySQLParser_expression_return expression2165;
    #undef	RETURN_TYPE_expression2165
    #define	RETURN_TYPE_expression2165 MySQLParser_expression_return

    MySQLParser_system_variable_return system_variable2166;
    #undef	RETURN_TYPE_system_variable2166
    #define	RETURN_TYPE_system_variable2166 MySQLParser_system_variable_return

    pANTLR3_BASE_TREE ASSIGN_OPERATOR2164_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ASSIGN_OPERATOR2164       = NULL;
    user_variable2163.tree = NULL;

    expression2165.tree = NULL;

    system_variable2166.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ASSIGN_OPERATOR2164_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1811:36: ( user_variable ( ASSIGN_OPERATOR ^ expression )? | system_variable )

            ANTLR3_UINT32 alt574;

            alt574=2;

            switch ( LA(1) )
            {
            case AT_SIGN_SYMBOL:
            	{
            		alt574=1;
            	}
                break;
            case AT_AT_SIGN_SYMBOL:
            	{
            		alt574=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 574;
                EXCEPTION->state        = 0;


                goto rulevariableEx;

            }

            switch (alt574)
            {
        	case 1:
        	    // MySQL.g:1812:2: user_variable ( ASSIGN_OPERATOR ^ expression )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_user_variable_in_variable10628);
        	        user_variable2163=user_variable(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulevariableEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user_variable2163.tree);

        	        // MySQL.g:1812:16: ( ASSIGN_OPERATOR ^ expression )?
        	        {
        	            int alt573=2;
        	            switch ( LA(1) )
        	            {
        	                case ASSIGN_OPERATOR:
        	                	{
        	                		alt573=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt573)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1812:17: ASSIGN_OPERATOR ^ expression
        	        	    {
        	        	        ASSIGN_OPERATOR2164 = (pANTLR3_COMMON_TOKEN) MATCHT(ASSIGN_OPERATOR, &FOLLOW_ASSIGN_OPERATOR_in_variable10631);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulevariableEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        ASSIGN_OPERATOR2164_tree = 
        	        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ASSIGN_OPERATOR2164))
        	        	        ;
        	        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, ASSIGN_OPERATOR2164_tree, root_0));
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_expression_in_variable10634);
        	        	        expression2165=expression(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulevariableEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2165.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1813:4: system_variable
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_system_variable_in_variable10641);
        	        system_variable2166=system_variable(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulevariableEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, system_variable2166.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulevariableEx; /* Prevent compiler warnings */
    rulevariableEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end variable */

/**
 * $ANTLR start user_variable
 * MySQL.g:1816:1: user_variable : AT_SIGN_SYMBOL at_variable_identifier ;
 */
static MySQLParser_user_variable_return
user_variable(pMySQLParser ctx)
{
    MySQLParser_user_variable_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    AT_SIGN_SYMBOL2167;
    MySQLParser_at_variable_identifier_return at_variable_identifier2168;
    #undef	RETURN_TYPE_at_variable_identifier2168
    #define	RETURN_TYPE_at_variable_identifier2168 MySQLParser_at_variable_identifier_return

    pANTLR3_BASE_TREE AT_SIGN_SYMBOL2167_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    AT_SIGN_SYMBOL2167       = NULL;
    at_variable_identifier2168.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    AT_SIGN_SYMBOL2167_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1816:14: ( AT_SIGN_SYMBOL at_variable_identifier )
        // MySQL.g:1817:2: AT_SIGN_SYMBOL at_variable_identifier
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            AT_SIGN_SYMBOL2167 = (pANTLR3_COMMON_TOKEN) MATCHT(AT_SIGN_SYMBOL, &FOLLOW_AT_SIGN_SYMBOL_in_user_variable10650);
            if  (HASEXCEPTION())
            {
                goto ruleuser_variableEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            AT_SIGN_SYMBOL2167_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AT_SIGN_SYMBOL2167));
            ADAPTOR->addChild(ADAPTOR, root_0, AT_SIGN_SYMBOL2167_tree);
            }

            FOLLOWPUSH(FOLLOW_at_variable_identifier_in_user_variable10652);
            at_variable_identifier2168=at_variable_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleuser_variableEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, at_variable_identifier2168.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleuser_variableEx; /* Prevent compiler warnings */
    ruleuser_variableEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end user_variable */

/**
 * $ANTLR start system_variable
 * MySQL.g:1821:1: system_variable : AT_AT_SIGN_SYMBOL ( options {greedy=true; } : option_type DOT_SYMBOL )? variable_name ;
 */
static MySQLParser_system_variable_return
system_variable(pMySQLParser ctx)
{
    MySQLParser_system_variable_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    AT_AT_SIGN_SYMBOL2169;
    pANTLR3_COMMON_TOKEN    DOT_SYMBOL2171;
    MySQLParser_option_type_return option_type2170;
    #undef	RETURN_TYPE_option_type2170
    #define	RETURN_TYPE_option_type2170 MySQLParser_option_type_return

    MySQLParser_variable_name_return variable_name2172;
    #undef	RETURN_TYPE_variable_name2172
    #define	RETURN_TYPE_variable_name2172 MySQLParser_variable_name_return

    pANTLR3_BASE_TREE AT_AT_SIGN_SYMBOL2169_tree;
    pANTLR3_BASE_TREE DOT_SYMBOL2171_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    AT_AT_SIGN_SYMBOL2169       = NULL;
    DOT_SYMBOL2171       = NULL;
    option_type2170.tree = NULL;

    variable_name2172.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    AT_AT_SIGN_SYMBOL2169_tree   = NULL;
    DOT_SYMBOL2171_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1821:16: ( AT_AT_SIGN_SYMBOL ( options {greedy=true; } : option_type DOT_SYMBOL )? variable_name )
        // MySQL.g:1822:2: AT_AT_SIGN_SYMBOL ( options {greedy=true; } : option_type DOT_SYMBOL )? variable_name
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            AT_AT_SIGN_SYMBOL2169 = (pANTLR3_COMMON_TOKEN) MATCHT(AT_AT_SIGN_SYMBOL, &FOLLOW_AT_AT_SIGN_SYMBOL_in_system_variable10662);
            if  (HASEXCEPTION())
            {
                goto rulesystem_variableEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            AT_AT_SIGN_SYMBOL2169_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AT_AT_SIGN_SYMBOL2169));
            ADAPTOR->addChild(ADAPTOR, root_0, AT_AT_SIGN_SYMBOL2169_tree);
            }

            // MySQL.g:1822:20: ( options {greedy=true; } : option_type DOT_SYMBOL )?
            {
                int alt575=2;
                switch ( LA(1) )
                {
                    case GLOBAL_SYMBOL:
                    case LOCAL_SYMBOL:
                    case SESSION_SYMBOL:
                    	{
                    		switch ( LA(2) )
                    		{
                    		    case DOT_SYMBOL:
                    		    	{
                    		    		alt575=1;
                    		    	}
                    		        break;
                    		}

                    	}
                        break;
                }

                switch (alt575)
                {
            	case 1:
            	    // MySQL.g:1822:50: option_type DOT_SYMBOL
            	    {
            	        FOLLOWPUSH(FOLLOW_option_type_in_system_variable10678);
            	        option_type2170=option_type(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesystem_variableEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, option_type2170.tree);

            	        DOT_SYMBOL2171 = (pANTLR3_COMMON_TOKEN) MATCHT(DOT_SYMBOL, &FOLLOW_DOT_SYMBOL_in_system_variable10680);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesystem_variableEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DOT_SYMBOL2171_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOT_SYMBOL2171));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DOT_SYMBOL2171_tree);
            	        }

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_variable_name_in_system_variable10684);
            variable_name2172=variable_name(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulesystem_variableEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, variable_name2172.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto rulesystem_variableEx; /* Prevent compiler warnings */
    rulesystem_variableEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end system_variable */

/**
 * $ANTLR start variable_name
 * MySQL.g:1825:1: variable_name : ( identifier ( DOT_SYMBOL identifier )? | DEFAULT_SYMBOL DOT_SYMBOL identifier );
 */
static MySQLParser_variable_name_return
variable_name(pMySQLParser ctx)
{
    MySQLParser_variable_name_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    DOT_SYMBOL2174;
    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL2176;
    pANTLR3_COMMON_TOKEN    DOT_SYMBOL2177;
    MySQLParser_identifier_return identifier2173;
    #undef	RETURN_TYPE_identifier2173
    #define	RETURN_TYPE_identifier2173 MySQLParser_identifier_return

    MySQLParser_identifier_return identifier2175;
    #undef	RETURN_TYPE_identifier2175
    #define	RETURN_TYPE_identifier2175 MySQLParser_identifier_return

    MySQLParser_identifier_return identifier2178;
    #undef	RETURN_TYPE_identifier2178
    #define	RETURN_TYPE_identifier2178 MySQLParser_identifier_return

    pANTLR3_BASE_TREE DOT_SYMBOL2174_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL2176_tree;
    pANTLR3_BASE_TREE DOT_SYMBOL2177_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DOT_SYMBOL2174       = NULL;
    DEFAULT_SYMBOL2176       = NULL;
    DOT_SYMBOL2177       = NULL;
    identifier2173.tree = NULL;

    identifier2175.tree = NULL;

    identifier2178.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DOT_SYMBOL2174_tree   = NULL;
    DEFAULT_SYMBOL2176_tree   = NULL;
    DOT_SYMBOL2177_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1825:14: ( identifier ( DOT_SYMBOL identifier )? | DEFAULT_SYMBOL DOT_SYMBOL identifier )

            ANTLR3_UINT32 alt577;

            alt577=2;

            {
                int LA577_0 = LA(1);
                if ( (LA577_0 == BACK_TICK_QUOTED_ID || LA577_0 == IDENTIFIER))
                {
                    alt577=1;
                }
                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA577_0 == DOUBLE_QUOTED_TEXT))
                {
                    alt577=1;
                }
                else if ( (((LA577_0 >= ACTION_SYMBOL) && (LA577_0 <= ADDDATE_SYMBOL)) || ((LA577_0 >= AFTER_SYMBOL) && (LA577_0 <= ALGORITHM_SYMBOL)) || LA577_0 == ANALYZE_SYMBOL || ((LA577_0 >= ANY_SYMBOL) && (LA577_0 <= ASCII_SYMBOL)) || ((LA577_0 >= AT_SYMBOL) && (LA577_0 <= BACKUP_SYMBOL)) || LA577_0 == BEGIN_SYMBOL || LA577_0 == BINLOG_SYMBOL || LA577_0 == BIT_SYMBOL || ((LA577_0 >= BLOCK_SYMBOL) && (LA577_0 <= BOOL_SYMBOL)) || ((LA577_0 >= BTREE_SYMBOL) && (LA577_0 <= BYTE_SYMBOL)) || LA577_0 == CACHE_SYMBOL || LA577_0 == CASCADED_SYMBOL || ((LA577_0 >= CATALOG_NAME_SYMBOL) && (LA577_0 <= CHANGED_SYMBOL)) || LA577_0 == CHARSET_SYMBOL || LA577_0 == CHECKSUM_SYMBOL || ((LA577_0 >= CIPHER_SYMBOL) && (LA577_0 <= CLIENT_SYMBOL)) || ((LA577_0 >= CLOSE_SYMBOL) && (LA577_0 <= CODE_SYMBOL)) || LA577_0 == COLLATION_SYMBOL || ((LA577_0 >= COLUMNS_SYMBOL) && (LA577_0 <= COLUMN_NAME_SYMBOL)) || ((LA577_0 >= COMMENT_SYMBOL) && (LA577_0 <= COMPRESSED_SYMBOL)) || LA577_0 == CONCURRENT_SYMBOL || ((LA577_0 >= CONNECTION_SYMBOL) && (LA577_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA577_0 >= CONTAINS_SYMBOL) && (LA577_0 <= CONTEXT_SYMBOL)) || LA577_0 == CONTRIBUTORS_SYMBOL || LA577_0 == CPU_SYMBOL || LA577_0 == CUBE_SYMBOL || LA577_0 == CURRENT_SYMBOL || LA577_0 == CURSOR_NAME_SYMBOL || ((LA577_0 >= DATAFILE_SYMBOL) && (LA577_0 <= DATETIME_SYMBOL)) || LA577_0 == DATE_SYMBOL || ((LA577_0 >= DAY_SYMBOL) && (LA577_0 <= DEALLOCATE_SYMBOL)) || LA577_0 == DEFAULT_AUTH_SYMBOL || LA577_0 == DEFINER_SYMBOL || LA577_0 == DELAY_KEY_WRITE_SYMBOL || LA577_0 == DES_KEY_FILE_SYMBOL || LA577_0 == DIAGNOSTICS_SYMBOL || ((LA577_0 >= DIRECTORY_SYMBOL) && (LA577_0 <= DISK_SYMBOL)) || LA577_0 == DO_SYMBOL || ((LA577_0 >= DUMPFILE_SYMBOL) && (LA577_0 <= DYNAMIC_SYMBOL)) || LA577_0 == ENABLE_SYMBOL || LA577_0 == ENDS_SYMBOL || ((LA577_0 >= END_SYMBOL) && (LA577_0 <= ENUM_SYMBOL)) || ((LA577_0 >= ERRORS_SYMBOL) && (LA577_0 <= ERROR_SYMBOL)) || ((LA577_0 >= ESCAPE_SYMBOL) && (LA577_0 <= EVERY_SYMBOL)) || LA577_0 == EXECUTE_SYMBOL || LA577_0 == EXPANSION_SYMBOL || LA577_0 == EXPORT_SYMBOL || ((LA577_0 >= EXTENDED_SYMBOL) && (LA577_0 <= EXTENT_SIZE_SYMBOL)) || ((LA577_0 >= FAST_SYMBOL) && (LA577_0 <= FAULTS_SYMBOL)) || ((LA577_0 >= FILE_SYMBOL) && (LA577_0 <= FIXED_SYMBOL)) || LA577_0 == FLUSH_SYMBOL || LA577_0 == FORMAT_SYMBOL || LA577_0 == FOUND_SYMBOL || LA577_0 == FULL_SYMBOL || ((LA577_0 >= FUNCTION_SYMBOL) && (LA577_0 <= GET_FORMAT_SYMBOL)) || ((LA577_0 >= GLOBAL_SYMBOL) && (LA577_0 <= GRANTS_SYMBOL)) || ((LA577_0 >= HANDLER_SYMBOL) && (LA577_0 <= HASH_SYMBOL)) || LA577_0 == HELP_SYMBOL || ((LA577_0 >= HOSTS_SYMBOL) && (LA577_0 <= HOST_SYMBOL)) || ((LA577_0 >= HOUR_SYMBOL) && (LA577_0 <= IDENTIFIED_SYMBOL)) || LA577_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA577_0 >= IMPORT_SYMBOL) && (LA577_0 <= INDEXES_SYMBOL)) || LA577_0 == INITIAL_SIZE_SYMBOL || LA577_0 == INNODB_SYMBOL || LA577_0 == INSERT_METHOD_SYMBOL || LA577_0 == INSTALL_SYMBOL || LA577_0 == INVOKER_SYMBOL || LA577_0 == IO_SYMBOL || ((LA577_0 >= IPC_SYMBOL) && (LA577_0 <= ISSUER_SYMBOL)) || LA577_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA577_0 >= LANGUAGE_SYMBOL) && (LA577_0 <= LAST_SYMBOL)) || LA577_0 == LEAVES_SYMBOL || LA577_0 == LESS_SYMBOL || LA577_0 == LEVEL_SYMBOL || LA577_0 == LINESTRING_SYMBOL || LA577_0 == LIST_SYMBOL || LA577_0 == LOCAL_SYMBOL || LA577_0 == LOCKS_SYMBOL || LA577_0 == LOGFILE_SYMBOL || LA577_0 == LOGS_SYMBOL || LA577_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA577_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA577_0 <= MASTER_SSL_SYMBOL)) || ((LA577_0 >= MASTER_SYMBOL) && (LA577_0 <= MASTER_USER_SYMBOL)) || ((LA577_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA577_0 <= MAX_SIZE_SYMBOL)) || ((LA577_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA577_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA577_0 >= MEDIUM_SYMBOL) && (LA577_0 <= MICROSECOND_SYMBOL)) || LA577_0 == MIGRATE_SYMBOL || ((LA577_0 >= MINUTE_SYMBOL) && (LA577_0 <= MIN_ROWS_SYMBOL)) || LA577_0 == MODE_SYMBOL || LA577_0 == MODIFY_SYMBOL || ((LA577_0 >= MONTH_SYMBOL) && (LA577_0 <= MULTILINESTRING_SYMBOL)) || ((LA577_0 >= MULTIPOINT_SYMBOL) && (LA577_0 <= MULTIPOLYGON_SYMBOL)) || ((LA577_0 >= MUTEX_SYMBOL) && (LA577_0 <= NATIONAL_SYMBOL)) || LA577_0 == NCHAR_SYMBOL || LA577_0 == NDBCLUSTER_SYMBOL || ((LA577_0 >= NEW_SYMBOL) && (LA577_0 <= NONE_SYMBOL)) || ((LA577_0 >= NO_SYMBOL) && (LA577_0 <= NO_WAIT_SYMBOL)) || LA577_0 == NUMBER_SYMBOL || LA577_0 == NVARCHAR_SYMBOL || ((LA577_0 >= OFFSET_SYMBOL) && (LA577_0 <= ONE_SYMBOL)) || LA577_0 == OPEN_SYMBOL || LA577_0 == OPTIONS_SYMBOL || ((LA577_0 >= OWNER_SYMBOL) && (LA577_0 <= PAGE_SYMBOL)) || ((LA577_0 >= PARSER_SYMBOL) && (LA577_0 <= PARTITION_SYMBOL)) || ((LA577_0 >= PASSWORD_SYMBOL) && (LA577_0 <= PLUGIN_SYMBOL)) || ((LA577_0 >= POINT_SYMBOL) && (LA577_0 <= PORT_SYMBOL)) || ((LA577_0 >= PREPARE_SYMBOL) && (LA577_0 <= PREV_SYMBOL)) || LA577_0 == PRIVILEGES_SYMBOL || ((LA577_0 >= PROCESSLIST_SYMBOL) && (LA577_0 <= PROXY_SYMBOL)) || ((LA577_0 >= QUARTER_SYMBOL) && (LA577_0 <= QUICK_SYMBOL)) || LA577_0 == READ_ONLY_SYMBOL || ((LA577_0 >= REBUILD_SYMBOL) && (LA577_0 <= REDUNDANT_SYMBOL)) || ((LA577_0 >= RELAYLOG_SYMBOL) && (LA577_0 <= RELAY_THREAD_SYMBOL)) || ((LA577_0 >= RELOAD_SYMBOL) && (LA577_0 <= REMOVE_SYMBOL)) || ((LA577_0 >= REORGANIZE_SYMBOL) && (LA577_0 <= REPEATABLE_SYMBOL)) || LA577_0 == REPLICATION_SYMBOL || LA577_0 == RESET_SYMBOL || LA577_0 == RESTORE_SYMBOL || ((LA577_0 >= RESUME_SYMBOL) && (LA577_0 <= RETURNS_SYMBOL)) || LA577_0 == REVERSE_SYMBOL || ((LA577_0 >= ROLLBACK_SYMBOL) && (LA577_0 <= SCHEDULE_SYMBOL)) || LA577_0 == SCHEMA_NAME_SYMBOL || ((LA577_0 >= SECOND_SYMBOL) && (LA577_0 <= SECURITY_SYMBOL)) || ((LA577_0 >= SERIALIZABLE_SYMBOL) && (LA577_0 <= SERIAL_SYMBOL)) || ((LA577_0 >= SERVER_SYMBOL) && (LA577_0 <= SESSION_SYMBOL)) || LA577_0 == SHARE_SYMBOL || LA577_0 == SHUTDOWN_SYMBOL || ((LA577_0 >= SIGNED_SYMBOL) && (LA577_0 <= SIMPLE_SYMBOL)) || ((LA577_0 >= SLAVE_SYMBOL) && (LA577_0 <= SLOW_SYMBOL)) || ((LA577_0 >= SNAPSHOT_SYMBOL) && (LA577_0 <= SOURCE_SYMBOL)) || ((LA577_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA577_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA577_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA577_0 <= SQL_CACHE_SYMBOL)) || LA577_0 == SQL_NO_CACHE_SYMBOL || LA577_0 == SQL_THREAD_SYMBOL || ((LA577_0 >= STARTS_SYMBOL) && (LA577_0 <= STATUS_SYMBOL)) || ((LA577_0 >= STOP_SYMBOL) && (LA577_0 <= STORAGE_SYMBOL)) || ((LA577_0 >= STRING_SYMBOL) && (LA577_0 <= SUBPARTITION_SYMBOL)) || ((LA577_0 >= SUPER_SYMBOL) && (LA577_0 <= SWITCHES_SYMBOL)) || ((LA577_0 >= TABLESPACE_SYMBOL) && (LA577_0 <= TABLE_NAME_SYMBOL)) || ((LA577_0 >= TEMPORARY_SYMBOL) && (LA577_0 <= TEMPTABLE_SYMBOL)) || ((LA577_0 >= TEXT_SYMBOL) && (LA577_0 <= THAN_SYMBOL)) || ((LA577_0 >= TIMESTAMP_ADD_SYMBOL) && (LA577_0 <= TIME_SYMBOL)) || ((LA577_0 >= TRANSACTION_SYMBOL) && (LA577_0 <= TRIGGERS_SYMBOL)) || ((LA577_0 >= TRUNCATE_SYMBOL) && (LA577_0 <= UDF_RETURNS_SYMBOL)) || ((LA577_0 >= UNCOMMITTED_SYMBOL) && (LA577_0 <= UNDEFINED_SYMBOL)) || ((LA577_0 >= UNDOFILE_SYMBOL) && (LA577_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA577_0 >= UNICODE_SYMBOL) && (LA577_0 <= UNINSTALL_SYMBOL)) || LA577_0 == UNKNOWN_SYMBOL || LA577_0 == UNTIL_SYMBOL || LA577_0 == UPGRADE_SYMBOL || ((LA577_0 >= USER_RESOURCES_SYMBOL) && (LA577_0 <= USE_FRM_SYMBOL)) || LA577_0 == VALUE_SYMBOL || LA577_0 == VARIABLES_SYMBOL || ((LA577_0 >= VIEW_SYMBOL) && (LA577_0 <= WEIGHT_STRING_SYMBOL)) || ((LA577_0 >= WORK_SYMBOL) && (LA577_0 <= WRAPPER_SYMBOL)) || LA577_0 == X509_SYMBOL || ((LA577_0 >= XA_SYMBOL) && (LA577_0 <= XML_SYMBOL)) || LA577_0 == YEAR_SYMBOL))
                {
                    alt577=1;
                }
                else if ( (LA577_0 == DEFAULT_SYMBOL))
                {
                    alt577=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 577;
                    EXCEPTION->state        = 0;


                    goto rulevariable_nameEx;

                }
            }
            switch (alt577)
            {
        	case 1:
        	    // MySQL.g:1826:2: identifier ( DOT_SYMBOL identifier )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_identifier_in_variable_name10693);
        	        identifier2173=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulevariable_nameEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2173.tree);

        	        // MySQL.g:1826:13: ( DOT_SYMBOL identifier )?
        	        {
        	            int alt576=2;
        	            switch ( LA(1) )
        	            {
        	                case DOT_SYMBOL:
        	                	{
        	                		alt576=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt576)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1826:14: DOT_SYMBOL identifier
        	        	    {
        	        	        DOT_SYMBOL2174 = (pANTLR3_COMMON_TOKEN) MATCHT(DOT_SYMBOL, &FOLLOW_DOT_SYMBOL_in_variable_name10696);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulevariable_nameEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DOT_SYMBOL2174_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOT_SYMBOL2174));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DOT_SYMBOL2174_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_identifier_in_variable_name10698);
        	        	        identifier2175=identifier(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulevariable_nameEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2175.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1827:4: DEFAULT_SYMBOL DOT_SYMBOL identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DEFAULT_SYMBOL2176 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_variable_name10709);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulevariable_nameEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DEFAULT_SYMBOL2176_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL2176));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL2176_tree);
        	        }

        	        DOT_SYMBOL2177 = (pANTLR3_COMMON_TOKEN) MATCHT(DOT_SYMBOL, &FOLLOW_DOT_SYMBOL_in_variable_name10711);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulevariable_nameEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DOT_SYMBOL2177_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOT_SYMBOL2177));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DOT_SYMBOL2177_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_identifier_in_variable_name10713);
        	        identifier2178=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulevariable_nameEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2178.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulevariable_nameEx; /* Prevent compiler warnings */
    rulevariable_nameEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end variable_name */

/**
 * $ANTLR start match_expression
 * MySQL.g:1830:1: match_expression : MATCH_SYMBOL ^ OPEN_PAR_SYMBOL field_name_list CLOSE_PAR_SYMBOL AGAINST_SYMBOL OPEN_PAR_SYMBOL bitwise_or_expression ( IN_SYMBOL BOOLEAN_SYMBOL MODE_SYMBOL | ( IN_SYMBOL NATURAL_SYMBOL LANGUAGE_SYMBOL MODE_SYMBOL )? ( WITH_SYMBOL QUERY_SYMBOL EXPANSION_SYMBOL )? ) CLOSE_PAR_SYMBOL ;
 */
static MySQLParser_match_expression_return
match_expression(pMySQLParser ctx)
{
    MySQLParser_match_expression_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    MATCH_SYMBOL2179;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2180;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2182;
    pANTLR3_COMMON_TOKEN    AGAINST_SYMBOL2183;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2184;
    pANTLR3_COMMON_TOKEN    IN_SYMBOL2186;
    pANTLR3_COMMON_TOKEN    BOOLEAN_SYMBOL2187;
    pANTLR3_COMMON_TOKEN    MODE_SYMBOL2188;
    pANTLR3_COMMON_TOKEN    IN_SYMBOL2189;
    pANTLR3_COMMON_TOKEN    NATURAL_SYMBOL2190;
    pANTLR3_COMMON_TOKEN    LANGUAGE_SYMBOL2191;
    pANTLR3_COMMON_TOKEN    MODE_SYMBOL2192;
    pANTLR3_COMMON_TOKEN    WITH_SYMBOL2193;
    pANTLR3_COMMON_TOKEN    QUERY_SYMBOL2194;
    pANTLR3_COMMON_TOKEN    EXPANSION_SYMBOL2195;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2196;
    MySQLParser_field_name_list_return field_name_list2181;
    #undef	RETURN_TYPE_field_name_list2181
    #define	RETURN_TYPE_field_name_list2181 MySQLParser_field_name_list_return

    MySQLParser_bitwise_or_expression_return bitwise_or_expression2185;
    #undef	RETURN_TYPE_bitwise_or_expression2185
    #define	RETURN_TYPE_bitwise_or_expression2185 MySQLParser_bitwise_or_expression_return

    pANTLR3_BASE_TREE MATCH_SYMBOL2179_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2180_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2182_tree;
    pANTLR3_BASE_TREE AGAINST_SYMBOL2183_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2184_tree;
    pANTLR3_BASE_TREE IN_SYMBOL2186_tree;
    pANTLR3_BASE_TREE BOOLEAN_SYMBOL2187_tree;
    pANTLR3_BASE_TREE MODE_SYMBOL2188_tree;
    pANTLR3_BASE_TREE IN_SYMBOL2189_tree;
    pANTLR3_BASE_TREE NATURAL_SYMBOL2190_tree;
    pANTLR3_BASE_TREE LANGUAGE_SYMBOL2191_tree;
    pANTLR3_BASE_TREE MODE_SYMBOL2192_tree;
    pANTLR3_BASE_TREE WITH_SYMBOL2193_tree;
    pANTLR3_BASE_TREE QUERY_SYMBOL2194_tree;
    pANTLR3_BASE_TREE EXPANSION_SYMBOL2195_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2196_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    MATCH_SYMBOL2179       = NULL;
    OPEN_PAR_SYMBOL2180       = NULL;
    CLOSE_PAR_SYMBOL2182       = NULL;
    AGAINST_SYMBOL2183       = NULL;
    OPEN_PAR_SYMBOL2184       = NULL;
    IN_SYMBOL2186       = NULL;
    BOOLEAN_SYMBOL2187       = NULL;
    MODE_SYMBOL2188       = NULL;
    IN_SYMBOL2189       = NULL;
    NATURAL_SYMBOL2190       = NULL;
    LANGUAGE_SYMBOL2191       = NULL;
    MODE_SYMBOL2192       = NULL;
    WITH_SYMBOL2193       = NULL;
    QUERY_SYMBOL2194       = NULL;
    EXPANSION_SYMBOL2195       = NULL;
    CLOSE_PAR_SYMBOL2196       = NULL;
    field_name_list2181.tree = NULL;

    bitwise_or_expression2185.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    MATCH_SYMBOL2179_tree   = NULL;
    OPEN_PAR_SYMBOL2180_tree   = NULL;
    CLOSE_PAR_SYMBOL2182_tree   = NULL;
    AGAINST_SYMBOL2183_tree   = NULL;
    OPEN_PAR_SYMBOL2184_tree   = NULL;
    IN_SYMBOL2186_tree   = NULL;
    BOOLEAN_SYMBOL2187_tree   = NULL;
    MODE_SYMBOL2188_tree   = NULL;
    IN_SYMBOL2189_tree   = NULL;
    NATURAL_SYMBOL2190_tree   = NULL;
    LANGUAGE_SYMBOL2191_tree   = NULL;
    MODE_SYMBOL2192_tree   = NULL;
    WITH_SYMBOL2193_tree   = NULL;
    QUERY_SYMBOL2194_tree   = NULL;
    EXPANSION_SYMBOL2195_tree   = NULL;
    CLOSE_PAR_SYMBOL2196_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1830:17: ( MATCH_SYMBOL ^ OPEN_PAR_SYMBOL field_name_list CLOSE_PAR_SYMBOL AGAINST_SYMBOL OPEN_PAR_SYMBOL bitwise_or_expression ( IN_SYMBOL BOOLEAN_SYMBOL MODE_SYMBOL | ( IN_SYMBOL NATURAL_SYMBOL LANGUAGE_SYMBOL MODE_SYMBOL )? ( WITH_SYMBOL QUERY_SYMBOL EXPANSION_SYMBOL )? ) CLOSE_PAR_SYMBOL )
        // MySQL.g:1831:2: MATCH_SYMBOL ^ OPEN_PAR_SYMBOL field_name_list CLOSE_PAR_SYMBOL AGAINST_SYMBOL OPEN_PAR_SYMBOL bitwise_or_expression ( IN_SYMBOL BOOLEAN_SYMBOL MODE_SYMBOL | ( IN_SYMBOL NATURAL_SYMBOL LANGUAGE_SYMBOL MODE_SYMBOL )? ( WITH_SYMBOL QUERY_SYMBOL EXPANSION_SYMBOL )? ) CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            MATCH_SYMBOL2179 = (pANTLR3_COMMON_TOKEN) MATCHT(MATCH_SYMBOL, &FOLLOW_MATCH_SYMBOL_in_match_expression10722);
            if  (HASEXCEPTION())
            {
                goto rulematch_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            MATCH_SYMBOL2179_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MATCH_SYMBOL2179))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, MATCH_SYMBOL2179_tree, root_0));
            }

            OPEN_PAR_SYMBOL2180 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_match_expression10725);
            if  (HASEXCEPTION())
            {
                goto rulematch_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL2180_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2180));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2180_tree);
            }

            FOLLOWPUSH(FOLLOW_field_name_list_in_match_expression10727);
            field_name_list2181=field_name_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulematch_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_name_list2181.tree);

            CLOSE_PAR_SYMBOL2182 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_match_expression10729);
            if  (HASEXCEPTION())
            {
                goto rulematch_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL2182_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2182));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2182_tree);
            }

            AGAINST_SYMBOL2183 = (pANTLR3_COMMON_TOKEN) MATCHT(AGAINST_SYMBOL, &FOLLOW_AGAINST_SYMBOL_in_match_expression10731);
            if  (HASEXCEPTION())
            {
                goto rulematch_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            AGAINST_SYMBOL2183_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AGAINST_SYMBOL2183));
            ADAPTOR->addChild(ADAPTOR, root_0, AGAINST_SYMBOL2183_tree);
            }

            OPEN_PAR_SYMBOL2184 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_match_expression10733);
            if  (HASEXCEPTION())
            {
                goto rulematch_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL2184_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2184));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2184_tree);
            }

            FOLLOWPUSH(FOLLOW_bitwise_or_expression_in_match_expression10735);
            bitwise_or_expression2185=bitwise_or_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulematch_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, bitwise_or_expression2185.tree);

            // MySQL.g:1832:3: ( IN_SYMBOL BOOLEAN_SYMBOL MODE_SYMBOL | ( IN_SYMBOL NATURAL_SYMBOL LANGUAGE_SYMBOL MODE_SYMBOL )? ( WITH_SYMBOL QUERY_SYMBOL EXPANSION_SYMBOL )? )
            {
                int alt580=2;
                switch ( LA(1) )
                {
                case IN_SYMBOL:
                	{
                		switch ( LA(2) )
                		{
                		case BOOLEAN_SYMBOL:
                			{
                				alt580=1;
                			}
                		    break;
                		case NATURAL_SYMBOL:
                			{
                				alt580=2;
                			}
                		    break;

                		default:
                		    if (BACKTRACKING>0)
                		    {
                		        FAILEDFLAG = ANTLR3_TRUE;
                		        return retval;
                		    }

                		    CONSTRUCTEX();
                		    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                		    EXCEPTION->message      = (void *)"";
                		    EXCEPTION->decisionNum  = 580;
                		    EXCEPTION->state        = 1;


                		    goto rulematch_expressionEx;

                		}

                	}
                    break;
                case CLOSE_PAR_SYMBOL:
                case WITH_SYMBOL:
                	{
                		alt580=2;
                	}
                    break;

                default:
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 580;
                    EXCEPTION->state        = 0;


                    goto rulematch_expressionEx;

                }

                switch (alt580)
                {
            	case 1:
            	    // MySQL.g:1833:4: IN_SYMBOL BOOLEAN_SYMBOL MODE_SYMBOL
            	    {
            	        IN_SYMBOL2186 = (pANTLR3_COMMON_TOKEN) MATCHT(IN_SYMBOL, &FOLLOW_IN_SYMBOL_in_match_expression10744);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulematch_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        IN_SYMBOL2186_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IN_SYMBOL2186));
            	        ADAPTOR->addChild(ADAPTOR, root_0, IN_SYMBOL2186_tree);
            	        }

            	        BOOLEAN_SYMBOL2187 = (pANTLR3_COMMON_TOKEN) MATCHT(BOOLEAN_SYMBOL, &FOLLOW_BOOLEAN_SYMBOL_in_match_expression10746);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulematch_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        BOOLEAN_SYMBOL2187_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BOOLEAN_SYMBOL2187));
            	        ADAPTOR->addChild(ADAPTOR, root_0, BOOLEAN_SYMBOL2187_tree);
            	        }

            	        MODE_SYMBOL2188 = (pANTLR3_COMMON_TOKEN) MATCHT(MODE_SYMBOL, &FOLLOW_MODE_SYMBOL_in_match_expression10748);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulematch_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        MODE_SYMBOL2188_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MODE_SYMBOL2188));
            	        ADAPTOR->addChild(ADAPTOR, root_0, MODE_SYMBOL2188_tree);
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1834:6: ( IN_SYMBOL NATURAL_SYMBOL LANGUAGE_SYMBOL MODE_SYMBOL )? ( WITH_SYMBOL QUERY_SYMBOL EXPANSION_SYMBOL )?
            	    {
            	        // MySQL.g:1834:6: ( IN_SYMBOL NATURAL_SYMBOL LANGUAGE_SYMBOL MODE_SYMBOL )?
            	        {
            	            int alt578=2;
            	            switch ( LA(1) )
            	            {
            	                case IN_SYMBOL:
            	                	{
            	                		alt578=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt578)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1834:7: IN_SYMBOL NATURAL_SYMBOL LANGUAGE_SYMBOL MODE_SYMBOL
            	        	    {
            	        	        IN_SYMBOL2189 = (pANTLR3_COMMON_TOKEN) MATCHT(IN_SYMBOL, &FOLLOW_IN_SYMBOL_in_match_expression10756);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulematch_expressionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        IN_SYMBOL2189_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IN_SYMBOL2189));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, IN_SYMBOL2189_tree);
            	        	        }

            	        	        NATURAL_SYMBOL2190 = (pANTLR3_COMMON_TOKEN) MATCHT(NATURAL_SYMBOL, &FOLLOW_NATURAL_SYMBOL_in_match_expression10758);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulematch_expressionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        NATURAL_SYMBOL2190_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NATURAL_SYMBOL2190));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, NATURAL_SYMBOL2190_tree);
            	        	        }

            	        	        LANGUAGE_SYMBOL2191 = (pANTLR3_COMMON_TOKEN) MATCHT(LANGUAGE_SYMBOL, &FOLLOW_LANGUAGE_SYMBOL_in_match_expression10760);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulematch_expressionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        LANGUAGE_SYMBOL2191_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LANGUAGE_SYMBOL2191));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, LANGUAGE_SYMBOL2191_tree);
            	        	        }

            	        	        MODE_SYMBOL2192 = (pANTLR3_COMMON_TOKEN) MATCHT(MODE_SYMBOL, &FOLLOW_MODE_SYMBOL_in_match_expression10762);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulematch_expressionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        MODE_SYMBOL2192_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MODE_SYMBOL2192));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, MODE_SYMBOL2192_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1834:62: ( WITH_SYMBOL QUERY_SYMBOL EXPANSION_SYMBOL )?
            	        {
            	            int alt579=2;
            	            switch ( LA(1) )
            	            {
            	                case WITH_SYMBOL:
            	                	{
            	                		alt579=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt579)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1834:63: WITH_SYMBOL QUERY_SYMBOL EXPANSION_SYMBOL
            	        	    {
            	        	        WITH_SYMBOL2193 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_match_expression10767);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulematch_expressionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        WITH_SYMBOL2193_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WITH_SYMBOL2193));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, WITH_SYMBOL2193_tree);
            	        	        }

            	        	        QUERY_SYMBOL2194 = (pANTLR3_COMMON_TOKEN) MATCHT(QUERY_SYMBOL, &FOLLOW_QUERY_SYMBOL_in_match_expression10769);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulematch_expressionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        QUERY_SYMBOL2194_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, QUERY_SYMBOL2194));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, QUERY_SYMBOL2194_tree);
            	        	        }

            	        	        EXPANSION_SYMBOL2195 = (pANTLR3_COMMON_TOKEN) MATCHT(EXPANSION_SYMBOL, &FOLLOW_EXPANSION_SYMBOL_in_match_expression10771);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulematch_expressionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EXPANSION_SYMBOL2195_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXPANSION_SYMBOL2195));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EXPANSION_SYMBOL2195_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL2196 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_match_expression10781);
            if  (HASEXCEPTION())
            {
                goto rulematch_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL2196_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2196));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2196_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulematch_expressionEx; /* Prevent compiler warnings */
    rulematch_expressionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end match_expression */

/**
 * $ANTLR start case_expression
 * MySQL.g:1840:1: case_expression : CASE_SYMBOL ( expression )? ( when_expression then_expression )+ ( else_expression )? END_SYMBOL ;
 */
static MySQLParser_case_expression_return
case_expression(pMySQLParser ctx)
{
    MySQLParser_case_expression_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    CASE_SYMBOL2197;
    pANTLR3_COMMON_TOKEN    END_SYMBOL2202;
    MySQLParser_expression_return expression2198;
    #undef	RETURN_TYPE_expression2198
    #define	RETURN_TYPE_expression2198 MySQLParser_expression_return

    MySQLParser_when_expression_return when_expression2199;
    #undef	RETURN_TYPE_when_expression2199
    #define	RETURN_TYPE_when_expression2199 MySQLParser_when_expression_return

    MySQLParser_then_expression_return then_expression2200;
    #undef	RETURN_TYPE_then_expression2200
    #define	RETURN_TYPE_then_expression2200 MySQLParser_then_expression_return

    MySQLParser_else_expression_return else_expression2201;
    #undef	RETURN_TYPE_else_expression2201
    #define	RETURN_TYPE_else_expression2201 MySQLParser_else_expression_return

    pANTLR3_BASE_TREE CASE_SYMBOL2197_tree;
    pANTLR3_BASE_TREE END_SYMBOL2202_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CASE_SYMBOL2197       = NULL;
    END_SYMBOL2202       = NULL;
    expression2198.tree = NULL;

    when_expression2199.tree = NULL;

    then_expression2200.tree = NULL;

    else_expression2201.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CASE_SYMBOL2197_tree   = NULL;
    END_SYMBOL2202_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1840:16: ( CASE_SYMBOL ( expression )? ( when_expression then_expression )+ ( else_expression )? END_SYMBOL )
        // MySQL.g:1841:2: CASE_SYMBOL ( expression )? ( when_expression then_expression )+ ( else_expression )? END_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            CASE_SYMBOL2197 = (pANTLR3_COMMON_TOKEN) MATCHT(CASE_SYMBOL, &FOLLOW_CASE_SYMBOL_in_case_expression10791);
            if  (HASEXCEPTION())
            {
                goto rulecase_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CASE_SYMBOL2197_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CASE_SYMBOL2197));
            ADAPTOR->addChild(ADAPTOR, root_0, CASE_SYMBOL2197_tree);
            }

            // MySQL.g:1841:14: ( expression )?
            {
                int alt581=2;
                {
                    int LA581_0 = LA(1);
                    if ( (LA581_0 == BITWISE_NOT_OPERATOR || LA581_0 == DATE_SYMBOL || LA581_0 == INTERVAL_SYMBOL || LA581_0 == LOGICAL_NOT_OPERATOR || LA581_0 == MINUS_OPERATOR || LA581_0 == NCHAR_TEXT || LA581_0 == NOT2_SYMBOL || LA581_0 == NOT_SYMBOL || LA581_0 == PLUS_OPERATOR || LA581_0 == SINGLE_QUOTED_TEXT || ((LA581_0 >= TIMESTAMP_SYMBOL) && (LA581_0 <= TIME_SYMBOL)) || LA581_0 == UNDERSCORE_CHARSET))
                    {
                        alt581=1;
                    }
                    else if ( ((((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)))||((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))) && (LA581_0 == DOUBLE_QUOTED_TEXT))
                    {
                        alt581=1;
                    }
                    else if ( (LA581_0 == FALSE_SYMBOL || LA581_0 == FLOAT || ((LA581_0 >= HEXNUMBER) && (LA581_0 <= HEXSTRING)) || LA581_0 == INTEGER || LA581_0 == TRUE_SYMBOL))
                    {
                        alt581=1;
                    }
                    else if ( ((SERVER_VERSION >= 50003)) && (((LA581_0 >= BITNUMBER) && (LA581_0 <= BITSTRING))))
                    {
                        alt581=1;
                    }
                    else if ( (((LA581_0 >= ACTION_SYMBOL) && (LA581_0 <= ADDDATE_SYMBOL)) || ((LA581_0 >= AFTER_SYMBOL) && (LA581_0 <= ALGORITHM_SYMBOL)) || LA581_0 == ANALYZE_SYMBOL || ((LA581_0 >= ANY_SYMBOL) && (LA581_0 <= ASCII_SYMBOL)) || ((LA581_0 >= AT_AT_SIGN_SYMBOL) && (LA581_0 <= BACKUP_SYMBOL)) || LA581_0 == BACK_TICK_QUOTED_ID || LA581_0 == BEGIN_SYMBOL || ((LA581_0 >= BINARY_SYMBOL) && (LA581_0 <= BINLOG_SYMBOL)) || ((LA581_0 >= BIT_AND_SYMBOL) && (LA581_0 <= BIT_XOR_SYMBOL)) || ((LA581_0 >= BLOCK_SYMBOL) && (LA581_0 <= BOOL_SYMBOL)) || ((LA581_0 >= BTREE_SYMBOL) && (LA581_0 <= BYTE_SYMBOL)) || LA581_0 == CACHE_SYMBOL || LA581_0 == CASCADED_SYMBOL || ((LA581_0 >= CASE_SYMBOL) && (LA581_0 <= CHANGED_SYMBOL)) || ((LA581_0 >= CHARSET_SYMBOL) && (LA581_0 <= CHECKSUM_SYMBOL)) || ((LA581_0 >= CIPHER_SYMBOL) && (LA581_0 <= CLIENT_SYMBOL)) || ((LA581_0 >= CLOSE_SYMBOL) && (LA581_0 <= CODE_SYMBOL)) || LA581_0 == COLLATION_SYMBOL || ((LA581_0 >= COLUMNS_SYMBOL) && (LA581_0 <= COLUMN_NAME_SYMBOL)) || ((LA581_0 >= COMMENT_SYMBOL) && (LA581_0 <= COMPRESSED_SYMBOL)) || LA581_0 == CONCURRENT_SYMBOL || ((LA581_0 >= CONNECTION_SYMBOL) && (LA581_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA581_0 >= CONTAINS_SYMBOL) && (LA581_0 <= CONTEXT_SYMBOL)) || ((LA581_0 >= CONTRIBUTORS_SYMBOL) && (LA581_0 <= CPU_SYMBOL)) || ((LA581_0 >= CUBE_SYMBOL) && (LA581_0 <= CURRENT_SYMBOL)) || ((LA581_0 >= CURRENT_USER_SYMBOL) && (LA581_0 <= CURSOR_NAME_SYMBOL)) || LA581_0 == CURTIME_SYMBOL || ((LA581_0 >= DATABASE_SYMBOL) && (LA581_0 <= DATETIME_SYMBOL)) || LA581_0 == DATE_ADD_SYMBOL || LA581_0 == DATE_SUB_SYMBOL || ((LA581_0 >= DAY_SYMBOL) && (LA581_0 <= DEALLOCATE_SYMBOL)) || LA581_0 == DEFAULT_AUTH_SYMBOL || LA581_0 == DEFINER_SYMBOL || LA581_0 == DELAY_KEY_WRITE_SYMBOL || LA581_0 == DES_KEY_FILE_SYMBOL || LA581_0 == DIAGNOSTICS_SYMBOL || ((LA581_0 >= DIRECTORY_SYMBOL) && (LA581_0 <= DISK_SYMBOL)) || LA581_0 == DOT_SYMBOL || LA581_0 == DO_SYMBOL || ((LA581_0 >= DUMPFILE_SYMBOL) && (LA581_0 <= DYNAMIC_SYMBOL)) || LA581_0 == ENABLE_SYMBOL || LA581_0 == ENDS_SYMBOL || ((LA581_0 >= END_SYMBOL) && (LA581_0 <= ENUM_SYMBOL)) || ((LA581_0 >= ERRORS_SYMBOL) && (LA581_0 <= ERROR_SYMBOL)) || ((LA581_0 >= ESCAPE_SYMBOL) && (LA581_0 <= EVERY_SYMBOL)) || ((LA581_0 >= EXECUTE_SYMBOL) && (LA581_0 <= EXISTS_SYMBOL)) || LA581_0 == EXPANSION_SYMBOL || LA581_0 == EXPORT_SYMBOL || ((LA581_0 >= EXTENDED_SYMBOL) && (LA581_0 <= EXTRACT_SYMBOL)) || ((LA581_0 >= FAST_SYMBOL) && (LA581_0 <= FAULTS_SYMBOL)) || ((LA581_0 >= FILE_SYMBOL) && (LA581_0 <= FIXED_SYMBOL)) || LA581_0 == FLUSH_SYMBOL || LA581_0 == FORMAT_SYMBOL || LA581_0 == FOUND_SYMBOL || LA581_0 == FULL_SYMBOL || ((LA581_0 >= FUNCTION_SYMBOL) && (LA581_0 <= GET_FORMAT_SYMBOL)) || ((LA581_0 >= GLOBAL_SYMBOL) && (LA581_0 <= GRANTS_SYMBOL)) || LA581_0 == GROUP_CONCAT_SYMBOL || ((LA581_0 >= HANDLER_SYMBOL) && (LA581_0 <= HASH_SYMBOL)) || LA581_0 == HELP_SYMBOL || ((LA581_0 >= HOSTS_SYMBOL) && (LA581_0 <= HOST_SYMBOL)) || ((LA581_0 >= HOUR_SYMBOL) && (LA581_0 <= IGNORE_SERVER_IDS_SYMBOL)) || ((LA581_0 >= IMPORT_SYMBOL) && (LA581_0 <= INDEXES_SYMBOL)) || LA581_0 == INITIAL_SIZE_SYMBOL || LA581_0 == INNODB_SYMBOL || ((LA581_0 >= INSERT_METHOD_SYMBOL) && (LA581_0 <= INSTALL_SYMBOL)) || LA581_0 == INVOKER_SYMBOL || LA581_0 == IO_SYMBOL || ((LA581_0 >= IPC_SYMBOL) && (LA581_0 <= ISSUER_SYMBOL)) || LA581_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA581_0 >= LANGUAGE_SYMBOL) && (LA581_0 <= LAST_SYMBOL)) || LA581_0 == LEAVES_SYMBOL || LA581_0 == LEFT_SYMBOL || LA581_0 == LESS_SYMBOL || LA581_0 == LEVEL_SYMBOL || LA581_0 == LINESTRING_SYMBOL || LA581_0 == LIST_SYMBOL || LA581_0 == LOCAL_SYMBOL || LA581_0 == LOCKS_SYMBOL || LA581_0 == LOGFILE_SYMBOL || LA581_0 == LOGS_SYMBOL || LA581_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA581_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA581_0 <= MASTER_SSL_SYMBOL)) || ((LA581_0 >= MASTER_SYMBOL) && (LA581_0 <= MATCH_SYMBOL)) || ((LA581_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA581_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA581_0 >= MEDIUM_SYMBOL) && (LA581_0 <= MICROSECOND_SYMBOL)) || LA581_0 == MIGRATE_SYMBOL || ((LA581_0 >= MINUTE_SYMBOL) && (LA581_0 <= MIN_SYMBOL)) || LA581_0 == MODE_SYMBOL || LA581_0 == MODIFY_SYMBOL || ((LA581_0 >= MOD_SYMBOL) && (LA581_0 <= MULTILINESTRING_SYMBOL)) || ((LA581_0 >= MULTIPOINT_SYMBOL) && (LA581_0 <= MULTIPOLYGON_SYMBOL)) || ((LA581_0 >= MUTEX_SYMBOL) && (LA581_0 <= NATIONAL_SYMBOL)) || LA581_0 == NCHAR_SYMBOL || LA581_0 == NDBCLUSTER_SYMBOL || ((LA581_0 >= NEW_SYMBOL) && (LA581_0 <= NONE_SYMBOL)) || ((LA581_0 >= NOW_SYMBOL) && (LA581_0 <= NO_WAIT_SYMBOL)) || LA581_0 == NULL2_SYMBOL || ((LA581_0 >= NULL_SYMBOL) && (LA581_0 <= NUMBER_SYMBOL)) || LA581_0 == NVARCHAR_SYMBOL || ((LA581_0 >= OFFSET_SYMBOL) && (LA581_0 <= ONE_SYMBOL)) || ((LA581_0 >= OPEN_PAR_SYMBOL) && (LA581_0 <= OPEN_SYMBOL)) || LA581_0 == OPTIONS_SYMBOL || ((LA581_0 >= OWNER_SYMBOL) && (LA581_0 <= PARAM_MARKER)) || ((LA581_0 >= PARSER_SYMBOL) && (LA581_0 <= PARTITION_SYMBOL)) || ((LA581_0 >= PASSWORD_SYMBOL) && (LA581_0 <= PLUGIN_SYMBOL)) || ((LA581_0 >= POINT_SYMBOL) && (LA581_0 <= POSITION_SYMBOL)) || ((LA581_0 >= PREPARE_SYMBOL) && (LA581_0 <= PREV_SYMBOL)) || LA581_0 == PRIVILEGES_SYMBOL || ((LA581_0 >= PROCESSLIST_SYMBOL) && (LA581_0 <= PROXY_SYMBOL)) || ((LA581_0 >= QUARTER_SYMBOL) && (LA581_0 <= QUICK_SYMBOL)) || LA581_0 == READ_ONLY_SYMBOL || ((LA581_0 >= REBUILD_SYMBOL) && (LA581_0 <= REDUNDANT_SYMBOL)) || ((LA581_0 >= RELAYLOG_SYMBOL) && (LA581_0 <= RELAY_THREAD_SYMBOL)) || ((LA581_0 >= RELOAD_SYMBOL) && (LA581_0 <= REMOVE_SYMBOL)) || ((LA581_0 >= REORGANIZE_SYMBOL) && (LA581_0 <= REPLICATION_SYMBOL)) || LA581_0 == RESET_SYMBOL || LA581_0 == RESTORE_SYMBOL || ((LA581_0 >= RESUME_SYMBOL) && (LA581_0 <= RETURNS_SYMBOL)) || LA581_0 == REVERSE_SYMBOL || LA581_0 == RIGHT_SYMBOL || ((LA581_0 >= ROLLBACK_SYMBOL) && (LA581_0 <= SCHEDULE_SYMBOL)) || LA581_0 == SCHEMA_NAME_SYMBOL || ((LA581_0 >= SECOND_SYMBOL) && (LA581_0 <= SECURITY_SYMBOL)) || ((LA581_0 >= SERIALIZABLE_SYMBOL) && (LA581_0 <= SERIAL_SYMBOL)) || ((LA581_0 >= SERVER_SYMBOL) && (LA581_0 <= SESSION_SYMBOL)) || LA581_0 == SHARE_SYMBOL || LA581_0 == SHUTDOWN_SYMBOL || ((LA581_0 >= SIGNED_SYMBOL) && (LA581_0 <= SIMPLE_SYMBOL)) || ((LA581_0 >= SLAVE_SYMBOL) && (LA581_0 <= SLOW_SYMBOL)) || ((LA581_0 >= SNAPSHOT_SYMBOL) && (LA581_0 <= SOURCE_SYMBOL)) || ((LA581_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA581_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA581_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA581_0 <= SQL_CACHE_SYMBOL)) || LA581_0 == SQL_NO_CACHE_SYMBOL || LA581_0 == SQL_THREAD_SYMBOL || ((LA581_0 >= STARTS_SYMBOL) && (LA581_0 <= STATUS_SYMBOL)) || LA581_0 == STDDEV_SAMP_SYMBOL || ((LA581_0 >= STD_SYMBOL) && (LA581_0 <= STORAGE_SYMBOL)) || ((LA581_0 >= STRING_SYMBOL) && (LA581_0 <= SUBPARTITION_SYMBOL)) || LA581_0 == SUBSTRING_SYMBOL || ((LA581_0 >= SUM_SYMBOL) && (LA581_0 <= SYSDATE_SYMBOL)) || ((LA581_0 >= TABLESPACE_SYMBOL) && (LA581_0 <= TABLE_NAME_SYMBOL)) || ((LA581_0 >= TEMPORARY_SYMBOL) && (LA581_0 <= TEMPTABLE_SYMBOL)) || ((LA581_0 >= TEXT_SYMBOL) && (LA581_0 <= THAN_SYMBOL)) || ((LA581_0 >= TIMESTAMP_ADD_SYMBOL) && (LA581_0 <= TIMESTAMP_DIFF_SYMBOL)) || ((LA581_0 >= TRANSACTION_SYMBOL) && (LA581_0 <= TRIGGERS_SYMBOL)) || LA581_0 == TRIM_SYMBOL || ((LA581_0 >= TRUNCATE_SYMBOL) && (LA581_0 <= UDF_RETURNS_SYMBOL)) || ((LA581_0 >= UNCOMMITTED_SYMBOL) && (LA581_0 <= UNDEFINED_SYMBOL)) || ((LA581_0 >= UNDOFILE_SYMBOL) && (LA581_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA581_0 >= UNICODE_SYMBOL) && (LA581_0 <= UNINSTALL_SYMBOL)) || LA581_0 == UNKNOWN_SYMBOL || LA581_0 == UNTIL_SYMBOL || LA581_0 == UPGRADE_SYMBOL || ((LA581_0 >= USER_RESOURCES_SYMBOL) && (LA581_0 <= USE_FRM_SYMBOL)) || ((LA581_0 >= UTC_DATE_SYMBOL) && (LA581_0 <= VALUE_SYMBOL)) || ((LA581_0 >= VARIABLES_SYMBOL) && (LA581_0 <= VARIANCE_SYMBOL)) || LA581_0 == VAR_SAMP_SYMBOL || ((LA581_0 >= VIEW_SYMBOL) && (LA581_0 <= WEIGHT_STRING_SYMBOL)) || ((LA581_0 >= WORK_SYMBOL) && (LA581_0 <= WRAPPER_SYMBOL)) || LA581_0 == X509_SYMBOL || ((LA581_0 >= XA_SYMBOL) && (LA581_0 <= XML_SYMBOL)) || LA581_0 == YEAR_SYMBOL || LA581_0 == 732))
                    {
                        alt581=1;
                    }
                }
                switch (alt581)
                {
            	case 1:
            	    // MySQL.g:1841:14: expression
            	    {
            	        FOLLOWPUSH(FOLLOW_expression_in_case_expression10793);
            	        expression2198=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecase_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2198.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1841:26: ( when_expression then_expression )+
            {
                int cnt582=0;

                for (;;)
                {
                    int alt582=2;
            	switch ( LA(1) )
            	{
            	case WHEN_SYMBOL:
            		{
            			alt582=1;
            		}
            	    break;

            	}

            	switch (alt582)
            	{
            	    case 1:
            	        // MySQL.g:1841:27: when_expression then_expression
            	        {
            	            FOLLOWPUSH(FOLLOW_when_expression_in_case_expression10797);
            	            when_expression2199=when_expression(ctx);

            	            FOLLOWPOP();
            	            if  (HASEXCEPTION())
            	            {
            	                goto rulecase_expressionEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, when_expression2199.tree);

            	            FOLLOWPUSH(FOLLOW_then_expression_in_case_expression10799);
            	            then_expression2200=then_expression(ctx);

            	            FOLLOWPOP();
            	            if  (HASEXCEPTION())
            	            {
            	                goto rulecase_expressionEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, then_expression2200.tree);

            	        }
            	        break;

            	    default:

            		if ( cnt582 >= 1 )
            		{
            		    goto loop582;
            		}
            		if (BACKTRACKING>0)
            		{
            		    FAILEDFLAG = ANTLR3_TRUE;
            		    return retval;
            		}

            		/* mismatchedSetEx()
            		 */
            		CONSTRUCTEX();
            		EXCEPTION->type = ANTLR3_EARLY_EXIT_EXCEPTION;
            		EXCEPTION->name = (void *)ANTLR3_EARLY_EXIT_NAME;


            		goto rulecase_expressionEx;
            	}
            	cnt582++;
                }
                loop582: ;	/* Jump to here if this rule does not match */
            }

            // MySQL.g:1841:61: ( else_expression )?
            {
                int alt583=2;
                switch ( LA(1) )
                {
                    case ELSE_SYMBOL:
                    	{
                    		alt583=1;
                    	}
                        break;
                }

                switch (alt583)
                {
            	case 1:
            	    // MySQL.g:1841:61: else_expression
            	    {
            	        FOLLOWPUSH(FOLLOW_else_expression_in_case_expression10803);
            	        else_expression2201=else_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecase_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, else_expression2201.tree);

            	    }
            	    break;

                }
            }

            END_SYMBOL2202 = (pANTLR3_COMMON_TOKEN) MATCHT(END_SYMBOL, &FOLLOW_END_SYMBOL_in_case_expression10806);
            if  (HASEXCEPTION())
            {
                goto rulecase_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            END_SYMBOL2202_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, END_SYMBOL2202));
            ADAPTOR->addChild(ADAPTOR, root_0, END_SYMBOL2202_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulecase_expressionEx; /* Prevent compiler warnings */
    rulecase_expressionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end case_expression */

/**
 * $ANTLR start when_expression
 * MySQL.g:1844:1: when_expression : WHEN_SYMBOL ^ expression ;
 */
static MySQLParser_when_expression_return
when_expression(pMySQLParser ctx)
{
    MySQLParser_when_expression_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    WHEN_SYMBOL2203;
    MySQLParser_expression_return expression2204;
    #undef	RETURN_TYPE_expression2204
    #define	RETURN_TYPE_expression2204 MySQLParser_expression_return

    pANTLR3_BASE_TREE WHEN_SYMBOL2203_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    WHEN_SYMBOL2203       = NULL;
    expression2204.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    WHEN_SYMBOL2203_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1844:16: ( WHEN_SYMBOL ^ expression )
        // MySQL.g:1845:2: WHEN_SYMBOL ^ expression
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            WHEN_SYMBOL2203 = (pANTLR3_COMMON_TOKEN) MATCHT(WHEN_SYMBOL, &FOLLOW_WHEN_SYMBOL_in_when_expression10815);
            if  (HASEXCEPTION())
            {
                goto rulewhen_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            WHEN_SYMBOL2203_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WHEN_SYMBOL2203))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, WHEN_SYMBOL2203_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_expression_in_when_expression10818);
            expression2204=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulewhen_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2204.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto rulewhen_expressionEx; /* Prevent compiler warnings */
    rulewhen_expressionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end when_expression */

/**
 * $ANTLR start then_expression
 * MySQL.g:1848:1: then_expression : THEN_SYMBOL ^ expression ;
 */
static MySQLParser_then_expression_return
then_expression(pMySQLParser ctx)
{
    MySQLParser_then_expression_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    THEN_SYMBOL2205;
    MySQLParser_expression_return expression2206;
    #undef	RETURN_TYPE_expression2206
    #define	RETURN_TYPE_expression2206 MySQLParser_expression_return

    pANTLR3_BASE_TREE THEN_SYMBOL2205_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    THEN_SYMBOL2205       = NULL;
    expression2206.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    THEN_SYMBOL2205_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1848:16: ( THEN_SYMBOL ^ expression )
        // MySQL.g:1849:2: THEN_SYMBOL ^ expression
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            THEN_SYMBOL2205 = (pANTLR3_COMMON_TOKEN) MATCHT(THEN_SYMBOL, &FOLLOW_THEN_SYMBOL_in_then_expression10827);
            if  (HASEXCEPTION())
            {
                goto rulethen_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            THEN_SYMBOL2205_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, THEN_SYMBOL2205))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, THEN_SYMBOL2205_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_expression_in_then_expression10830);
            expression2206=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulethen_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2206.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto rulethen_expressionEx; /* Prevent compiler warnings */
    rulethen_expressionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end then_expression */

/**
 * $ANTLR start else_expression
 * MySQL.g:1852:1: else_expression : ELSE_SYMBOL ^ expression ;
 */
static MySQLParser_else_expression_return
else_expression(pMySQLParser ctx)
{
    MySQLParser_else_expression_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    ELSE_SYMBOL2207;
    MySQLParser_expression_return expression2208;
    #undef	RETURN_TYPE_expression2208
    #define	RETURN_TYPE_expression2208 MySQLParser_expression_return

    pANTLR3_BASE_TREE ELSE_SYMBOL2207_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ELSE_SYMBOL2207       = NULL;
    expression2208.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ELSE_SYMBOL2207_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1852:16: ( ELSE_SYMBOL ^ expression )
        // MySQL.g:1853:2: ELSE_SYMBOL ^ expression
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            ELSE_SYMBOL2207 = (pANTLR3_COMMON_TOKEN) MATCHT(ELSE_SYMBOL, &FOLLOW_ELSE_SYMBOL_in_else_expression10839);
            if  (HASEXCEPTION())
            {
                goto ruleelse_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ELSE_SYMBOL2207_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ELSE_SYMBOL2207))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, ELSE_SYMBOL2207_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_expression_in_else_expression10842);
            expression2208=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleelse_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2208.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleelse_expressionEx; /* Prevent compiler warnings */
    ruleelse_expressionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end else_expression */

/**
 * $ANTLR start cast_expression
 * MySQL.g:1856:1: cast_expression : ( BINARY_SYMBOL primary | CAST_SYMBOL OPEN_PAR_SYMBOL expression AS_SYMBOL cast_type CLOSE_PAR_SYMBOL | CONVERT_SYMBOL OPEN_PAR_SYMBOL expression ( COMMA_SYMBOL cast_type | USING_SYMBOL charset_name ) CLOSE_PAR_SYMBOL );
 */
static MySQLParser_cast_expression_return
cast_expression(pMySQLParser ctx)
{
    MySQLParser_cast_expression_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2209;
    pANTLR3_COMMON_TOKEN    CAST_SYMBOL2211;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2212;
    pANTLR3_COMMON_TOKEN    AS_SYMBOL2214;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2216;
    pANTLR3_COMMON_TOKEN    CONVERT_SYMBOL2217;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2218;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2220;
    pANTLR3_COMMON_TOKEN    USING_SYMBOL2222;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2224;
    MySQLParser_primary_return primary2210;
    #undef	RETURN_TYPE_primary2210
    #define	RETURN_TYPE_primary2210 MySQLParser_primary_return

    MySQLParser_expression_return expression2213;
    #undef	RETURN_TYPE_expression2213
    #define	RETURN_TYPE_expression2213 MySQLParser_expression_return

    MySQLParser_cast_type_return cast_type2215;
    #undef	RETURN_TYPE_cast_type2215
    #define	RETURN_TYPE_cast_type2215 MySQLParser_cast_type_return

    MySQLParser_expression_return expression2219;
    #undef	RETURN_TYPE_expression2219
    #define	RETURN_TYPE_expression2219 MySQLParser_expression_return

    MySQLParser_cast_type_return cast_type2221;
    #undef	RETURN_TYPE_cast_type2221
    #define	RETURN_TYPE_cast_type2221 MySQLParser_cast_type_return

    MySQLParser_charset_name_return charset_name2223;
    #undef	RETURN_TYPE_charset_name2223
    #define	RETURN_TYPE_charset_name2223 MySQLParser_charset_name_return

    pANTLR3_BASE_TREE BINARY_SYMBOL2209_tree;
    pANTLR3_BASE_TREE CAST_SYMBOL2211_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2212_tree;
    pANTLR3_BASE_TREE AS_SYMBOL2214_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2216_tree;
    pANTLR3_BASE_TREE CONVERT_SYMBOL2217_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2218_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2220_tree;
    pANTLR3_BASE_TREE USING_SYMBOL2222_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2224_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    BINARY_SYMBOL2209       = NULL;
    CAST_SYMBOL2211       = NULL;
    OPEN_PAR_SYMBOL2212       = NULL;
    AS_SYMBOL2214       = NULL;
    CLOSE_PAR_SYMBOL2216       = NULL;
    CONVERT_SYMBOL2217       = NULL;
    OPEN_PAR_SYMBOL2218       = NULL;
    COMMA_SYMBOL2220       = NULL;
    USING_SYMBOL2222       = NULL;
    CLOSE_PAR_SYMBOL2224       = NULL;
    primary2210.tree = NULL;

    expression2213.tree = NULL;

    cast_type2215.tree = NULL;

    expression2219.tree = NULL;

    cast_type2221.tree = NULL;

    charset_name2223.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    BINARY_SYMBOL2209_tree   = NULL;
    CAST_SYMBOL2211_tree   = NULL;
    OPEN_PAR_SYMBOL2212_tree   = NULL;
    AS_SYMBOL2214_tree   = NULL;
    CLOSE_PAR_SYMBOL2216_tree   = NULL;
    CONVERT_SYMBOL2217_tree   = NULL;
    OPEN_PAR_SYMBOL2218_tree   = NULL;
    COMMA_SYMBOL2220_tree   = NULL;
    USING_SYMBOL2222_tree   = NULL;
    CLOSE_PAR_SYMBOL2224_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1856:16: ( BINARY_SYMBOL primary | CAST_SYMBOL OPEN_PAR_SYMBOL expression AS_SYMBOL cast_type CLOSE_PAR_SYMBOL | CONVERT_SYMBOL OPEN_PAR_SYMBOL expression ( COMMA_SYMBOL cast_type | USING_SYMBOL charset_name ) CLOSE_PAR_SYMBOL )

            ANTLR3_UINT32 alt585;

            alt585=3;

            switch ( LA(1) )
            {
            case BINARY_SYMBOL:
            	{
            		alt585=1;
            	}
                break;
            case CAST_SYMBOL:
            	{
            		alt585=2;
            	}
                break;
            case CONVERT_SYMBOL:
            	{
            		alt585=3;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 585;
                EXCEPTION->state        = 0;


                goto rulecast_expressionEx;

            }

            switch (alt585)
            {
        	case 1:
        	    // MySQL.g:1857:2: BINARY_SYMBOL primary
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BINARY_SYMBOL2209 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_cast_expression10851);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BINARY_SYMBOL2209_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2209));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2209_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_primary_in_cast_expression10853);
        	        primary2210=primary(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, primary2210.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1858:4: CAST_SYMBOL OPEN_PAR_SYMBOL expression AS_SYMBOL cast_type CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CAST_SYMBOL2211 = (pANTLR3_COMMON_TOKEN) MATCHT(CAST_SYMBOL, &FOLLOW_CAST_SYMBOL_in_cast_expression10858);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CAST_SYMBOL2211_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CAST_SYMBOL2211));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CAST_SYMBOL2211_tree);
        	        }

        	        OPEN_PAR_SYMBOL2212 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_cast_expression10860);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2212_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2212));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2212_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_cast_expression10862);
        	        expression2213=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2213.tree);

        	        AS_SYMBOL2214 = (pANTLR3_COMMON_TOKEN) MATCHT(AS_SYMBOL, &FOLLOW_AS_SYMBOL_in_cast_expression10864);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        AS_SYMBOL2214_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AS_SYMBOL2214));
        	        ADAPTOR->addChild(ADAPTOR, root_0, AS_SYMBOL2214_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_cast_type_in_cast_expression10866);
        	        cast_type2215=cast_type(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, cast_type2215.tree);

        	        CLOSE_PAR_SYMBOL2216 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_cast_expression10868);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2216_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2216));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2216_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1859:4: CONVERT_SYMBOL OPEN_PAR_SYMBOL expression ( COMMA_SYMBOL cast_type | USING_SYMBOL charset_name ) CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CONVERT_SYMBOL2217 = (pANTLR3_COMMON_TOKEN) MATCHT(CONVERT_SYMBOL, &FOLLOW_CONVERT_SYMBOL_in_cast_expression10873);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CONVERT_SYMBOL2217_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CONVERT_SYMBOL2217));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CONVERT_SYMBOL2217_tree);
        	        }

        	        OPEN_PAR_SYMBOL2218 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_cast_expression10875);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2218_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2218));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2218_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_cast_expression10877);
        	        expression2219=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2219.tree);

        	        // MySQL.g:1859:46: ( COMMA_SYMBOL cast_type | USING_SYMBOL charset_name )
        	        {
        	            int alt584=2;
        	            switch ( LA(1) )
        	            {
        	            case COMMA_SYMBOL:
        	            	{
        	            		alt584=1;
        	            	}
        	                break;
        	            case USING_SYMBOL:
        	            	{
        	            		alt584=2;
        	            	}
        	                break;

        	            default:
        	                if (BACKTRACKING>0)
        	                {
        	                    FAILEDFLAG = ANTLR3_TRUE;
        	                    return retval;
        	                }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                EXCEPTION->message      = (void *)"";
        	                EXCEPTION->decisionNum  = 584;
        	                EXCEPTION->state        = 0;


        	                goto rulecast_expressionEx;

        	            }

        	            switch (alt584)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1859:47: COMMA_SYMBOL cast_type
        	        	    {
        	        	        COMMA_SYMBOL2220 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_cast_expression10880);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecast_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COMMA_SYMBOL2220_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2220));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2220_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_cast_type_in_cast_expression10882);
        	        	        cast_type2221=cast_type(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecast_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, cast_type2221.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:1859:72: USING_SYMBOL charset_name
        	        	    {
        	        	        USING_SYMBOL2222 = (pANTLR3_COMMON_TOKEN) MATCHT(USING_SYMBOL, &FOLLOW_USING_SYMBOL_in_cast_expression10886);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecast_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        USING_SYMBOL2222_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USING_SYMBOL2222));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, USING_SYMBOL2222_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_charset_name_in_cast_expression10888);
        	        	        charset_name2223=charset_name(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecast_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset_name2223.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        CLOSE_PAR_SYMBOL2224 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_cast_expression10891);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2224_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2224));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2224_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulecast_expressionEx; /* Prevent compiler warnings */
    rulecast_expressionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end cast_expression */

/**
 * $ANTLR start cast_type
 * MySQL.g:1862:1: cast_type : ( BINARY_SYMBOL ( field_length )? | CHAR_SYMBOL ( field_length )? ( encoding )? | NCHAR_SYMBOL ( field_length )? | SIGNED_SYMBOL ( INT_SYMBOL )? | UNSIGNED_SYMBOL ( INT_SYMBOL )? | DATE_SYMBOL | TIME_SYMBOL ( type_datetime_precision )? | DATETIME_SYMBOL ( type_datetime_precision )? | DECIMAL_SYMBOL ( float_options )? );
 */
static MySQLParser_cast_type_return
cast_type(pMySQLParser ctx)
{
    MySQLParser_cast_type_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2225;
    pANTLR3_COMMON_TOKEN    CHAR_SYMBOL2227;
    pANTLR3_COMMON_TOKEN    NCHAR_SYMBOL2230;
    pANTLR3_COMMON_TOKEN    SIGNED_SYMBOL2232;
    pANTLR3_COMMON_TOKEN    INT_SYMBOL2233;
    pANTLR3_COMMON_TOKEN    UNSIGNED_SYMBOL2234;
    pANTLR3_COMMON_TOKEN    INT_SYMBOL2235;
    pANTLR3_COMMON_TOKEN    DATE_SYMBOL2236;
    pANTLR3_COMMON_TOKEN    TIME_SYMBOL2237;
    pANTLR3_COMMON_TOKEN    DATETIME_SYMBOL2239;
    pANTLR3_COMMON_TOKEN    DECIMAL_SYMBOL2241;
    MySQLParser_field_length_return field_length2226;
    #undef	RETURN_TYPE_field_length2226
    #define	RETURN_TYPE_field_length2226 MySQLParser_field_length_return

    MySQLParser_field_length_return field_length2228;
    #undef	RETURN_TYPE_field_length2228
    #define	RETURN_TYPE_field_length2228 MySQLParser_field_length_return

    MySQLParser_encoding_return encoding2229;
    #undef	RETURN_TYPE_encoding2229
    #define	RETURN_TYPE_encoding2229 MySQLParser_encoding_return

    MySQLParser_field_length_return field_length2231;
    #undef	RETURN_TYPE_field_length2231
    #define	RETURN_TYPE_field_length2231 MySQLParser_field_length_return

    MySQLParser_type_datetime_precision_return type_datetime_precision2238;
    #undef	RETURN_TYPE_type_datetime_precision2238
    #define	RETURN_TYPE_type_datetime_precision2238 MySQLParser_type_datetime_precision_return

    MySQLParser_type_datetime_precision_return type_datetime_precision2240;
    #undef	RETURN_TYPE_type_datetime_precision2240
    #define	RETURN_TYPE_type_datetime_precision2240 MySQLParser_type_datetime_precision_return

    MySQLParser_float_options_return float_options2242;
    #undef	RETURN_TYPE_float_options2242
    #define	RETURN_TYPE_float_options2242 MySQLParser_float_options_return

    pANTLR3_BASE_TREE BINARY_SYMBOL2225_tree;
    pANTLR3_BASE_TREE CHAR_SYMBOL2227_tree;
    pANTLR3_BASE_TREE NCHAR_SYMBOL2230_tree;
    pANTLR3_BASE_TREE SIGNED_SYMBOL2232_tree;
    pANTLR3_BASE_TREE INT_SYMBOL2233_tree;
    pANTLR3_BASE_TREE UNSIGNED_SYMBOL2234_tree;
    pANTLR3_BASE_TREE INT_SYMBOL2235_tree;
    pANTLR3_BASE_TREE DATE_SYMBOL2236_tree;
    pANTLR3_BASE_TREE TIME_SYMBOL2237_tree;
    pANTLR3_BASE_TREE DATETIME_SYMBOL2239_tree;
    pANTLR3_BASE_TREE DECIMAL_SYMBOL2241_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    BINARY_SYMBOL2225       = NULL;
    CHAR_SYMBOL2227       = NULL;
    NCHAR_SYMBOL2230       = NULL;
    SIGNED_SYMBOL2232       = NULL;
    INT_SYMBOL2233       = NULL;
    UNSIGNED_SYMBOL2234       = NULL;
    INT_SYMBOL2235       = NULL;
    DATE_SYMBOL2236       = NULL;
    TIME_SYMBOL2237       = NULL;
    DATETIME_SYMBOL2239       = NULL;
    DECIMAL_SYMBOL2241       = NULL;
    field_length2226.tree = NULL;

    field_length2228.tree = NULL;

    encoding2229.tree = NULL;

    field_length2231.tree = NULL;

    type_datetime_precision2238.tree = NULL;

    type_datetime_precision2240.tree = NULL;

    float_options2242.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    BINARY_SYMBOL2225_tree   = NULL;
    CHAR_SYMBOL2227_tree   = NULL;
    NCHAR_SYMBOL2230_tree   = NULL;
    SIGNED_SYMBOL2232_tree   = NULL;
    INT_SYMBOL2233_tree   = NULL;
    UNSIGNED_SYMBOL2234_tree   = NULL;
    INT_SYMBOL2235_tree   = NULL;
    DATE_SYMBOL2236_tree   = NULL;
    TIME_SYMBOL2237_tree   = NULL;
    DATETIME_SYMBOL2239_tree   = NULL;
    DECIMAL_SYMBOL2241_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1862:10: ( BINARY_SYMBOL ( field_length )? | CHAR_SYMBOL ( field_length )? ( encoding )? | NCHAR_SYMBOL ( field_length )? | SIGNED_SYMBOL ( INT_SYMBOL )? | UNSIGNED_SYMBOL ( INT_SYMBOL )? | DATE_SYMBOL | TIME_SYMBOL ( type_datetime_precision )? | DATETIME_SYMBOL ( type_datetime_precision )? | DECIMAL_SYMBOL ( float_options )? )

            ANTLR3_UINT32 alt595;

            alt595=9;

            switch ( LA(1) )
            {
            case BINARY_SYMBOL:
            	{
            		alt595=1;
            	}
                break;
            case CHAR_SYMBOL:
            	{
            		alt595=2;
            	}
                break;
            case NCHAR_SYMBOL:
            	{
            		alt595=3;
            	}
                break;
            case SIGNED_SYMBOL:
            	{
            		alt595=4;
            	}
                break;
            case UNSIGNED_SYMBOL:
            	{
            		alt595=5;
            	}
                break;
            case DATE_SYMBOL:
            	{
            		alt595=6;
            	}
                break;
            case TIME_SYMBOL:
            	{
            		alt595=7;
            	}
                break;
            case DATETIME_SYMBOL:
            	{
            		alt595=8;
            	}
                break;
            case DECIMAL_SYMBOL:
            	{
            		alt595=9;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 595;
                EXCEPTION->state        = 0;


                goto rulecast_typeEx;

            }

            switch (alt595)
            {
        	case 1:
        	    // MySQL.g:1863:2: BINARY_SYMBOL ( field_length )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BINARY_SYMBOL2225 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_cast_type10900);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BINARY_SYMBOL2225_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2225));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2225_tree);
        	        }

        	        // MySQL.g:1863:16: ( field_length )?
        	        {
        	            int alt586=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt586=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt586)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1863:16: field_length
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_length_in_cast_type10902);
        	        	        field_length2226=field_length(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecast_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2226.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1864:4: CHAR_SYMBOL ( field_length )? ( encoding )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CHAR_SYMBOL2227 = (pANTLR3_COMMON_TOKEN) MATCHT(CHAR_SYMBOL, &FOLLOW_CHAR_SYMBOL_in_cast_type10908);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CHAR_SYMBOL2227_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHAR_SYMBOL2227));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CHAR_SYMBOL2227_tree);
        	        }

        	        // MySQL.g:1864:16: ( field_length )?
        	        {
        	            int alt587=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt587=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt587)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1864:16: field_length
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_length_in_cast_type10910);
        	        	        field_length2228=field_length(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecast_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2228.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:1864:30: ( encoding )?
        	        {
        	            int alt588=2;
        	            switch ( LA(1) )
        	            {
        	                case ASCII_SYMBOL:
        	                case BINARY_SYMBOL:
        	                case BYTE_SYMBOL:
        	                case CHARSET_SYMBOL:
        	                case CHAR_SYMBOL:
        	                case UNICODE_SYMBOL:
        	                	{
        	                		alt588=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt588)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1864:30: encoding
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_encoding_in_cast_type10913);
        	        	        encoding2229=encoding(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecast_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, encoding2229.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1865:4: NCHAR_SYMBOL ( field_length )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NCHAR_SYMBOL2230 = (pANTLR3_COMMON_TOKEN) MATCHT(NCHAR_SYMBOL, &FOLLOW_NCHAR_SYMBOL_in_cast_type10919);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NCHAR_SYMBOL2230_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NCHAR_SYMBOL2230));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NCHAR_SYMBOL2230_tree);
        	        }

        	        // MySQL.g:1865:17: ( field_length )?
        	        {
        	            int alt589=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt589=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt589)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1865:17: field_length
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_length_in_cast_type10921);
        	        	        field_length2231=field_length(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecast_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2231.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1866:4: SIGNED_SYMBOL ( INT_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SIGNED_SYMBOL2232 = (pANTLR3_COMMON_TOKEN) MATCHT(SIGNED_SYMBOL, &FOLLOW_SIGNED_SYMBOL_in_cast_type10927);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SIGNED_SYMBOL2232_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SIGNED_SYMBOL2232));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SIGNED_SYMBOL2232_tree);
        	        }

        	        // MySQL.g:1866:18: ( INT_SYMBOL )?
        	        {
        	            int alt590=2;
        	            switch ( LA(1) )
        	            {
        	                case INT_SYMBOL:
        	                	{
        	                		alt590=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt590)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1866:18: INT_SYMBOL
        	        	    {
        	        	        INT_SYMBOL2233 = (pANTLR3_COMMON_TOKEN) MATCHT(INT_SYMBOL, &FOLLOW_INT_SYMBOL_in_cast_type10929);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecast_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        INT_SYMBOL2233_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INT_SYMBOL2233));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, INT_SYMBOL2233_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1867:4: UNSIGNED_SYMBOL ( INT_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        UNSIGNED_SYMBOL2234 = (pANTLR3_COMMON_TOKEN) MATCHT(UNSIGNED_SYMBOL, &FOLLOW_UNSIGNED_SYMBOL_in_cast_type10935);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UNSIGNED_SYMBOL2234_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNSIGNED_SYMBOL2234));
        	        ADAPTOR->addChild(ADAPTOR, root_0, UNSIGNED_SYMBOL2234_tree);
        	        }

        	        // MySQL.g:1867:20: ( INT_SYMBOL )?
        	        {
        	            int alt591=2;
        	            switch ( LA(1) )
        	            {
        	                case INT_SYMBOL:
        	                	{
        	                		alt591=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt591)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1867:20: INT_SYMBOL
        	        	    {
        	        	        INT_SYMBOL2235 = (pANTLR3_COMMON_TOKEN) MATCHT(INT_SYMBOL, &FOLLOW_INT_SYMBOL_in_cast_type10937);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecast_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        INT_SYMBOL2235_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INT_SYMBOL2235));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, INT_SYMBOL2235_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:1868:4: DATE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DATE_SYMBOL2236 = (pANTLR3_COMMON_TOKEN) MATCHT(DATE_SYMBOL, &FOLLOW_DATE_SYMBOL_in_cast_type10943);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DATE_SYMBOL2236_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATE_SYMBOL2236));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DATE_SYMBOL2236_tree);
        	        }

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:1869:4: TIME_SYMBOL ( type_datetime_precision )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TIME_SYMBOL2237 = (pANTLR3_COMMON_TOKEN) MATCHT(TIME_SYMBOL, &FOLLOW_TIME_SYMBOL_in_cast_type10948);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TIME_SYMBOL2237_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TIME_SYMBOL2237));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TIME_SYMBOL2237_tree);
        	        }

        	        // MySQL.g:1869:16: ( type_datetime_precision )?
        	        {
        	            int alt592=2;
        	            {
        	                int LA592_0 = LA(1);
        	                if ( ((SERVER_VERSION >= 50600)) && (LA592_0 == OPEN_PAR_SYMBOL))
        	                {
        	                    alt592=1;
        	                }
        	            }
        	            switch (alt592)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1869:16: type_datetime_precision
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_type_datetime_precision_in_cast_type10950);
        	        	        type_datetime_precision2238=type_datetime_precision(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecast_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, type_datetime_precision2238.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:1870:4: DATETIME_SYMBOL ( type_datetime_precision )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DATETIME_SYMBOL2239 = (pANTLR3_COMMON_TOKEN) MATCHT(DATETIME_SYMBOL, &FOLLOW_DATETIME_SYMBOL_in_cast_type10956);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DATETIME_SYMBOL2239_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATETIME_SYMBOL2239));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DATETIME_SYMBOL2239_tree);
        	        }

        	        // MySQL.g:1870:20: ( type_datetime_precision )?
        	        {
        	            int alt593=2;
        	            {
        	                int LA593_0 = LA(1);
        	                if ( ((SERVER_VERSION >= 50600)) && (LA593_0 == OPEN_PAR_SYMBOL))
        	                {
        	                    alt593=1;
        	                }
        	            }
        	            switch (alt593)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1870:20: type_datetime_precision
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_type_datetime_precision_in_cast_type10958);
        	        	        type_datetime_precision2240=type_datetime_precision(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecast_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, type_datetime_precision2240.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:1871:4: DECIMAL_SYMBOL ( float_options )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DECIMAL_SYMBOL2241 = (pANTLR3_COMMON_TOKEN) MATCHT(DECIMAL_SYMBOL, &FOLLOW_DECIMAL_SYMBOL_in_cast_type10964);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DECIMAL_SYMBOL2241_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DECIMAL_SYMBOL2241));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DECIMAL_SYMBOL2241_tree);
        	        }

        	        // MySQL.g:1871:19: ( float_options )?
        	        {
        	            int alt594=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt594=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt594)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1871:19: float_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_float_options_in_cast_type10966);
        	        	        float_options2242=float_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecast_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, float_options2242.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulecast_typeEx; /* Prevent compiler warnings */
    rulecast_typeEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end cast_type */

/**
 * $ANTLR start encoding
 * MySQL.g:1874:1: encoding : ( ASCII_SYMBOL ( BINARY_SYMBOL )? | BINARY_SYMBOL ( ASCII_SYMBOL | UNICODE_SYMBOL | charset charset_name )? | UNICODE_SYMBOL ( BINARY_SYMBOL )? | BYTE_SYMBOL | charset charset_name ( BINARY_SYMBOL )? );
 */
static MySQLParser_encoding_return
encoding(pMySQLParser ctx)
{
    MySQLParser_encoding_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    ASCII_SYMBOL2243;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2244;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2245;
    pANTLR3_COMMON_TOKEN    ASCII_SYMBOL2246;
    pANTLR3_COMMON_TOKEN    UNICODE_SYMBOL2247;
    pANTLR3_COMMON_TOKEN    UNICODE_SYMBOL2250;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2251;
    pANTLR3_COMMON_TOKEN    BYTE_SYMBOL2252;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2255;
    MySQLParser_charset_return charset2248;
    #undef	RETURN_TYPE_charset2248
    #define	RETURN_TYPE_charset2248 MySQLParser_charset_return

    MySQLParser_charset_name_return charset_name2249;
    #undef	RETURN_TYPE_charset_name2249
    #define	RETURN_TYPE_charset_name2249 MySQLParser_charset_name_return

    MySQLParser_charset_return charset2253;
    #undef	RETURN_TYPE_charset2253
    #define	RETURN_TYPE_charset2253 MySQLParser_charset_return

    MySQLParser_charset_name_return charset_name2254;
    #undef	RETURN_TYPE_charset_name2254
    #define	RETURN_TYPE_charset_name2254 MySQLParser_charset_name_return

    pANTLR3_BASE_TREE ASCII_SYMBOL2243_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2244_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2245_tree;
    pANTLR3_BASE_TREE ASCII_SYMBOL2246_tree;
    pANTLR3_BASE_TREE UNICODE_SYMBOL2247_tree;
    pANTLR3_BASE_TREE UNICODE_SYMBOL2250_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2251_tree;
    pANTLR3_BASE_TREE BYTE_SYMBOL2252_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2255_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ASCII_SYMBOL2243       = NULL;
    BINARY_SYMBOL2244       = NULL;
    BINARY_SYMBOL2245       = NULL;
    ASCII_SYMBOL2246       = NULL;
    UNICODE_SYMBOL2247       = NULL;
    UNICODE_SYMBOL2250       = NULL;
    BINARY_SYMBOL2251       = NULL;
    BYTE_SYMBOL2252       = NULL;
    BINARY_SYMBOL2255       = NULL;
    charset2248.tree = NULL;

    charset_name2249.tree = NULL;

    charset2253.tree = NULL;

    charset_name2254.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ASCII_SYMBOL2243_tree   = NULL;
    BINARY_SYMBOL2244_tree   = NULL;
    BINARY_SYMBOL2245_tree   = NULL;
    ASCII_SYMBOL2246_tree   = NULL;
    UNICODE_SYMBOL2247_tree   = NULL;
    UNICODE_SYMBOL2250_tree   = NULL;
    BINARY_SYMBOL2251_tree   = NULL;
    BYTE_SYMBOL2252_tree   = NULL;
    BINARY_SYMBOL2255_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1874:9: ( ASCII_SYMBOL ( BINARY_SYMBOL )? | BINARY_SYMBOL ( ASCII_SYMBOL | UNICODE_SYMBOL | charset charset_name )? | UNICODE_SYMBOL ( BINARY_SYMBOL )? | BYTE_SYMBOL | charset charset_name ( BINARY_SYMBOL )? )

            ANTLR3_UINT32 alt600;

            alt600=5;

            switch ( LA(1) )
            {
            case ASCII_SYMBOL:
            	{
            		alt600=1;
            	}
                break;
            case BINARY_SYMBOL:
            	{
            		alt600=2;
            	}
                break;
            case UNICODE_SYMBOL:
            	{
            		alt600=3;
            	}
                break;
            case BYTE_SYMBOL:
            	{
            		alt600=4;
            	}
                break;
            case CHARSET_SYMBOL:
            case CHAR_SYMBOL:
            	{
            		alt600=5;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 600;
                EXCEPTION->state        = 0;


                goto ruleencodingEx;

            }

            switch (alt600)
            {
        	case 1:
        	    // MySQL.g:1875:2: ASCII_SYMBOL ( BINARY_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ASCII_SYMBOL2243 = (pANTLR3_COMMON_TOKEN) MATCHT(ASCII_SYMBOL, &FOLLOW_ASCII_SYMBOL_in_encoding10976);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleencodingEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ASCII_SYMBOL2243_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ASCII_SYMBOL2243));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ASCII_SYMBOL2243_tree);
        	        }

        	        // MySQL.g:1875:15: ( BINARY_SYMBOL )?
        	        {
        	            int alt596=2;
        	            switch ( LA(1) )
        	            {
        	                case BINARY_SYMBOL:
        	                	{
        	                		alt596=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt596)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1875:15: BINARY_SYMBOL
        	        	    {
        	        	        BINARY_SYMBOL2244 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_encoding10978);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleencodingEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        BINARY_SYMBOL2244_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2244));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2244_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1876:4: BINARY_SYMBOL ( ASCII_SYMBOL | UNICODE_SYMBOL | charset charset_name )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BINARY_SYMBOL2245 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_encoding10984);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleencodingEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BINARY_SYMBOL2245_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2245));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2245_tree);
        	        }

        	        // MySQL.g:1876:18: ( ASCII_SYMBOL | UNICODE_SYMBOL | charset charset_name )?
        	        {
        	            int alt597=4;
        	            switch ( LA(1) )
        	            {
        	                case ASCII_SYMBOL:
        	                	{
        	                		alt597=1;
        	                	}
        	                    break;
        	                case UNICODE_SYMBOL:
        	                	{
        	                		alt597=2;
        	                	}
        	                    break;
        	                case CHARSET_SYMBOL:
        	                case CHAR_SYMBOL:
        	                	{
        	                		alt597=3;
        	                	}
        	                    break;
        	            }

        	            switch (alt597)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1876:19: ASCII_SYMBOL
        	        	    {
        	        	        ASCII_SYMBOL2246 = (pANTLR3_COMMON_TOKEN) MATCHT(ASCII_SYMBOL, &FOLLOW_ASCII_SYMBOL_in_encoding10987);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleencodingEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        ASCII_SYMBOL2246_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ASCII_SYMBOL2246));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, ASCII_SYMBOL2246_tree);
        	        	        }

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:1876:34: UNICODE_SYMBOL
        	        	    {
        	        	        UNICODE_SYMBOL2247 = (pANTLR3_COMMON_TOKEN) MATCHT(UNICODE_SYMBOL, &FOLLOW_UNICODE_SYMBOL_in_encoding10991);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleencodingEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        UNICODE_SYMBOL2247_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNICODE_SYMBOL2247));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, UNICODE_SYMBOL2247_tree);
        	        	        }

        	        	    }
        	        	    break;
        	        	case 3:
        	        	    // MySQL.g:1876:51: charset charset_name
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_charset_in_encoding10995);
        	        	        charset2248=charset(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleencodingEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset2248.tree);

        	        	        FOLLOWPUSH(FOLLOW_charset_name_in_encoding10997);
        	        	        charset_name2249=charset_name(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleencodingEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset_name2249.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1877:4: UNICODE_SYMBOL ( BINARY_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        UNICODE_SYMBOL2250 = (pANTLR3_COMMON_TOKEN) MATCHT(UNICODE_SYMBOL, &FOLLOW_UNICODE_SYMBOL_in_encoding11004);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleencodingEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UNICODE_SYMBOL2250_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNICODE_SYMBOL2250));
        	        ADAPTOR->addChild(ADAPTOR, root_0, UNICODE_SYMBOL2250_tree);
        	        }

        	        // MySQL.g:1877:19: ( BINARY_SYMBOL )?
        	        {
        	            int alt598=2;
        	            switch ( LA(1) )
        	            {
        	                case BINARY_SYMBOL:
        	                	{
        	                		alt598=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt598)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1877:19: BINARY_SYMBOL
        	        	    {
        	        	        BINARY_SYMBOL2251 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_encoding11006);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleencodingEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        BINARY_SYMBOL2251_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2251));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2251_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1878:4: BYTE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BYTE_SYMBOL2252 = (pANTLR3_COMMON_TOKEN) MATCHT(BYTE_SYMBOL, &FOLLOW_BYTE_SYMBOL_in_encoding11012);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleencodingEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BYTE_SYMBOL2252_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BYTE_SYMBOL2252));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BYTE_SYMBOL2252_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1879:4: charset charset_name ( BINARY_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_charset_in_encoding11017);
        	        charset2253=charset(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleencodingEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset2253.tree);

        	        FOLLOWPUSH(FOLLOW_charset_name_in_encoding11019);
        	        charset_name2254=charset_name(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleencodingEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset_name2254.tree);

        	        // MySQL.g:1879:25: ( BINARY_SYMBOL )?
        	        {
        	            int alt599=2;
        	            switch ( LA(1) )
        	            {
        	                case BINARY_SYMBOL:
        	                	{
        	                		alt599=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt599)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1879:25: BINARY_SYMBOL
        	        	    {
        	        	        BINARY_SYMBOL2255 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_encoding11021);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleencodingEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        BINARY_SYMBOL2255_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2255));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2255_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleencodingEx; /* Prevent compiler warnings */
    ruleencodingEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end encoding */

/**
 * $ANTLR start charset
 * MySQL.g:1882:1: charset : ( CHAR_SYMBOL SET_SYMBOL | CHARSET_SYMBOL );
 */
static MySQLParser_charset_return
charset(pMySQLParser ctx)
{
    MySQLParser_charset_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    CHAR_SYMBOL2256;
    pANTLR3_COMMON_TOKEN    SET_SYMBOL2257;
    pANTLR3_COMMON_TOKEN    CHARSET_SYMBOL2258;

    pANTLR3_BASE_TREE CHAR_SYMBOL2256_tree;
    pANTLR3_BASE_TREE SET_SYMBOL2257_tree;
    pANTLR3_BASE_TREE CHARSET_SYMBOL2258_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CHAR_SYMBOL2256       = NULL;
    SET_SYMBOL2257       = NULL;
    CHARSET_SYMBOL2258       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CHAR_SYMBOL2256_tree   = NULL;
    SET_SYMBOL2257_tree   = NULL;
    CHARSET_SYMBOL2258_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1882:8: ( CHAR_SYMBOL SET_SYMBOL | CHARSET_SYMBOL )

            ANTLR3_UINT32 alt601;

            alt601=2;

            switch ( LA(1) )
            {
            case CHAR_SYMBOL:
            	{
            		alt601=1;
            	}
                break;
            case CHARSET_SYMBOL:
            	{
            		alt601=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 601;
                EXCEPTION->state        = 0;


                goto rulecharsetEx;

            }

            switch (alt601)
            {
        	case 1:
        	    // MySQL.g:1883:2: CHAR_SYMBOL SET_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CHAR_SYMBOL2256 = (pANTLR3_COMMON_TOKEN) MATCHT(CHAR_SYMBOL, &FOLLOW_CHAR_SYMBOL_in_charset11031);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecharsetEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CHAR_SYMBOL2256_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHAR_SYMBOL2256));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CHAR_SYMBOL2256_tree);
        	        }

        	        SET_SYMBOL2257 = (pANTLR3_COMMON_TOKEN) MATCHT(SET_SYMBOL, &FOLLOW_SET_SYMBOL_in_charset11033);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecharsetEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SET_SYMBOL2257_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SET_SYMBOL2257));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SET_SYMBOL2257_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1883:27: CHARSET_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CHARSET_SYMBOL2258 = (pANTLR3_COMMON_TOKEN) MATCHT(CHARSET_SYMBOL, &FOLLOW_CHARSET_SYMBOL_in_charset11037);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecharsetEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CHARSET_SYMBOL2258_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHARSET_SYMBOL2258));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CHARSET_SYMBOL2258_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulecharsetEx; /* Prevent compiler warnings */
    rulecharsetEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end charset */

/**
 * $ANTLR start not_rule
 * MySQL.g:1886:1: not_rule : ( NOT_SYMBOL | NOT2_SYMBOL );
 */
static MySQLParser_not_rule_return
not_rule(pMySQLParser ctx)
{
    MySQLParser_not_rule_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set2259;

    pANTLR3_BASE_TREE set2259_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2259       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2259_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1886:9: ( NOT_SYMBOL | NOT2_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set2259=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == NOT2_SYMBOL || LA(1) == NOT_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2259))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto rulenot_ruleEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto rulenot_ruleEx; /* Prevent compiler warnings */
    rulenot_ruleEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end not_rule */

/**
 * $ANTLR start not2_rule
 * MySQL.g:1891:1: not2_rule : ( LOGICAL_NOT_OPERATOR | NOT2_SYMBOL );
 */
static MySQLParser_not2_rule_return
not2_rule(pMySQLParser ctx)
{
    MySQLParser_not2_rule_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set2260;

    pANTLR3_BASE_TREE set2260_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2260       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2260_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1891:10: ( LOGICAL_NOT_OPERATOR | NOT2_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set2260=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == LOGICAL_NOT_OPERATOR || LA(1) == NOT2_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2260))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto rulenot2_ruleEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto rulenot2_ruleEx; /* Prevent compiler warnings */
    rulenot2_ruleEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end not2_rule */

/**
 * $ANTLR start or_rule
 * MySQL.g:1896:1: or_rule : ( OR_SYMBOL | LOGICAL_OR_OPERATOR );
 */
static MySQLParser_or_rule_return
or_rule(pMySQLParser ctx)
{
    MySQLParser_or_rule_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set2261;

    pANTLR3_BASE_TREE set2261_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2261       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2261_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1896:8: ( OR_SYMBOL | LOGICAL_OR_OPERATOR )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set2261=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == LOGICAL_OR_OPERATOR || LA(1) == OR_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2261))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto ruleor_ruleEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto ruleor_ruleEx; /* Prevent compiler warnings */
    ruleor_ruleEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end or_rule */

/**
 * $ANTLR start xor_rule
 * MySQL.g:1901:1: xor_rule : ( XOR_SYMBOL | BITWISE_XOR_OPERATOR );
 */
static MySQLParser_xor_rule_return
xor_rule(pMySQLParser ctx)
{
    MySQLParser_xor_rule_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set2262;

    pANTLR3_BASE_TREE set2262_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2262       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2262_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1901:9: ( XOR_SYMBOL | BITWISE_XOR_OPERATOR )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set2262=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == BITWISE_XOR_OPERATOR || LA(1) == XOR_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2262))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto rulexor_ruleEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto rulexor_ruleEx; /* Prevent compiler warnings */
    rulexor_ruleEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end xor_rule */

/**
 * $ANTLR start and_rule
 * MySQL.g:1906:1: and_rule : ( AND_SYMBOL | LOGICAL_AND_OPERATOR );
 */
static MySQLParser_and_rule_return
and_rule(pMySQLParser ctx)
{
    MySQLParser_and_rule_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set2263;

    pANTLR3_BASE_TREE set2263_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2263       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2263_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1906:9: ( AND_SYMBOL | LOGICAL_AND_OPERATOR )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set2263=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == AND_SYMBOL || LA(1) == LOGICAL_AND_OPERATOR )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2263))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto ruleand_ruleEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto ruleand_ruleEx; /* Prevent compiler warnings */
    ruleand_ruleEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end and_rule */

/**
 * $ANTLR start interval
 * MySQL.g:1911:1: interval : expression interval_unit ;
 */
static MySQLParser_interval_return
interval(pMySQLParser ctx)
{
    MySQLParser_interval_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_expression_return expression2264;
    #undef	RETURN_TYPE_expression2264
    #define	RETURN_TYPE_expression2264 MySQLParser_expression_return

    MySQLParser_interval_unit_return interval_unit2265;
    #undef	RETURN_TYPE_interval_unit2265
    #define	RETURN_TYPE_interval_unit2265 MySQLParser_interval_unit_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    expression2264.tree = NULL;

    interval_unit2265.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:1911:9: ( expression interval_unit )
        // MySQL.g:1912:3: expression interval_unit
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_expression_in_interval11118);
            expression2264=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleintervalEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2264.tree);

            FOLLOWPUSH(FOLLOW_interval_unit_in_interval11120);
            interval_unit2265=interval_unit(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleintervalEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, interval_unit2265.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleintervalEx; /* Prevent compiler warnings */
    ruleintervalEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end interval */

/**
 * $ANTLR start interval_unit
 * MySQL.g:1916:1: interval_unit : ( interval_timestamp_unit | SECOND_MICROSECOND_SYMBOL | MINUTE_MICROSECOND_SYMBOL | MINUTE_SECOND_SYMBOL | HOUR_MICROSECOND_SYMBOL | HOUR_SECOND_SYMBOL | HOUR_MINUTE_SYMBOL | DAY_MICROSECOND_SYMBOL | DAY_SECOND_SYMBOL | DAY_MINUTE_SYMBOL | DAY_HOUR_SYMBOL | YEAR_MONTH_SYMBOL );
 */
static MySQLParser_interval_unit_return
interval_unit(pMySQLParser ctx)
{
    MySQLParser_interval_unit_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    SECOND_MICROSECOND_SYMBOL2267;
    pANTLR3_COMMON_TOKEN    MINUTE_MICROSECOND_SYMBOL2268;
    pANTLR3_COMMON_TOKEN    MINUTE_SECOND_SYMBOL2269;
    pANTLR3_COMMON_TOKEN    HOUR_MICROSECOND_SYMBOL2270;
    pANTLR3_COMMON_TOKEN    HOUR_SECOND_SYMBOL2271;
    pANTLR3_COMMON_TOKEN    HOUR_MINUTE_SYMBOL2272;
    pANTLR3_COMMON_TOKEN    DAY_MICROSECOND_SYMBOL2273;
    pANTLR3_COMMON_TOKEN    DAY_SECOND_SYMBOL2274;
    pANTLR3_COMMON_TOKEN    DAY_MINUTE_SYMBOL2275;
    pANTLR3_COMMON_TOKEN    DAY_HOUR_SYMBOL2276;
    pANTLR3_COMMON_TOKEN    YEAR_MONTH_SYMBOL2277;
    MySQLParser_interval_timestamp_unit_return interval_timestamp_unit2266;
    #undef	RETURN_TYPE_interval_timestamp_unit2266
    #define	RETURN_TYPE_interval_timestamp_unit2266 MySQLParser_interval_timestamp_unit_return

    pANTLR3_BASE_TREE SECOND_MICROSECOND_SYMBOL2267_tree;
    pANTLR3_BASE_TREE MINUTE_MICROSECOND_SYMBOL2268_tree;
    pANTLR3_BASE_TREE MINUTE_SECOND_SYMBOL2269_tree;
    pANTLR3_BASE_TREE HOUR_MICROSECOND_SYMBOL2270_tree;
    pANTLR3_BASE_TREE HOUR_SECOND_SYMBOL2271_tree;
    pANTLR3_BASE_TREE HOUR_MINUTE_SYMBOL2272_tree;
    pANTLR3_BASE_TREE DAY_MICROSECOND_SYMBOL2273_tree;
    pANTLR3_BASE_TREE DAY_SECOND_SYMBOL2274_tree;
    pANTLR3_BASE_TREE DAY_MINUTE_SYMBOL2275_tree;
    pANTLR3_BASE_TREE DAY_HOUR_SYMBOL2276_tree;
    pANTLR3_BASE_TREE YEAR_MONTH_SYMBOL2277_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SECOND_MICROSECOND_SYMBOL2267       = NULL;
    MINUTE_MICROSECOND_SYMBOL2268       = NULL;
    MINUTE_SECOND_SYMBOL2269       = NULL;
    HOUR_MICROSECOND_SYMBOL2270       = NULL;
    HOUR_SECOND_SYMBOL2271       = NULL;
    HOUR_MINUTE_SYMBOL2272       = NULL;
    DAY_MICROSECOND_SYMBOL2273       = NULL;
    DAY_SECOND_SYMBOL2274       = NULL;
    DAY_MINUTE_SYMBOL2275       = NULL;
    DAY_HOUR_SYMBOL2276       = NULL;
    YEAR_MONTH_SYMBOL2277       = NULL;
    interval_timestamp_unit2266.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SECOND_MICROSECOND_SYMBOL2267_tree   = NULL;
    MINUTE_MICROSECOND_SYMBOL2268_tree   = NULL;
    MINUTE_SECOND_SYMBOL2269_tree   = NULL;
    HOUR_MICROSECOND_SYMBOL2270_tree   = NULL;
    HOUR_SECOND_SYMBOL2271_tree   = NULL;
    HOUR_MINUTE_SYMBOL2272_tree   = NULL;
    DAY_MICROSECOND_SYMBOL2273_tree   = NULL;
    DAY_SECOND_SYMBOL2274_tree   = NULL;
    DAY_MINUTE_SYMBOL2275_tree   = NULL;
    DAY_HOUR_SYMBOL2276_tree   = NULL;
    YEAR_MONTH_SYMBOL2277_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1916:14: ( interval_timestamp_unit | SECOND_MICROSECOND_SYMBOL | MINUTE_MICROSECOND_SYMBOL | MINUTE_SECOND_SYMBOL | HOUR_MICROSECOND_SYMBOL | HOUR_SECOND_SYMBOL | HOUR_MINUTE_SYMBOL | DAY_MICROSECOND_SYMBOL | DAY_SECOND_SYMBOL | DAY_MINUTE_SYMBOL | DAY_HOUR_SYMBOL | YEAR_MONTH_SYMBOL )

            ANTLR3_UINT32 alt602;

            alt602=12;

            {
                int LA602_0 = LA(1);
                if ( (LA602_0 == MICROSECOND_SYMBOL))
                {
                    alt602=1;
                }
                else if ( ((SERVER_VERSION < 50503)) && (LA602_0 == FRAC_SECOND_SYMBOL))
                {
                    alt602=1;
                }
                else if ( (LA602_0 == DAY_SYMBOL || LA602_0 == HOUR_SYMBOL || LA602_0 == MINUTE_SYMBOL || LA602_0 == MONTH_SYMBOL || LA602_0 == QUARTER_SYMBOL || LA602_0 == SECOND_SYMBOL || LA602_0 == WEEK_SYMBOL || LA602_0 == YEAR_SYMBOL))
                {
                    alt602=1;
                }
                else if ( (LA602_0 == SECOND_MICROSECOND_SYMBOL))
                {
                    alt602=2;
                }
                else if ( (LA602_0 == MINUTE_MICROSECOND_SYMBOL))
                {
                    alt602=3;
                }
                else if ( (LA602_0 == MINUTE_SECOND_SYMBOL))
                {
                    alt602=4;
                }
                else if ( (LA602_0 == HOUR_MICROSECOND_SYMBOL))
                {
                    alt602=5;
                }
                else if ( (LA602_0 == HOUR_SECOND_SYMBOL))
                {
                    alt602=6;
                }
                else if ( (LA602_0 == HOUR_MINUTE_SYMBOL))
                {
                    alt602=7;
                }
                else if ( (LA602_0 == DAY_MICROSECOND_SYMBOL))
                {
                    alt602=8;
                }
                else if ( (LA602_0 == DAY_SECOND_SYMBOL))
                {
                    alt602=9;
                }
                else if ( (LA602_0 == DAY_MINUTE_SYMBOL))
                {
                    alt602=10;
                }
                else if ( (LA602_0 == DAY_HOUR_SYMBOL))
                {
                    alt602=11;
                }
                else if ( (LA602_0 == YEAR_MONTH_SYMBOL))
                {
                    alt602=12;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 602;
                    EXCEPTION->state        = 0;


                    goto ruleinterval_unitEx;

                }
            }
            switch (alt602)
            {
        	case 1:
        	    // MySQL.g:1917:2: interval_timestamp_unit
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_interval_timestamp_unit_in_interval_unit11130);
        	        interval_timestamp_unit2266=interval_timestamp_unit(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, interval_timestamp_unit2266.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1918:4: SECOND_MICROSECOND_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SECOND_MICROSECOND_SYMBOL2267 = (pANTLR3_COMMON_TOKEN) MATCHT(SECOND_MICROSECOND_SYMBOL, &FOLLOW_SECOND_MICROSECOND_SYMBOL_in_interval_unit11135);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SECOND_MICROSECOND_SYMBOL2267_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SECOND_MICROSECOND_SYMBOL2267));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SECOND_MICROSECOND_SYMBOL2267_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1919:4: MINUTE_MICROSECOND_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MINUTE_MICROSECOND_SYMBOL2268 = (pANTLR3_COMMON_TOKEN) MATCHT(MINUTE_MICROSECOND_SYMBOL, &FOLLOW_MINUTE_MICROSECOND_SYMBOL_in_interval_unit11140);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MINUTE_MICROSECOND_SYMBOL2268_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MINUTE_MICROSECOND_SYMBOL2268));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MINUTE_MICROSECOND_SYMBOL2268_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1920:4: MINUTE_SECOND_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MINUTE_SECOND_SYMBOL2269 = (pANTLR3_COMMON_TOKEN) MATCHT(MINUTE_SECOND_SYMBOL, &FOLLOW_MINUTE_SECOND_SYMBOL_in_interval_unit11145);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MINUTE_SECOND_SYMBOL2269_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MINUTE_SECOND_SYMBOL2269));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MINUTE_SECOND_SYMBOL2269_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1921:4: HOUR_MICROSECOND_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        HOUR_MICROSECOND_SYMBOL2270 = (pANTLR3_COMMON_TOKEN) MATCHT(HOUR_MICROSECOND_SYMBOL, &FOLLOW_HOUR_MICROSECOND_SYMBOL_in_interval_unit11150);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        HOUR_MICROSECOND_SYMBOL2270_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HOUR_MICROSECOND_SYMBOL2270));
        	        ADAPTOR->addChild(ADAPTOR, root_0, HOUR_MICROSECOND_SYMBOL2270_tree);
        	        }

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:1922:4: HOUR_SECOND_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        HOUR_SECOND_SYMBOL2271 = (pANTLR3_COMMON_TOKEN) MATCHT(HOUR_SECOND_SYMBOL, &FOLLOW_HOUR_SECOND_SYMBOL_in_interval_unit11155);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        HOUR_SECOND_SYMBOL2271_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HOUR_SECOND_SYMBOL2271));
        	        ADAPTOR->addChild(ADAPTOR, root_0, HOUR_SECOND_SYMBOL2271_tree);
        	        }

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:1923:4: HOUR_MINUTE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        HOUR_MINUTE_SYMBOL2272 = (pANTLR3_COMMON_TOKEN) MATCHT(HOUR_MINUTE_SYMBOL, &FOLLOW_HOUR_MINUTE_SYMBOL_in_interval_unit11160);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        HOUR_MINUTE_SYMBOL2272_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HOUR_MINUTE_SYMBOL2272));
        	        ADAPTOR->addChild(ADAPTOR, root_0, HOUR_MINUTE_SYMBOL2272_tree);
        	        }

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:1924:4: DAY_MICROSECOND_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DAY_MICROSECOND_SYMBOL2273 = (pANTLR3_COMMON_TOKEN) MATCHT(DAY_MICROSECOND_SYMBOL, &FOLLOW_DAY_MICROSECOND_SYMBOL_in_interval_unit11165);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DAY_MICROSECOND_SYMBOL2273_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DAY_MICROSECOND_SYMBOL2273));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DAY_MICROSECOND_SYMBOL2273_tree);
        	        }

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:1925:4: DAY_SECOND_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DAY_SECOND_SYMBOL2274 = (pANTLR3_COMMON_TOKEN) MATCHT(DAY_SECOND_SYMBOL, &FOLLOW_DAY_SECOND_SYMBOL_in_interval_unit11170);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DAY_SECOND_SYMBOL2274_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DAY_SECOND_SYMBOL2274));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DAY_SECOND_SYMBOL2274_tree);
        	        }

        	    }
        	    break;
        	case 10:
        	    // MySQL.g:1926:4: DAY_MINUTE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DAY_MINUTE_SYMBOL2275 = (pANTLR3_COMMON_TOKEN) MATCHT(DAY_MINUTE_SYMBOL, &FOLLOW_DAY_MINUTE_SYMBOL_in_interval_unit11175);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DAY_MINUTE_SYMBOL2275_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DAY_MINUTE_SYMBOL2275));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DAY_MINUTE_SYMBOL2275_tree);
        	        }

        	    }
        	    break;
        	case 11:
        	    // MySQL.g:1927:4: DAY_HOUR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DAY_HOUR_SYMBOL2276 = (pANTLR3_COMMON_TOKEN) MATCHT(DAY_HOUR_SYMBOL, &FOLLOW_DAY_HOUR_SYMBOL_in_interval_unit11180);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DAY_HOUR_SYMBOL2276_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DAY_HOUR_SYMBOL2276));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DAY_HOUR_SYMBOL2276_tree);
        	        }

        	    }
        	    break;
        	case 12:
        	    // MySQL.g:1928:4: YEAR_MONTH_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        YEAR_MONTH_SYMBOL2277 = (pANTLR3_COMMON_TOKEN) MATCHT(YEAR_MONTH_SYMBOL, &FOLLOW_YEAR_MONTH_SYMBOL_in_interval_unit11185);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        YEAR_MONTH_SYMBOL2277_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, YEAR_MONTH_SYMBOL2277));
        	        ADAPTOR->addChild(ADAPTOR, root_0, YEAR_MONTH_SYMBOL2277_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleinterval_unitEx; /* Prevent compiler warnings */
    ruleinterval_unitEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end interval_unit */

/**
 * $ANTLR start interval_timestamp_unit
 * MySQL.g:1932:1: interval_timestamp_unit : ( MICROSECOND_SYMBOL |{...}? => FRAC_SECOND_SYMBOL | SECOND_SYMBOL | MINUTE_SYMBOL | HOUR_SYMBOL | DAY_SYMBOL | WEEK_SYMBOL | MONTH_SYMBOL | QUARTER_SYMBOL | YEAR_SYMBOL );
 */
static MySQLParser_interval_timestamp_unit_return
interval_timestamp_unit(pMySQLParser ctx)
{
    MySQLParser_interval_timestamp_unit_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    MICROSECOND_SYMBOL2278;
    pANTLR3_COMMON_TOKEN    FRAC_SECOND_SYMBOL2279;
    pANTLR3_COMMON_TOKEN    SECOND_SYMBOL2280;
    pANTLR3_COMMON_TOKEN    MINUTE_SYMBOL2281;
    pANTLR3_COMMON_TOKEN    HOUR_SYMBOL2282;
    pANTLR3_COMMON_TOKEN    DAY_SYMBOL2283;
    pANTLR3_COMMON_TOKEN    WEEK_SYMBOL2284;
    pANTLR3_COMMON_TOKEN    MONTH_SYMBOL2285;
    pANTLR3_COMMON_TOKEN    QUARTER_SYMBOL2286;
    pANTLR3_COMMON_TOKEN    YEAR_SYMBOL2287;

    pANTLR3_BASE_TREE MICROSECOND_SYMBOL2278_tree;
    pANTLR3_BASE_TREE FRAC_SECOND_SYMBOL2279_tree;
    pANTLR3_BASE_TREE SECOND_SYMBOL2280_tree;
    pANTLR3_BASE_TREE MINUTE_SYMBOL2281_tree;
    pANTLR3_BASE_TREE HOUR_SYMBOL2282_tree;
    pANTLR3_BASE_TREE DAY_SYMBOL2283_tree;
    pANTLR3_BASE_TREE WEEK_SYMBOL2284_tree;
    pANTLR3_BASE_TREE MONTH_SYMBOL2285_tree;
    pANTLR3_BASE_TREE QUARTER_SYMBOL2286_tree;
    pANTLR3_BASE_TREE YEAR_SYMBOL2287_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    MICROSECOND_SYMBOL2278       = NULL;
    FRAC_SECOND_SYMBOL2279       = NULL;
    SECOND_SYMBOL2280       = NULL;
    MINUTE_SYMBOL2281       = NULL;
    HOUR_SYMBOL2282       = NULL;
    DAY_SYMBOL2283       = NULL;
    WEEK_SYMBOL2284       = NULL;
    MONTH_SYMBOL2285       = NULL;
    QUARTER_SYMBOL2286       = NULL;
    YEAR_SYMBOL2287       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    MICROSECOND_SYMBOL2278_tree   = NULL;
    FRAC_SECOND_SYMBOL2279_tree   = NULL;
    SECOND_SYMBOL2280_tree   = NULL;
    MINUTE_SYMBOL2281_tree   = NULL;
    HOUR_SYMBOL2282_tree   = NULL;
    DAY_SYMBOL2283_tree   = NULL;
    WEEK_SYMBOL2284_tree   = NULL;
    MONTH_SYMBOL2285_tree   = NULL;
    QUARTER_SYMBOL2286_tree   = NULL;
    YEAR_SYMBOL2287_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1932:24: ( MICROSECOND_SYMBOL |{...}? => FRAC_SECOND_SYMBOL | SECOND_SYMBOL | MINUTE_SYMBOL | HOUR_SYMBOL | DAY_SYMBOL | WEEK_SYMBOL | MONTH_SYMBOL | QUARTER_SYMBOL | YEAR_SYMBOL )

            ANTLR3_UINT32 alt603;

            alt603=10;

            {
                int LA603_0 = LA(1);
                if ( (LA603_0 == MICROSECOND_SYMBOL))
                {
                    alt603=1;
                }
                else if ( ((SERVER_VERSION < 50503)) && (LA603_0 == FRAC_SECOND_SYMBOL))
                {
                    alt603=2;
                }
                else if ( (LA603_0 == SECOND_SYMBOL))
                {
                    alt603=3;
                }
                else if ( (LA603_0 == MINUTE_SYMBOL))
                {
                    alt603=4;
                }
                else if ( (LA603_0 == HOUR_SYMBOL))
                {
                    alt603=5;
                }
                else if ( (LA603_0 == DAY_SYMBOL))
                {
                    alt603=6;
                }
                else if ( (LA603_0 == WEEK_SYMBOL))
                {
                    alt603=7;
                }
                else if ( (LA603_0 == MONTH_SYMBOL))
                {
                    alt603=8;
                }
                else if ( (LA603_0 == QUARTER_SYMBOL))
                {
                    alt603=9;
                }
                else if ( (LA603_0 == YEAR_SYMBOL))
                {
                    alt603=10;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 603;
                    EXCEPTION->state        = 0;


                    goto ruleinterval_timestamp_unitEx;

                }
            }
            switch (alt603)
            {
        	case 1:
        	    // MySQL.g:1933:2: MICROSECOND_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MICROSECOND_SYMBOL2278 = (pANTLR3_COMMON_TOKEN) MATCHT(MICROSECOND_SYMBOL, &FOLLOW_MICROSECOND_SYMBOL_in_interval_timestamp_unit11195);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_timestamp_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MICROSECOND_SYMBOL2278_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MICROSECOND_SYMBOL2278));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MICROSECOND_SYMBOL2278_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1934:4: {...}? => FRAC_SECOND_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((SERVER_VERSION < 50503)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"SERVER_VERSION < 50503";
        	                EXCEPTION->ruleName	 = (void *)"interval_timestamp_unit";


        	        }

        	        FRAC_SECOND_SYMBOL2279 = (pANTLR3_COMMON_TOKEN) MATCHT(FRAC_SECOND_SYMBOL, &FOLLOW_FRAC_SECOND_SYMBOL_in_interval_timestamp_unit11204);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_timestamp_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FRAC_SECOND_SYMBOL2279_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FRAC_SECOND_SYMBOL2279));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FRAC_SECOND_SYMBOL2279_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1935:4: SECOND_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SECOND_SYMBOL2280 = (pANTLR3_COMMON_TOKEN) MATCHT(SECOND_SYMBOL, &FOLLOW_SECOND_SYMBOL_in_interval_timestamp_unit11209);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_timestamp_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SECOND_SYMBOL2280_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SECOND_SYMBOL2280));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SECOND_SYMBOL2280_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1936:4: MINUTE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MINUTE_SYMBOL2281 = (pANTLR3_COMMON_TOKEN) MATCHT(MINUTE_SYMBOL, &FOLLOW_MINUTE_SYMBOL_in_interval_timestamp_unit11214);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_timestamp_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MINUTE_SYMBOL2281_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MINUTE_SYMBOL2281));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MINUTE_SYMBOL2281_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1937:4: HOUR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        HOUR_SYMBOL2282 = (pANTLR3_COMMON_TOKEN) MATCHT(HOUR_SYMBOL, &FOLLOW_HOUR_SYMBOL_in_interval_timestamp_unit11219);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_timestamp_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        HOUR_SYMBOL2282_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HOUR_SYMBOL2282));
        	        ADAPTOR->addChild(ADAPTOR, root_0, HOUR_SYMBOL2282_tree);
        	        }

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:1938:4: DAY_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DAY_SYMBOL2283 = (pANTLR3_COMMON_TOKEN) MATCHT(DAY_SYMBOL, &FOLLOW_DAY_SYMBOL_in_interval_timestamp_unit11224);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_timestamp_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DAY_SYMBOL2283_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DAY_SYMBOL2283));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DAY_SYMBOL2283_tree);
        	        }

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:1939:4: WEEK_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        WEEK_SYMBOL2284 = (pANTLR3_COMMON_TOKEN) MATCHT(WEEK_SYMBOL, &FOLLOW_WEEK_SYMBOL_in_interval_timestamp_unit11232);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_timestamp_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        WEEK_SYMBOL2284_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WEEK_SYMBOL2284));
        	        ADAPTOR->addChild(ADAPTOR, root_0, WEEK_SYMBOL2284_tree);
        	        }

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:1940:4: MONTH_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MONTH_SYMBOL2285 = (pANTLR3_COMMON_TOKEN) MATCHT(MONTH_SYMBOL, &FOLLOW_MONTH_SYMBOL_in_interval_timestamp_unit11237);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_timestamp_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MONTH_SYMBOL2285_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MONTH_SYMBOL2285));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MONTH_SYMBOL2285_tree);
        	        }

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:1941:4: QUARTER_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        QUARTER_SYMBOL2286 = (pANTLR3_COMMON_TOKEN) MATCHT(QUARTER_SYMBOL, &FOLLOW_QUARTER_SYMBOL_in_interval_timestamp_unit11242);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_timestamp_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        QUARTER_SYMBOL2286_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, QUARTER_SYMBOL2286));
        	        ADAPTOR->addChild(ADAPTOR, root_0, QUARTER_SYMBOL2286_tree);
        	        }

        	    }
        	    break;
        	case 10:
        	    // MySQL.g:1942:4: YEAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        YEAR_SYMBOL2287 = (pANTLR3_COMMON_TOKEN) MATCHT(YEAR_SYMBOL, &FOLLOW_YEAR_SYMBOL_in_interval_timestamp_unit11247);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_timestamp_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        YEAR_SYMBOL2287_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, YEAR_SYMBOL2287));
        	        ADAPTOR->addChild(ADAPTOR, root_0, YEAR_SYMBOL2287_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleinterval_timestamp_unitEx; /* Prevent compiler warnings */
    ruleinterval_timestamp_unitEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end interval_timestamp_unit */

/**
 * $ANTLR start expression_list_with_parentheses
 * MySQL.g:1945:1: expression_list_with_parentheses : OPEN_PAR_SYMBOL expression_list CLOSE_PAR_SYMBOL -> ^( PAR_EXPRESSION OPEN_PAR_SYMBOL expression_list CLOSE_PAR_SYMBOL ) ;
 */
static MySQLParser_expression_list_with_parentheses_return
expression_list_with_parentheses(pMySQLParser ctx)
{
    MySQLParser_expression_list_with_parentheses_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2288;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2290;
    MySQLParser_expression_list_return expression_list2289;
    #undef	RETURN_TYPE_expression_list2289
    #define	RETURN_TYPE_expression_list2289 MySQLParser_expression_list_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2288_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2290_tree;
    pANTLR3_REWRITE_RULE_TOKEN_STREAM stream_CLOSE_PAR_SYMBOL;
    pANTLR3_REWRITE_RULE_TOKEN_STREAM stream_OPEN_PAR_SYMBOL;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_expression_list;
    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL2288       = NULL;
    CLOSE_PAR_SYMBOL2290       = NULL;
    expression_list2289.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL2288_tree   = NULL;
    CLOSE_PAR_SYMBOL2290_tree   = NULL;

    stream_CLOSE_PAR_SYMBOL   = NULL;
    #define CREATE_stream_CLOSE_PAR_SYMBOL  if (stream_CLOSE_PAR_SYMBOL == NULL) {stream_CLOSE_PAR_SYMBOL = antlr3RewriteRuleTOKENStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"token CLOSE_PAR_SYMBOL"); } 
    stream_OPEN_PAR_SYMBOL   = NULL;
    #define CREATE_stream_OPEN_PAR_SYMBOL  if (stream_OPEN_PAR_SYMBOL == NULL) {stream_OPEN_PAR_SYMBOL = antlr3RewriteRuleTOKENStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"token OPEN_PAR_SYMBOL"); } 
    stream_expression_list   = NULL;
    #define CREATE_stream_expression_list  if (stream_expression_list == NULL) {stream_expression_list = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule expression_list"); }

    retval.tree  = NULL;

    {
        // MySQL.g:1945:33: ( OPEN_PAR_SYMBOL expression_list CLOSE_PAR_SYMBOL -> ^( PAR_EXPRESSION OPEN_PAR_SYMBOL expression_list CLOSE_PAR_SYMBOL ) )
        // MySQL.g:1946:2: OPEN_PAR_SYMBOL expression_list CLOSE_PAR_SYMBOL
        {
            OPEN_PAR_SYMBOL2288 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_expression_list_with_parentheses11256);
            if  (HASEXCEPTION())
            {
                goto ruleexpression_list_with_parenthesesEx;
            }
            if (HASFAILED())
            {
                return retval;
            }
             
            if ( BACKTRACKING==0 ) { CREATE_stream_OPEN_PAR_SYMBOL; stream_OPEN_PAR_SYMBOL->add(stream_OPEN_PAR_SYMBOL, OPEN_PAR_SYMBOL2288, NULL); }


            FOLLOWPUSH(FOLLOW_expression_list_in_expression_list_with_parentheses11258);
            expression_list2289=expression_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleexpression_list_with_parenthesesEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_expression_list; stream_expression_list->add(stream_expression_list, expression_list2289.tree, NULL); }

            CLOSE_PAR_SYMBOL2290 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_expression_list_with_parentheses11260);
            if  (HASEXCEPTION())
            {
                goto ruleexpression_list_with_parenthesesEx;
            }
            if (HASFAILED())
            {
                return retval;
            }
             
            if ( BACKTRACKING==0 ) { CREATE_stream_CLOSE_PAR_SYMBOL; stream_CLOSE_PAR_SYMBOL->add(stream_CLOSE_PAR_SYMBOL, CLOSE_PAR_SYMBOL2290, NULL); }


            /* AST REWRITE
             * elements          : OPEN_PAR_SYMBOL, CLOSE_PAR_SYMBOL, expression_list
             * token labels      : 
             * rule labels       : retval
             * token list labels : 
             * rule list labels  : 
             */
            if ( BACKTRACKING==0 ) 

            {
            	pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_retval;

            	stream_retval=antlr3RewriteRuleSubtreeStreamNewAEE(ADAPTOR,  RECOGNIZER, (pANTLR3_UINT8)"token retval", retval.tree != NULL ? retval.tree : NULL);

            	root_0			    = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
            	retval.tree    = root_0;
            	// 1946:51: -> ^( PAR_EXPRESSION OPEN_PAR_SYMBOL expression_list CLOSE_PAR_SYMBOL )
            	{
            	    // MySQL.g:1946:54: ^( PAR_EXPRESSION OPEN_PAR_SYMBOL expression_list CLOSE_PAR_SYMBOL )
            	    {
            	        pANTLR3_BASE_TREE root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
            	        root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, 
            	        (pANTLR3_BASE_TREE)ADAPTOR->createTypeText(ADAPTOR, PAR_EXPRESSION, (pANTLR3_UINT8)"PAR_EXPRESSION")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, 
            	        stream_OPEN_PAR_SYMBOL == NULL ? NULL : stream_OPEN_PAR_SYMBOL->nextNode(stream_OPEN_PAR_SYMBOL)
            	        );

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_expression_list == NULL ? NULL : stream_expression_list->nextTree(stream_expression_list));

            	        ADAPTOR->addChild(ADAPTOR, root_1, 
            	        stream_CLOSE_PAR_SYMBOL == NULL ? NULL : stream_CLOSE_PAR_SYMBOL->nextNode(stream_CLOSE_PAR_SYMBOL)
            	        );

            	        ADAPTOR->addChild(ADAPTOR, root_0, root_1);
            	    }

            	}


            	retval.tree = root_0; // set result root
            	if (stream_retval != NULL) stream_retval->free(stream_retval);


            }
        }

    }

    // This is where rules clean up and exit
    //
    goto ruleexpression_list_with_parenthesesEx; /* Prevent compiler warnings */
    ruleexpression_list_with_parenthesesEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
        if (stream_CLOSE_PAR_SYMBOL != NULL) stream_CLOSE_PAR_SYMBOL->free(stream_CLOSE_PAR_SYMBOL);
        if (stream_OPEN_PAR_SYMBOL != NULL) stream_OPEN_PAR_SYMBOL->free(stream_OPEN_PAR_SYMBOL);
        if (stream_expression_list != NULL) stream_expression_list->free(stream_expression_list);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end expression_list_with_parentheses */

/**
 * $ANTLR start expression_list
 * MySQL.g:1949:1: expression_list : expression ( COMMA_SYMBOL expression )* ;
 */
static MySQLParser_expression_list_return
expression_list(pMySQLParser ctx)
{
    MySQLParser_expression_list_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2292;
    MySQLParser_expression_return expression2291;
    #undef	RETURN_TYPE_expression2291
    #define	RETURN_TYPE_expression2291 MySQLParser_expression_return

    MySQLParser_expression_return expression2293;
    #undef	RETURN_TYPE_expression2293
    #define	RETURN_TYPE_expression2293 MySQLParser_expression_return

    pANTLR3_BASE_TREE COMMA_SYMBOL2292_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL2292       = NULL;
    expression2291.tree = NULL;

    expression2293.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL2292_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1949:16: ( expression ( COMMA_SYMBOL expression )* )
        // MySQL.g:1950:2: expression ( COMMA_SYMBOL expression )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_expression_in_expression_list11281);
            expression2291=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleexpression_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2291.tree);

            // MySQL.g:1950:13: ( COMMA_SYMBOL expression )*

            for (;;)
            {
                int alt604=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt604=1;
                	}
                    break;

                }

                switch (alt604)
                {
            	case 1:
            	    // MySQL.g:1950:14: COMMA_SYMBOL expression
            	    {
            	        COMMA_SYMBOL2292 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_expression_list11284);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleexpression_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL2292_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2292));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2292_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_expression_in_expression_list11286);
            	        expression2293=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleexpression_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2293.tree);

            	    }
            	    break;

            	default:
            	    goto loop604;	/* break out of the loop */
            	    break;
                }
            }
            loop604: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto ruleexpression_listEx; /* Prevent compiler warnings */
    ruleexpression_listEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end expression_list */

/**
 * $ANTLR start expression_list_with_direction
 * MySQL.g:1953:1: expression_list_with_direction : expression ( direction )? ( COMMA_SYMBOL expression ( direction )? )* ;
 */
static MySQLParser_expression_list_with_direction_return
expression_list_with_direction(pMySQLParser ctx)
{
    MySQLParser_expression_list_with_direction_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2296;
    MySQLParser_expression_return expression2294;
    #undef	RETURN_TYPE_expression2294
    #define	RETURN_TYPE_expression2294 MySQLParser_expression_return

    MySQLParser_direction_return direction2295;
    #undef	RETURN_TYPE_direction2295
    #define	RETURN_TYPE_direction2295 MySQLParser_direction_return

    MySQLParser_expression_return expression2297;
    #undef	RETURN_TYPE_expression2297
    #define	RETURN_TYPE_expression2297 MySQLParser_expression_return

    MySQLParser_direction_return direction2298;
    #undef	RETURN_TYPE_direction2298
    #define	RETURN_TYPE_direction2298 MySQLParser_direction_return

    pANTLR3_BASE_TREE COMMA_SYMBOL2296_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL2296       = NULL;
    expression2294.tree = NULL;

    direction2295.tree = NULL;

    expression2297.tree = NULL;

    direction2298.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL2296_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1953:31: ( expression ( direction )? ( COMMA_SYMBOL expression ( direction )? )* )
        // MySQL.g:1954:2: expression ( direction )? ( COMMA_SYMBOL expression ( direction )? )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_expression_in_expression_list_with_direction11297);
            expression2294=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleexpression_list_with_directionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2294.tree);

            // MySQL.g:1954:13: ( direction )?
            {
                int alt605=2;
                switch ( LA(1) )
                {
                    case ASC_SYMBOL:
                    case DESC_SYMBOL:
                    	{
                    		alt605=1;
                    	}
                        break;
                }

                switch (alt605)
                {
            	case 1:
            	    // MySQL.g:1954:13: direction
            	    {
            	        FOLLOWPUSH(FOLLOW_direction_in_expression_list_with_direction11299);
            	        direction2295=direction(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleexpression_list_with_directionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, direction2295.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1954:24: ( COMMA_SYMBOL expression ( direction )? )*

            for (;;)
            {
                int alt607=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt607=1;
                	}
                    break;

                }

                switch (alt607)
                {
            	case 1:
            	    // MySQL.g:1954:25: COMMA_SYMBOL expression ( direction )?
            	    {
            	        COMMA_SYMBOL2296 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_expression_list_with_direction11303);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleexpression_list_with_directionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL2296_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2296));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2296_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_expression_in_expression_list_with_direction11305);
            	        expression2297=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleexpression_list_with_directionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2297.tree);

            	        // MySQL.g:1954:49: ( direction )?
            	        {
            	            int alt606=2;
            	            switch ( LA(1) )
            	            {
            	                case ASC_SYMBOL:
            	                case DESC_SYMBOL:
            	                	{
            	                		alt606=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt606)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1954:49: direction
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_direction_in_expression_list_with_direction11307);
            	        	        direction2298=direction(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleexpression_list_with_directionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, direction2298.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

            	default:
            	    goto loop607;	/* break out of the loop */
            	    break;
                }
            }
            loop607: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto ruleexpression_list_with_directionEx; /* Prevent compiler warnings */
    ruleexpression_list_with_directionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end expression_list_with_direction */

/**
 * $ANTLR start compound_statement
 * MySQL.g:1960:1: compound_statement : ( statement | ( label )? ({...}? begin_end_block | loop_block | repeat_until_block | while_do_block ) | case_statement | if_statement | iterate_statement | leave_statement | return_statement | cursor_open | cursor_fetch | cursor_close |{...}? => get_diagnostics |{...}? => signal_statement |{...}? => resignal_statement );
 */
static MySQLParser_compound_statement_return
compound_statement(pMySQLParser ctx)
{
    MySQLParser_compound_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_statement_return statement2299;
    #undef	RETURN_TYPE_statement2299
    #define	RETURN_TYPE_statement2299 MySQLParser_statement_return

    MySQLParser_label_return label2300;
    #undef	RETURN_TYPE_label2300
    #define	RETURN_TYPE_label2300 MySQLParser_label_return

    MySQLParser_begin_end_block_return begin_end_block2301;
    #undef	RETURN_TYPE_begin_end_block2301
    #define	RETURN_TYPE_begin_end_block2301 MySQLParser_begin_end_block_return

    MySQLParser_loop_block_return loop_block2302;
    #undef	RETURN_TYPE_loop_block2302
    #define	RETURN_TYPE_loop_block2302 MySQLParser_loop_block_return

    MySQLParser_repeat_until_block_return repeat_until_block2303;
    #undef	RETURN_TYPE_repeat_until_block2303
    #define	RETURN_TYPE_repeat_until_block2303 MySQLParser_repeat_until_block_return

    MySQLParser_while_do_block_return while_do_block2304;
    #undef	RETURN_TYPE_while_do_block2304
    #define	RETURN_TYPE_while_do_block2304 MySQLParser_while_do_block_return

    MySQLParser_case_statement_return case_statement2305;
    #undef	RETURN_TYPE_case_statement2305
    #define	RETURN_TYPE_case_statement2305 MySQLParser_case_statement_return

    MySQLParser_if_statement_return if_statement2306;
    #undef	RETURN_TYPE_if_statement2306
    #define	RETURN_TYPE_if_statement2306 MySQLParser_if_statement_return

    MySQLParser_iterate_statement_return iterate_statement2307;
    #undef	RETURN_TYPE_iterate_statement2307
    #define	RETURN_TYPE_iterate_statement2307 MySQLParser_iterate_statement_return

    MySQLParser_leave_statement_return leave_statement2308;
    #undef	RETURN_TYPE_leave_statement2308
    #define	RETURN_TYPE_leave_statement2308 MySQLParser_leave_statement_return

    MySQLParser_return_statement_return return_statement2309;
    #undef	RETURN_TYPE_return_statement2309
    #define	RETURN_TYPE_return_statement2309 MySQLParser_return_statement_return

    MySQLParser_cursor_open_return cursor_open2310;
    #undef	RETURN_TYPE_cursor_open2310
    #define	RETURN_TYPE_cursor_open2310 MySQLParser_cursor_open_return

    MySQLParser_cursor_fetch_return cursor_fetch2311;
    #undef	RETURN_TYPE_cursor_fetch2311
    #define	RETURN_TYPE_cursor_fetch2311 MySQLParser_cursor_fetch_return

    MySQLParser_cursor_close_return cursor_close2312;
    #undef	RETURN_TYPE_cursor_close2312
    #define	RETURN_TYPE_cursor_close2312 MySQLParser_cursor_close_return

    MySQLParser_get_diagnostics_return get_diagnostics2313;
    #undef	RETURN_TYPE_get_diagnostics2313
    #define	RETURN_TYPE_get_diagnostics2313 MySQLParser_get_diagnostics_return

    MySQLParser_signal_statement_return signal_statement2314;
    #undef	RETURN_TYPE_signal_statement2314
    #define	RETURN_TYPE_signal_statement2314 MySQLParser_signal_statement_return

    MySQLParser_resignal_statement_return resignal_statement2315;
    #undef	RETURN_TYPE_resignal_statement2315
    #define	RETURN_TYPE_resignal_statement2315 MySQLParser_resignal_statement_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    statement2299.tree = NULL;

    label2300.tree = NULL;

    begin_end_block2301.tree = NULL;

    loop_block2302.tree = NULL;

    repeat_until_block2303.tree = NULL;

    while_do_block2304.tree = NULL;

    case_statement2305.tree = NULL;

    if_statement2306.tree = NULL;

    iterate_statement2307.tree = NULL;

    leave_statement2308.tree = NULL;

    return_statement2309.tree = NULL;

    cursor_open2310.tree = NULL;

    cursor_fetch2311.tree = NULL;

    cursor_close2312.tree = NULL;

    get_diagnostics2313.tree = NULL;

    signal_statement2314.tree = NULL;

    resignal_statement2315.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1960:19: ( statement | ( label )? ({...}? begin_end_block | loop_block | repeat_until_block | while_do_block ) | case_statement | if_statement | iterate_statement | leave_statement | return_statement | cursor_open | cursor_fetch | cursor_close |{...}? => get_diagnostics |{...}? => signal_statement |{...}? => resignal_statement )

            ANTLR3_UINT32 alt610;

            alt610=13;

            {
                int LA610_0 = LA(1);
                if ( (LA610_0 == ALTER_SYMBOL || LA610_0 == CALL_SYMBOL || LA610_0 == CREATE_SYMBOL || LA610_0 == DELETE_SYMBOL || ((LA610_0 >= DO_SYMBOL) && (LA610_0 <= DROP_SYMBOL)) || LA610_0 == HANDLER_SYMBOL || LA610_0 == INSERT_SYMBOL || LA610_0 == LOAD_SYMBOL || LA610_0 == OPEN_PAR_SYMBOL || LA610_0 == RENAME_SYMBOL || LA610_0 == REPLACE_SYMBOL || LA610_0 == SELECT_SYMBOL || LA610_0 == TRUNCATE_SYMBOL || LA610_0 == UPDATE_SYMBOL))
                {
                    alt610=1;
                }
                else if ( ((SERVER_VERSION >= 50100)) && (LA610_0 == PARTITION_SYMBOL))
                {
                    alt610=1;
                }
                else if ( (LA610_0 == CHANGE_SYMBOL || ((LA610_0 >= CHECKSUM_SYMBOL) && (LA610_0 <= CHECK_SYMBOL)) || LA610_0 == COMMIT_SYMBOL || LA610_0 == DEALLOCATE_SYMBOL || LA610_0 == EXECUTE_SYMBOL || LA610_0 == GRANT_SYMBOL || LA610_0 == LOCK_SYMBOL || LA610_0 == OPTIMIZE_SYMBOL || LA610_0 == PREPARE_SYMBOL || LA610_0 == PURGE_SYMBOL || LA610_0 == RELEASE_SYMBOL || LA610_0 == REPAIR_SYMBOL || LA610_0 == REVOKE_SYMBOL || LA610_0 == ROLLBACK_SYMBOL || LA610_0 == SAVEPOINT_SYMBOL || LA610_0 == SET_SYMBOL || LA610_0 == START_SYMBOL || LA610_0 == STOP_SYMBOL || LA610_0 == UNLOCK_SYMBOL || LA610_0 == XA_SYMBOL))
                {
                    alt610=1;
                }
                else if ( (LA610_0 == BEGIN_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case WORK_SYMBOL:
                    	{
                    		{
                    		    int LA610_71 = LA(3);
                    		    if ( (!( ((LA(2) != WORK_SYMBOL)) )))
                    		    {
                    		        alt610=1;
                    		    }
                    		    else if ( ((LA(2) != WORK_SYMBOL)))
                    		    {
                    		        alt610=2;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 610;
                    		        EXCEPTION->state        = 71;


                    		        goto rulecompound_statementEx;

                    		    }
                    		}
                    	}
                        break;
                    case EOF:
                    case SEMICOLON_SYMBOL:
                    	{
                    		alt610=1;
                    	}
                        break;
                    case ACTION_SYMBOL:
                    case ADDDATE_SYMBOL:
                    case AFTER_SYMBOL:
                    case AGAINST_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case ALTER_SYMBOL:
                    case ANALYZE_SYMBOL:
                    case ANY_SYMBOL:
                    case AT_SYMBOL:
                    case AUTHORS_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case AUTO_INCREMENT_SYMBOL:
                    case AVG_ROW_LENGTH_SYMBOL:
                    case AVG_SYMBOL:
                    case BACKUP_SYMBOL:
                    case BACK_TICK_QUOTED_ID:
                    case BEGIN_SYMBOL:
                    case BINLOG_SYMBOL:
                    case BIT_SYMBOL:
                    case BLOCK_SYMBOL:
                    case BOOLEAN_SYMBOL:
                    case BOOL_SYMBOL:
                    case BTREE_SYMBOL:
                    case CACHE_SYMBOL:
                    case CALL_SYMBOL:
                    case CASCADED_SYMBOL:
                    case CASE_SYMBOL:
                    case CATALOG_NAME_SYMBOL:
                    case CHAIN_SYMBOL:
                    case CHANGED_SYMBOL:
                    case CHANGE_SYMBOL:
                    case CHECKSUM_SYMBOL:
                    case CHECK_SYMBOL:
                    case CIPHER_SYMBOL:
                    case CLASS_ORIGIN_SYMBOL:
                    case CLIENT_SYMBOL:
                    case CLOSE_SYMBOL:
                    case COALESCE_SYMBOL:
                    case CODE_SYMBOL:
                    case COLLATION_SYMBOL:
                    case COLUMNS_SYMBOL:
                    case COLUMN_FORMAT_SYMBOL:
                    case COLUMN_NAME_SYMBOL:
                    case COMMITTED_SYMBOL:
                    case COMMIT_SYMBOL:
                    case COMPACT_SYMBOL:
                    case COMPLETION_SYMBOL:
                    case COMPRESSED_SYMBOL:
                    case CONCURRENT_SYMBOL:
                    case CONNECTION_SYMBOL:
                    case CONSISTENT_SYMBOL:
                    case CONSTRAINT_CATALOG_SYMBOL:
                    case CONSTRAINT_NAME_SYMBOL:
                    case CONSTRAINT_SCHEMA_SYMBOL:
                    case CONTEXT_SYMBOL:
                    case CONTRIBUTORS_SYMBOL:
                    case CPU_SYMBOL:
                    case CREATE_SYMBOL:
                    case CUBE_SYMBOL:
                    case CURRENT_SYMBOL:
                    case CURSOR_NAME_SYMBOL:
                    case DATAFILE_SYMBOL:
                    case DATA_SYMBOL:
                    case DATETIME_SYMBOL:
                    case DATE_SYMBOL:
                    case DAY_SYMBOL:
                    case DEALLOCATE_SYMBOL:
                    case DECLARE_SYMBOL:
                    case DEFAULT_AUTH_SYMBOL:
                    case DEFINER_SYMBOL:
                    case DELAY_KEY_WRITE_SYMBOL:
                    case DELETE_SYMBOL:
                    case DESCRIBE_SYMBOL:
                    case DESC_SYMBOL:
                    case DES_KEY_FILE_SYMBOL:
                    case DIAGNOSTICS_SYMBOL:
                    case DIRECTORY_SYMBOL:
                    case DISABLE_SYMBOL:
                    case DISCARD_SYMBOL:
                    case DISK_SYMBOL:
                    case DOUBLE_QUOTED_TEXT:
                    case DO_SYMBOL:
                    case DROP_SYMBOL:
                    case DUMPFILE_SYMBOL:
                    case DUPLICATE_SYMBOL:
                    case DYNAMIC_SYMBOL:
                    case ENABLE_SYMBOL:
                    case ENDS_SYMBOL:
                    case ENGINES_SYMBOL:
                    case ENGINE_SYMBOL:
                    case ENUM_SYMBOL:
                    case ERRORS_SYMBOL:
                    case ERROR_SYMBOL:
                    case ESCAPE_SYMBOL:
                    case EVENTS_SYMBOL:
                    case EVENT_SYMBOL:
                    case EVERY_SYMBOL:
                    case EXECUTE_SYMBOL:
                    case EXPANSION_SYMBOL:
                    case EXPORT_SYMBOL:
                    case EXTENDED_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FAST_SYMBOL:
                    case FAULTS_SYMBOL:
                    case FETCH_SYMBOL:
                    case FILE_SYMBOL:
                    case FIRST_SYMBOL:
                    case FIXED_SYMBOL:
                    case FLUSH_SYMBOL:
                    case FOUND_SYMBOL:
                    case FULL_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case GENERAL_SYMBOL:
                    case GEOMETRYCOLLECTION_SYMBOL:
                    case GEOMETRY_SYMBOL:
                    case GET_FORMAT_SYMBOL:
                    case GET_SYMBOL:
                    case GLOBAL_SYMBOL:
                    case GRANTS_SYMBOL:
                    case GRANT_SYMBOL:
                    case HANDLER_SYMBOL:
                    case HASH_SYMBOL:
                    case HELP_SYMBOL:
                    case HOSTS_SYMBOL:
                    case HOUR_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case IDENTIFIER:
                    case IF_SYMBOL:
                    case IGNORE_SERVER_IDS_SYMBOL:
                    case IMPORT_SYMBOL:
                    case INDEXES_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case INNODB_SYMBOL:
                    case INSERT_METHOD_SYMBOL:
                    case INSERT_SYMBOL:
                    case INSTALL_SYMBOL:
                    case INVOKER_SYMBOL:
                    case IO_SYMBOL:
                    case IPC_SYMBOL:
                    case ISOLATION_SYMBOL:
                    case ISSUER_SYMBOL:
                    case ITERATE_SYMBOL:
                    case KEY_BLOCK_SIZE_SYMBOL:
                    case KILL_SYMBOL:
                    case LAST_SYMBOL:
                    case LEAVES_SYMBOL:
                    case LEAVE_SYMBOL:
                    case LESS_SYMBOL:
                    case LEVEL_SYMBOL:
                    case LINESTRING_SYMBOL:
                    case LIST_SYMBOL:
                    case LOAD_SYMBOL:
                    case LOCAL_SYMBOL:
                    case LOCKS_SYMBOL:
                    case LOCK_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case LOGS_SYMBOL:
                    case LOOP_SYMBOL:
                    case MASTER_AUTO_POSITION_SYMBOL:
                    case MASTER_CONNECT_RETRY_SYMBOL:
                    case MASTER_DELAY_SYMBOL:
                    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    case MASTER_HOST_SYMBOL:
                    case MASTER_LOG_FILE_SYMBOL:
                    case MASTER_LOG_POS_SYMBOL:
                    case MASTER_PASSWORD_SYMBOL:
                    case MASTER_PORT_SYMBOL:
                    case MASTER_RETRY_COUNT_SYMBOL:
                    case MASTER_SERVER_ID_SYMBOL:
                    case MASTER_SSL_CAPATH_SYMBOL:
                    case MASTER_SSL_CA_SYMBOL:
                    case MASTER_SSL_CERT_SYMBOL:
                    case MASTER_SSL_CIPHER_SYMBOL:
                    case MASTER_SSL_CRLPATH_SYMBOL:
                    case MASTER_SSL_CRL_SYMBOL:
                    case MASTER_SSL_KEY_SYMBOL:
                    case MASTER_SSL_SYMBOL:
                    case MASTER_SYMBOL:
                    case MASTER_USER_SYMBOL:
                    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    case MAX_ROWS_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    case MAX_USER_CONNECTIONS_SYMBOL:
                    case MEDIUM_SYMBOL:
                    case MEMORY_SYMBOL:
                    case MERGE_SYMBOL:
                    case MESSAGE_TEXT_SYMBOL:
                    case MICROSECOND_SYMBOL:
                    case MIGRATE_SYMBOL:
                    case MINUTE_SYMBOL:
                    case MIN_ROWS_SYMBOL:
                    case MODE_SYMBOL:
                    case MODIFY_SYMBOL:
                    case MONTH_SYMBOL:
                    case MULTILINESTRING_SYMBOL:
                    case MULTIPOINT_SYMBOL:
                    case MULTIPOLYGON_SYMBOL:
                    case MUTEX_SYMBOL:
                    case MYSQL_ERRNO_SYMBOL:
                    case NAMES_SYMBOL:
                    case NAME_SYMBOL:
                    case NATIONAL_SYMBOL:
                    case NCHAR_SYMBOL:
                    case NDBCLUSTER_SYMBOL:
                    case NEW_SYMBOL:
                    case NEXT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case NONE_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NUMBER_SYMBOL:
                    case NVARCHAR_SYMBOL:
                    case OFFSET_SYMBOL:
                    case OLD_PASSWORD_SYMBOL:
                    case ONE_SHOT_SYMBOL:
                    case ONE_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    case OPEN_SYMBOL:
                    case OPTIMIZE_SYMBOL:
                    case PACK_KEYS_SYMBOL:
                    case PAGE_SYMBOL:
                    case PARTIAL_SYMBOL:
                    case PARTITIONING_SYMBOL:
                    case PARTITIONS_SYMBOL:
                    case PARTITION_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case PHASE_SYMBOL:
                    case PLUGINS_SYMBOL:
                    case PLUGIN_DIR_SYMBOL:
                    case PLUGIN_SYMBOL:
                    case POINT_SYMBOL:
                    case POLYGON_SYMBOL:
                    case PREPARE_SYMBOL:
                    case PRESERVE_SYMBOL:
                    case PREV_SYMBOL:
                    case PRIVILEGES_SYMBOL:
                    case PROCESSLIST_SYMBOL:
                    case PROCESS_SYMBOL:
                    case PROFILES_SYMBOL:
                    case PROFILE_SYMBOL:
                    case PROXY_SYMBOL:
                    case PURGE_SYMBOL:
                    case QUARTER_SYMBOL:
                    case QUERY_SYMBOL:
                    case QUICK_SYMBOL:
                    case READ_ONLY_SYMBOL:
                    case REBUILD_SYMBOL:
                    case RECOVER_SYMBOL:
                    case REDOFILE_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case REDUNDANT_SYMBOL:
                    case RELAYLOG_SYMBOL:
                    case RELAY_LOG_FILE_SYMBOL:
                    case RELAY_LOG_POS_SYMBOL:
                    case RELAY_SYMBOL:
                    case RELAY_THREAD_SYMBOL:
                    case RELEASE_SYMBOL:
                    case RELOAD_SYMBOL:
                    case RENAME_SYMBOL:
                    case REORGANIZE_SYMBOL:
                    case REPAIR_SYMBOL:
                    case REPEATABLE_SYMBOL:
                    case REPEAT_SYMBOL:
                    case REPLACE_SYMBOL:
                    case REPLICATION_SYMBOL:
                    case RESET_SYMBOL:
                    case RESIGNAL_SYMBOL:
                    case RESTORE_SYMBOL:
                    case RESUME_SYMBOL:
                    case RETURNED_SQLSTATE_SYMBOL:
                    case RETURNS_SYMBOL:
                    case RETURN_SYMBOL:
                    case REVERSE_SYMBOL:
                    case REVOKE_SYMBOL:
                    case ROLLBACK_SYMBOL:
                    case ROLLUP_SYMBOL:
                    case ROUTINE_SYMBOL:
                    case ROWS_SYMBOL:
                    case ROW_COUNT_SYMBOL:
                    case ROW_FORMAT_SYMBOL:
                    case ROW_SYMBOL:
                    case RTREE_SYMBOL:
                    case SAVEPOINT_SYMBOL:
                    case SCHEDULE_SYMBOL:
                    case SCHEMA_NAME_SYMBOL:
                    case SECOND_SYMBOL:
                    case SELECT_SYMBOL:
                    case SERIALIZABLE_SYMBOL:
                    case SERIAL_SYMBOL:
                    case SESSION_SYMBOL:
                    case SET_SYMBOL:
                    case SHARE_SYMBOL:
                    case SHOW_SYMBOL:
                    case SHUTDOWN_SYMBOL:
                    case SIGNAL_SYMBOL:
                    case SIMPLE_SYMBOL:
                    case SLOW_SYMBOL:
                    case SNAPSHOT_SYMBOL:
                    case SOUNDS_SYMBOL:
                    case SOURCE_SYMBOL:
                    case SQL_AFTER_GTIDS_SYMBOL:
                    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    case SQL_BEFORE_GTIDS_SYMBOL:
                    case SQL_BUFFER_RESULT_SYMBOL:
                    case SQL_CACHE_SYMBOL:
                    case SQL_NO_CACHE_SYMBOL:
                    case SQL_THREAD_SYMBOL:
                    case STARTS_SYMBOL:
                    case START_SYMBOL:
                    case STATS_AUTO_RECALC_SYMBOL:
                    case STATS_PERSISTENT_SYMBOL:
                    case STATS_SAMPLE_PAGES_SYMBOL:
                    case STATUS_SYMBOL:
                    case STOP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case STRING_SYMBOL:
                    case SUBCLASS_ORIGIN_SYMBOL:
                    case SUBDATE_SYMBOL:
                    case SUBJECT_SYMBOL:
                    case SUBPARTITIONS_SYMBOL:
                    case SUBPARTITION_SYMBOL:
                    case SUPER_SYMBOL:
                    case SUSPEND_SYMBOL:
                    case SWAPS_SYMBOL:
                    case SWITCHES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLE_CHECKSUM_SYMBOL:
                    case TABLE_NAME_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case TEMPTABLE_SYMBOL:
                    case TEXT_SYMBOL:
                    case THAN_SYMBOL:
                    case TIMESTAMP_ADD_SYMBOL:
                    case TIMESTAMP_DIFF_SYMBOL:
                    case TIMESTAMP_SYMBOL:
                    case TIME_SYMBOL:
                    case TRANSACTION_SYMBOL:
                    case TRIGGERS_SYMBOL:
                    case TRUNCATE_SYMBOL:
                    case TYPES_SYMBOL:
                    case TYPE_SYMBOL:
                    case UDF_RETURNS_SYMBOL:
                    case UNCOMMITTED_SYMBOL:
                    case UNDEFINED_SYMBOL:
                    case UNDOFILE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case UNINSTALL_SYMBOL:
                    case UNKNOWN_SYMBOL:
                    case UNLOCK_SYMBOL:
                    case UNTIL_SYMBOL:
                    case UPDATE_SYMBOL:
                    case USER_RESOURCES_SYMBOL:
                    case USER_SYMBOL:
                    case USE_FRM_SYMBOL:
                    case USE_SYMBOL:
                    case VALUE_SYMBOL:
                    case VARIABLES_SYMBOL:
                    case VIEW_SYMBOL:
                    case WAIT_SYMBOL:
                    case WARNINGS_SYMBOL:
                    case WEEK_SYMBOL:
                    case WEIGHT_STRING_SYMBOL:
                    case WHILE_SYMBOL:
                    case X509_SYMBOL:
                    case XA_SYMBOL:
                    case XML_SYMBOL:
                    case YEAR_SYMBOL:
                    	{
                    		alt610=2;
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 610;
                        EXCEPTION->state        = 18;


                        goto rulecompound_statementEx;

                    }

                }
                else if ( (LA610_0 == ANALYZE_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case LOCAL_SYMBOL:
                    case NO_WRITE_TO_BINLOG_SYMBOL:
                    case TABLE_SYMBOL:
                    	{
                    		alt610=1;
                    	}
                        break;
                    case COLON_SYMBOL:
                    	{
                    		alt610=2;
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 610;
                        EXCEPTION->state        = 35;


                        goto rulecompound_statementEx;

                    }

                }
                else if ( ((SERVER_VERSION < 50500)) && (LA610_0 == BACKUP_SYMBOL || LA610_0 == RESTORE_SYMBOL))
                {
                    alt610=1;
                }
                else if ( (LA610_0 == CACHE_SYMBOL || ((LA610_0 >= DESCRIBE_SYMBOL) && (LA610_0 <= DESC_SYMBOL)) || LA610_0 == FLUSH_SYMBOL || LA610_0 == HELP_SYMBOL || LA610_0 == INSTALL_SYMBOL || LA610_0 == KILL_SYMBOL || LA610_0 == RESET_SYMBOL || LA610_0 == SHOW_SYMBOL || LA610_0 == UNINSTALL_SYMBOL || LA610_0 == USE_SYMBOL))
                {
                    alt610=1;
                }
                else if ( (LA610_0 == BINLOG_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case DOUBLE_QUOTED_TEXT:
                    case NCHAR_TEXT:
                    case SINGLE_QUOTED_TEXT:
                    case UNDERSCORE_CHARSET:
                    	{
                    		alt610=1;
                    	}
                        break;
                    case COLON_SYMBOL:
                    	{
                    		alt610=2;
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 610;
                        EXCEPTION->state        = 45;


                        goto rulecompound_statementEx;

                    }

                }
                else if ( (LA610_0 == BACK_TICK_QUOTED_ID || LA610_0 == IDENTIFIER))
                {
                    alt610=2;
                }
                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA610_0 == DOUBLE_QUOTED_TEXT))
                {
                    alt610=2;
                }
                else if ( (((LA610_0 >= ACTION_SYMBOL) && (LA610_0 <= ADDDATE_SYMBOL)) || ((LA610_0 >= AFTER_SYMBOL) && (LA610_0 <= ALGORITHM_SYMBOL)) || LA610_0 == ANY_SYMBOL || ((LA610_0 >= AT_SYMBOL) && (LA610_0 <= AVG_SYMBOL)) || LA610_0 == BIT_SYMBOL || ((LA610_0 >= BLOCK_SYMBOL) && (LA610_0 <= BOOL_SYMBOL)) || LA610_0 == BTREE_SYMBOL || LA610_0 == CASCADED_SYMBOL || ((LA610_0 >= CATALOG_NAME_SYMBOL) && (LA610_0 <= CHANGED_SYMBOL)) || ((LA610_0 >= CIPHER_SYMBOL) && (LA610_0 <= CLIENT_SYMBOL)) || ((LA610_0 >= COALESCE_SYMBOL) && (LA610_0 <= CODE_SYMBOL)) || LA610_0 == COLLATION_SYMBOL || ((LA610_0 >= COLUMNS_SYMBOL) && (LA610_0 <= COLUMN_NAME_SYMBOL)) || LA610_0 == COMMITTED_SYMBOL || ((LA610_0 >= COMPACT_SYMBOL) && (LA610_0 <= COMPRESSED_SYMBOL)) || LA610_0 == CONCURRENT_SYMBOL || ((LA610_0 >= CONNECTION_SYMBOL) && (LA610_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || LA610_0 == CONTEXT_SYMBOL || LA610_0 == CONTRIBUTORS_SYMBOL || LA610_0 == CPU_SYMBOL || LA610_0 == CUBE_SYMBOL || LA610_0 == CURRENT_SYMBOL || LA610_0 == CURSOR_NAME_SYMBOL || ((LA610_0 >= DATAFILE_SYMBOL) && (LA610_0 <= DATETIME_SYMBOL)) || LA610_0 == DATE_SYMBOL || LA610_0 == DAY_SYMBOL || LA610_0 == DEFAULT_AUTH_SYMBOL || LA610_0 == DEFINER_SYMBOL || LA610_0 == DELAY_KEY_WRITE_SYMBOL || LA610_0 == DES_KEY_FILE_SYMBOL || LA610_0 == DIAGNOSTICS_SYMBOL || ((LA610_0 >= DIRECTORY_SYMBOL) && (LA610_0 <= DISK_SYMBOL)) || ((LA610_0 >= DUMPFILE_SYMBOL) && (LA610_0 <= DYNAMIC_SYMBOL)) || LA610_0 == ENABLE_SYMBOL || LA610_0 == ENDS_SYMBOL || ((LA610_0 >= ENGINES_SYMBOL) && (LA610_0 <= ENUM_SYMBOL)) || ((LA610_0 >= ERRORS_SYMBOL) && (LA610_0 <= ERROR_SYMBOL)) || ((LA610_0 >= ESCAPE_SYMBOL) && (LA610_0 <= EVERY_SYMBOL)) || LA610_0 == EXPANSION_SYMBOL || LA610_0 == EXPORT_SYMBOL || ((LA610_0 >= EXTENDED_SYMBOL) && (LA610_0 <= EXTENT_SIZE_SYMBOL)) || ((LA610_0 >= FAST_SYMBOL) && (LA610_0 <= FAULTS_SYMBOL)) || ((LA610_0 >= FILE_SYMBOL) && (LA610_0 <= FIXED_SYMBOL)) || LA610_0 == FOUND_SYMBOL || LA610_0 == FULL_SYMBOL || ((LA610_0 >= FUNCTION_SYMBOL) && (LA610_0 <= GET_FORMAT_SYMBOL)) || ((LA610_0 >= GLOBAL_SYMBOL) && (LA610_0 <= GRANTS_SYMBOL)) || LA610_0 == HASH_SYMBOL || LA610_0 == HOSTS_SYMBOL || ((LA610_0 >= HOUR_SYMBOL) && (LA610_0 <= IDENTIFIED_SYMBOL)) || LA610_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA610_0 >= IMPORT_SYMBOL) && (LA610_0 <= INDEXES_SYMBOL)) || LA610_0 == INITIAL_SIZE_SYMBOL || LA610_0 == INNODB_SYMBOL || LA610_0 == INSERT_METHOD_SYMBOL || LA610_0 == INVOKER_SYMBOL || LA610_0 == IO_SYMBOL || ((LA610_0 >= IPC_SYMBOL) && (LA610_0 <= ISSUER_SYMBOL)) || LA610_0 == KEY_BLOCK_SIZE_SYMBOL || LA610_0 == LAST_SYMBOL || LA610_0 == LEAVES_SYMBOL || LA610_0 == LESS_SYMBOL || LA610_0 == LEVEL_SYMBOL || LA610_0 == LINESTRING_SYMBOL || LA610_0 == LIST_SYMBOL || LA610_0 == LOCAL_SYMBOL || LA610_0 == LOCKS_SYMBOL || LA610_0 == LOGFILE_SYMBOL || LA610_0 == LOGS_SYMBOL || LA610_0 == LOOP_SYMBOL || LA610_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA610_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA610_0 <= MASTER_SSL_SYMBOL)) || ((LA610_0 >= MASTER_SYMBOL) && (LA610_0 <= MASTER_USER_SYMBOL)) || ((LA610_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA610_0 <= MAX_SIZE_SYMBOL)) || ((LA610_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA610_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA610_0 >= MEDIUM_SYMBOL) && (LA610_0 <= MICROSECOND_SYMBOL)) || LA610_0 == MIGRATE_SYMBOL || ((LA610_0 >= MINUTE_SYMBOL) && (LA610_0 <= MIN_ROWS_SYMBOL)) || LA610_0 == MODE_SYMBOL || LA610_0 == MODIFY_SYMBOL || ((LA610_0 >= MONTH_SYMBOL) && (LA610_0 <= MULTILINESTRING_SYMBOL)) || ((LA610_0 >= MULTIPOINT_SYMBOL) && (LA610_0 <= MULTIPOLYGON_SYMBOL)) || ((LA610_0 >= MUTEX_SYMBOL) && (LA610_0 <= NATIONAL_SYMBOL)) || LA610_0 == NCHAR_SYMBOL || LA610_0 == NDBCLUSTER_SYMBOL || ((LA610_0 >= NEW_SYMBOL) && (LA610_0 <= NONE_SYMBOL)) || LA610_0 == NO_WAIT_SYMBOL || LA610_0 == NUMBER_SYMBOL || LA610_0 == NVARCHAR_SYMBOL || ((LA610_0 >= OFFSET_SYMBOL) && (LA610_0 <= ONE_SYMBOL)) || ((LA610_0 >= PACK_KEYS_SYMBOL) && (LA610_0 <= PAGE_SYMBOL)) || ((LA610_0 >= PARTIAL_SYMBOL) && (LA610_0 <= PARTITIONS_SYMBOL)) || ((LA610_0 >= PASSWORD_SYMBOL) && (LA610_0 <= PLUGIN_SYMBOL)) || ((LA610_0 >= POINT_SYMBOL) && (LA610_0 <= POLYGON_SYMBOL)) || ((LA610_0 >= PRESERVE_SYMBOL) && (LA610_0 <= PREV_SYMBOL)) || LA610_0 == PRIVILEGES_SYMBOL || ((LA610_0 >= PROCESSLIST_SYMBOL) && (LA610_0 <= PROXY_SYMBOL)) || ((LA610_0 >= QUARTER_SYMBOL) && (LA610_0 <= QUICK_SYMBOL)) || LA610_0 == READ_ONLY_SYMBOL || ((LA610_0 >= REBUILD_SYMBOL) && (LA610_0 <= REDUNDANT_SYMBOL)) || ((LA610_0 >= RELAYLOG_SYMBOL) && (LA610_0 <= RELAY_THREAD_SYMBOL)) || LA610_0 == RELOAD_SYMBOL || LA610_0 == REORGANIZE_SYMBOL || ((LA610_0 >= REPEATABLE_SYMBOL) && (LA610_0 <= REPEAT_SYMBOL)) || LA610_0 == REPLICATION_SYMBOL || ((LA610_0 >= RESUME_SYMBOL) && (LA610_0 <= RETURNS_SYMBOL)) || LA610_0 == REVERSE_SYMBOL || ((LA610_0 >= ROLLUP_SYMBOL) && (LA610_0 <= RTREE_SYMBOL)) || LA610_0 == SCHEDULE_SYMBOL || LA610_0 == SCHEMA_NAME_SYMBOL || LA610_0 == SECOND_SYMBOL || ((LA610_0 >= SERIALIZABLE_SYMBOL) && (LA610_0 <= SERIAL_SYMBOL)) || LA610_0 == SESSION_SYMBOL || LA610_0 == SHARE_SYMBOL || LA610_0 == SHUTDOWN_SYMBOL || LA610_0 == SIMPLE_SYMBOL || LA610_0 == SLOW_SYMBOL || LA610_0 == SNAPSHOT_SYMBOL || ((LA610_0 >= SOUNDS_SYMBOL) && (LA610_0 <= SOURCE_SYMBOL)) || ((LA610_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA610_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA610_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA610_0 <= SQL_CACHE_SYMBOL)) || LA610_0 == SQL_NO_CACHE_SYMBOL || LA610_0 == SQL_THREAD_SYMBOL || LA610_0 == STARTS_SYMBOL || ((LA610_0 >= STATS_AUTO_RECALC_SYMBOL) && (LA610_0 <= STATUS_SYMBOL)) || LA610_0 == STORAGE_SYMBOL || ((LA610_0 >= STRING_SYMBOL) && (LA610_0 <= SUBPARTITION_SYMBOL)) || ((LA610_0 >= SUPER_SYMBOL) && (LA610_0 <= SWITCHES_SYMBOL)) || ((LA610_0 >= TABLESPACE_SYMBOL) && (LA610_0 <= TABLE_NAME_SYMBOL)) || ((LA610_0 >= TEMPORARY_SYMBOL) && (LA610_0 <= TEMPTABLE_SYMBOL)) || ((LA610_0 >= TEXT_SYMBOL) && (LA610_0 <= THAN_SYMBOL)) || ((LA610_0 >= TIMESTAMP_ADD_SYMBOL) && (LA610_0 <= TIME_SYMBOL)) || ((LA610_0 >= TRANSACTION_SYMBOL) && (LA610_0 <= TRIGGERS_SYMBOL)) || ((LA610_0 >= TYPES_SYMBOL) && (LA610_0 <= UDF_RETURNS_SYMBOL)) || ((LA610_0 >= UNCOMMITTED_SYMBOL) && (LA610_0 <= UNDEFINED_SYMBOL)) || ((LA610_0 >= UNDOFILE_SYMBOL) && (LA610_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || LA610_0 == UNKNOWN_SYMBOL || LA610_0 == UNTIL_SYMBOL || ((LA610_0 >= USER_RESOURCES_SYMBOL) && (LA610_0 <= USE_FRM_SYMBOL)) || LA610_0 == VALUE_SYMBOL || LA610_0 == VARIABLES_SYMBOL || ((LA610_0 >= VIEW_SYMBOL) && (LA610_0 <= WEIGHT_STRING_SYMBOL)) || LA610_0 == WHILE_SYMBOL || LA610_0 == WORK_SYMBOL || LA610_0 == X509_SYMBOL || LA610_0 == XML_SYMBOL || LA610_0 == YEAR_SYMBOL))
                {
                    alt610=2;
                }
                else if ( (LA610_0 == CASE_SYMBOL))
                {
                    alt610=3;
                }
                else if ( (LA610_0 == IF_SYMBOL))
                {
                    alt610=4;
                }
                else if ( (LA610_0 == ITERATE_SYMBOL))
                {
                    alt610=5;
                }
                else if ( (LA610_0 == LEAVE_SYMBOL))
                {
                    alt610=6;
                }
                else if ( (LA610_0 == RETURN_SYMBOL))
                {
                    alt610=7;
                }
                else if ( (LA610_0 == OPEN_SYMBOL))
                {
                    alt610=8;
                }
                else if ( (LA610_0 == FETCH_SYMBOL))
                {
                    alt610=9;
                }
                else if ( (LA610_0 == CLOSE_SYMBOL))
                {
                    alt610=10;
                }
                else if ( ((SERVER_VERSION >= 50600)) && (LA610_0 == GET_SYMBOL))
                {
                    alt610=11;
                }
                else if ( ((SERVER_VERSION >= 50500)) && (LA610_0 == SIGNAL_SYMBOL))
                {
                    alt610=12;
                }
                else if ( ((SERVER_VERSION >= 50500)) && (LA610_0 == RESIGNAL_SYMBOL))
                {
                    alt610=13;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 610;
                    EXCEPTION->state        = 0;


                    goto rulecompound_statementEx;

                }
            }
            switch (alt610)
            {
        	case 1:
        	    // MySQL.g:1961:2: statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_statement_in_compound_statement11323);
        	        statement2299=statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecompound_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, statement2299.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1962:4: ( label )? ({...}? begin_end_block | loop_block | repeat_until_block | while_do_block )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:1962:4: ( label )?
        	        {
        	            int alt608=2;
        	            {
        	                int LA608_0 = LA(1);
        	                if ( (LA608_0 == BACK_TICK_QUOTED_ID || LA608_0 == IDENTIFIER))
        	                {
        	                    alt608=1;
        	                }
        	                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA608_0 == DOUBLE_QUOTED_TEXT))
        	                {
        	                    alt608=1;
        	                }
        	                else if ( (((LA608_0 >= ACTION_SYMBOL) && (LA608_0 <= ADDDATE_SYMBOL)) || ((LA608_0 >= AFTER_SYMBOL) && (LA608_0 <= ALGORITHM_SYMBOL)) || LA608_0 == ANALYZE_SYMBOL || LA608_0 == ANY_SYMBOL || ((LA608_0 >= AT_SYMBOL) && (LA608_0 <= AVG_SYMBOL)) || LA608_0 == BINLOG_SYMBOL || LA608_0 == BIT_SYMBOL || ((LA608_0 >= BLOCK_SYMBOL) && (LA608_0 <= BOOL_SYMBOL)) || LA608_0 == BTREE_SYMBOL || LA608_0 == CASCADED_SYMBOL || ((LA608_0 >= CATALOG_NAME_SYMBOL) && (LA608_0 <= CHANGED_SYMBOL)) || ((LA608_0 >= CIPHER_SYMBOL) && (LA608_0 <= CLIENT_SYMBOL)) || ((LA608_0 >= COALESCE_SYMBOL) && (LA608_0 <= CODE_SYMBOL)) || LA608_0 == COLLATION_SYMBOL || ((LA608_0 >= COLUMNS_SYMBOL) && (LA608_0 <= COLUMN_NAME_SYMBOL)) || LA608_0 == COMMITTED_SYMBOL || ((LA608_0 >= COMPACT_SYMBOL) && (LA608_0 <= COMPRESSED_SYMBOL)) || LA608_0 == CONCURRENT_SYMBOL || ((LA608_0 >= CONNECTION_SYMBOL) && (LA608_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || LA608_0 == CONTEXT_SYMBOL || LA608_0 == CONTRIBUTORS_SYMBOL || LA608_0 == CPU_SYMBOL || LA608_0 == CUBE_SYMBOL || LA608_0 == CURRENT_SYMBOL || LA608_0 == CURSOR_NAME_SYMBOL || ((LA608_0 >= DATAFILE_SYMBOL) && (LA608_0 <= DATETIME_SYMBOL)) || LA608_0 == DATE_SYMBOL || LA608_0 == DAY_SYMBOL || LA608_0 == DEFAULT_AUTH_SYMBOL || LA608_0 == DEFINER_SYMBOL || LA608_0 == DELAY_KEY_WRITE_SYMBOL || LA608_0 == DES_KEY_FILE_SYMBOL || LA608_0 == DIAGNOSTICS_SYMBOL || ((LA608_0 >= DIRECTORY_SYMBOL) && (LA608_0 <= DISK_SYMBOL)) || ((LA608_0 >= DUMPFILE_SYMBOL) && (LA608_0 <= DYNAMIC_SYMBOL)) || LA608_0 == ENABLE_SYMBOL || LA608_0 == ENDS_SYMBOL || ((LA608_0 >= ENGINES_SYMBOL) && (LA608_0 <= ENUM_SYMBOL)) || ((LA608_0 >= ERRORS_SYMBOL) && (LA608_0 <= ERROR_SYMBOL)) || ((LA608_0 >= ESCAPE_SYMBOL) && (LA608_0 <= EVERY_SYMBOL)) || LA608_0 == EXPANSION_SYMBOL || LA608_0 == EXPORT_SYMBOL || ((LA608_0 >= EXTENDED_SYMBOL) && (LA608_0 <= EXTENT_SIZE_SYMBOL)) || ((LA608_0 >= FAST_SYMBOL) && (LA608_0 <= FAULTS_SYMBOL)) || ((LA608_0 >= FILE_SYMBOL) && (LA608_0 <= FIXED_SYMBOL)) || LA608_0 == FOUND_SYMBOL || LA608_0 == FULL_SYMBOL || ((LA608_0 >= FUNCTION_SYMBOL) && (LA608_0 <= GET_FORMAT_SYMBOL)) || ((LA608_0 >= GLOBAL_SYMBOL) && (LA608_0 <= GRANTS_SYMBOL)) || LA608_0 == HASH_SYMBOL || LA608_0 == HOSTS_SYMBOL || ((LA608_0 >= HOUR_SYMBOL) && (LA608_0 <= IDENTIFIED_SYMBOL)) || LA608_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA608_0 >= IMPORT_SYMBOL) && (LA608_0 <= INDEXES_SYMBOL)) || LA608_0 == INITIAL_SIZE_SYMBOL || LA608_0 == INNODB_SYMBOL || LA608_0 == INSERT_METHOD_SYMBOL || LA608_0 == INVOKER_SYMBOL || LA608_0 == IO_SYMBOL || ((LA608_0 >= IPC_SYMBOL) && (LA608_0 <= ISSUER_SYMBOL)) || LA608_0 == KEY_BLOCK_SIZE_SYMBOL || LA608_0 == LAST_SYMBOL || LA608_0 == LEAVES_SYMBOL || LA608_0 == LESS_SYMBOL || LA608_0 == LEVEL_SYMBOL || LA608_0 == LINESTRING_SYMBOL || LA608_0 == LIST_SYMBOL || LA608_0 == LOCAL_SYMBOL || LA608_0 == LOCKS_SYMBOL || LA608_0 == LOGFILE_SYMBOL || LA608_0 == LOGS_SYMBOL || LA608_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA608_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA608_0 <= MASTER_SSL_SYMBOL)) || ((LA608_0 >= MASTER_SYMBOL) && (LA608_0 <= MASTER_USER_SYMBOL)) || ((LA608_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA608_0 <= MAX_SIZE_SYMBOL)) || ((LA608_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA608_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA608_0 >= MEDIUM_SYMBOL) && (LA608_0 <= MICROSECOND_SYMBOL)) || LA608_0 == MIGRATE_SYMBOL || ((LA608_0 >= MINUTE_SYMBOL) && (LA608_0 <= MIN_ROWS_SYMBOL)) || LA608_0 == MODE_SYMBOL || LA608_0 == MODIFY_SYMBOL || ((LA608_0 >= MONTH_SYMBOL) && (LA608_0 <= MULTILINESTRING_SYMBOL)) || ((LA608_0 >= MULTIPOINT_SYMBOL) && (LA608_0 <= MULTIPOLYGON_SYMBOL)) || ((LA608_0 >= MUTEX_SYMBOL) && (LA608_0 <= NATIONAL_SYMBOL)) || LA608_0 == NCHAR_SYMBOL || LA608_0 == NDBCLUSTER_SYMBOL || ((LA608_0 >= NEW_SYMBOL) && (LA608_0 <= NONE_SYMBOL)) || LA608_0 == NO_WAIT_SYMBOL || LA608_0 == NUMBER_SYMBOL || LA608_0 == NVARCHAR_SYMBOL || ((LA608_0 >= OFFSET_SYMBOL) && (LA608_0 <= ONE_SYMBOL)) || ((LA608_0 >= PACK_KEYS_SYMBOL) && (LA608_0 <= PAGE_SYMBOL)) || ((LA608_0 >= PARTIAL_SYMBOL) && (LA608_0 <= PARTITIONS_SYMBOL)) || ((LA608_0 >= PASSWORD_SYMBOL) && (LA608_0 <= PLUGIN_SYMBOL)) || ((LA608_0 >= POINT_SYMBOL) && (LA608_0 <= POLYGON_SYMBOL)) || ((LA608_0 >= PRESERVE_SYMBOL) && (LA608_0 <= PREV_SYMBOL)) || LA608_0 == PRIVILEGES_SYMBOL || ((LA608_0 >= PROCESSLIST_SYMBOL) && (LA608_0 <= PROXY_SYMBOL)) || ((LA608_0 >= QUARTER_SYMBOL) && (LA608_0 <= QUICK_SYMBOL)) || LA608_0 == READ_ONLY_SYMBOL || ((LA608_0 >= REBUILD_SYMBOL) && (LA608_0 <= REDUNDANT_SYMBOL)) || ((LA608_0 >= RELAYLOG_SYMBOL) && (LA608_0 <= RELAY_THREAD_SYMBOL)) || LA608_0 == RELOAD_SYMBOL || LA608_0 == REORGANIZE_SYMBOL || LA608_0 == REPEATABLE_SYMBOL || LA608_0 == REPLICATION_SYMBOL || ((LA608_0 >= RESUME_SYMBOL) && (LA608_0 <= RETURNS_SYMBOL)) || LA608_0 == REVERSE_SYMBOL || ((LA608_0 >= ROLLUP_SYMBOL) && (LA608_0 <= RTREE_SYMBOL)) || LA608_0 == SCHEDULE_SYMBOL || LA608_0 == SCHEMA_NAME_SYMBOL || LA608_0 == SECOND_SYMBOL || ((LA608_0 >= SERIALIZABLE_SYMBOL) && (LA608_0 <= SERIAL_SYMBOL)) || LA608_0 == SESSION_SYMBOL || LA608_0 == SHARE_SYMBOL || LA608_0 == SHUTDOWN_SYMBOL || LA608_0 == SIMPLE_SYMBOL || LA608_0 == SLOW_SYMBOL || LA608_0 == SNAPSHOT_SYMBOL || ((LA608_0 >= SOUNDS_SYMBOL) && (LA608_0 <= SOURCE_SYMBOL)) || ((LA608_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA608_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA608_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA608_0 <= SQL_CACHE_SYMBOL)) || LA608_0 == SQL_NO_CACHE_SYMBOL || LA608_0 == SQL_THREAD_SYMBOL || LA608_0 == STARTS_SYMBOL || ((LA608_0 >= STATS_AUTO_RECALC_SYMBOL) && (LA608_0 <= STATUS_SYMBOL)) || LA608_0 == STORAGE_SYMBOL || ((LA608_0 >= STRING_SYMBOL) && (LA608_0 <= SUBPARTITION_SYMBOL)) || ((LA608_0 >= SUPER_SYMBOL) && (LA608_0 <= SWITCHES_SYMBOL)) || ((LA608_0 >= TABLESPACE_SYMBOL) && (LA608_0 <= TABLE_NAME_SYMBOL)) || ((LA608_0 >= TEMPORARY_SYMBOL) && (LA608_0 <= TEMPTABLE_SYMBOL)) || ((LA608_0 >= TEXT_SYMBOL) && (LA608_0 <= THAN_SYMBOL)) || ((LA608_0 >= TIMESTAMP_ADD_SYMBOL) && (LA608_0 <= TIME_SYMBOL)) || ((LA608_0 >= TRANSACTION_SYMBOL) && (LA608_0 <= TRIGGERS_SYMBOL)) || ((LA608_0 >= TYPES_SYMBOL) && (LA608_0 <= UDF_RETURNS_SYMBOL)) || ((LA608_0 >= UNCOMMITTED_SYMBOL) && (LA608_0 <= UNDEFINED_SYMBOL)) || ((LA608_0 >= UNDOFILE_SYMBOL) && (LA608_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || LA608_0 == UNKNOWN_SYMBOL || LA608_0 == UNTIL_SYMBOL || ((LA608_0 >= USER_RESOURCES_SYMBOL) && (LA608_0 <= USE_FRM_SYMBOL)) || LA608_0 == VALUE_SYMBOL || LA608_0 == VARIABLES_SYMBOL || ((LA608_0 >= VIEW_SYMBOL) && (LA608_0 <= WEIGHT_STRING_SYMBOL)) || LA608_0 == WORK_SYMBOL || LA608_0 == X509_SYMBOL || LA608_0 == XML_SYMBOL || LA608_0 == YEAR_SYMBOL))
        	                {
        	                    alt608=1;
        	                }
        	            }
        	            switch (alt608)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1962:4: label
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_label_in_compound_statement11328);
        	        	        label2300=label(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecompound_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, label2300.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:1963:3: ({...}? begin_end_block | loop_block | repeat_until_block | while_do_block )
        	        {
        	            int alt609=4;
        	            switch ( LA(1) )
        	            {
        	            case BEGIN_SYMBOL:
        	            	{
        	            		alt609=1;
        	            	}
        	                break;
        	            case LOOP_SYMBOL:
        	            	{
        	            		alt609=2;
        	            	}
        	                break;
        	            case REPEAT_SYMBOL:
        	            	{
        	            		alt609=3;
        	            	}
        	                break;
        	            case WHILE_SYMBOL:
        	            	{
        	            		alt609=4;
        	            	}
        	                break;

        	            default:
        	                if (BACKTRACKING>0)
        	                {
        	                    FAILEDFLAG = ANTLR3_TRUE;
        	                    return retval;
        	                }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                EXCEPTION->message      = (void *)"";
        	                EXCEPTION->decisionNum  = 609;
        	                EXCEPTION->state        = 0;


        	                goto rulecompound_statementEx;

        	            }

        	            switch (alt609)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1964:4: {...}? begin_end_block
        	        	    {
        	        	        if ( !((LA(2) != WORK_SYMBOL)) )
        	        	        {
        	        	            if (BACKTRACKING>0)
        	        	            {
        	        	                FAILEDFLAG = ANTLR3_TRUE;
        	        	                return retval;
        	        	            }

        	        	                CONSTRUCTEX();
        	        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	        	                EXCEPTION->message      = (void *)"LA(2) != WORK_SYMBOL";
        	        	                EXCEPTION->ruleName	 = (void *)"compound_statement";


        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_begin_end_block_in_compound_statement11340);
        	        	        begin_end_block2301=begin_end_block(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecompound_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, begin_end_block2301.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:1965:6: loop_block
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_loop_block_in_compound_statement11347);
        	        	        loop_block2302=loop_block(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecompound_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, loop_block2302.tree);

        	        	    }
        	        	    break;
        	        	case 3:
        	        	    // MySQL.g:1966:6: repeat_until_block
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_repeat_until_block_in_compound_statement11354);
        	        	        repeat_until_block2303=repeat_until_block(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecompound_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, repeat_until_block2303.tree);

        	        	    }
        	        	    break;
        	        	case 4:
        	        	    // MySQL.g:1967:6: while_do_block
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_while_do_block_in_compound_statement11361);
        	        	        while_do_block2304=while_do_block(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecompound_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, while_do_block2304.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1969:4: case_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_case_statement_in_compound_statement11370);
        	        case_statement2305=case_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecompound_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, case_statement2305.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1970:4: if_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_if_statement_in_compound_statement11375);
        	        if_statement2306=if_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecompound_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, if_statement2306.tree);

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1971:4: iterate_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_iterate_statement_in_compound_statement11380);
        	        iterate_statement2307=iterate_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecompound_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, iterate_statement2307.tree);

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:1972:4: leave_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_leave_statement_in_compound_statement11386);
        	        leave_statement2308=leave_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecompound_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, leave_statement2308.tree);

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:1973:4: return_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_return_statement_in_compound_statement11391);
        	        return_statement2309=return_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecompound_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, return_statement2309.tree);

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:1975:4: cursor_open
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_cursor_open_in_compound_statement11398);
        	        cursor_open2310=cursor_open(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecompound_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, cursor_open2310.tree);

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:1976:4: cursor_fetch
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_cursor_fetch_in_compound_statement11403);
        	        cursor_fetch2311=cursor_fetch(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecompound_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, cursor_fetch2311.tree);

        	    }
        	    break;
        	case 10:
        	    // MySQL.g:1977:4: cursor_close
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_cursor_close_in_compound_statement11408);
        	        cursor_close2312=cursor_close(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecompound_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, cursor_close2312.tree);

        	    }
        	    break;
        	case 11:
        	    // MySQL.g:1979:4: {...}? => get_diagnostics
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((SERVER_VERSION >= 50600)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50600";
        	                EXCEPTION->ruleName	 = (void *)"compound_statement";


        	        }

        	        FOLLOWPUSH(FOLLOW_get_diagnostics_in_compound_statement11419);
        	        get_diagnostics2313=get_diagnostics(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecompound_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, get_diagnostics2313.tree);

        	    }
        	    break;
        	case 12:
        	    // MySQL.g:1980:4: {...}? => signal_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((SERVER_VERSION >= 50500)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50500";
        	                EXCEPTION->ruleName	 = (void *)"compound_statement";


        	        }

        	        FOLLOWPUSH(FOLLOW_signal_statement_in_compound_statement11428);
        	        signal_statement2314=signal_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecompound_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, signal_statement2314.tree);

        	    }
        	    break;
        	case 13:
        	    // MySQL.g:1981:4: {...}? => resignal_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((SERVER_VERSION >= 50500)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50500";
        	                EXCEPTION->ruleName	 = (void *)"compound_statement";


        	        }

        	        FOLLOWPUSH(FOLLOW_resignal_statement_in_compound_statement11437);
        	        resignal_statement2315=resignal_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecompound_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, resignal_statement2315.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulecompound_statementEx; /* Prevent compiler warnings */
    rulecompound_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end compound_statement */

/**
 * $ANTLR start compound_statement_list
 * MySQL.g:1984:1: compound_statement_list : ( compound_statement SEMICOLON_SYMBOL )+ ;
 */
static MySQLParser_compound_statement_list_return
compound_statement_list(pMySQLParser ctx)
{
    MySQLParser_compound_statement_list_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    SEMICOLON_SYMBOL2317;
    MySQLParser_compound_statement_return compound_statement2316;
    #undef	RETURN_TYPE_compound_statement2316
    #define	RETURN_TYPE_compound_statement2316 MySQLParser_compound_statement_return

    pANTLR3_BASE_TREE SEMICOLON_SYMBOL2317_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SEMICOLON_SYMBOL2317       = NULL;
    compound_statement2316.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SEMICOLON_SYMBOL2317_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1984:24: ( ( compound_statement SEMICOLON_SYMBOL )+ )
        // MySQL.g:1985:2: ( compound_statement SEMICOLON_SYMBOL )+
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:1985:2: ( compound_statement SEMICOLON_SYMBOL )+
            {
                int cnt611=0;

                for (;;)
                {
                    int alt611=2;
            	{
            	   /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
            	    */
            	    int LA611_0 = LA(1);
            	    if ( (LA611_0 == UNTIL_SYMBOL))
            	    {
            	        switch ( LA(2) )
            	        {
            	        case COLON_SYMBOL:
            	        	{
            	        		alt611=1;
            	        	}
            	            break;

            	        }

            	    }
            	    else if ( (LA611_0 == ALTER_SYMBOL || LA611_0 == CALL_SYMBOL || LA611_0 == CREATE_SYMBOL || LA611_0 == DELETE_SYMBOL || ((LA611_0 >= DO_SYMBOL) && (LA611_0 <= DROP_SYMBOL)) || LA611_0 == HANDLER_SYMBOL || LA611_0 == INSERT_SYMBOL || LA611_0 == LOAD_SYMBOL || LA611_0 == OPEN_PAR_SYMBOL || LA611_0 == RENAME_SYMBOL || LA611_0 == REPLACE_SYMBOL || LA611_0 == SELECT_SYMBOL || LA611_0 == TRUNCATE_SYMBOL || LA611_0 == UPDATE_SYMBOL))
            	    {
            	        alt611=1;
            	    }
            	    else if ( ((SERVER_VERSION >= 50100)) && (LA611_0 == PARTITION_SYMBOL))
            	    {
            	        alt611=1;
            	    }
            	    else if ( (LA611_0 == ANALYZE_SYMBOL || LA611_0 == BEGIN_SYMBOL || LA611_0 == CHANGE_SYMBOL || ((LA611_0 >= CHECKSUM_SYMBOL) && (LA611_0 <= CHECK_SYMBOL)) || LA611_0 == COMMIT_SYMBOL || LA611_0 == DEALLOCATE_SYMBOL || LA611_0 == EXECUTE_SYMBOL || LA611_0 == GRANT_SYMBOL || LA611_0 == LOCK_SYMBOL || LA611_0 == OPTIMIZE_SYMBOL || LA611_0 == PREPARE_SYMBOL || LA611_0 == PURGE_SYMBOL || LA611_0 == RELEASE_SYMBOL || LA611_0 == REPAIR_SYMBOL || LA611_0 == REVOKE_SYMBOL || LA611_0 == ROLLBACK_SYMBOL || LA611_0 == SAVEPOINT_SYMBOL || LA611_0 == SET_SYMBOL || LA611_0 == START_SYMBOL || LA611_0 == STOP_SYMBOL || LA611_0 == UNLOCK_SYMBOL || LA611_0 == XA_SYMBOL))
            	    {
            	        alt611=1;
            	    }
            	    else if ( ((SERVER_VERSION < 50500)) && (LA611_0 == BACKUP_SYMBOL || LA611_0 == RESTORE_SYMBOL))
            	    {
            	        alt611=1;
            	    }
            	    else if ( (LA611_0 == BACK_TICK_QUOTED_ID || LA611_0 == BINLOG_SYMBOL || LA611_0 == CACHE_SYMBOL || ((LA611_0 >= DESCRIBE_SYMBOL) && (LA611_0 <= DESC_SYMBOL)) || LA611_0 == FLUSH_SYMBOL || LA611_0 == HELP_SYMBOL || LA611_0 == IDENTIFIER || LA611_0 == INSTALL_SYMBOL || LA611_0 == KILL_SYMBOL || LA611_0 == RESET_SYMBOL || LA611_0 == SHOW_SYMBOL || LA611_0 == UNINSTALL_SYMBOL || LA611_0 == USE_SYMBOL))
            	    {
            	        alt611=1;
            	    }
            	    else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA611_0 == DOUBLE_QUOTED_TEXT))
            	    {
            	        alt611=1;
            	    }
            	    else if ( (((LA611_0 >= ACTION_SYMBOL) && (LA611_0 <= ADDDATE_SYMBOL)) || ((LA611_0 >= AFTER_SYMBOL) && (LA611_0 <= ALGORITHM_SYMBOL)) || LA611_0 == ANY_SYMBOL || ((LA611_0 >= AT_SYMBOL) && (LA611_0 <= AVG_SYMBOL)) || LA611_0 == BIT_SYMBOL || ((LA611_0 >= BLOCK_SYMBOL) && (LA611_0 <= BOOL_SYMBOL)) || LA611_0 == BTREE_SYMBOL || LA611_0 == CASCADED_SYMBOL || LA611_0 == CASE_SYMBOL || ((LA611_0 >= CATALOG_NAME_SYMBOL) && (LA611_0 <= CHANGED_SYMBOL)) || ((LA611_0 >= CIPHER_SYMBOL) && (LA611_0 <= CLIENT_SYMBOL)) || ((LA611_0 >= CLOSE_SYMBOL) && (LA611_0 <= CODE_SYMBOL)) || LA611_0 == COLLATION_SYMBOL || ((LA611_0 >= COLUMNS_SYMBOL) && (LA611_0 <= COLUMN_NAME_SYMBOL)) || LA611_0 == COMMITTED_SYMBOL || ((LA611_0 >= COMPACT_SYMBOL) && (LA611_0 <= COMPRESSED_SYMBOL)) || LA611_0 == CONCURRENT_SYMBOL || ((LA611_0 >= CONNECTION_SYMBOL) && (LA611_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || LA611_0 == CONTEXT_SYMBOL || LA611_0 == CONTRIBUTORS_SYMBOL || LA611_0 == CPU_SYMBOL || LA611_0 == CUBE_SYMBOL || LA611_0 == CURRENT_SYMBOL || LA611_0 == CURSOR_NAME_SYMBOL || ((LA611_0 >= DATAFILE_SYMBOL) && (LA611_0 <= DATETIME_SYMBOL)) || LA611_0 == DATE_SYMBOL || LA611_0 == DAY_SYMBOL || LA611_0 == DEFAULT_AUTH_SYMBOL || LA611_0 == DEFINER_SYMBOL || LA611_0 == DELAY_KEY_WRITE_SYMBOL || LA611_0 == DES_KEY_FILE_SYMBOL || LA611_0 == DIAGNOSTICS_SYMBOL || ((LA611_0 >= DIRECTORY_SYMBOL) && (LA611_0 <= DISK_SYMBOL)) || ((LA611_0 >= DUMPFILE_SYMBOL) && (LA611_0 <= DYNAMIC_SYMBOL)) || LA611_0 == ENABLE_SYMBOL || LA611_0 == ENDS_SYMBOL || ((LA611_0 >= ENGINES_SYMBOL) && (LA611_0 <= ENUM_SYMBOL)) || ((LA611_0 >= ERRORS_SYMBOL) && (LA611_0 <= ERROR_SYMBOL)) || ((LA611_0 >= ESCAPE_SYMBOL) && (LA611_0 <= EVERY_SYMBOL)) || LA611_0 == EXPANSION_SYMBOL || LA611_0 == EXPORT_SYMBOL || ((LA611_0 >= EXTENDED_SYMBOL) && (LA611_0 <= EXTENT_SIZE_SYMBOL)) || ((LA611_0 >= FAST_SYMBOL) && (LA611_0 <= FETCH_SYMBOL)) || ((LA611_0 >= FILE_SYMBOL) && (LA611_0 <= FIXED_SYMBOL)) || LA611_0 == FOUND_SYMBOL || LA611_0 == FULL_SYMBOL || ((LA611_0 >= FUNCTION_SYMBOL) && (LA611_0 <= GET_FORMAT_SYMBOL)) || ((LA611_0 >= GLOBAL_SYMBOL) && (LA611_0 <= GRANTS_SYMBOL)) || LA611_0 == HASH_SYMBOL || LA611_0 == HOSTS_SYMBOL || ((LA611_0 >= HOUR_SYMBOL) && (LA611_0 <= IDENTIFIED_SYMBOL)) || ((LA611_0 >= IF_SYMBOL) && (LA611_0 <= IGNORE_SERVER_IDS_SYMBOL)) || ((LA611_0 >= IMPORT_SYMBOL) && (LA611_0 <= INDEXES_SYMBOL)) || LA611_0 == INITIAL_SIZE_SYMBOL || LA611_0 == INNODB_SYMBOL || LA611_0 == INSERT_METHOD_SYMBOL || LA611_0 == INVOKER_SYMBOL || LA611_0 == IO_SYMBOL || ((LA611_0 >= IPC_SYMBOL) && (LA611_0 <= ISSUER_SYMBOL)) || LA611_0 == ITERATE_SYMBOL || LA611_0 == KEY_BLOCK_SIZE_SYMBOL || LA611_0 == LAST_SYMBOL || ((LA611_0 >= LEAVES_SYMBOL) && (LA611_0 <= LEAVE_SYMBOL)) || LA611_0 == LESS_SYMBOL || LA611_0 == LEVEL_SYMBOL || LA611_0 == LINESTRING_SYMBOL || LA611_0 == LIST_SYMBOL || LA611_0 == LOCAL_SYMBOL || LA611_0 == LOCKS_SYMBOL || LA611_0 == LOGFILE_SYMBOL || LA611_0 == LOGS_SYMBOL || LA611_0 == LOOP_SYMBOL || LA611_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA611_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA611_0 <= MASTER_SSL_SYMBOL)) || ((LA611_0 >= MASTER_SYMBOL) && (LA611_0 <= MASTER_USER_SYMBOL)) || ((LA611_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA611_0 <= MAX_SIZE_SYMBOL)) || ((LA611_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA611_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA611_0 >= MEDIUM_SYMBOL) && (LA611_0 <= MICROSECOND_SYMBOL)) || LA611_0 == MIGRATE_SYMBOL || ((LA611_0 >= MINUTE_SYMBOL) && (LA611_0 <= MIN_ROWS_SYMBOL)) || LA611_0 == MODE_SYMBOL || LA611_0 == MODIFY_SYMBOL || ((LA611_0 >= MONTH_SYMBOL) && (LA611_0 <= MULTILINESTRING_SYMBOL)) || ((LA611_0 >= MULTIPOINT_SYMBOL) && (LA611_0 <= MULTIPOLYGON_SYMBOL)) || ((LA611_0 >= MUTEX_SYMBOL) && (LA611_0 <= NATIONAL_SYMBOL)) || LA611_0 == NCHAR_SYMBOL || LA611_0 == NDBCLUSTER_SYMBOL || ((LA611_0 >= NEW_SYMBOL) && (LA611_0 <= NONE_SYMBOL)) || LA611_0 == NO_WAIT_SYMBOL || LA611_0 == NUMBER_SYMBOL || LA611_0 == NVARCHAR_SYMBOL || ((LA611_0 >= OFFSET_SYMBOL) && (LA611_0 <= ONE_SYMBOL)) || LA611_0 == OPEN_SYMBOL || ((LA611_0 >= PACK_KEYS_SYMBOL) && (LA611_0 <= PAGE_SYMBOL)) || ((LA611_0 >= PARTIAL_SYMBOL) && (LA611_0 <= PARTITIONS_SYMBOL)) || ((LA611_0 >= PASSWORD_SYMBOL) && (LA611_0 <= PLUGIN_SYMBOL)) || ((LA611_0 >= POINT_SYMBOL) && (LA611_0 <= POLYGON_SYMBOL)) || ((LA611_0 >= PRESERVE_SYMBOL) && (LA611_0 <= PREV_SYMBOL)) || LA611_0 == PRIVILEGES_SYMBOL || ((LA611_0 >= PROCESSLIST_SYMBOL) && (LA611_0 <= PROXY_SYMBOL)) || ((LA611_0 >= QUARTER_SYMBOL) && (LA611_0 <= QUICK_SYMBOL)) || LA611_0 == READ_ONLY_SYMBOL || ((LA611_0 >= REBUILD_SYMBOL) && (LA611_0 <= REDUNDANT_SYMBOL)) || ((LA611_0 >= RELAYLOG_SYMBOL) && (LA611_0 <= RELAY_THREAD_SYMBOL)) || LA611_0 == RELOAD_SYMBOL || LA611_0 == REORGANIZE_SYMBOL || ((LA611_0 >= REPEATABLE_SYMBOL) && (LA611_0 <= REPEAT_SYMBOL)) || LA611_0 == REPLICATION_SYMBOL || ((LA611_0 >= RESUME_SYMBOL) && (LA611_0 <= REVERSE_SYMBOL)) || ((LA611_0 >= ROLLUP_SYMBOL) && (LA611_0 <= RTREE_SYMBOL)) || LA611_0 == SCHEDULE_SYMBOL || LA611_0 == SCHEMA_NAME_SYMBOL || LA611_0 == SECOND_SYMBOL || ((LA611_0 >= SERIALIZABLE_SYMBOL) && (LA611_0 <= SERIAL_SYMBOL)) || LA611_0 == SESSION_SYMBOL || LA611_0 == SHARE_SYMBOL || LA611_0 == SHUTDOWN_SYMBOL || LA611_0 == SIMPLE_SYMBOL || LA611_0 == SLOW_SYMBOL || LA611_0 == SNAPSHOT_SYMBOL || ((LA611_0 >= SOUNDS_SYMBOL) && (LA611_0 <= SOURCE_SYMBOL)) || ((LA611_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA611_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA611_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA611_0 <= SQL_CACHE_SYMBOL)) || LA611_0 == SQL_NO_CACHE_SYMBOL || LA611_0 == SQL_THREAD_SYMBOL || LA611_0 == STARTS_SYMBOL || ((LA611_0 >= STATS_AUTO_RECALC_SYMBOL) && (LA611_0 <= STATUS_SYMBOL)) || LA611_0 == STORAGE_SYMBOL || ((LA611_0 >= STRING_SYMBOL) && (LA611_0 <= SUBPARTITION_SYMBOL)) || ((LA611_0 >= SUPER_SYMBOL) && (LA611_0 <= SWITCHES_SYMBOL)) || ((LA611_0 >= TABLESPACE_SYMBOL) && (LA611_0 <= TABLE_NAME_SYMBOL)) || ((LA611_0 >= TEMPORARY_SYMBOL) && (LA611_0 <= TEMPTABLE_SYMBOL)) || ((LA611_0 >= TEXT_SYMBOL) && (LA611_0 <= THAN_SYMBOL)) || ((LA611_0 >= TIMESTAMP_ADD_SYMBOL) && (LA611_0 <= TIME_SYMBOL)) || ((LA611_0 >= TRANSACTION_SYMBOL) && (LA611_0 <= TRIGGERS_SYMBOL)) || ((LA611_0 >= TYPES_SYMBOL) && (LA611_0 <= UDF_RETURNS_SYMBOL)) || ((LA611_0 >= UNCOMMITTED_SYMBOL) && (LA611_0 <= UNDEFINED_SYMBOL)) || ((LA611_0 >= UNDOFILE_SYMBOL) && (LA611_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || LA611_0 == UNKNOWN_SYMBOL || ((LA611_0 >= USER_RESOURCES_SYMBOL) && (LA611_0 <= USE_FRM_SYMBOL)) || LA611_0 == VALUE_SYMBOL || LA611_0 == VARIABLES_SYMBOL || ((LA611_0 >= VIEW_SYMBOL) && (LA611_0 <= WEIGHT_STRING_SYMBOL)) || LA611_0 == WHILE_SYMBOL || LA611_0 == WORK_SYMBOL || LA611_0 == X509_SYMBOL || LA611_0 == XML_SYMBOL || LA611_0 == YEAR_SYMBOL))
            	    {
            	        alt611=1;
            	    }
            	    else if ( ((SERVER_VERSION >= 50600)) && (LA611_0 == GET_SYMBOL))
            	    {
            	        alt611=1;
            	    }
            	    else if ( ((SERVER_VERSION >= 50500)) && (LA611_0 == RESIGNAL_SYMBOL || LA611_0 == SIGNAL_SYMBOL))
            	    {
            	        alt611=1;
            	    }

            	}
            	switch (alt611)
            	{
            	    case 1:
            	        // MySQL.g:1985:3: compound_statement SEMICOLON_SYMBOL
            	        {
            	            FOLLOWPUSH(FOLLOW_compound_statement_in_compound_statement_list11447);
            	            compound_statement2316=compound_statement(ctx);

            	            FOLLOWPOP();
            	            if  (HASEXCEPTION())
            	            {
            	                goto rulecompound_statement_listEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, compound_statement2316.tree);

            	            SEMICOLON_SYMBOL2317 = (pANTLR3_COMMON_TOKEN) MATCHT(SEMICOLON_SYMBOL, &FOLLOW_SEMICOLON_SYMBOL_in_compound_statement_list11449);
            	            if  (HASEXCEPTION())
            	            {
            	                goto rulecompound_statement_listEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) {
            	            SEMICOLON_SYMBOL2317_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SEMICOLON_SYMBOL2317));
            	            ADAPTOR->addChild(ADAPTOR, root_0, SEMICOLON_SYMBOL2317_tree);
            	            }

            	        }
            	        break;

            	    default:

            		if ( cnt611 >= 1 )
            		{
            		    goto loop611;
            		}
            		if (BACKTRACKING>0)
            		{
            		    FAILEDFLAG = ANTLR3_TRUE;
            		    return retval;
            		}

            		/* mismatchedSetEx()
            		 */
            		CONSTRUCTEX();
            		EXCEPTION->type = ANTLR3_EARLY_EXIT_EXCEPTION;
            		EXCEPTION->name = (void *)ANTLR3_EARLY_EXIT_NAME;


            		goto rulecompound_statement_listEx;
            	}
            	cnt611++;
                }
                loop611: ;	/* Jump to here if this rule does not match */
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulecompound_statement_listEx; /* Prevent compiler warnings */
    rulecompound_statement_listEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end compound_statement_list */

/**
 * $ANTLR start label
 * MySQL.g:1988:1: label : label_identifier COLON_SYMBOL ;
 */
static MySQLParser_label_return
label(pMySQLParser ctx)
{
    MySQLParser_label_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COLON_SYMBOL2319;
    MySQLParser_label_identifier_return label_identifier2318;
    #undef	RETURN_TYPE_label_identifier2318
    #define	RETURN_TYPE_label_identifier2318 MySQLParser_label_identifier_return

    pANTLR3_BASE_TREE COLON_SYMBOL2319_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COLON_SYMBOL2319       = NULL;
    label_identifier2318.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COLON_SYMBOL2319_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1988:6: ( label_identifier COLON_SYMBOL )
        // MySQL.g:1989:2: label_identifier COLON_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_label_identifier_in_label11460);
            label_identifier2318=label_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulelabelEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, label_identifier2318.tree);

            COLON_SYMBOL2319 = (pANTLR3_COMMON_TOKEN) MATCHT(COLON_SYMBOL, &FOLLOW_COLON_SYMBOL_in_label11462);
            if  (HASEXCEPTION())
            {
                goto rulelabelEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            COLON_SYMBOL2319_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLON_SYMBOL2319));
            ADAPTOR->addChild(ADAPTOR, root_0, COLON_SYMBOL2319_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulelabelEx; /* Prevent compiler warnings */
    rulelabelEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end label */

/**
 * $ANTLR start label_identifier
 * MySQL.g:1992:1: label_identifier : ( pure_identifier | keyword_sp );
 */
static MySQLParser_label_identifier_return
label_identifier(pMySQLParser ctx)
{
    MySQLParser_label_identifier_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_pure_identifier_return pure_identifier2320;
    #undef	RETURN_TYPE_pure_identifier2320
    #define	RETURN_TYPE_pure_identifier2320 MySQLParser_pure_identifier_return

    MySQLParser_keyword_sp_return keyword_sp2321;
    #undef	RETURN_TYPE_keyword_sp2321
    #define	RETURN_TYPE_keyword_sp2321 MySQLParser_keyword_sp_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    pure_identifier2320.tree = NULL;

    keyword_sp2321.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1992:17: ( pure_identifier | keyword_sp )

            ANTLR3_UINT32 alt612;

            alt612=2;

            {
                int LA612_0 = LA(1);
                if ( (LA612_0 == BACK_TICK_QUOTED_ID || LA612_0 == IDENTIFIER))
                {
                    alt612=1;
                }
                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA612_0 == DOUBLE_QUOTED_TEXT))
                {
                    alt612=1;
                }
                else if ( (((LA612_0 >= ACTION_SYMBOL) && (LA612_0 <= ADDDATE_SYMBOL)) || ((LA612_0 >= AFTER_SYMBOL) && (LA612_0 <= ALGORITHM_SYMBOL)) || LA612_0 == ANALYZE_SYMBOL || LA612_0 == ANY_SYMBOL || ((LA612_0 >= AT_SYMBOL) && (LA612_0 <= AVG_SYMBOL)) || LA612_0 == BINLOG_SYMBOL || LA612_0 == BIT_SYMBOL || ((LA612_0 >= BLOCK_SYMBOL) && (LA612_0 <= BOOL_SYMBOL)) || LA612_0 == BTREE_SYMBOL || LA612_0 == CASCADED_SYMBOL || ((LA612_0 >= CATALOG_NAME_SYMBOL) && (LA612_0 <= CHANGED_SYMBOL)) || ((LA612_0 >= CIPHER_SYMBOL) && (LA612_0 <= CLIENT_SYMBOL)) || ((LA612_0 >= COALESCE_SYMBOL) && (LA612_0 <= CODE_SYMBOL)) || LA612_0 == COLLATION_SYMBOL || ((LA612_0 >= COLUMNS_SYMBOL) && (LA612_0 <= COLUMN_NAME_SYMBOL)) || LA612_0 == COMMITTED_SYMBOL || ((LA612_0 >= COMPACT_SYMBOL) && (LA612_0 <= COMPRESSED_SYMBOL)) || LA612_0 == CONCURRENT_SYMBOL || ((LA612_0 >= CONNECTION_SYMBOL) && (LA612_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || LA612_0 == CONTEXT_SYMBOL || LA612_0 == CONTRIBUTORS_SYMBOL || LA612_0 == CPU_SYMBOL || LA612_0 == CUBE_SYMBOL || LA612_0 == CURRENT_SYMBOL || LA612_0 == CURSOR_NAME_SYMBOL || ((LA612_0 >= DATAFILE_SYMBOL) && (LA612_0 <= DATETIME_SYMBOL)) || LA612_0 == DATE_SYMBOL || LA612_0 == DAY_SYMBOL || LA612_0 == DEFAULT_AUTH_SYMBOL || LA612_0 == DEFINER_SYMBOL || LA612_0 == DELAY_KEY_WRITE_SYMBOL || LA612_0 == DES_KEY_FILE_SYMBOL || LA612_0 == DIAGNOSTICS_SYMBOL || ((LA612_0 >= DIRECTORY_SYMBOL) && (LA612_0 <= DISK_SYMBOL)) || ((LA612_0 >= DUMPFILE_SYMBOL) && (LA612_0 <= DYNAMIC_SYMBOL)) || LA612_0 == ENABLE_SYMBOL || LA612_0 == ENDS_SYMBOL || ((LA612_0 >= ENGINES_SYMBOL) && (LA612_0 <= ENUM_SYMBOL)) || ((LA612_0 >= ERRORS_SYMBOL) && (LA612_0 <= ERROR_SYMBOL)) || ((LA612_0 >= ESCAPE_SYMBOL) && (LA612_0 <= EVERY_SYMBOL)) || LA612_0 == EXPANSION_SYMBOL || LA612_0 == EXPORT_SYMBOL || ((LA612_0 >= EXTENDED_SYMBOL) && (LA612_0 <= EXTENT_SIZE_SYMBOL)) || ((LA612_0 >= FAST_SYMBOL) && (LA612_0 <= FAULTS_SYMBOL)) || ((LA612_0 >= FILE_SYMBOL) && (LA612_0 <= FIXED_SYMBOL)) || LA612_0 == FOUND_SYMBOL || LA612_0 == FULL_SYMBOL || ((LA612_0 >= FUNCTION_SYMBOL) && (LA612_0 <= GET_FORMAT_SYMBOL)) || ((LA612_0 >= GLOBAL_SYMBOL) && (LA612_0 <= GRANTS_SYMBOL)) || LA612_0 == HASH_SYMBOL || LA612_0 == HOSTS_SYMBOL || ((LA612_0 >= HOUR_SYMBOL) && (LA612_0 <= IDENTIFIED_SYMBOL)) || LA612_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA612_0 >= IMPORT_SYMBOL) && (LA612_0 <= INDEXES_SYMBOL)) || LA612_0 == INITIAL_SIZE_SYMBOL || LA612_0 == INNODB_SYMBOL || LA612_0 == INSERT_METHOD_SYMBOL || LA612_0 == INVOKER_SYMBOL || LA612_0 == IO_SYMBOL || ((LA612_0 >= IPC_SYMBOL) && (LA612_0 <= ISSUER_SYMBOL)) || LA612_0 == KEY_BLOCK_SIZE_SYMBOL || LA612_0 == LAST_SYMBOL || LA612_0 == LEAVES_SYMBOL || LA612_0 == LESS_SYMBOL || LA612_0 == LEVEL_SYMBOL || LA612_0 == LINESTRING_SYMBOL || LA612_0 == LIST_SYMBOL || LA612_0 == LOCAL_SYMBOL || LA612_0 == LOCKS_SYMBOL || LA612_0 == LOGFILE_SYMBOL || LA612_0 == LOGS_SYMBOL || LA612_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA612_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA612_0 <= MASTER_SSL_SYMBOL)) || ((LA612_0 >= MASTER_SYMBOL) && (LA612_0 <= MASTER_USER_SYMBOL)) || ((LA612_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA612_0 <= MAX_SIZE_SYMBOL)) || ((LA612_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA612_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA612_0 >= MEDIUM_SYMBOL) && (LA612_0 <= MICROSECOND_SYMBOL)) || LA612_0 == MIGRATE_SYMBOL || ((LA612_0 >= MINUTE_SYMBOL) && (LA612_0 <= MIN_ROWS_SYMBOL)) || LA612_0 == MODE_SYMBOL || LA612_0 == MODIFY_SYMBOL || ((LA612_0 >= MONTH_SYMBOL) && (LA612_0 <= MULTILINESTRING_SYMBOL)) || ((LA612_0 >= MULTIPOINT_SYMBOL) && (LA612_0 <= MULTIPOLYGON_SYMBOL)) || ((LA612_0 >= MUTEX_SYMBOL) && (LA612_0 <= NATIONAL_SYMBOL)) || LA612_0 == NCHAR_SYMBOL || LA612_0 == NDBCLUSTER_SYMBOL || ((LA612_0 >= NEW_SYMBOL) && (LA612_0 <= NONE_SYMBOL)) || LA612_0 == NO_WAIT_SYMBOL || LA612_0 == NUMBER_SYMBOL || LA612_0 == NVARCHAR_SYMBOL || ((LA612_0 >= OFFSET_SYMBOL) && (LA612_0 <= ONE_SYMBOL)) || ((LA612_0 >= PACK_KEYS_SYMBOL) && (LA612_0 <= PAGE_SYMBOL)) || ((LA612_0 >= PARTIAL_SYMBOL) && (LA612_0 <= PARTITIONS_SYMBOL)) || ((LA612_0 >= PASSWORD_SYMBOL) && (LA612_0 <= PLUGIN_SYMBOL)) || ((LA612_0 >= POINT_SYMBOL) && (LA612_0 <= POLYGON_SYMBOL)) || ((LA612_0 >= PRESERVE_SYMBOL) && (LA612_0 <= PREV_SYMBOL)) || LA612_0 == PRIVILEGES_SYMBOL || ((LA612_0 >= PROCESSLIST_SYMBOL) && (LA612_0 <= PROXY_SYMBOL)) || ((LA612_0 >= QUARTER_SYMBOL) && (LA612_0 <= QUICK_SYMBOL)) || LA612_0 == READ_ONLY_SYMBOL || ((LA612_0 >= REBUILD_SYMBOL) && (LA612_0 <= REDUNDANT_SYMBOL)) || ((LA612_0 >= RELAYLOG_SYMBOL) && (LA612_0 <= RELAY_THREAD_SYMBOL)) || LA612_0 == RELOAD_SYMBOL || LA612_0 == REORGANIZE_SYMBOL || LA612_0 == REPEATABLE_SYMBOL || LA612_0 == REPLICATION_SYMBOL || ((LA612_0 >= RESUME_SYMBOL) && (LA612_0 <= RETURNS_SYMBOL)) || LA612_0 == REVERSE_SYMBOL || ((LA612_0 >= ROLLUP_SYMBOL) && (LA612_0 <= RTREE_SYMBOL)) || LA612_0 == SCHEDULE_SYMBOL || LA612_0 == SCHEMA_NAME_SYMBOL || LA612_0 == SECOND_SYMBOL || ((LA612_0 >= SERIALIZABLE_SYMBOL) && (LA612_0 <= SERIAL_SYMBOL)) || LA612_0 == SESSION_SYMBOL || LA612_0 == SHARE_SYMBOL || LA612_0 == SHUTDOWN_SYMBOL || LA612_0 == SIMPLE_SYMBOL || LA612_0 == SLOW_SYMBOL || LA612_0 == SNAPSHOT_SYMBOL || ((LA612_0 >= SOUNDS_SYMBOL) && (LA612_0 <= SOURCE_SYMBOL)) || ((LA612_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA612_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA612_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA612_0 <= SQL_CACHE_SYMBOL)) || LA612_0 == SQL_NO_CACHE_SYMBOL || LA612_0 == SQL_THREAD_SYMBOL || LA612_0 == STARTS_SYMBOL || ((LA612_0 >= STATS_AUTO_RECALC_SYMBOL) && (LA612_0 <= STATUS_SYMBOL)) || LA612_0 == STORAGE_SYMBOL || ((LA612_0 >= STRING_SYMBOL) && (LA612_0 <= SUBPARTITION_SYMBOL)) || ((LA612_0 >= SUPER_SYMBOL) && (LA612_0 <= SWITCHES_SYMBOL)) || ((LA612_0 >= TABLESPACE_SYMBOL) && (LA612_0 <= TABLE_NAME_SYMBOL)) || ((LA612_0 >= TEMPORARY_SYMBOL) && (LA612_0 <= TEMPTABLE_SYMBOL)) || ((LA612_0 >= TEXT_SYMBOL) && (LA612_0 <= THAN_SYMBOL)) || ((LA612_0 >= TIMESTAMP_ADD_SYMBOL) && (LA612_0 <= TIME_SYMBOL)) || ((LA612_0 >= TRANSACTION_SYMBOL) && (LA612_0 <= TRIGGERS_SYMBOL)) || ((LA612_0 >= TYPES_SYMBOL) && (LA612_0 <= UDF_RETURNS_SYMBOL)) || ((LA612_0 >= UNCOMMITTED_SYMBOL) && (LA612_0 <= UNDEFINED_SYMBOL)) || ((LA612_0 >= UNDOFILE_SYMBOL) && (LA612_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || LA612_0 == UNKNOWN_SYMBOL || LA612_0 == UNTIL_SYMBOL || ((LA612_0 >= USER_RESOURCES_SYMBOL) && (LA612_0 <= USE_FRM_SYMBOL)) || LA612_0 == VALUE_SYMBOL || LA612_0 == VARIABLES_SYMBOL || ((LA612_0 >= VIEW_SYMBOL) && (LA612_0 <= WEIGHT_STRING_SYMBOL)) || LA612_0 == WORK_SYMBOL || LA612_0 == X509_SYMBOL || LA612_0 == XML_SYMBOL || LA612_0 == YEAR_SYMBOL))
                {
                    alt612=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 612;
                    EXCEPTION->state        = 0;


                    goto rulelabel_identifierEx;

                }
            }
            switch (alt612)
            {
        	case 1:
        	    // MySQL.g:1993:2: pure_identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_pure_identifier_in_label_identifier11471);
        	        pure_identifier2320=pure_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelabel_identifierEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier2320.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1993:20: keyword_sp
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_keyword_sp_in_label_identifier11475);
        	        keyword_sp2321=keyword_sp(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelabel_identifierEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, keyword_sp2321.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulelabel_identifierEx; /* Prevent compiler warnings */
    rulelabel_identifierEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end label_identifier */

/**
 * $ANTLR start begin_end_block
 * MySQL.g:1996:1: begin_end_block : BEGIN_SYMBOL declarations compound_statement_list END_SYMBOL ( label_identifier )? ;
 */
static MySQLParser_begin_end_block_return
begin_end_block(pMySQLParser ctx)
{
    MySQLParser_begin_end_block_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    BEGIN_SYMBOL2322;
    pANTLR3_COMMON_TOKEN    END_SYMBOL2325;
    MySQLParser_declarations_return declarations2323;
    #undef	RETURN_TYPE_declarations2323
    #define	RETURN_TYPE_declarations2323 MySQLParser_declarations_return

    MySQLParser_compound_statement_list_return compound_statement_list2324;
    #undef	RETURN_TYPE_compound_statement_list2324
    #define	RETURN_TYPE_compound_statement_list2324 MySQLParser_compound_statement_list_return

    MySQLParser_label_identifier_return label_identifier2326;
    #undef	RETURN_TYPE_label_identifier2326
    #define	RETURN_TYPE_label_identifier2326 MySQLParser_label_identifier_return

    pANTLR3_BASE_TREE BEGIN_SYMBOL2322_tree;
    pANTLR3_BASE_TREE END_SYMBOL2325_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    BEGIN_SYMBOL2322       = NULL;
    END_SYMBOL2325       = NULL;
    declarations2323.tree = NULL;

    compound_statement_list2324.tree = NULL;

    label_identifier2326.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    BEGIN_SYMBOL2322_tree   = NULL;
    END_SYMBOL2325_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1996:16: ( BEGIN_SYMBOL declarations compound_statement_list END_SYMBOL ( label_identifier )? )
        // MySQL.g:1998:2: BEGIN_SYMBOL declarations compound_statement_list END_SYMBOL ( label_identifier )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            BEGIN_SYMBOL2322 = (pANTLR3_COMMON_TOKEN) MATCHT(BEGIN_SYMBOL, &FOLLOW_BEGIN_SYMBOL_in_begin_end_block11487);
            if  (HASEXCEPTION())
            {
                goto rulebegin_end_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            BEGIN_SYMBOL2322_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BEGIN_SYMBOL2322));
            ADAPTOR->addChild(ADAPTOR, root_0, BEGIN_SYMBOL2322_tree);
            }

            FOLLOWPUSH(FOLLOW_declarations_in_begin_end_block11489);
            declarations2323=declarations(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulebegin_end_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, declarations2323.tree);

            FOLLOWPUSH(FOLLOW_compound_statement_list_in_begin_end_block11491);
            compound_statement_list2324=compound_statement_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulebegin_end_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, compound_statement_list2324.tree);

            END_SYMBOL2325 = (pANTLR3_COMMON_TOKEN) MATCHT(END_SYMBOL, &FOLLOW_END_SYMBOL_in_begin_end_block11493);
            if  (HASEXCEPTION())
            {
                goto rulebegin_end_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            END_SYMBOL2325_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, END_SYMBOL2325));
            ADAPTOR->addChild(ADAPTOR, root_0, END_SYMBOL2325_tree);
            }

            // MySQL.g:1998:63: ( label_identifier )?
            {
                int alt613=2;
                {
                    int LA613_0 = LA(1);
                    if ( (LA613_0 == BACK_TICK_QUOTED_ID || LA613_0 == IDENTIFIER))
                    {
                        alt613=1;
                    }
                    else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA613_0 == DOUBLE_QUOTED_TEXT))
                    {
                        alt613=1;
                    }
                    else if ( (((LA613_0 >= ACTION_SYMBOL) && (LA613_0 <= ADDDATE_SYMBOL)) || ((LA613_0 >= AFTER_SYMBOL) && (LA613_0 <= ALGORITHM_SYMBOL)) || LA613_0 == ANALYZE_SYMBOL || LA613_0 == ANY_SYMBOL || ((LA613_0 >= AT_SYMBOL) && (LA613_0 <= AVG_SYMBOL)) || LA613_0 == BINLOG_SYMBOL || LA613_0 == BIT_SYMBOL || ((LA613_0 >= BLOCK_SYMBOL) && (LA613_0 <= BOOL_SYMBOL)) || LA613_0 == BTREE_SYMBOL || LA613_0 == CASCADED_SYMBOL || ((LA613_0 >= CATALOG_NAME_SYMBOL) && (LA613_0 <= CHANGED_SYMBOL)) || ((LA613_0 >= CIPHER_SYMBOL) && (LA613_0 <= CLIENT_SYMBOL)) || ((LA613_0 >= COALESCE_SYMBOL) && (LA613_0 <= CODE_SYMBOL)) || LA613_0 == COLLATION_SYMBOL || ((LA613_0 >= COLUMNS_SYMBOL) && (LA613_0 <= COLUMN_NAME_SYMBOL)) || LA613_0 == COMMITTED_SYMBOL || ((LA613_0 >= COMPACT_SYMBOL) && (LA613_0 <= COMPRESSED_SYMBOL)) || LA613_0 == CONCURRENT_SYMBOL || ((LA613_0 >= CONNECTION_SYMBOL) && (LA613_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || LA613_0 == CONTEXT_SYMBOL || LA613_0 == CONTRIBUTORS_SYMBOL || LA613_0 == CPU_SYMBOL || LA613_0 == CUBE_SYMBOL || LA613_0 == CURRENT_SYMBOL || LA613_0 == CURSOR_NAME_SYMBOL || ((LA613_0 >= DATAFILE_SYMBOL) && (LA613_0 <= DATETIME_SYMBOL)) || LA613_0 == DATE_SYMBOL || LA613_0 == DAY_SYMBOL || LA613_0 == DEFAULT_AUTH_SYMBOL || LA613_0 == DEFINER_SYMBOL || LA613_0 == DELAY_KEY_WRITE_SYMBOL || LA613_0 == DES_KEY_FILE_SYMBOL || LA613_0 == DIAGNOSTICS_SYMBOL || ((LA613_0 >= DIRECTORY_SYMBOL) && (LA613_0 <= DISK_SYMBOL)) || ((LA613_0 >= DUMPFILE_SYMBOL) && (LA613_0 <= DYNAMIC_SYMBOL)) || LA613_0 == ENABLE_SYMBOL || LA613_0 == ENDS_SYMBOL || ((LA613_0 >= ENGINES_SYMBOL) && (LA613_0 <= ENUM_SYMBOL)) || ((LA613_0 >= ERRORS_SYMBOL) && (LA613_0 <= ERROR_SYMBOL)) || ((LA613_0 >= ESCAPE_SYMBOL) && (LA613_0 <= EVERY_SYMBOL)) || LA613_0 == EXPANSION_SYMBOL || LA613_0 == EXPORT_SYMBOL || ((LA613_0 >= EXTENDED_SYMBOL) && (LA613_0 <= EXTENT_SIZE_SYMBOL)) || ((LA613_0 >= FAST_SYMBOL) && (LA613_0 <= FAULTS_SYMBOL)) || ((LA613_0 >= FILE_SYMBOL) && (LA613_0 <= FIXED_SYMBOL)) || LA613_0 == FOUND_SYMBOL || LA613_0 == FULL_SYMBOL || ((LA613_0 >= FUNCTION_SYMBOL) && (LA613_0 <= GET_FORMAT_SYMBOL)) || ((LA613_0 >= GLOBAL_SYMBOL) && (LA613_0 <= GRANTS_SYMBOL)) || LA613_0 == HASH_SYMBOL || LA613_0 == HOSTS_SYMBOL || ((LA613_0 >= HOUR_SYMBOL) && (LA613_0 <= IDENTIFIED_SYMBOL)) || LA613_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA613_0 >= IMPORT_SYMBOL) && (LA613_0 <= INDEXES_SYMBOL)) || LA613_0 == INITIAL_SIZE_SYMBOL || LA613_0 == INNODB_SYMBOL || LA613_0 == INSERT_METHOD_SYMBOL || LA613_0 == INVOKER_SYMBOL || LA613_0 == IO_SYMBOL || ((LA613_0 >= IPC_SYMBOL) && (LA613_0 <= ISSUER_SYMBOL)) || LA613_0 == KEY_BLOCK_SIZE_SYMBOL || LA613_0 == LAST_SYMBOL || LA613_0 == LEAVES_SYMBOL || LA613_0 == LESS_SYMBOL || LA613_0 == LEVEL_SYMBOL || LA613_0 == LINESTRING_SYMBOL || LA613_0 == LIST_SYMBOL || LA613_0 == LOCAL_SYMBOL || LA613_0 == LOCKS_SYMBOL || LA613_0 == LOGFILE_SYMBOL || LA613_0 == LOGS_SYMBOL || LA613_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA613_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA613_0 <= MASTER_SSL_SYMBOL)) || ((LA613_0 >= MASTER_SYMBOL) && (LA613_0 <= MASTER_USER_SYMBOL)) || ((LA613_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA613_0 <= MAX_SIZE_SYMBOL)) || ((LA613_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA613_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA613_0 >= MEDIUM_SYMBOL) && (LA613_0 <= MICROSECOND_SYMBOL)) || LA613_0 == MIGRATE_SYMBOL || ((LA613_0 >= MINUTE_SYMBOL) && (LA613_0 <= MIN_ROWS_SYMBOL)) || LA613_0 == MODE_SYMBOL || LA613_0 == MODIFY_SYMBOL || ((LA613_0 >= MONTH_SYMBOL) && (LA613_0 <= MULTILINESTRING_SYMBOL)) || ((LA613_0 >= MULTIPOINT_SYMBOL) && (LA613_0 <= MULTIPOLYGON_SYMBOL)) || ((LA613_0 >= MUTEX_SYMBOL) && (LA613_0 <= NATIONAL_SYMBOL)) || LA613_0 == NCHAR_SYMBOL || LA613_0 == NDBCLUSTER_SYMBOL || ((LA613_0 >= NEW_SYMBOL) && (LA613_0 <= NONE_SYMBOL)) || LA613_0 == NO_WAIT_SYMBOL || LA613_0 == NUMBER_SYMBOL || LA613_0 == NVARCHAR_SYMBOL || ((LA613_0 >= OFFSET_SYMBOL) && (LA613_0 <= ONE_SYMBOL)) || ((LA613_0 >= PACK_KEYS_SYMBOL) && (LA613_0 <= PAGE_SYMBOL)) || ((LA613_0 >= PARTIAL_SYMBOL) && (LA613_0 <= PARTITIONS_SYMBOL)) || ((LA613_0 >= PASSWORD_SYMBOL) && (LA613_0 <= PLUGIN_SYMBOL)) || ((LA613_0 >= POINT_SYMBOL) && (LA613_0 <= POLYGON_SYMBOL)) || ((LA613_0 >= PRESERVE_SYMBOL) && (LA613_0 <= PREV_SYMBOL)) || LA613_0 == PRIVILEGES_SYMBOL || ((LA613_0 >= PROCESSLIST_SYMBOL) && (LA613_0 <= PROXY_SYMBOL)) || ((LA613_0 >= QUARTER_SYMBOL) && (LA613_0 <= QUICK_SYMBOL)) || LA613_0 == READ_ONLY_SYMBOL || ((LA613_0 >= REBUILD_SYMBOL) && (LA613_0 <= REDUNDANT_SYMBOL)) || ((LA613_0 >= RELAYLOG_SYMBOL) && (LA613_0 <= RELAY_THREAD_SYMBOL)) || LA613_0 == RELOAD_SYMBOL || LA613_0 == REORGANIZE_SYMBOL || LA613_0 == REPEATABLE_SYMBOL || LA613_0 == REPLICATION_SYMBOL || ((LA613_0 >= RESUME_SYMBOL) && (LA613_0 <= RETURNS_SYMBOL)) || LA613_0 == REVERSE_SYMBOL || ((LA613_0 >= ROLLUP_SYMBOL) && (LA613_0 <= RTREE_SYMBOL)) || LA613_0 == SCHEDULE_SYMBOL || LA613_0 == SCHEMA_NAME_SYMBOL || LA613_0 == SECOND_SYMBOL || ((LA613_0 >= SERIALIZABLE_SYMBOL) && (LA613_0 <= SERIAL_SYMBOL)) || LA613_0 == SESSION_SYMBOL || LA613_0 == SHARE_SYMBOL || LA613_0 == SHUTDOWN_SYMBOL || LA613_0 == SIMPLE_SYMBOL || LA613_0 == SLOW_SYMBOL || LA613_0 == SNAPSHOT_SYMBOL || ((LA613_0 >= SOUNDS_SYMBOL) && (LA613_0 <= SOURCE_SYMBOL)) || ((LA613_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA613_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA613_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA613_0 <= SQL_CACHE_SYMBOL)) || LA613_0 == SQL_NO_CACHE_SYMBOL || LA613_0 == SQL_THREAD_SYMBOL || LA613_0 == STARTS_SYMBOL || ((LA613_0 >= STATS_AUTO_RECALC_SYMBOL) && (LA613_0 <= STATUS_SYMBOL)) || LA613_0 == STORAGE_SYMBOL || ((LA613_0 >= STRING_SYMBOL) && (LA613_0 <= SUBPARTITION_SYMBOL)) || ((LA613_0 >= SUPER_SYMBOL) && (LA613_0 <= SWITCHES_SYMBOL)) || ((LA613_0 >= TABLESPACE_SYMBOL) && (LA613_0 <= TABLE_NAME_SYMBOL)) || ((LA613_0 >= TEMPORARY_SYMBOL) && (LA613_0 <= TEMPTABLE_SYMBOL)) || ((LA613_0 >= TEXT_SYMBOL) && (LA613_0 <= THAN_SYMBOL)) || ((LA613_0 >= TIMESTAMP_ADD_SYMBOL) && (LA613_0 <= TIME_SYMBOL)) || ((LA613_0 >= TRANSACTION_SYMBOL) && (LA613_0 <= TRIGGERS_SYMBOL)) || ((LA613_0 >= TYPES_SYMBOL) && (LA613_0 <= UDF_RETURNS_SYMBOL)) || ((LA613_0 >= UNCOMMITTED_SYMBOL) && (LA613_0 <= UNDEFINED_SYMBOL)) || ((LA613_0 >= UNDOFILE_SYMBOL) && (LA613_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || LA613_0 == UNKNOWN_SYMBOL || LA613_0 == UNTIL_SYMBOL || ((LA613_0 >= USER_RESOURCES_SYMBOL) && (LA613_0 <= USE_FRM_SYMBOL)) || LA613_0 == VALUE_SYMBOL || LA613_0 == VARIABLES_SYMBOL || ((LA613_0 >= VIEW_SYMBOL) && (LA613_0 <= WEIGHT_STRING_SYMBOL)) || LA613_0 == WORK_SYMBOL || LA613_0 == X509_SYMBOL || LA613_0 == XML_SYMBOL || LA613_0 == YEAR_SYMBOL))
                    {
                        alt613=1;
                    }
                }
                switch (alt613)
                {
            	case 1:
            	    // MySQL.g:1998:63: label_identifier
            	    {
            	        FOLLOWPUSH(FOLLOW_label_identifier_in_begin_end_block11495);
            	        label_identifier2326=label_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulebegin_end_blockEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, label_identifier2326.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulebegin_end_blockEx; /* Prevent compiler warnings */
    rulebegin_end_blockEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end begin_end_block */

/**
 * $ANTLR start loop_block
 * MySQL.g:2001:1: loop_block : LOOP_SYMBOL compound_statement_list END_SYMBOL LOOP_SYMBOL ( label_identifier )? ;
 */
static MySQLParser_loop_block_return
loop_block(pMySQLParser ctx)
{
    MySQLParser_loop_block_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    LOOP_SYMBOL2327;
    pANTLR3_COMMON_TOKEN    END_SYMBOL2329;
    pANTLR3_COMMON_TOKEN    LOOP_SYMBOL2330;
    MySQLParser_compound_statement_list_return compound_statement_list2328;
    #undef	RETURN_TYPE_compound_statement_list2328
    #define	RETURN_TYPE_compound_statement_list2328 MySQLParser_compound_statement_list_return

    MySQLParser_label_identifier_return label_identifier2331;
    #undef	RETURN_TYPE_label_identifier2331
    #define	RETURN_TYPE_label_identifier2331 MySQLParser_label_identifier_return

    pANTLR3_BASE_TREE LOOP_SYMBOL2327_tree;
    pANTLR3_BASE_TREE END_SYMBOL2329_tree;
    pANTLR3_BASE_TREE LOOP_SYMBOL2330_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    LOOP_SYMBOL2327       = NULL;
    END_SYMBOL2329       = NULL;
    LOOP_SYMBOL2330       = NULL;
    compound_statement_list2328.tree = NULL;

    label_identifier2331.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    LOOP_SYMBOL2327_tree   = NULL;
    END_SYMBOL2329_tree   = NULL;
    LOOP_SYMBOL2330_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2001:11: ( LOOP_SYMBOL compound_statement_list END_SYMBOL LOOP_SYMBOL ( label_identifier )? )
        // MySQL.g:2002:2: LOOP_SYMBOL compound_statement_list END_SYMBOL LOOP_SYMBOL ( label_identifier )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            LOOP_SYMBOL2327 = (pANTLR3_COMMON_TOKEN) MATCHT(LOOP_SYMBOL, &FOLLOW_LOOP_SYMBOL_in_loop_block11505);
            if  (HASEXCEPTION())
            {
                goto ruleloop_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            LOOP_SYMBOL2327_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOOP_SYMBOL2327));
            ADAPTOR->addChild(ADAPTOR, root_0, LOOP_SYMBOL2327_tree);
            }

            FOLLOWPUSH(FOLLOW_compound_statement_list_in_loop_block11507);
            compound_statement_list2328=compound_statement_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleloop_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, compound_statement_list2328.tree);

            END_SYMBOL2329 = (pANTLR3_COMMON_TOKEN) MATCHT(END_SYMBOL, &FOLLOW_END_SYMBOL_in_loop_block11509);
            if  (HASEXCEPTION())
            {
                goto ruleloop_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            END_SYMBOL2329_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, END_SYMBOL2329));
            ADAPTOR->addChild(ADAPTOR, root_0, END_SYMBOL2329_tree);
            }

            LOOP_SYMBOL2330 = (pANTLR3_COMMON_TOKEN) MATCHT(LOOP_SYMBOL, &FOLLOW_LOOP_SYMBOL_in_loop_block11511);
            if  (HASEXCEPTION())
            {
                goto ruleloop_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            LOOP_SYMBOL2330_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOOP_SYMBOL2330));
            ADAPTOR->addChild(ADAPTOR, root_0, LOOP_SYMBOL2330_tree);
            }

            // MySQL.g:2002:61: ( label_identifier )?
            {
                int alt614=2;
                {
                    int LA614_0 = LA(1);
                    if ( (LA614_0 == BACK_TICK_QUOTED_ID || LA614_0 == IDENTIFIER))
                    {
                        alt614=1;
                    }
                    else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA614_0 == DOUBLE_QUOTED_TEXT))
                    {
                        alt614=1;
                    }
                    else if ( (((LA614_0 >= ACTION_SYMBOL) && (LA614_0 <= ADDDATE_SYMBOL)) || ((LA614_0 >= AFTER_SYMBOL) && (LA614_0 <= ALGORITHM_SYMBOL)) || LA614_0 == ANALYZE_SYMBOL || LA614_0 == ANY_SYMBOL || ((LA614_0 >= AT_SYMBOL) && (LA614_0 <= AVG_SYMBOL)) || LA614_0 == BINLOG_SYMBOL || LA614_0 == BIT_SYMBOL || ((LA614_0 >= BLOCK_SYMBOL) && (LA614_0 <= BOOL_SYMBOL)) || LA614_0 == BTREE_SYMBOL || LA614_0 == CASCADED_SYMBOL || ((LA614_0 >= CATALOG_NAME_SYMBOL) && (LA614_0 <= CHANGED_SYMBOL)) || ((LA614_0 >= CIPHER_SYMBOL) && (LA614_0 <= CLIENT_SYMBOL)) || ((LA614_0 >= COALESCE_SYMBOL) && (LA614_0 <= CODE_SYMBOL)) || LA614_0 == COLLATION_SYMBOL || ((LA614_0 >= COLUMNS_SYMBOL) && (LA614_0 <= COLUMN_NAME_SYMBOL)) || LA614_0 == COMMITTED_SYMBOL || ((LA614_0 >= COMPACT_SYMBOL) && (LA614_0 <= COMPRESSED_SYMBOL)) || LA614_0 == CONCURRENT_SYMBOL || ((LA614_0 >= CONNECTION_SYMBOL) && (LA614_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || LA614_0 == CONTEXT_SYMBOL || LA614_0 == CONTRIBUTORS_SYMBOL || LA614_0 == CPU_SYMBOL || LA614_0 == CUBE_SYMBOL || LA614_0 == CURRENT_SYMBOL || LA614_0 == CURSOR_NAME_SYMBOL || ((LA614_0 >= DATAFILE_SYMBOL) && (LA614_0 <= DATETIME_SYMBOL)) || LA614_0 == DATE_SYMBOL || LA614_0 == DAY_SYMBOL || LA614_0 == DEFAULT_AUTH_SYMBOL || LA614_0 == DEFINER_SYMBOL || LA614_0 == DELAY_KEY_WRITE_SYMBOL || LA614_0 == DES_KEY_FILE_SYMBOL || LA614_0 == DIAGNOSTICS_SYMBOL || ((LA614_0 >= DIRECTORY_SYMBOL) && (LA614_0 <= DISK_SYMBOL)) || ((LA614_0 >= DUMPFILE_SYMBOL) && (LA614_0 <= DYNAMIC_SYMBOL)) || LA614_0 == ENABLE_SYMBOL || LA614_0 == ENDS_SYMBOL || ((LA614_0 >= ENGINES_SYMBOL) && (LA614_0 <= ENUM_SYMBOL)) || ((LA614_0 >= ERRORS_SYMBOL) && (LA614_0 <= ERROR_SYMBOL)) || ((LA614_0 >= ESCAPE_SYMBOL) && (LA614_0 <= EVERY_SYMBOL)) || LA614_0 == EXPANSION_SYMBOL || LA614_0 == EXPORT_SYMBOL || ((LA614_0 >= EXTENDED_SYMBOL) && (LA614_0 <= EXTENT_SIZE_SYMBOL)) || ((LA614_0 >= FAST_SYMBOL) && (LA614_0 <= FAULTS_SYMBOL)) || ((LA614_0 >= FILE_SYMBOL) && (LA614_0 <= FIXED_SYMBOL)) || LA614_0 == FOUND_SYMBOL || LA614_0 == FULL_SYMBOL || ((LA614_0 >= FUNCTION_SYMBOL) && (LA614_0 <= GET_FORMAT_SYMBOL)) || ((LA614_0 >= GLOBAL_SYMBOL) && (LA614_0 <= GRANTS_SYMBOL)) || LA614_0 == HASH_SYMBOL || LA614_0 == HOSTS_SYMBOL || ((LA614_0 >= HOUR_SYMBOL) && (LA614_0 <= IDENTIFIED_SYMBOL)) || LA614_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA614_0 >= IMPORT_SYMBOL) && (LA614_0 <= INDEXES_SYMBOL)) || LA614_0 == INITIAL_SIZE_SYMBOL || LA614_0 == INNODB_SYMBOL || LA614_0 == INSERT_METHOD_SYMBOL || LA614_0 == INVOKER_SYMBOL || LA614_0 == IO_SYMBOL || ((LA614_0 >= IPC_SYMBOL) && (LA614_0 <= ISSUER_SYMBOL)) || LA614_0 == KEY_BLOCK_SIZE_SYMBOL || LA614_0 == LAST_SYMBOL || LA614_0 == LEAVES_SYMBOL || LA614_0 == LESS_SYMBOL || LA614_0 == LEVEL_SYMBOL || LA614_0 == LINESTRING_SYMBOL || LA614_0 == LIST_SYMBOL || LA614_0 == LOCAL_SYMBOL || LA614_0 == LOCKS_SYMBOL || LA614_0 == LOGFILE_SYMBOL || LA614_0 == LOGS_SYMBOL || LA614_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA614_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA614_0 <= MASTER_SSL_SYMBOL)) || ((LA614_0 >= MASTER_SYMBOL) && (LA614_0 <= MASTER_USER_SYMBOL)) || ((LA614_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA614_0 <= MAX_SIZE_SYMBOL)) || ((LA614_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA614_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA614_0 >= MEDIUM_SYMBOL) && (LA614_0 <= MICROSECOND_SYMBOL)) || LA614_0 == MIGRATE_SYMBOL || ((LA614_0 >= MINUTE_SYMBOL) && (LA614_0 <= MIN_ROWS_SYMBOL)) || LA614_0 == MODE_SYMBOL || LA614_0 == MODIFY_SYMBOL || ((LA614_0 >= MONTH_SYMBOL) && (LA614_0 <= MULTILINESTRING_SYMBOL)) || ((LA614_0 >= MULTIPOINT_SYMBOL) && (LA614_0 <= MULTIPOLYGON_SYMBOL)) || ((LA614_0 >= MUTEX_SYMBOL) && (LA614_0 <= NATIONAL_SYMBOL)) || LA614_0 == NCHAR_SYMBOL || LA614_0 == NDBCLUSTER_SYMBOL || ((LA614_0 >= NEW_SYMBOL) && (LA614_0 <= NONE_SYMBOL)) || LA614_0 == NO_WAIT_SYMBOL || LA614_0 == NUMBER_SYMBOL || LA614_0 == NVARCHAR_SYMBOL || ((LA614_0 >= OFFSET_SYMBOL) && (LA614_0 <= ONE_SYMBOL)) || ((LA614_0 >= PACK_KEYS_SYMBOL) && (LA614_0 <= PAGE_SYMBOL)) || ((LA614_0 >= PARTIAL_SYMBOL) && (LA614_0 <= PARTITIONS_SYMBOL)) || ((LA614_0 >= PASSWORD_SYMBOL) && (LA614_0 <= PLUGIN_SYMBOL)) || ((LA614_0 >= POINT_SYMBOL) && (LA614_0 <= POLYGON_SYMBOL)) || ((LA614_0 >= PRESERVE_SYMBOL) && (LA614_0 <= PREV_SYMBOL)) || LA614_0 == PRIVILEGES_SYMBOL || ((LA614_0 >= PROCESSLIST_SYMBOL) && (LA614_0 <= PROXY_SYMBOL)) || ((LA614_0 >= QUARTER_SYMBOL) && (LA614_0 <= QUICK_SYMBOL)) || LA614_0 == READ_ONLY_SYMBOL || ((LA614_0 >= REBUILD_SYMBOL) && (LA614_0 <= REDUNDANT_SYMBOL)) || ((LA614_0 >= RELAYLOG_SYMBOL) && (LA614_0 <= RELAY_THREAD_SYMBOL)) || LA614_0 == RELOAD_SYMBOL || LA614_0 == REORGANIZE_SYMBOL || LA614_0 == REPEATABLE_SYMBOL || LA614_0 == REPLICATION_SYMBOL || ((LA614_0 >= RESUME_SYMBOL) && (LA614_0 <= RETURNS_SYMBOL)) || LA614_0 == REVERSE_SYMBOL || ((LA614_0 >= ROLLUP_SYMBOL) && (LA614_0 <= RTREE_SYMBOL)) || LA614_0 == SCHEDULE_SYMBOL || LA614_0 == SCHEMA_NAME_SYMBOL || LA614_0 == SECOND_SYMBOL || ((LA614_0 >= SERIALIZABLE_SYMBOL) && (LA614_0 <= SERIAL_SYMBOL)) || LA614_0 == SESSION_SYMBOL || LA614_0 == SHARE_SYMBOL || LA614_0 == SHUTDOWN_SYMBOL || LA614_0 == SIMPLE_SYMBOL || LA614_0 == SLOW_SYMBOL || LA614_0 == SNAPSHOT_SYMBOL || ((LA614_0 >= SOUNDS_SYMBOL) && (LA614_0 <= SOURCE_SYMBOL)) || ((LA614_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA614_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA614_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA614_0 <= SQL_CACHE_SYMBOL)) || LA614_0 == SQL_NO_CACHE_SYMBOL || LA614_0 == SQL_THREAD_SYMBOL || LA614_0 == STARTS_SYMBOL || ((LA614_0 >= STATS_AUTO_RECALC_SYMBOL) && (LA614_0 <= STATUS_SYMBOL)) || LA614_0 == STORAGE_SYMBOL || ((LA614_0 >= STRING_SYMBOL) && (LA614_0 <= SUBPARTITION_SYMBOL)) || ((LA614_0 >= SUPER_SYMBOL) && (LA614_0 <= SWITCHES_SYMBOL)) || ((LA614_0 >= TABLESPACE_SYMBOL) && (LA614_0 <= TABLE_NAME_SYMBOL)) || ((LA614_0 >= TEMPORARY_SYMBOL) && (LA614_0 <= TEMPTABLE_SYMBOL)) || ((LA614_0 >= TEXT_SYMBOL) && (LA614_0 <= THAN_SYMBOL)) || ((LA614_0 >= TIMESTAMP_ADD_SYMBOL) && (LA614_0 <= TIME_SYMBOL)) || ((LA614_0 >= TRANSACTION_SYMBOL) && (LA614_0 <= TRIGGERS_SYMBOL)) || ((LA614_0 >= TYPES_SYMBOL) && (LA614_0 <= UDF_RETURNS_SYMBOL)) || ((LA614_0 >= UNCOMMITTED_SYMBOL) && (LA614_0 <= UNDEFINED_SYMBOL)) || ((LA614_0 >= UNDOFILE_SYMBOL) && (LA614_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || LA614_0 == UNKNOWN_SYMBOL || LA614_0 == UNTIL_SYMBOL || ((LA614_0 >= USER_RESOURCES_SYMBOL) && (LA614_0 <= USE_FRM_SYMBOL)) || LA614_0 == VALUE_SYMBOL || LA614_0 == VARIABLES_SYMBOL || ((LA614_0 >= VIEW_SYMBOL) && (LA614_0 <= WEIGHT_STRING_SYMBOL)) || LA614_0 == WORK_SYMBOL || LA614_0 == X509_SYMBOL || LA614_0 == XML_SYMBOL || LA614_0 == YEAR_SYMBOL))
                    {
                        alt614=1;
                    }
                }
                switch (alt614)
                {
            	case 1:
            	    // MySQL.g:2002:61: label_identifier
            	    {
            	        FOLLOWPUSH(FOLLOW_label_identifier_in_loop_block11513);
            	        label_identifier2331=label_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleloop_blockEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, label_identifier2331.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleloop_blockEx; /* Prevent compiler warnings */
    ruleloop_blockEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end loop_block */

/**
 * $ANTLR start repeat_until_block
 * MySQL.g:2005:1: repeat_until_block : REPEAT_SYMBOL compound_statement_list UNTIL_SYMBOL expression END_SYMBOL REPEAT_SYMBOL ( label_identifier )? ;
 */
static MySQLParser_repeat_until_block_return
repeat_until_block(pMySQLParser ctx)
{
    MySQLParser_repeat_until_block_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    REPEAT_SYMBOL2332;
    pANTLR3_COMMON_TOKEN    UNTIL_SYMBOL2334;
    pANTLR3_COMMON_TOKEN    END_SYMBOL2336;
    pANTLR3_COMMON_TOKEN    REPEAT_SYMBOL2337;
    MySQLParser_compound_statement_list_return compound_statement_list2333;
    #undef	RETURN_TYPE_compound_statement_list2333
    #define	RETURN_TYPE_compound_statement_list2333 MySQLParser_compound_statement_list_return

    MySQLParser_expression_return expression2335;
    #undef	RETURN_TYPE_expression2335
    #define	RETURN_TYPE_expression2335 MySQLParser_expression_return

    MySQLParser_label_identifier_return label_identifier2338;
    #undef	RETURN_TYPE_label_identifier2338
    #define	RETURN_TYPE_label_identifier2338 MySQLParser_label_identifier_return

    pANTLR3_BASE_TREE REPEAT_SYMBOL2332_tree;
    pANTLR3_BASE_TREE UNTIL_SYMBOL2334_tree;
    pANTLR3_BASE_TREE END_SYMBOL2336_tree;
    pANTLR3_BASE_TREE REPEAT_SYMBOL2337_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    REPEAT_SYMBOL2332       = NULL;
    UNTIL_SYMBOL2334       = NULL;
    END_SYMBOL2336       = NULL;
    REPEAT_SYMBOL2337       = NULL;
    compound_statement_list2333.tree = NULL;

    expression2335.tree = NULL;

    label_identifier2338.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    REPEAT_SYMBOL2332_tree   = NULL;
    UNTIL_SYMBOL2334_tree   = NULL;
    END_SYMBOL2336_tree   = NULL;
    REPEAT_SYMBOL2337_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2005:19: ( REPEAT_SYMBOL compound_statement_list UNTIL_SYMBOL expression END_SYMBOL REPEAT_SYMBOL ( label_identifier )? )
        // MySQL.g:2006:2: REPEAT_SYMBOL compound_statement_list UNTIL_SYMBOL expression END_SYMBOL REPEAT_SYMBOL ( label_identifier )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            REPEAT_SYMBOL2332 = (pANTLR3_COMMON_TOKEN) MATCHT(REPEAT_SYMBOL, &FOLLOW_REPEAT_SYMBOL_in_repeat_until_block11523);
            if  (HASEXCEPTION())
            {
                goto rulerepeat_until_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            REPEAT_SYMBOL2332_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPEAT_SYMBOL2332));
            ADAPTOR->addChild(ADAPTOR, root_0, REPEAT_SYMBOL2332_tree);
            }

            FOLLOWPUSH(FOLLOW_compound_statement_list_in_repeat_until_block11525);
            compound_statement_list2333=compound_statement_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulerepeat_until_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, compound_statement_list2333.tree);

            UNTIL_SYMBOL2334 = (pANTLR3_COMMON_TOKEN) MATCHT(UNTIL_SYMBOL, &FOLLOW_UNTIL_SYMBOL_in_repeat_until_block11527);
            if  (HASEXCEPTION())
            {
                goto rulerepeat_until_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            UNTIL_SYMBOL2334_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNTIL_SYMBOL2334));
            ADAPTOR->addChild(ADAPTOR, root_0, UNTIL_SYMBOL2334_tree);
            }

            FOLLOWPUSH(FOLLOW_expression_in_repeat_until_block11529);
            expression2335=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulerepeat_until_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2335.tree);

            END_SYMBOL2336 = (pANTLR3_COMMON_TOKEN) MATCHT(END_SYMBOL, &FOLLOW_END_SYMBOL_in_repeat_until_block11531);
            if  (HASEXCEPTION())
            {
                goto rulerepeat_until_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            END_SYMBOL2336_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, END_SYMBOL2336));
            ADAPTOR->addChild(ADAPTOR, root_0, END_SYMBOL2336_tree);
            }

            REPEAT_SYMBOL2337 = (pANTLR3_COMMON_TOKEN) MATCHT(REPEAT_SYMBOL, &FOLLOW_REPEAT_SYMBOL_in_repeat_until_block11533);
            if  (HASEXCEPTION())
            {
                goto rulerepeat_until_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            REPEAT_SYMBOL2337_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPEAT_SYMBOL2337));
            ADAPTOR->addChild(ADAPTOR, root_0, REPEAT_SYMBOL2337_tree);
            }

            // MySQL.g:2006:89: ( label_identifier )?
            {
                int alt615=2;
                {
                    int LA615_0 = LA(1);
                    if ( (LA615_0 == BACK_TICK_QUOTED_ID || LA615_0 == IDENTIFIER))
                    {
                        alt615=1;
                    }
                    else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA615_0 == DOUBLE_QUOTED_TEXT))
                    {
                        alt615=1;
                    }
                    else if ( (((LA615_0 >= ACTION_SYMBOL) && (LA615_0 <= ADDDATE_SYMBOL)) || ((LA615_0 >= AFTER_SYMBOL) && (LA615_0 <= ALGORITHM_SYMBOL)) || LA615_0 == ANALYZE_SYMBOL || LA615_0 == ANY_SYMBOL || ((LA615_0 >= AT_SYMBOL) && (LA615_0 <= AVG_SYMBOL)) || LA615_0 == BINLOG_SYMBOL || LA615_0 == BIT_SYMBOL || ((LA615_0 >= BLOCK_SYMBOL) && (LA615_0 <= BOOL_SYMBOL)) || LA615_0 == BTREE_SYMBOL || LA615_0 == CASCADED_SYMBOL || ((LA615_0 >= CATALOG_NAME_SYMBOL) && (LA615_0 <= CHANGED_SYMBOL)) || ((LA615_0 >= CIPHER_SYMBOL) && (LA615_0 <= CLIENT_SYMBOL)) || ((LA615_0 >= COALESCE_SYMBOL) && (LA615_0 <= CODE_SYMBOL)) || LA615_0 == COLLATION_SYMBOL || ((LA615_0 >= COLUMNS_SYMBOL) && (LA615_0 <= COLUMN_NAME_SYMBOL)) || LA615_0 == COMMITTED_SYMBOL || ((LA615_0 >= COMPACT_SYMBOL) && (LA615_0 <= COMPRESSED_SYMBOL)) || LA615_0 == CONCURRENT_SYMBOL || ((LA615_0 >= CONNECTION_SYMBOL) && (LA615_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || LA615_0 == CONTEXT_SYMBOL || LA615_0 == CONTRIBUTORS_SYMBOL || LA615_0 == CPU_SYMBOL || LA615_0 == CUBE_SYMBOL || LA615_0 == CURRENT_SYMBOL || LA615_0 == CURSOR_NAME_SYMBOL || ((LA615_0 >= DATAFILE_SYMBOL) && (LA615_0 <= DATETIME_SYMBOL)) || LA615_0 == DATE_SYMBOL || LA615_0 == DAY_SYMBOL || LA615_0 == DEFAULT_AUTH_SYMBOL || LA615_0 == DEFINER_SYMBOL || LA615_0 == DELAY_KEY_WRITE_SYMBOL || LA615_0 == DES_KEY_FILE_SYMBOL || LA615_0 == DIAGNOSTICS_SYMBOL || ((LA615_0 >= DIRECTORY_SYMBOL) && (LA615_0 <= DISK_SYMBOL)) || ((LA615_0 >= DUMPFILE_SYMBOL) && (LA615_0 <= DYNAMIC_SYMBOL)) || LA615_0 == ENABLE_SYMBOL || LA615_0 == ENDS_SYMBOL || ((LA615_0 >= ENGINES_SYMBOL) && (LA615_0 <= ENUM_SYMBOL)) || ((LA615_0 >= ERRORS_SYMBOL) && (LA615_0 <= ERROR_SYMBOL)) || ((LA615_0 >= ESCAPE_SYMBOL) && (LA615_0 <= EVERY_SYMBOL)) || LA615_0 == EXPANSION_SYMBOL || LA615_0 == EXPORT_SYMBOL || ((LA615_0 >= EXTENDED_SYMBOL) && (LA615_0 <= EXTENT_SIZE_SYMBOL)) || ((LA615_0 >= FAST_SYMBOL) && (LA615_0 <= FAULTS_SYMBOL)) || ((LA615_0 >= FILE_SYMBOL) && (LA615_0 <= FIXED_SYMBOL)) || LA615_0 == FOUND_SYMBOL || LA615_0 == FULL_SYMBOL || ((LA615_0 >= FUNCTION_SYMBOL) && (LA615_0 <= GET_FORMAT_SYMBOL)) || ((LA615_0 >= GLOBAL_SYMBOL) && (LA615_0 <= GRANTS_SYMBOL)) || LA615_0 == HASH_SYMBOL || LA615_0 == HOSTS_SYMBOL || ((LA615_0 >= HOUR_SYMBOL) && (LA615_0 <= IDENTIFIED_SYMBOL)) || LA615_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA615_0 >= IMPORT_SYMBOL) && (LA615_0 <= INDEXES_SYMBOL)) || LA615_0 == INITIAL_SIZE_SYMBOL || LA615_0 == INNODB_SYMBOL || LA615_0 == INSERT_METHOD_SYMBOL || LA615_0 == INVOKER_SYMBOL || LA615_0 == IO_SYMBOL || ((LA615_0 >= IPC_SYMBOL) && (LA615_0 <= ISSUER_SYMBOL)) || LA615_0 == KEY_BLOCK_SIZE_SYMBOL || LA615_0 == LAST_SYMBOL || LA615_0 == LEAVES_SYMBOL || LA615_0 == LESS_SYMBOL || LA615_0 == LEVEL_SYMBOL || LA615_0 == LINESTRING_SYMBOL || LA615_0 == LIST_SYMBOL || LA615_0 == LOCAL_SYMBOL || LA615_0 == LOCKS_SYMBOL || LA615_0 == LOGFILE_SYMBOL || LA615_0 == LOGS_SYMBOL || LA615_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA615_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA615_0 <= MASTER_SSL_SYMBOL)) || ((LA615_0 >= MASTER_SYMBOL) && (LA615_0 <= MASTER_USER_SYMBOL)) || ((LA615_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA615_0 <= MAX_SIZE_SYMBOL)) || ((LA615_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA615_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA615_0 >= MEDIUM_SYMBOL) && (LA615_0 <= MICROSECOND_SYMBOL)) || LA615_0 == MIGRATE_SYMBOL || ((LA615_0 >= MINUTE_SYMBOL) && (LA615_0 <= MIN_ROWS_SYMBOL)) || LA615_0 == MODE_SYMBOL || LA615_0 == MODIFY_SYMBOL || ((LA615_0 >= MONTH_SYMBOL) && (LA615_0 <= MULTILINESTRING_SYMBOL)) || ((LA615_0 >= MULTIPOINT_SYMBOL) && (LA615_0 <= MULTIPOLYGON_SYMBOL)) || ((LA615_0 >= MUTEX_SYMBOL) && (LA615_0 <= NATIONAL_SYMBOL)) || LA615_0 == NCHAR_SYMBOL || LA615_0 == NDBCLUSTER_SYMBOL || ((LA615_0 >= NEW_SYMBOL) && (LA615_0 <= NONE_SYMBOL)) || LA615_0 == NO_WAIT_SYMBOL || LA615_0 == NUMBER_SYMBOL || LA615_0 == NVARCHAR_SYMBOL || ((LA615_0 >= OFFSET_SYMBOL) && (LA615_0 <= ONE_SYMBOL)) || ((LA615_0 >= PACK_KEYS_SYMBOL) && (LA615_0 <= PAGE_SYMBOL)) || ((LA615_0 >= PARTIAL_SYMBOL) && (LA615_0 <= PARTITIONS_SYMBOL)) || ((LA615_0 >= PASSWORD_SYMBOL) && (LA615_0 <= PLUGIN_SYMBOL)) || ((LA615_0 >= POINT_SYMBOL) && (LA615_0 <= POLYGON_SYMBOL)) || ((LA615_0 >= PRESERVE_SYMBOL) && (LA615_0 <= PREV_SYMBOL)) || LA615_0 == PRIVILEGES_SYMBOL || ((LA615_0 >= PROCESSLIST_SYMBOL) && (LA615_0 <= PROXY_SYMBOL)) || ((LA615_0 >= QUARTER_SYMBOL) && (LA615_0 <= QUICK_SYMBOL)) || LA615_0 == READ_ONLY_SYMBOL || ((LA615_0 >= REBUILD_SYMBOL) && (LA615_0 <= REDUNDANT_SYMBOL)) || ((LA615_0 >= RELAYLOG_SYMBOL) && (LA615_0 <= RELAY_THREAD_SYMBOL)) || LA615_0 == RELOAD_SYMBOL || LA615_0 == REORGANIZE_SYMBOL || LA615_0 == REPEATABLE_SYMBOL || LA615_0 == REPLICATION_SYMBOL || ((LA615_0 >= RESUME_SYMBOL) && (LA615_0 <= RETURNS_SYMBOL)) || LA615_0 == REVERSE_SYMBOL || ((LA615_0 >= ROLLUP_SYMBOL) && (LA615_0 <= RTREE_SYMBOL)) || LA615_0 == SCHEDULE_SYMBOL || LA615_0 == SCHEMA_NAME_SYMBOL || LA615_0 == SECOND_SYMBOL || ((LA615_0 >= SERIALIZABLE_SYMBOL) && (LA615_0 <= SERIAL_SYMBOL)) || LA615_0 == SESSION_SYMBOL || LA615_0 == SHARE_SYMBOL || LA615_0 == SHUTDOWN_SYMBOL || LA615_0 == SIMPLE_SYMBOL || LA615_0 == SLOW_SYMBOL || LA615_0 == SNAPSHOT_SYMBOL || ((LA615_0 >= SOUNDS_SYMBOL) && (LA615_0 <= SOURCE_SYMBOL)) || ((LA615_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA615_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA615_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA615_0 <= SQL_CACHE_SYMBOL)) || LA615_0 == SQL_NO_CACHE_SYMBOL || LA615_0 == SQL_THREAD_SYMBOL || LA615_0 == STARTS_SYMBOL || ((LA615_0 >= STATS_AUTO_RECALC_SYMBOL) && (LA615_0 <= STATUS_SYMBOL)) || LA615_0 == STORAGE_SYMBOL || ((LA615_0 >= STRING_SYMBOL) && (LA615_0 <= SUBPARTITION_SYMBOL)) || ((LA615_0 >= SUPER_SYMBOL) && (LA615_0 <= SWITCHES_SYMBOL)) || ((LA615_0 >= TABLESPACE_SYMBOL) && (LA615_0 <= TABLE_NAME_SYMBOL)) || ((LA615_0 >= TEMPORARY_SYMBOL) && (LA615_0 <= TEMPTABLE_SYMBOL)) || ((LA615_0 >= TEXT_SYMBOL) && (LA615_0 <= THAN_SYMBOL)) || ((LA615_0 >= TIMESTAMP_ADD_SYMBOL) && (LA615_0 <= TIME_SYMBOL)) || ((LA615_0 >= TRANSACTION_SYMBOL) && (LA615_0 <= TRIGGERS_SYMBOL)) || ((LA615_0 >= TYPES_SYMBOL) && (LA615_0 <= UDF_RETURNS_SYMBOL)) || ((LA615_0 >= UNCOMMITTED_SYMBOL) && (LA615_0 <= UNDEFINED_SYMBOL)) || ((LA615_0 >= UNDOFILE_SYMBOL) && (LA615_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || LA615_0 == UNKNOWN_SYMBOL || LA615_0 == UNTIL_SYMBOL || ((LA615_0 >= USER_RESOURCES_SYMBOL) && (LA615_0 <= USE_FRM_SYMBOL)) || LA615_0 == VALUE_SYMBOL || LA615_0 == VARIABLES_SYMBOL || ((LA615_0 >= VIEW_SYMBOL) && (LA615_0 <= WEIGHT_STRING_SYMBOL)) || LA615_0 == WORK_SYMBOL || LA615_0 == X509_SYMBOL || LA615_0 == XML_SYMBOL || LA615_0 == YEAR_SYMBOL))
                    {
                        alt615=1;
                    }
                }
                switch (alt615)
                {
            	case 1:
            	    // MySQL.g:2006:89: label_identifier
            	    {
            	        FOLLOWPUSH(FOLLOW_label_identifier_in_repeat_until_block11535);
            	        label_identifier2338=label_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerepeat_until_blockEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, label_identifier2338.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulerepeat_until_blockEx; /* Prevent compiler warnings */
    rulerepeat_until_blockEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end repeat_until_block */

/**
 * $ANTLR start while_do_block
 * MySQL.g:2009:1: while_do_block : WHILE_SYMBOL expression DO_SYMBOL compound_statement_list END_SYMBOL WHILE_SYMBOL ( label_identifier )? ;
 */
static MySQLParser_while_do_block_return
while_do_block(pMySQLParser ctx)
{
    MySQLParser_while_do_block_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    WHILE_SYMBOL2339;
    pANTLR3_COMMON_TOKEN    DO_SYMBOL2341;
    pANTLR3_COMMON_TOKEN    END_SYMBOL2343;
    pANTLR3_COMMON_TOKEN    WHILE_SYMBOL2344;
    MySQLParser_expression_return expression2340;
    #undef	RETURN_TYPE_expression2340
    #define	RETURN_TYPE_expression2340 MySQLParser_expression_return

    MySQLParser_compound_statement_list_return compound_statement_list2342;
    #undef	RETURN_TYPE_compound_statement_list2342
    #define	RETURN_TYPE_compound_statement_list2342 MySQLParser_compound_statement_list_return

    MySQLParser_label_identifier_return label_identifier2345;
    #undef	RETURN_TYPE_label_identifier2345
    #define	RETURN_TYPE_label_identifier2345 MySQLParser_label_identifier_return

    pANTLR3_BASE_TREE WHILE_SYMBOL2339_tree;
    pANTLR3_BASE_TREE DO_SYMBOL2341_tree;
    pANTLR3_BASE_TREE END_SYMBOL2343_tree;
    pANTLR3_BASE_TREE WHILE_SYMBOL2344_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    WHILE_SYMBOL2339       = NULL;
    DO_SYMBOL2341       = NULL;
    END_SYMBOL2343       = NULL;
    WHILE_SYMBOL2344       = NULL;
    expression2340.tree = NULL;

    compound_statement_list2342.tree = NULL;

    label_identifier2345.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    WHILE_SYMBOL2339_tree   = NULL;
    DO_SYMBOL2341_tree   = NULL;
    END_SYMBOL2343_tree   = NULL;
    WHILE_SYMBOL2344_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2009:15: ( WHILE_SYMBOL expression DO_SYMBOL compound_statement_list END_SYMBOL WHILE_SYMBOL ( label_identifier )? )
        // MySQL.g:2010:2: WHILE_SYMBOL expression DO_SYMBOL compound_statement_list END_SYMBOL WHILE_SYMBOL ( label_identifier )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            WHILE_SYMBOL2339 = (pANTLR3_COMMON_TOKEN) MATCHT(WHILE_SYMBOL, &FOLLOW_WHILE_SYMBOL_in_while_do_block11545);
            if  (HASEXCEPTION())
            {
                goto rulewhile_do_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            WHILE_SYMBOL2339_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WHILE_SYMBOL2339));
            ADAPTOR->addChild(ADAPTOR, root_0, WHILE_SYMBOL2339_tree);
            }

            FOLLOWPUSH(FOLLOW_expression_in_while_do_block11547);
            expression2340=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulewhile_do_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2340.tree);

            DO_SYMBOL2341 = (pANTLR3_COMMON_TOKEN) MATCHT(DO_SYMBOL, &FOLLOW_DO_SYMBOL_in_while_do_block11549);
            if  (HASEXCEPTION())
            {
                goto rulewhile_do_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DO_SYMBOL2341_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DO_SYMBOL2341));
            ADAPTOR->addChild(ADAPTOR, root_0, DO_SYMBOL2341_tree);
            }

            FOLLOWPUSH(FOLLOW_compound_statement_list_in_while_do_block11551);
            compound_statement_list2342=compound_statement_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulewhile_do_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, compound_statement_list2342.tree);

            END_SYMBOL2343 = (pANTLR3_COMMON_TOKEN) MATCHT(END_SYMBOL, &FOLLOW_END_SYMBOL_in_while_do_block11553);
            if  (HASEXCEPTION())
            {
                goto rulewhile_do_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            END_SYMBOL2343_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, END_SYMBOL2343));
            ADAPTOR->addChild(ADAPTOR, root_0, END_SYMBOL2343_tree);
            }

            WHILE_SYMBOL2344 = (pANTLR3_COMMON_TOKEN) MATCHT(WHILE_SYMBOL, &FOLLOW_WHILE_SYMBOL_in_while_do_block11555);
            if  (HASEXCEPTION())
            {
                goto rulewhile_do_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            WHILE_SYMBOL2344_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WHILE_SYMBOL2344));
            ADAPTOR->addChild(ADAPTOR, root_0, WHILE_SYMBOL2344_tree);
            }

            // MySQL.g:2010:84: ( label_identifier )?
            {
                int alt616=2;
                {
                    int LA616_0 = LA(1);
                    if ( (LA616_0 == BACK_TICK_QUOTED_ID || LA616_0 == IDENTIFIER))
                    {
                        alt616=1;
                    }
                    else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA616_0 == DOUBLE_QUOTED_TEXT))
                    {
                        alt616=1;
                    }
                    else if ( (((LA616_0 >= ACTION_SYMBOL) && (LA616_0 <= ADDDATE_SYMBOL)) || ((LA616_0 >= AFTER_SYMBOL) && (LA616_0 <= ALGORITHM_SYMBOL)) || LA616_0 == ANALYZE_SYMBOL || LA616_0 == ANY_SYMBOL || ((LA616_0 >= AT_SYMBOL) && (LA616_0 <= AVG_SYMBOL)) || LA616_0 == BINLOG_SYMBOL || LA616_0 == BIT_SYMBOL || ((LA616_0 >= BLOCK_SYMBOL) && (LA616_0 <= BOOL_SYMBOL)) || LA616_0 == BTREE_SYMBOL || LA616_0 == CASCADED_SYMBOL || ((LA616_0 >= CATALOG_NAME_SYMBOL) && (LA616_0 <= CHANGED_SYMBOL)) || ((LA616_0 >= CIPHER_SYMBOL) && (LA616_0 <= CLIENT_SYMBOL)) || ((LA616_0 >= COALESCE_SYMBOL) && (LA616_0 <= CODE_SYMBOL)) || LA616_0 == COLLATION_SYMBOL || ((LA616_0 >= COLUMNS_SYMBOL) && (LA616_0 <= COLUMN_NAME_SYMBOL)) || LA616_0 == COMMITTED_SYMBOL || ((LA616_0 >= COMPACT_SYMBOL) && (LA616_0 <= COMPRESSED_SYMBOL)) || LA616_0 == CONCURRENT_SYMBOL || ((LA616_0 >= CONNECTION_SYMBOL) && (LA616_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || LA616_0 == CONTEXT_SYMBOL || LA616_0 == CONTRIBUTORS_SYMBOL || LA616_0 == CPU_SYMBOL || LA616_0 == CUBE_SYMBOL || LA616_0 == CURRENT_SYMBOL || LA616_0 == CURSOR_NAME_SYMBOL || ((LA616_0 >= DATAFILE_SYMBOL) && (LA616_0 <= DATETIME_SYMBOL)) || LA616_0 == DATE_SYMBOL || LA616_0 == DAY_SYMBOL || LA616_0 == DEFAULT_AUTH_SYMBOL || LA616_0 == DEFINER_SYMBOL || LA616_0 == DELAY_KEY_WRITE_SYMBOL || LA616_0 == DES_KEY_FILE_SYMBOL || LA616_0 == DIAGNOSTICS_SYMBOL || ((LA616_0 >= DIRECTORY_SYMBOL) && (LA616_0 <= DISK_SYMBOL)) || ((LA616_0 >= DUMPFILE_SYMBOL) && (LA616_0 <= DYNAMIC_SYMBOL)) || LA616_0 == ENABLE_SYMBOL || LA616_0 == ENDS_SYMBOL || ((LA616_0 >= ENGINES_SYMBOL) && (LA616_0 <= ENUM_SYMBOL)) || ((LA616_0 >= ERRORS_SYMBOL) && (LA616_0 <= ERROR_SYMBOL)) || ((LA616_0 >= ESCAPE_SYMBOL) && (LA616_0 <= EVERY_SYMBOL)) || LA616_0 == EXPANSION_SYMBOL || LA616_0 == EXPORT_SYMBOL || ((LA616_0 >= EXTENDED_SYMBOL) && (LA616_0 <= EXTENT_SIZE_SYMBOL)) || ((LA616_0 >= FAST_SYMBOL) && (LA616_0 <= FAULTS_SYMBOL)) || ((LA616_0 >= FILE_SYMBOL) && (LA616_0 <= FIXED_SYMBOL)) || LA616_0 == FOUND_SYMBOL || LA616_0 == FULL_SYMBOL || ((LA616_0 >= FUNCTION_SYMBOL) && (LA616_0 <= GET_FORMAT_SYMBOL)) || ((LA616_0 >= GLOBAL_SYMBOL) && (LA616_0 <= GRANTS_SYMBOL)) || LA616_0 == HASH_SYMBOL || LA616_0 == HOSTS_SYMBOL || ((LA616_0 >= HOUR_SYMBOL) && (LA616_0 <= IDENTIFIED_SYMBOL)) || LA616_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA616_0 >= IMPORT_SYMBOL) && (LA616_0 <= INDEXES_SYMBOL)) || LA616_0 == INITIAL_SIZE_SYMBOL || LA616_0 == INNODB_SYMBOL || LA616_0 == INSERT_METHOD_SYMBOL || LA616_0 == INVOKER_SYMBOL || LA616_0 == IO_SYMBOL || ((LA616_0 >= IPC_SYMBOL) && (LA616_0 <= ISSUER_SYMBOL)) || LA616_0 == KEY_BLOCK_SIZE_SYMBOL || LA616_0 == LAST_SYMBOL || LA616_0 == LEAVES_SYMBOL || LA616_0 == LESS_SYMBOL || LA616_0 == LEVEL_SYMBOL || LA616_0 == LINESTRING_SYMBOL || LA616_0 == LIST_SYMBOL || LA616_0 == LOCAL_SYMBOL || LA616_0 == LOCKS_SYMBOL || LA616_0 == LOGFILE_SYMBOL || LA616_0 == LOGS_SYMBOL || LA616_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA616_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA616_0 <= MASTER_SSL_SYMBOL)) || ((LA616_0 >= MASTER_SYMBOL) && (LA616_0 <= MASTER_USER_SYMBOL)) || ((LA616_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA616_0 <= MAX_SIZE_SYMBOL)) || ((LA616_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA616_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA616_0 >= MEDIUM_SYMBOL) && (LA616_0 <= MICROSECOND_SYMBOL)) || LA616_0 == MIGRATE_SYMBOL || ((LA616_0 >= MINUTE_SYMBOL) && (LA616_0 <= MIN_ROWS_SYMBOL)) || LA616_0 == MODE_SYMBOL || LA616_0 == MODIFY_SYMBOL || ((LA616_0 >= MONTH_SYMBOL) && (LA616_0 <= MULTILINESTRING_SYMBOL)) || ((LA616_0 >= MULTIPOINT_SYMBOL) && (LA616_0 <= MULTIPOLYGON_SYMBOL)) || ((LA616_0 >= MUTEX_SYMBOL) && (LA616_0 <= NATIONAL_SYMBOL)) || LA616_0 == NCHAR_SYMBOL || LA616_0 == NDBCLUSTER_SYMBOL || ((LA616_0 >= NEW_SYMBOL) && (LA616_0 <= NONE_SYMBOL)) || LA616_0 == NO_WAIT_SYMBOL || LA616_0 == NUMBER_SYMBOL || LA616_0 == NVARCHAR_SYMBOL || ((LA616_0 >= OFFSET_SYMBOL) && (LA616_0 <= ONE_SYMBOL)) || ((LA616_0 >= PACK_KEYS_SYMBOL) && (LA616_0 <= PAGE_SYMBOL)) || ((LA616_0 >= PARTIAL_SYMBOL) && (LA616_0 <= PARTITIONS_SYMBOL)) || ((LA616_0 >= PASSWORD_SYMBOL) && (LA616_0 <= PLUGIN_SYMBOL)) || ((LA616_0 >= POINT_SYMBOL) && (LA616_0 <= POLYGON_SYMBOL)) || ((LA616_0 >= PRESERVE_SYMBOL) && (LA616_0 <= PREV_SYMBOL)) || LA616_0 == PRIVILEGES_SYMBOL || ((LA616_0 >= PROCESSLIST_SYMBOL) && (LA616_0 <= PROXY_SYMBOL)) || ((LA616_0 >= QUARTER_SYMBOL) && (LA616_0 <= QUICK_SYMBOL)) || LA616_0 == READ_ONLY_SYMBOL || ((LA616_0 >= REBUILD_SYMBOL) && (LA616_0 <= REDUNDANT_SYMBOL)) || ((LA616_0 >= RELAYLOG_SYMBOL) && (LA616_0 <= RELAY_THREAD_SYMBOL)) || LA616_0 == RELOAD_SYMBOL || LA616_0 == REORGANIZE_SYMBOL || LA616_0 == REPEATABLE_SYMBOL || LA616_0 == REPLICATION_SYMBOL || ((LA616_0 >= RESUME_SYMBOL) && (LA616_0 <= RETURNS_SYMBOL)) || LA616_0 == REVERSE_SYMBOL || ((LA616_0 >= ROLLUP_SYMBOL) && (LA616_0 <= RTREE_SYMBOL)) || LA616_0 == SCHEDULE_SYMBOL || LA616_0 == SCHEMA_NAME_SYMBOL || LA616_0 == SECOND_SYMBOL || ((LA616_0 >= SERIALIZABLE_SYMBOL) && (LA616_0 <= SERIAL_SYMBOL)) || LA616_0 == SESSION_SYMBOL || LA616_0 == SHARE_SYMBOL || LA616_0 == SHUTDOWN_SYMBOL || LA616_0 == SIMPLE_SYMBOL || LA616_0 == SLOW_SYMBOL || LA616_0 == SNAPSHOT_SYMBOL || ((LA616_0 >= SOUNDS_SYMBOL) && (LA616_0 <= SOURCE_SYMBOL)) || ((LA616_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA616_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA616_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA616_0 <= SQL_CACHE_SYMBOL)) || LA616_0 == SQL_NO_CACHE_SYMBOL || LA616_0 == SQL_THREAD_SYMBOL || LA616_0 == STARTS_SYMBOL || ((LA616_0 >= STATS_AUTO_RECALC_SYMBOL) && (LA616_0 <= STATUS_SYMBOL)) || LA616_0 == STORAGE_SYMBOL || ((LA616_0 >= STRING_SYMBOL) && (LA616_0 <= SUBPARTITION_SYMBOL)) || ((LA616_0 >= SUPER_SYMBOL) && (LA616_0 <= SWITCHES_SYMBOL)) || ((LA616_0 >= TABLESPACE_SYMBOL) && (LA616_0 <= TABLE_NAME_SYMBOL)) || ((LA616_0 >= TEMPORARY_SYMBOL) && (LA616_0 <= TEMPTABLE_SYMBOL)) || ((LA616_0 >= TEXT_SYMBOL) && (LA616_0 <= THAN_SYMBOL)) || ((LA616_0 >= TIMESTAMP_ADD_SYMBOL) && (LA616_0 <= TIME_SYMBOL)) || ((LA616_0 >= TRANSACTION_SYMBOL) && (LA616_0 <= TRIGGERS_SYMBOL)) || ((LA616_0 >= TYPES_SYMBOL) && (LA616_0 <= UDF_RETURNS_SYMBOL)) || ((LA616_0 >= UNCOMMITTED_SYMBOL) && (LA616_0 <= UNDEFINED_SYMBOL)) || ((LA616_0 >= UNDOFILE_SYMBOL) && (LA616_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || LA616_0 == UNKNOWN_SYMBOL || LA616_0 == UNTIL_SYMBOL || ((LA616_0 >= USER_RESOURCES_SYMBOL) && (LA616_0 <= USE_FRM_SYMBOL)) || LA616_0 == VALUE_SYMBOL || LA616_0 == VARIABLES_SYMBOL || ((LA616_0 >= VIEW_SYMBOL) && (LA616_0 <= WEIGHT_STRING_SYMBOL)) || LA616_0 == WORK_SYMBOL || LA616_0 == X509_SYMBOL || LA616_0 == XML_SYMBOL || LA616_0 == YEAR_SYMBOL))
                    {
                        alt616=1;
                    }
                }
                switch (alt616)
                {
            	case 1:
            	    // MySQL.g:2010:84: label_identifier
            	    {
            	        FOLLOWPUSH(FOLLOW_label_identifier_in_while_do_block11557);
            	        label_identifier2345=label_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulewhile_do_blockEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, label_identifier2345.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulewhile_do_blockEx; /* Prevent compiler warnings */
    rulewhile_do_blockEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end while_do_block */

/**
 * $ANTLR start declarations
 * MySQL.g:2013:1: declarations : ( options {greedy=true; } : DECLARE_SYMBOL identifier ( variable_declaration | condition_declaration ) )* ( cursor_declaration )* ( handler_declaration )* ;
 */
static MySQLParser_declarations_return
declarations(pMySQLParser ctx)
{
    MySQLParser_declarations_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    DECLARE_SYMBOL2346;
    MySQLParser_identifier_return identifier2347;
    #undef	RETURN_TYPE_identifier2347
    #define	RETURN_TYPE_identifier2347 MySQLParser_identifier_return

    MySQLParser_variable_declaration_return variable_declaration2348;
    #undef	RETURN_TYPE_variable_declaration2348
    #define	RETURN_TYPE_variable_declaration2348 MySQLParser_variable_declaration_return

    MySQLParser_condition_declaration_return condition_declaration2349;
    #undef	RETURN_TYPE_condition_declaration2349
    #define	RETURN_TYPE_condition_declaration2349 MySQLParser_condition_declaration_return

    MySQLParser_cursor_declaration_return cursor_declaration2350;
    #undef	RETURN_TYPE_cursor_declaration2350
    #define	RETURN_TYPE_cursor_declaration2350 MySQLParser_cursor_declaration_return

    MySQLParser_handler_declaration_return handler_declaration2351;
    #undef	RETURN_TYPE_handler_declaration2351
    #define	RETURN_TYPE_handler_declaration2351 MySQLParser_handler_declaration_return

    pANTLR3_BASE_TREE DECLARE_SYMBOL2346_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DECLARE_SYMBOL2346       = NULL;
    identifier2347.tree = NULL;

    variable_declaration2348.tree = NULL;

    condition_declaration2349.tree = NULL;

    cursor_declaration2350.tree = NULL;

    handler_declaration2351.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DECLARE_SYMBOL2346_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2013:13: ( ( options {greedy=true; } : DECLARE_SYMBOL identifier ( variable_declaration | condition_declaration ) )* ( cursor_declaration )* ( handler_declaration )* )
        // MySQL.g:2014:2: ( options {greedy=true; } : DECLARE_SYMBOL identifier ( variable_declaration | condition_declaration ) )* ( cursor_declaration )* ( handler_declaration )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:2014:2: ( options {greedy=true; } : DECLARE_SYMBOL identifier ( variable_declaration | condition_declaration ) )*

            for (;;)
            {
                int alt618=2;
                switch ( LA(1) )
                {
                case DECLARE_SYMBOL:
                	{
                		switch ( LA(2) )
                		{
                		case IDENTIFIER:
                			{
                				alt618=1;
                			}
                		    break;
                		case BACK_TICK_QUOTED_ID:
                			{
                				alt618=1;
                			}
                		    break;
                		case DOUBLE_QUOTED_TEXT:
                			{
                				alt618=1;
                			}
                		    break;
                		case ACTION_SYMBOL:
                		case ADDDATE_SYMBOL:
                		case AFTER_SYMBOL:
                		case AGAINST_SYMBOL:
                		case AGGREGATE_SYMBOL:
                		case ALGORITHM_SYMBOL:
                		case ANALYZE_SYMBOL:
                		case ANY_SYMBOL:
                		case AT_SYMBOL:
                		case AUTHORS_SYMBOL:
                		case AUTOEXTEND_SIZE_SYMBOL:
                		case AUTO_INCREMENT_SYMBOL:
                		case AVG_ROW_LENGTH_SYMBOL:
                		case AVG_SYMBOL:
                		case BINLOG_SYMBOL:
                		case BIT_SYMBOL:
                		case BLOCK_SYMBOL:
                		case BOOLEAN_SYMBOL:
                		case BOOL_SYMBOL:
                		case BTREE_SYMBOL:
                		case CASCADED_SYMBOL:
                		case CATALOG_NAME_SYMBOL:
                		case CHAIN_SYMBOL:
                		case CHANGED_SYMBOL:
                		case CIPHER_SYMBOL:
                		case CLASS_ORIGIN_SYMBOL:
                		case CLIENT_SYMBOL:
                		case COALESCE_SYMBOL:
                		case CODE_SYMBOL:
                		case COLLATION_SYMBOL:
                		case COLUMNS_SYMBOL:
                		case COLUMN_FORMAT_SYMBOL:
                		case COLUMN_NAME_SYMBOL:
                		case COMMITTED_SYMBOL:
                		case COMPACT_SYMBOL:
                		case COMPLETION_SYMBOL:
                		case COMPRESSED_SYMBOL:
                		case CONCURRENT_SYMBOL:
                		case CONNECTION_SYMBOL:
                		case CONSISTENT_SYMBOL:
                		case CONSTRAINT_CATALOG_SYMBOL:
                		case CONSTRAINT_NAME_SYMBOL:
                		case CONSTRAINT_SCHEMA_SYMBOL:
                		case CONTEXT_SYMBOL:
                		case CONTRIBUTORS_SYMBOL:
                		case CPU_SYMBOL:
                		case CUBE_SYMBOL:
                		case CURRENT_SYMBOL:
                		case CURSOR_NAME_SYMBOL:
                		case DATAFILE_SYMBOL:
                		case DATA_SYMBOL:
                		case DATETIME_SYMBOL:
                		case DATE_SYMBOL:
                		case DAY_SYMBOL:
                		case DEFAULT_AUTH_SYMBOL:
                		case DEFINER_SYMBOL:
                		case DELAY_KEY_WRITE_SYMBOL:
                		case DES_KEY_FILE_SYMBOL:
                		case DIAGNOSTICS_SYMBOL:
                		case DIRECTORY_SYMBOL:
                		case DISABLE_SYMBOL:
                		case DISCARD_SYMBOL:
                		case DISK_SYMBOL:
                		case DUMPFILE_SYMBOL:
                		case DUPLICATE_SYMBOL:
                		case DYNAMIC_SYMBOL:
                		case ENABLE_SYMBOL:
                		case ENDS_SYMBOL:
                		case ENGINES_SYMBOL:
                		case ENGINE_SYMBOL:
                		case ENUM_SYMBOL:
                		case ERRORS_SYMBOL:
                		case ERROR_SYMBOL:
                		case ESCAPE_SYMBOL:
                		case EVENTS_SYMBOL:
                		case EVENT_SYMBOL:
                		case EVERY_SYMBOL:
                		case EXPANSION_SYMBOL:
                		case EXPORT_SYMBOL:
                		case EXTENDED_SYMBOL:
                		case EXTENT_SIZE_SYMBOL:
                		case FAST_SYMBOL:
                		case FAULTS_SYMBOL:
                		case FILE_SYMBOL:
                		case FIRST_SYMBOL:
                		case FIXED_SYMBOL:
                		case FOUND_SYMBOL:
                		case FULL_SYMBOL:
                		case FUNCTION_SYMBOL:
                		case GENERAL_SYMBOL:
                		case GEOMETRYCOLLECTION_SYMBOL:
                		case GEOMETRY_SYMBOL:
                		case GET_FORMAT_SYMBOL:
                		case GLOBAL_SYMBOL:
                		case GRANTS_SYMBOL:
                		case HASH_SYMBOL:
                		case HOSTS_SYMBOL:
                		case HOUR_SYMBOL:
                		case IDENTIFIED_SYMBOL:
                		case IGNORE_SERVER_IDS_SYMBOL:
                		case IMPORT_SYMBOL:
                		case INDEXES_SYMBOL:
                		case INITIAL_SIZE_SYMBOL:
                		case INNODB_SYMBOL:
                		case INSERT_METHOD_SYMBOL:
                		case INVOKER_SYMBOL:
                		case IO_SYMBOL:
                		case IPC_SYMBOL:
                		case ISOLATION_SYMBOL:
                		case ISSUER_SYMBOL:
                		case KEY_BLOCK_SIZE_SYMBOL:
                		case LAST_SYMBOL:
                		case LEAVES_SYMBOL:
                		case LESS_SYMBOL:
                		case LEVEL_SYMBOL:
                		case LINESTRING_SYMBOL:
                		case LIST_SYMBOL:
                		case LOCAL_SYMBOL:
                		case LOCKS_SYMBOL:
                		case LOGFILE_SYMBOL:
                		case LOGS_SYMBOL:
                		case MASTER_AUTO_POSITION_SYMBOL:
                		case MASTER_CONNECT_RETRY_SYMBOL:
                		case MASTER_DELAY_SYMBOL:
                		case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                		case MASTER_HOST_SYMBOL:
                		case MASTER_LOG_FILE_SYMBOL:
                		case MASTER_LOG_POS_SYMBOL:
                		case MASTER_PASSWORD_SYMBOL:
                		case MASTER_PORT_SYMBOL:
                		case MASTER_RETRY_COUNT_SYMBOL:
                		case MASTER_SERVER_ID_SYMBOL:
                		case MASTER_SSL_CAPATH_SYMBOL:
                		case MASTER_SSL_CA_SYMBOL:
                		case MASTER_SSL_CERT_SYMBOL:
                		case MASTER_SSL_CIPHER_SYMBOL:
                		case MASTER_SSL_CRLPATH_SYMBOL:
                		case MASTER_SSL_CRL_SYMBOL:
                		case MASTER_SSL_KEY_SYMBOL:
                		case MASTER_SSL_SYMBOL:
                		case MASTER_SYMBOL:
                		case MASTER_USER_SYMBOL:
                		case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                		case MAX_QUERIES_PER_HOUR_SYMBOL:
                		case MAX_ROWS_SYMBOL:
                		case MAX_SIZE_SYMBOL:
                		case MAX_UPDATES_PER_HOUR_SYMBOL:
                		case MAX_USER_CONNECTIONS_SYMBOL:
                		case MEDIUM_SYMBOL:
                		case MEMORY_SYMBOL:
                		case MERGE_SYMBOL:
                		case MESSAGE_TEXT_SYMBOL:
                		case MICROSECOND_SYMBOL:
                		case MIGRATE_SYMBOL:
                		case MINUTE_SYMBOL:
                		case MIN_ROWS_SYMBOL:
                		case MODE_SYMBOL:
                		case MODIFY_SYMBOL:
                		case MONTH_SYMBOL:
                		case MULTILINESTRING_SYMBOL:
                		case MULTIPOINT_SYMBOL:
                		case MULTIPOLYGON_SYMBOL:
                		case MUTEX_SYMBOL:
                		case MYSQL_ERRNO_SYMBOL:
                		case NAMES_SYMBOL:
                		case NAME_SYMBOL:
                		case NATIONAL_SYMBOL:
                		case NCHAR_SYMBOL:
                		case NDBCLUSTER_SYMBOL:
                		case NEW_SYMBOL:
                		case NEXT_SYMBOL:
                		case NODEGROUP_SYMBOL:
                		case NONE_SYMBOL:
                		case NO_WAIT_SYMBOL:
                		case NUMBER_SYMBOL:
                		case NVARCHAR_SYMBOL:
                		case OFFSET_SYMBOL:
                		case OLD_PASSWORD_SYMBOL:
                		case ONE_SHOT_SYMBOL:
                		case ONE_SYMBOL:
                		case PACK_KEYS_SYMBOL:
                		case PAGE_SYMBOL:
                		case PARTIAL_SYMBOL:
                		case PARTITIONING_SYMBOL:
                		case PARTITIONS_SYMBOL:
                		case PASSWORD_SYMBOL:
                		case PHASE_SYMBOL:
                		case PLUGINS_SYMBOL:
                		case PLUGIN_DIR_SYMBOL:
                		case PLUGIN_SYMBOL:
                		case POINT_SYMBOL:
                		case POLYGON_SYMBOL:
                		case PRESERVE_SYMBOL:
                		case PREV_SYMBOL:
                		case PRIVILEGES_SYMBOL:
                		case PROCESSLIST_SYMBOL:
                		case PROCESS_SYMBOL:
                		case PROFILES_SYMBOL:
                		case PROFILE_SYMBOL:
                		case PROXY_SYMBOL:
                		case QUARTER_SYMBOL:
                		case QUERY_SYMBOL:
                		case QUICK_SYMBOL:
                		case READ_ONLY_SYMBOL:
                		case REBUILD_SYMBOL:
                		case RECOVER_SYMBOL:
                		case REDOFILE_SYMBOL:
                		case REDO_BUFFER_SIZE_SYMBOL:
                		case REDUNDANT_SYMBOL:
                		case RELAYLOG_SYMBOL:
                		case RELAY_LOG_FILE_SYMBOL:
                		case RELAY_LOG_POS_SYMBOL:
                		case RELAY_SYMBOL:
                		case RELAY_THREAD_SYMBOL:
                		case RELOAD_SYMBOL:
                		case REORGANIZE_SYMBOL:
                		case REPEATABLE_SYMBOL:
                		case REPLICATION_SYMBOL:
                		case RESUME_SYMBOL:
                		case RETURNED_SQLSTATE_SYMBOL:
                		case RETURNS_SYMBOL:
                		case REVERSE_SYMBOL:
                		case ROLLUP_SYMBOL:
                		case ROUTINE_SYMBOL:
                		case ROWS_SYMBOL:
                		case ROW_COUNT_SYMBOL:
                		case ROW_FORMAT_SYMBOL:
                		case ROW_SYMBOL:
                		case RTREE_SYMBOL:
                		case SCHEDULE_SYMBOL:
                		case SCHEMA_NAME_SYMBOL:
                		case SECOND_SYMBOL:
                		case SERIALIZABLE_SYMBOL:
                		case SERIAL_SYMBOL:
                		case SESSION_SYMBOL:
                		case SHARE_SYMBOL:
                		case SHUTDOWN_SYMBOL:
                		case SIMPLE_SYMBOL:
                		case SLOW_SYMBOL:
                		case SNAPSHOT_SYMBOL:
                		case SOUNDS_SYMBOL:
                		case SOURCE_SYMBOL:
                		case SQL_AFTER_GTIDS_SYMBOL:
                		case SQL_AFTER_MTS_GAPS_SYMBOL:
                		case SQL_BEFORE_GTIDS_SYMBOL:
                		case SQL_BUFFER_RESULT_SYMBOL:
                		case SQL_CACHE_SYMBOL:
                		case SQL_NO_CACHE_SYMBOL:
                		case SQL_THREAD_SYMBOL:
                		case STARTS_SYMBOL:
                		case STATS_AUTO_RECALC_SYMBOL:
                		case STATS_PERSISTENT_SYMBOL:
                		case STATS_SAMPLE_PAGES_SYMBOL:
                		case STATUS_SYMBOL:
                		case STORAGE_SYMBOL:
                		case STRING_SYMBOL:
                		case SUBCLASS_ORIGIN_SYMBOL:
                		case SUBDATE_SYMBOL:
                		case SUBJECT_SYMBOL:
                		case SUBPARTITIONS_SYMBOL:
                		case SUBPARTITION_SYMBOL:
                		case SUPER_SYMBOL:
                		case SUSPEND_SYMBOL:
                		case SWAPS_SYMBOL:
                		case SWITCHES_SYMBOL:
                		case TABLESPACE_SYMBOL:
                		case TABLES_SYMBOL:
                		case TABLE_CHECKSUM_SYMBOL:
                		case TABLE_NAME_SYMBOL:
                		case TEMPORARY_SYMBOL:
                		case TEMPTABLE_SYMBOL:
                		case TEXT_SYMBOL:
                		case THAN_SYMBOL:
                		case TIMESTAMP_ADD_SYMBOL:
                		case TIMESTAMP_DIFF_SYMBOL:
                		case TIMESTAMP_SYMBOL:
                		case TIME_SYMBOL:
                		case TRANSACTION_SYMBOL:
                		case TRIGGERS_SYMBOL:
                		case TYPES_SYMBOL:
                		case TYPE_SYMBOL:
                		case UDF_RETURNS_SYMBOL:
                		case UNCOMMITTED_SYMBOL:
                		case UNDEFINED_SYMBOL:
                		case UNDOFILE_SYMBOL:
                		case UNDO_BUFFER_SIZE_SYMBOL:
                		case UNKNOWN_SYMBOL:
                		case UNTIL_SYMBOL:
                		case USER_RESOURCES_SYMBOL:
                		case USER_SYMBOL:
                		case USE_FRM_SYMBOL:
                		case VALUE_SYMBOL:
                		case VARIABLES_SYMBOL:
                		case VIEW_SYMBOL:
                		case WAIT_SYMBOL:
                		case WARNINGS_SYMBOL:
                		case WEEK_SYMBOL:
                		case WEIGHT_STRING_SYMBOL:
                		case WORK_SYMBOL:
                		case X509_SYMBOL:
                		case XML_SYMBOL:
                		case YEAR_SYMBOL:
                			{
                				alt618=1;
                			}
                		    break;
                		case ASCII_SYMBOL:
                		case BACKUP_SYMBOL:
                		case BEGIN_SYMBOL:
                		case BYTE_SYMBOL:
                		case CACHE_SYMBOL:
                		case CHARSET_SYMBOL:
                		case CHECKSUM_SYMBOL:
                		case CLOSE_SYMBOL:
                		case COMMENT_SYMBOL:
                		case COMMIT_SYMBOL:
                		case CONTAINS_SYMBOL:
                		case DEALLOCATE_SYMBOL:
                		case DO_SYMBOL:
                		case END_SYMBOL:
                		case EXECUTE_SYMBOL:
                		case FLUSH_SYMBOL:
                		case FORMAT_SYMBOL:
                		case HANDLER_SYMBOL:
                		case HELP_SYMBOL:
                		case HOST_SYMBOL:
                		case INSTALL_SYMBOL:
                		case LANGUAGE_SYMBOL:
                		case NO_SYMBOL:
                		case OPEN_SYMBOL:
                		case OPTIONS_SYMBOL:
                		case OWNER_SYMBOL:
                		case PARSER_SYMBOL:
                		case PARTITION_SYMBOL:
                		case PORT_SYMBOL:
                		case PREPARE_SYMBOL:
                		case REMOVE_SYMBOL:
                		case REPAIR_SYMBOL:
                		case RESET_SYMBOL:
                		case RESTORE_SYMBOL:
                		case ROLLBACK_SYMBOL:
                		case SAVEPOINT_SYMBOL:
                		case SECURITY_SYMBOL:
                		case SERVER_SYMBOL:
                		case SIGNED_SYMBOL:
                		case SLAVE_SYMBOL:
                		case SOCKET_SYMBOL:
                		case SONAME_SYMBOL:
                		case START_SYMBOL:
                		case STOP_SYMBOL:
                		case TRUNCATE_SYMBOL:
                		case UNICODE_SYMBOL:
                		case UNINSTALL_SYMBOL:
                		case UPGRADE_SYMBOL:
                		case WRAPPER_SYMBOL:
                		case XA_SYMBOL:
                			{
                				alt618=1;
                			}
                		    break;

                		}

                	}
                    break;

                }

                switch (alt618)
                {
            	case 1:
            	    // MySQL.g:2014:32: DECLARE_SYMBOL identifier ( variable_declaration | condition_declaration )
            	    {
            	        DECLARE_SYMBOL2346 = (pANTLR3_COMMON_TOKEN) MATCHT(DECLARE_SYMBOL, &FOLLOW_DECLARE_SYMBOL_in_declarations11582);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledeclarationsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DECLARE_SYMBOL2346_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DECLARE_SYMBOL2346));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DECLARE_SYMBOL2346_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_identifier_in_declarations11584);
            	        identifier2347=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledeclarationsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2347.tree);

            	        // MySQL.g:2014:58: ( variable_declaration | condition_declaration )
            	        {
            	            int alt617=2;
            	            switch ( LA(1) )
            	            {
            	            case BIGINT_SYMBOL:
            	            case BINARY_SYMBOL:
            	            case BIT_SYMBOL:
            	            case BLOB_SYMBOL:
            	            case BOOLEAN_SYMBOL:
            	            case BOOL_SYMBOL:
            	            case CHAR_SYMBOL:
            	            case COMMA_SYMBOL:
            	            case DATETIME_SYMBOL:
            	            case DATE_SYMBOL:
            	            case DECIMAL_SYMBOL:
            	            case DOUBLE_SYMBOL:
            	            case ENUM_SYMBOL:
            	            case FIXED_SYMBOL:
            	            case FLOAT_SYMBOL:
            	            case GEOMETRYCOLLECTION_SYMBOL:
            	            case GEOMETRY_SYMBOL:
            	            case INTEGER_SYMBOL:
            	            case INT_SYMBOL:
            	            case LINESTRING_SYMBOL:
            	            case LONGBLOB_SYMBOL:
            	            case LONGTEXT_SYMBOL:
            	            case LONG_SYMBOL:
            	            case MEDIUMBLOB_SYMBOL:
            	            case MEDIUMINT_SYMBOL:
            	            case MEDIUMTEXT_SYMBOL:
            	            case MULTILINESTRING_SYMBOL:
            	            case MULTIPOINT_SYMBOL:
            	            case MULTIPOLYGON_SYMBOL:
            	            case NATIONAL_SYMBOL:
            	            case NCHAR_SYMBOL:
            	            case NUMERIC_SYMBOL:
            	            case NVARCHAR_SYMBOL:
            	            case POINT_SYMBOL:
            	            case POLYGON_SYMBOL:
            	            case REAL_SYMBOL:
            	            case SERIAL_SYMBOL:
            	            case SET_SYMBOL:
            	            case SMALLINT_SYMBOL:
            	            case TEXT_SYMBOL:
            	            case TIMESTAMP_SYMBOL:
            	            case TIME_SYMBOL:
            	            case TINYBLOB_SYMBOL:
            	            case TINYINT_SYMBOL:
            	            case TINYTEXT_SYMBOL:
            	            case VARBINARY_SYMBOL:
            	            case VARCHAR_SYMBOL:
            	            case YEAR_SYMBOL:
            	            	{
            	            		alt617=1;
            	            	}
            	                break;
            	            case CONDITION_SYMBOL:
            	            	{
            	            		alt617=2;
            	            	}
            	                break;

            	            default:
            	                if (BACKTRACKING>0)
            	                {
            	                    FAILEDFLAG = ANTLR3_TRUE;
            	                    return retval;
            	                }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                EXCEPTION->message      = (void *)"";
            	                EXCEPTION->decisionNum  = 617;
            	                EXCEPTION->state        = 0;


            	                goto ruledeclarationsEx;

            	            }

            	            switch (alt617)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2014:59: variable_declaration
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_variable_declaration_in_declarations11587);
            	        	        variable_declaration2348=variable_declaration(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledeclarationsEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, variable_declaration2348.tree);

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:2014:82: condition_declaration
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_condition_declaration_in_declarations11591);
            	        	        condition_declaration2349=condition_declaration(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledeclarationsEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, condition_declaration2349.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

            	default:
            	    goto loop618;	/* break out of the loop */
            	    break;
                }
            }
            loop618: ; /* Jump out to here if this rule does not match */


            // MySQL.g:2015:3: ( cursor_declaration )*

            for (;;)
            {
                int alt619=2;
                switch ( LA(1) )
                {
                case DECLARE_SYMBOL:
                	{
                		switch ( LA(2) )
                		{
                		case ACTION_SYMBOL:
                		case ADDDATE_SYMBOL:
                		case AFTER_SYMBOL:
                		case AGAINST_SYMBOL:
                		case AGGREGATE_SYMBOL:
                		case ALGORITHM_SYMBOL:
                		case ANALYZE_SYMBOL:
                		case ANY_SYMBOL:
                		case ASCII_SYMBOL:
                		case AT_SYMBOL:
                		case AUTHORS_SYMBOL:
                		case AUTOEXTEND_SIZE_SYMBOL:
                		case AUTO_INCREMENT_SYMBOL:
                		case AVG_ROW_LENGTH_SYMBOL:
                		case AVG_SYMBOL:
                		case BACKUP_SYMBOL:
                		case BACK_TICK_QUOTED_ID:
                		case BEGIN_SYMBOL:
                		case BINLOG_SYMBOL:
                		case BIT_SYMBOL:
                		case BLOCK_SYMBOL:
                		case BOOLEAN_SYMBOL:
                		case BOOL_SYMBOL:
                		case BTREE_SYMBOL:
                		case BYTE_SYMBOL:
                		case CACHE_SYMBOL:
                		case CASCADED_SYMBOL:
                		case CATALOG_NAME_SYMBOL:
                		case CHAIN_SYMBOL:
                		case CHANGED_SYMBOL:
                		case CHARSET_SYMBOL:
                		case CHECKSUM_SYMBOL:
                		case CIPHER_SYMBOL:
                		case CLASS_ORIGIN_SYMBOL:
                		case CLIENT_SYMBOL:
                		case CLOSE_SYMBOL:
                		case COALESCE_SYMBOL:
                		case CODE_SYMBOL:
                		case COLLATION_SYMBOL:
                		case COLUMNS_SYMBOL:
                		case COLUMN_FORMAT_SYMBOL:
                		case COLUMN_NAME_SYMBOL:
                		case COMMENT_SYMBOL:
                		case COMMITTED_SYMBOL:
                		case COMMIT_SYMBOL:
                		case COMPACT_SYMBOL:
                		case COMPLETION_SYMBOL:
                		case COMPRESSED_SYMBOL:
                		case CONCURRENT_SYMBOL:
                		case CONNECTION_SYMBOL:
                		case CONSISTENT_SYMBOL:
                		case CONSTRAINT_CATALOG_SYMBOL:
                		case CONSTRAINT_NAME_SYMBOL:
                		case CONSTRAINT_SCHEMA_SYMBOL:
                		case CONTAINS_SYMBOL:
                		case CONTEXT_SYMBOL:
                		case CONTRIBUTORS_SYMBOL:
                		case CPU_SYMBOL:
                		case CUBE_SYMBOL:
                		case CURRENT_SYMBOL:
                		case CURSOR_NAME_SYMBOL:
                		case DATAFILE_SYMBOL:
                		case DATA_SYMBOL:
                		case DATETIME_SYMBOL:
                		case DATE_SYMBOL:
                		case DAY_SYMBOL:
                		case DEALLOCATE_SYMBOL:
                		case DEFAULT_AUTH_SYMBOL:
                		case DEFINER_SYMBOL:
                		case DELAY_KEY_WRITE_SYMBOL:
                		case DES_KEY_FILE_SYMBOL:
                		case DIAGNOSTICS_SYMBOL:
                		case DIRECTORY_SYMBOL:
                		case DISABLE_SYMBOL:
                		case DISCARD_SYMBOL:
                		case DISK_SYMBOL:
                		case DOUBLE_QUOTED_TEXT:
                		case DO_SYMBOL:
                		case DUMPFILE_SYMBOL:
                		case DUPLICATE_SYMBOL:
                		case DYNAMIC_SYMBOL:
                		case ENABLE_SYMBOL:
                		case ENDS_SYMBOL:
                		case END_SYMBOL:
                		case ENGINES_SYMBOL:
                		case ENGINE_SYMBOL:
                		case ENUM_SYMBOL:
                		case ERRORS_SYMBOL:
                		case ERROR_SYMBOL:
                		case ESCAPE_SYMBOL:
                		case EVENTS_SYMBOL:
                		case EVENT_SYMBOL:
                		case EVERY_SYMBOL:
                		case EXECUTE_SYMBOL:
                		case EXPANSION_SYMBOL:
                		case EXPORT_SYMBOL:
                		case EXTENDED_SYMBOL:
                		case EXTENT_SIZE_SYMBOL:
                		case FAST_SYMBOL:
                		case FAULTS_SYMBOL:
                		case FILE_SYMBOL:
                		case FIRST_SYMBOL:
                		case FIXED_SYMBOL:
                		case FLUSH_SYMBOL:
                		case FORMAT_SYMBOL:
                		case FOUND_SYMBOL:
                		case FULL_SYMBOL:
                		case FUNCTION_SYMBOL:
                		case GENERAL_SYMBOL:
                		case GEOMETRYCOLLECTION_SYMBOL:
                		case GEOMETRY_SYMBOL:
                		case GET_FORMAT_SYMBOL:
                		case GLOBAL_SYMBOL:
                		case GRANTS_SYMBOL:
                		case HANDLER_SYMBOL:
                		case HASH_SYMBOL:
                		case HELP_SYMBOL:
                		case HOSTS_SYMBOL:
                		case HOST_SYMBOL:
                		case HOUR_SYMBOL:
                		case IDENTIFIED_SYMBOL:
                		case IDENTIFIER:
                		case IGNORE_SERVER_IDS_SYMBOL:
                		case IMPORT_SYMBOL:
                		case INDEXES_SYMBOL:
                		case INITIAL_SIZE_SYMBOL:
                		case INNODB_SYMBOL:
                		case INSERT_METHOD_SYMBOL:
                		case INSTALL_SYMBOL:
                		case INVOKER_SYMBOL:
                		case IO_SYMBOL:
                		case IPC_SYMBOL:
                		case ISOLATION_SYMBOL:
                		case ISSUER_SYMBOL:
                		case KEY_BLOCK_SIZE_SYMBOL:
                		case LANGUAGE_SYMBOL:
                		case LAST_SYMBOL:
                		case LEAVES_SYMBOL:
                		case LESS_SYMBOL:
                		case LEVEL_SYMBOL:
                		case LINESTRING_SYMBOL:
                		case LIST_SYMBOL:
                		case LOCAL_SYMBOL:
                		case LOCKS_SYMBOL:
                		case LOGFILE_SYMBOL:
                		case LOGS_SYMBOL:
                		case MASTER_AUTO_POSITION_SYMBOL:
                		case MASTER_CONNECT_RETRY_SYMBOL:
                		case MASTER_DELAY_SYMBOL:
                		case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                		case MASTER_HOST_SYMBOL:
                		case MASTER_LOG_FILE_SYMBOL:
                		case MASTER_LOG_POS_SYMBOL:
                		case MASTER_PASSWORD_SYMBOL:
                		case MASTER_PORT_SYMBOL:
                		case MASTER_RETRY_COUNT_SYMBOL:
                		case MASTER_SERVER_ID_SYMBOL:
                		case MASTER_SSL_CAPATH_SYMBOL:
                		case MASTER_SSL_CA_SYMBOL:
                		case MASTER_SSL_CERT_SYMBOL:
                		case MASTER_SSL_CIPHER_SYMBOL:
                		case MASTER_SSL_CRLPATH_SYMBOL:
                		case MASTER_SSL_CRL_SYMBOL:
                		case MASTER_SSL_KEY_SYMBOL:
                		case MASTER_SSL_SYMBOL:
                		case MASTER_SYMBOL:
                		case MASTER_USER_SYMBOL:
                		case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                		case MAX_QUERIES_PER_HOUR_SYMBOL:
                		case MAX_ROWS_SYMBOL:
                		case MAX_SIZE_SYMBOL:
                		case MAX_UPDATES_PER_HOUR_SYMBOL:
                		case MAX_USER_CONNECTIONS_SYMBOL:
                		case MEDIUM_SYMBOL:
                		case MEMORY_SYMBOL:
                		case MERGE_SYMBOL:
                		case MESSAGE_TEXT_SYMBOL:
                		case MICROSECOND_SYMBOL:
                		case MIGRATE_SYMBOL:
                		case MINUTE_SYMBOL:
                		case MIN_ROWS_SYMBOL:
                		case MODE_SYMBOL:
                		case MODIFY_SYMBOL:
                		case MONTH_SYMBOL:
                		case MULTILINESTRING_SYMBOL:
                		case MULTIPOINT_SYMBOL:
                		case MULTIPOLYGON_SYMBOL:
                		case MUTEX_SYMBOL:
                		case MYSQL_ERRNO_SYMBOL:
                		case NAMES_SYMBOL:
                		case NAME_SYMBOL:
                		case NATIONAL_SYMBOL:
                		case NCHAR_SYMBOL:
                		case NDBCLUSTER_SYMBOL:
                		case NEW_SYMBOL:
                		case NEXT_SYMBOL:
                		case NODEGROUP_SYMBOL:
                		case NONE_SYMBOL:
                		case NO_SYMBOL:
                		case NO_WAIT_SYMBOL:
                		case NUMBER_SYMBOL:
                		case NVARCHAR_SYMBOL:
                		case OFFSET_SYMBOL:
                		case OLD_PASSWORD_SYMBOL:
                		case ONE_SHOT_SYMBOL:
                		case ONE_SYMBOL:
                		case OPEN_SYMBOL:
                		case OPTIONS_SYMBOL:
                		case OWNER_SYMBOL:
                		case PACK_KEYS_SYMBOL:
                		case PAGE_SYMBOL:
                		case PARSER_SYMBOL:
                		case PARTIAL_SYMBOL:
                		case PARTITIONING_SYMBOL:
                		case PARTITIONS_SYMBOL:
                		case PARTITION_SYMBOL:
                		case PASSWORD_SYMBOL:
                		case PHASE_SYMBOL:
                		case PLUGINS_SYMBOL:
                		case PLUGIN_DIR_SYMBOL:
                		case PLUGIN_SYMBOL:
                		case POINT_SYMBOL:
                		case POLYGON_SYMBOL:
                		case PORT_SYMBOL:
                		case PREPARE_SYMBOL:
                		case PRESERVE_SYMBOL:
                		case PREV_SYMBOL:
                		case PRIVILEGES_SYMBOL:
                		case PROCESSLIST_SYMBOL:
                		case PROCESS_SYMBOL:
                		case PROFILES_SYMBOL:
                		case PROFILE_SYMBOL:
                		case PROXY_SYMBOL:
                		case QUARTER_SYMBOL:
                		case QUERY_SYMBOL:
                		case QUICK_SYMBOL:
                		case READ_ONLY_SYMBOL:
                		case REBUILD_SYMBOL:
                		case RECOVER_SYMBOL:
                		case REDOFILE_SYMBOL:
                		case REDO_BUFFER_SIZE_SYMBOL:
                		case REDUNDANT_SYMBOL:
                		case RELAYLOG_SYMBOL:
                		case RELAY_LOG_FILE_SYMBOL:
                		case RELAY_LOG_POS_SYMBOL:
                		case RELAY_SYMBOL:
                		case RELAY_THREAD_SYMBOL:
                		case RELOAD_SYMBOL:
                		case REMOVE_SYMBOL:
                		case REORGANIZE_SYMBOL:
                		case REPAIR_SYMBOL:
                		case REPEATABLE_SYMBOL:
                		case REPLICATION_SYMBOL:
                		case RESET_SYMBOL:
                		case RESTORE_SYMBOL:
                		case RESUME_SYMBOL:
                		case RETURNED_SQLSTATE_SYMBOL:
                		case RETURNS_SYMBOL:
                		case REVERSE_SYMBOL:
                		case ROLLBACK_SYMBOL:
                		case ROLLUP_SYMBOL:
                		case ROUTINE_SYMBOL:
                		case ROWS_SYMBOL:
                		case ROW_COUNT_SYMBOL:
                		case ROW_FORMAT_SYMBOL:
                		case ROW_SYMBOL:
                		case RTREE_SYMBOL:
                		case SAVEPOINT_SYMBOL:
                		case SCHEDULE_SYMBOL:
                		case SCHEMA_NAME_SYMBOL:
                		case SECOND_SYMBOL:
                		case SECURITY_SYMBOL:
                		case SERIALIZABLE_SYMBOL:
                		case SERIAL_SYMBOL:
                		case SERVER_SYMBOL:
                		case SESSION_SYMBOL:
                		case SHARE_SYMBOL:
                		case SHUTDOWN_SYMBOL:
                		case SIGNED_SYMBOL:
                		case SIMPLE_SYMBOL:
                		case SLAVE_SYMBOL:
                		case SLOW_SYMBOL:
                		case SNAPSHOT_SYMBOL:
                		case SOCKET_SYMBOL:
                		case SONAME_SYMBOL:
                		case SOUNDS_SYMBOL:
                		case SOURCE_SYMBOL:
                		case SQL_AFTER_GTIDS_SYMBOL:
                		case SQL_AFTER_MTS_GAPS_SYMBOL:
                		case SQL_BEFORE_GTIDS_SYMBOL:
                		case SQL_BUFFER_RESULT_SYMBOL:
                		case SQL_CACHE_SYMBOL:
                		case SQL_NO_CACHE_SYMBOL:
                		case SQL_THREAD_SYMBOL:
                		case STARTS_SYMBOL:
                		case START_SYMBOL:
                		case STATS_AUTO_RECALC_SYMBOL:
                		case STATS_PERSISTENT_SYMBOL:
                		case STATS_SAMPLE_PAGES_SYMBOL:
                		case STATUS_SYMBOL:
                		case STOP_SYMBOL:
                		case STORAGE_SYMBOL:
                		case STRING_SYMBOL:
                		case SUBCLASS_ORIGIN_SYMBOL:
                		case SUBDATE_SYMBOL:
                		case SUBJECT_SYMBOL:
                		case SUBPARTITIONS_SYMBOL:
                		case SUBPARTITION_SYMBOL:
                		case SUPER_SYMBOL:
                		case SUSPEND_SYMBOL:
                		case SWAPS_SYMBOL:
                		case SWITCHES_SYMBOL:
                		case TABLESPACE_SYMBOL:
                		case TABLES_SYMBOL:
                		case TABLE_CHECKSUM_SYMBOL:
                		case TABLE_NAME_SYMBOL:
                		case TEMPORARY_SYMBOL:
                		case TEMPTABLE_SYMBOL:
                		case TEXT_SYMBOL:
                		case THAN_SYMBOL:
                		case TIMESTAMP_ADD_SYMBOL:
                		case TIMESTAMP_DIFF_SYMBOL:
                		case TIMESTAMP_SYMBOL:
                		case TIME_SYMBOL:
                		case TRANSACTION_SYMBOL:
                		case TRIGGERS_SYMBOL:
                		case TRUNCATE_SYMBOL:
                		case TYPES_SYMBOL:
                		case TYPE_SYMBOL:
                		case UDF_RETURNS_SYMBOL:
                		case UNCOMMITTED_SYMBOL:
                		case UNDEFINED_SYMBOL:
                		case UNDOFILE_SYMBOL:
                		case UNDO_BUFFER_SIZE_SYMBOL:
                		case UNICODE_SYMBOL:
                		case UNINSTALL_SYMBOL:
                		case UNKNOWN_SYMBOL:
                		case UNTIL_SYMBOL:
                		case UPGRADE_SYMBOL:
                		case USER_RESOURCES_SYMBOL:
                		case USER_SYMBOL:
                		case USE_FRM_SYMBOL:
                		case VALUE_SYMBOL:
                		case VARIABLES_SYMBOL:
                		case VIEW_SYMBOL:
                		case WAIT_SYMBOL:
                		case WARNINGS_SYMBOL:
                		case WEEK_SYMBOL:
                		case WEIGHT_STRING_SYMBOL:
                		case WORK_SYMBOL:
                		case WRAPPER_SYMBOL:
                		case X509_SYMBOL:
                		case XA_SYMBOL:
                		case XML_SYMBOL:
                		case YEAR_SYMBOL:
                			{
                				alt619=1;
                			}
                		    break;

                		}

                	}
                    break;

                }

                switch (alt619)
                {
            	case 1:
            	    // MySQL.g:2015:3: cursor_declaration
            	    {
            	        FOLLOWPUSH(FOLLOW_cursor_declaration_in_declarations11598);
            	        cursor_declaration2350=cursor_declaration(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledeclarationsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, cursor_declaration2350.tree);

            	    }
            	    break;

            	default:
            	    goto loop619;	/* break out of the loop */
            	    break;
                }
            }
            loop619: ; /* Jump out to here if this rule does not match */


            // MySQL.g:2015:23: ( handler_declaration )*

            for (;;)
            {
                int alt620=2;
                switch ( LA(1) )
                {
                case DECLARE_SYMBOL:
                	{
                		alt620=1;
                	}
                    break;

                }

                switch (alt620)
                {
            	case 1:
            	    // MySQL.g:2015:23: handler_declaration
            	    {
            	        FOLLOWPUSH(FOLLOW_handler_declaration_in_declarations11601);
            	        handler_declaration2351=handler_declaration(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledeclarationsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, handler_declaration2351.tree);

            	    }
            	    break;

            	default:
            	    goto loop620;	/* break out of the loop */
            	    break;
                }
            }
            loop620: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto ruledeclarationsEx; /* Prevent compiler warnings */
    ruledeclarationsEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end declarations */

/**
 * $ANTLR start variable_declaration
 * MySQL.g:2018:1: variable_declaration : ( COMMA_SYMBOL identifier )* data_type ( DEFAULT_SYMBOL expression )? SEMICOLON_SYMBOL ;
 */
static MySQLParser_variable_declaration_return
variable_declaration(pMySQLParser ctx)
{
    MySQLParser_variable_declaration_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2352;
    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL2355;
    pANTLR3_COMMON_TOKEN    SEMICOLON_SYMBOL2357;
    MySQLParser_identifier_return identifier2353;
    #undef	RETURN_TYPE_identifier2353
    #define	RETURN_TYPE_identifier2353 MySQLParser_identifier_return

    MySQLParser_data_type_return data_type2354;
    #undef	RETURN_TYPE_data_type2354
    #define	RETURN_TYPE_data_type2354 MySQLParser_data_type_return

    MySQLParser_expression_return expression2356;
    #undef	RETURN_TYPE_expression2356
    #define	RETURN_TYPE_expression2356 MySQLParser_expression_return

    pANTLR3_BASE_TREE COMMA_SYMBOL2352_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL2355_tree;
    pANTLR3_BASE_TREE SEMICOLON_SYMBOL2357_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL2352       = NULL;
    DEFAULT_SYMBOL2355       = NULL;
    SEMICOLON_SYMBOL2357       = NULL;
    identifier2353.tree = NULL;

    data_type2354.tree = NULL;

    expression2356.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL2352_tree   = NULL;
    DEFAULT_SYMBOL2355_tree   = NULL;
    SEMICOLON_SYMBOL2357_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2018:21: ( ( COMMA_SYMBOL identifier )* data_type ( DEFAULT_SYMBOL expression )? SEMICOLON_SYMBOL )
        // MySQL.g:2019:2: ( COMMA_SYMBOL identifier )* data_type ( DEFAULT_SYMBOL expression )? SEMICOLON_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:2019:2: ( COMMA_SYMBOL identifier )*

            for (;;)
            {
                int alt621=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt621=1;
                	}
                    break;

                }

                switch (alt621)
                {
            	case 1:
            	    // MySQL.g:2019:3: COMMA_SYMBOL identifier
            	    {
            	        COMMA_SYMBOL2352 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_variable_declaration11612);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulevariable_declarationEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL2352_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2352));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2352_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_identifier_in_variable_declaration11614);
            	        identifier2353=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulevariable_declarationEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2353.tree);

            	    }
            	    break;

            	default:
            	    goto loop621;	/* break out of the loop */
            	    break;
                }
            }
            loop621: ; /* Jump out to here if this rule does not match */


            FOLLOWPUSH(FOLLOW_data_type_in_variable_declaration11618);
            data_type2354=data_type(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulevariable_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, data_type2354.tree);

            // MySQL.g:2019:39: ( DEFAULT_SYMBOL expression )?
            {
                int alt622=2;
                switch ( LA(1) )
                {
                    case DEFAULT_SYMBOL:
                    	{
                    		alt622=1;
                    	}
                        break;
                }

                switch (alt622)
                {
            	case 1:
            	    // MySQL.g:2019:40: DEFAULT_SYMBOL expression
            	    {
            	        DEFAULT_SYMBOL2355 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_variable_declaration11621);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulevariable_declarationEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DEFAULT_SYMBOL2355_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL2355));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL2355_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_expression_in_variable_declaration11623);
            	        expression2356=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulevariable_declarationEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2356.tree);

            	    }
            	    break;

                }
            }

            SEMICOLON_SYMBOL2357 = (pANTLR3_COMMON_TOKEN) MATCHT(SEMICOLON_SYMBOL, &FOLLOW_SEMICOLON_SYMBOL_in_variable_declaration11627);
            if  (HASEXCEPTION())
            {
                goto rulevariable_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SEMICOLON_SYMBOL2357_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SEMICOLON_SYMBOL2357));
            ADAPTOR->addChild(ADAPTOR, root_0, SEMICOLON_SYMBOL2357_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulevariable_declarationEx; /* Prevent compiler warnings */
    rulevariable_declarationEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end variable_declaration */

/**
 * $ANTLR start condition_declaration
 * MySQL.g:2022:1: condition_declaration : CONDITION_SYMBOL FOR_SYMBOL ( INTEGER | SQLSTATE_SYMBOL ( VALUE_SYMBOL )? string_literal ) SEMICOLON_SYMBOL ;
 */
static MySQLParser_condition_declaration_return
condition_declaration(pMySQLParser ctx)
{
    MySQLParser_condition_declaration_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    CONDITION_SYMBOL2358;
    pANTLR3_COMMON_TOKEN    FOR_SYMBOL2359;
    pANTLR3_COMMON_TOKEN    INTEGER2360;
    pANTLR3_COMMON_TOKEN    SQLSTATE_SYMBOL2361;
    pANTLR3_COMMON_TOKEN    VALUE_SYMBOL2362;
    pANTLR3_COMMON_TOKEN    SEMICOLON_SYMBOL2364;
    MySQLParser_string_literal_return string_literal2363;
    #undef	RETURN_TYPE_string_literal2363
    #define	RETURN_TYPE_string_literal2363 MySQLParser_string_literal_return

    pANTLR3_BASE_TREE CONDITION_SYMBOL2358_tree;
    pANTLR3_BASE_TREE FOR_SYMBOL2359_tree;
    pANTLR3_BASE_TREE INTEGER2360_tree;
    pANTLR3_BASE_TREE SQLSTATE_SYMBOL2361_tree;
    pANTLR3_BASE_TREE VALUE_SYMBOL2362_tree;
    pANTLR3_BASE_TREE SEMICOLON_SYMBOL2364_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CONDITION_SYMBOL2358       = NULL;
    FOR_SYMBOL2359       = NULL;
    INTEGER2360       = NULL;
    SQLSTATE_SYMBOL2361       = NULL;
    VALUE_SYMBOL2362       = NULL;
    SEMICOLON_SYMBOL2364       = NULL;
    string_literal2363.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CONDITION_SYMBOL2358_tree   = NULL;
    FOR_SYMBOL2359_tree   = NULL;
    INTEGER2360_tree   = NULL;
    SQLSTATE_SYMBOL2361_tree   = NULL;
    VALUE_SYMBOL2362_tree   = NULL;
    SEMICOLON_SYMBOL2364_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2022:22: ( CONDITION_SYMBOL FOR_SYMBOL ( INTEGER | SQLSTATE_SYMBOL ( VALUE_SYMBOL )? string_literal ) SEMICOLON_SYMBOL )
        // MySQL.g:2023:2: CONDITION_SYMBOL FOR_SYMBOL ( INTEGER | SQLSTATE_SYMBOL ( VALUE_SYMBOL )? string_literal ) SEMICOLON_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            CONDITION_SYMBOL2358 = (pANTLR3_COMMON_TOKEN) MATCHT(CONDITION_SYMBOL, &FOLLOW_CONDITION_SYMBOL_in_condition_declaration11636);
            if  (HASEXCEPTION())
            {
                goto rulecondition_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CONDITION_SYMBOL2358_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CONDITION_SYMBOL2358));
            ADAPTOR->addChild(ADAPTOR, root_0, CONDITION_SYMBOL2358_tree);
            }

            FOR_SYMBOL2359 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_condition_declaration11638);
            if  (HASEXCEPTION())
            {
                goto rulecondition_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            FOR_SYMBOL2359_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL2359));
            ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL2359_tree);
            }

            // MySQL.g:2023:30: ( INTEGER | SQLSTATE_SYMBOL ( VALUE_SYMBOL )? string_literal )
            {
                int alt624=2;
                switch ( LA(1) )
                {
                case INTEGER:
                	{
                		alt624=1;
                	}
                    break;
                case SQLSTATE_SYMBOL:
                	{
                		alt624=2;
                	}
                    break;

                default:
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 624;
                    EXCEPTION->state        = 0;


                    goto rulecondition_declarationEx;

                }

                switch (alt624)
                {
            	case 1:
            	    // MySQL.g:2023:31: INTEGER
            	    {
            	        INTEGER2360 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_condition_declaration11641);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecondition_declarationEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INTEGER2360_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER2360));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER2360_tree);
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2023:41: SQLSTATE_SYMBOL ( VALUE_SYMBOL )? string_literal
            	    {
            	        SQLSTATE_SYMBOL2361 = (pANTLR3_COMMON_TOKEN) MATCHT(SQLSTATE_SYMBOL, &FOLLOW_SQLSTATE_SYMBOL_in_condition_declaration11645);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecondition_declarationEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SQLSTATE_SYMBOL2361_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SQLSTATE_SYMBOL2361));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SQLSTATE_SYMBOL2361_tree);
            	        }

            	        // MySQL.g:2023:57: ( VALUE_SYMBOL )?
            	        {
            	            int alt623=2;
            	            switch ( LA(1) )
            	            {
            	                case VALUE_SYMBOL:
            	                	{
            	                		alt623=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt623)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2023:57: VALUE_SYMBOL
            	        	    {
            	        	        VALUE_SYMBOL2362 = (pANTLR3_COMMON_TOKEN) MATCHT(VALUE_SYMBOL, &FOLLOW_VALUE_SYMBOL_in_condition_declaration11647);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecondition_declarationEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        VALUE_SYMBOL2362_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VALUE_SYMBOL2362));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, VALUE_SYMBOL2362_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_string_literal_in_condition_declaration11650);
            	        string_literal2363=string_literal(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecondition_declarationEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal2363.tree);

            	    }
            	    break;

                }
            }

            SEMICOLON_SYMBOL2364 = (pANTLR3_COMMON_TOKEN) MATCHT(SEMICOLON_SYMBOL, &FOLLOW_SEMICOLON_SYMBOL_in_condition_declaration11653);
            if  (HASEXCEPTION())
            {
                goto rulecondition_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SEMICOLON_SYMBOL2364_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SEMICOLON_SYMBOL2364));
            ADAPTOR->addChild(ADAPTOR, root_0, SEMICOLON_SYMBOL2364_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulecondition_declarationEx; /* Prevent compiler warnings */
    rulecondition_declarationEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end condition_declaration */

/**
 * $ANTLR start cursor_declaration
 * MySQL.g:2026:1: cursor_declaration : DECLARE_SYMBOL identifier CURSOR_SYMBOL SEMICOLON_SYMBOL ;
 */
static MySQLParser_cursor_declaration_return
cursor_declaration(pMySQLParser ctx)
{
    MySQLParser_cursor_declaration_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    DECLARE_SYMBOL2365;
    pANTLR3_COMMON_TOKEN    CURSOR_SYMBOL2367;
    pANTLR3_COMMON_TOKEN    SEMICOLON_SYMBOL2368;
    MySQLParser_identifier_return identifier2366;
    #undef	RETURN_TYPE_identifier2366
    #define	RETURN_TYPE_identifier2366 MySQLParser_identifier_return

    pANTLR3_BASE_TREE DECLARE_SYMBOL2365_tree;
    pANTLR3_BASE_TREE CURSOR_SYMBOL2367_tree;
    pANTLR3_BASE_TREE SEMICOLON_SYMBOL2368_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DECLARE_SYMBOL2365       = NULL;
    CURSOR_SYMBOL2367       = NULL;
    SEMICOLON_SYMBOL2368       = NULL;
    identifier2366.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DECLARE_SYMBOL2365_tree   = NULL;
    CURSOR_SYMBOL2367_tree   = NULL;
    SEMICOLON_SYMBOL2368_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2026:19: ( DECLARE_SYMBOL identifier CURSOR_SYMBOL SEMICOLON_SYMBOL )
        // MySQL.g:2027:2: DECLARE_SYMBOL identifier CURSOR_SYMBOL SEMICOLON_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            DECLARE_SYMBOL2365 = (pANTLR3_COMMON_TOKEN) MATCHT(DECLARE_SYMBOL, &FOLLOW_DECLARE_SYMBOL_in_cursor_declaration11662);
            if  (HASEXCEPTION())
            {
                goto rulecursor_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DECLARE_SYMBOL2365_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DECLARE_SYMBOL2365));
            ADAPTOR->addChild(ADAPTOR, root_0, DECLARE_SYMBOL2365_tree);
            }

            FOLLOWPUSH(FOLLOW_identifier_in_cursor_declaration11664);
            identifier2366=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecursor_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2366.tree);

            CURSOR_SYMBOL2367 = (pANTLR3_COMMON_TOKEN) MATCHT(CURSOR_SYMBOL, &FOLLOW_CURSOR_SYMBOL_in_cursor_declaration11666);
            if  (HASEXCEPTION())
            {
                goto rulecursor_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CURSOR_SYMBOL2367_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CURSOR_SYMBOL2367));
            ADAPTOR->addChild(ADAPTOR, root_0, CURSOR_SYMBOL2367_tree);
            }

            SEMICOLON_SYMBOL2368 = (pANTLR3_COMMON_TOKEN) MATCHT(SEMICOLON_SYMBOL, &FOLLOW_SEMICOLON_SYMBOL_in_cursor_declaration11668);
            if  (HASEXCEPTION())
            {
                goto rulecursor_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SEMICOLON_SYMBOL2368_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SEMICOLON_SYMBOL2368));
            ADAPTOR->addChild(ADAPTOR, root_0, SEMICOLON_SYMBOL2368_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulecursor_declarationEx; /* Prevent compiler warnings */
    rulecursor_declarationEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end cursor_declaration */

/**
 * $ANTLR start handler_declaration
 * MySQL.g:2030:1: handler_declaration : DECLARE_SYMBOL ( CONTINUE_SYMBOL | EXIT_SYMBOL | UNDO_SYMBOL ) HANDLER_SYMBOL FOR_SYMBOL handler_condition ( COMMA_SYMBOL handler_condition )* compound_statement SEMICOLON_SYMBOL ;
 */
static MySQLParser_handler_declaration_return
handler_declaration(pMySQLParser ctx)
{
    MySQLParser_handler_declaration_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    DECLARE_SYMBOL2369;
    pANTLR3_COMMON_TOKEN    set2370;
    pANTLR3_COMMON_TOKEN    HANDLER_SYMBOL2371;
    pANTLR3_COMMON_TOKEN    FOR_SYMBOL2372;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2374;
    pANTLR3_COMMON_TOKEN    SEMICOLON_SYMBOL2377;
    MySQLParser_handler_condition_return handler_condition2373;
    #undef	RETURN_TYPE_handler_condition2373
    #define	RETURN_TYPE_handler_condition2373 MySQLParser_handler_condition_return

    MySQLParser_handler_condition_return handler_condition2375;
    #undef	RETURN_TYPE_handler_condition2375
    #define	RETURN_TYPE_handler_condition2375 MySQLParser_handler_condition_return

    MySQLParser_compound_statement_return compound_statement2376;
    #undef	RETURN_TYPE_compound_statement2376
    #define	RETURN_TYPE_compound_statement2376 MySQLParser_compound_statement_return

    pANTLR3_BASE_TREE DECLARE_SYMBOL2369_tree;
    pANTLR3_BASE_TREE set2370_tree;
    pANTLR3_BASE_TREE HANDLER_SYMBOL2371_tree;
    pANTLR3_BASE_TREE FOR_SYMBOL2372_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2374_tree;
    pANTLR3_BASE_TREE SEMICOLON_SYMBOL2377_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DECLARE_SYMBOL2369       = NULL;
    set2370       = NULL;
    HANDLER_SYMBOL2371       = NULL;
    FOR_SYMBOL2372       = NULL;
    COMMA_SYMBOL2374       = NULL;
    SEMICOLON_SYMBOL2377       = NULL;
    handler_condition2373.tree = NULL;

    handler_condition2375.tree = NULL;

    compound_statement2376.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DECLARE_SYMBOL2369_tree   = NULL;
    set2370_tree   = NULL;
    HANDLER_SYMBOL2371_tree   = NULL;
    FOR_SYMBOL2372_tree   = NULL;
    COMMA_SYMBOL2374_tree   = NULL;
    SEMICOLON_SYMBOL2377_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2030:20: ( DECLARE_SYMBOL ( CONTINUE_SYMBOL | EXIT_SYMBOL | UNDO_SYMBOL ) HANDLER_SYMBOL FOR_SYMBOL handler_condition ( COMMA_SYMBOL handler_condition )* compound_statement SEMICOLON_SYMBOL )
        // MySQL.g:2031:2: DECLARE_SYMBOL ( CONTINUE_SYMBOL | EXIT_SYMBOL | UNDO_SYMBOL ) HANDLER_SYMBOL FOR_SYMBOL handler_condition ( COMMA_SYMBOL handler_condition )* compound_statement SEMICOLON_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            DECLARE_SYMBOL2369 = (pANTLR3_COMMON_TOKEN) MATCHT(DECLARE_SYMBOL, &FOLLOW_DECLARE_SYMBOL_in_handler_declaration11677);
            if  (HASEXCEPTION())
            {
                goto rulehandler_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DECLARE_SYMBOL2369_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DECLARE_SYMBOL2369));
            ADAPTOR->addChild(ADAPTOR, root_0, DECLARE_SYMBOL2369_tree);
            }

            set2370=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == CONTINUE_SYMBOL || LA(1) == EXIT_SYMBOL || LA(1) == UNDO_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2370))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto rulehandler_declarationEx;
            }


            HANDLER_SYMBOL2371 = (pANTLR3_COMMON_TOKEN) MATCHT(HANDLER_SYMBOL, &FOLLOW_HANDLER_SYMBOL_in_handler_declaration11691);
            if  (HASEXCEPTION())
            {
                goto rulehandler_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            HANDLER_SYMBOL2371_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HANDLER_SYMBOL2371));
            ADAPTOR->addChild(ADAPTOR, root_0, HANDLER_SYMBOL2371_tree);
            }

            FOR_SYMBOL2372 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_handler_declaration11695);
            if  (HASEXCEPTION())
            {
                goto rulehandler_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            FOR_SYMBOL2372_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL2372));
            ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL2372_tree);
            }

            FOLLOWPUSH(FOLLOW_handler_condition_in_handler_declaration11697);
            handler_condition2373=handler_condition(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulehandler_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, handler_condition2373.tree);

            // MySQL.g:2032:32: ( COMMA_SYMBOL handler_condition )*

            for (;;)
            {
                int alt625=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt625=1;
                	}
                    break;

                }

                switch (alt625)
                {
            	case 1:
            	    // MySQL.g:2032:33: COMMA_SYMBOL handler_condition
            	    {
            	        COMMA_SYMBOL2374 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_handler_declaration11700);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulehandler_declarationEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL2374_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2374));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2374_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_handler_condition_in_handler_declaration11702);
            	        handler_condition2375=handler_condition(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulehandler_declarationEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, handler_condition2375.tree);

            	    }
            	    break;

            	default:
            	    goto loop625;	/* break out of the loop */
            	    break;
                }
            }
            loop625: ; /* Jump out to here if this rule does not match */


            FOLLOWPUSH(FOLLOW_compound_statement_in_handler_declaration11706);
            compound_statement2376=compound_statement(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulehandler_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, compound_statement2376.tree);

            SEMICOLON_SYMBOL2377 = (pANTLR3_COMMON_TOKEN) MATCHT(SEMICOLON_SYMBOL, &FOLLOW_SEMICOLON_SYMBOL_in_handler_declaration11708);
            if  (HASEXCEPTION())
            {
                goto rulehandler_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SEMICOLON_SYMBOL2377_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SEMICOLON_SYMBOL2377));
            ADAPTOR->addChild(ADAPTOR, root_0, SEMICOLON_SYMBOL2377_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulehandler_declarationEx; /* Prevent compiler warnings */
    rulehandler_declarationEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end handler_declaration */

/**
 * $ANTLR start handler_condition
 * MySQL.g:2035:1: handler_condition : ( INTEGER | SQLSTATE_SYMBOL ( VALUE_SYMBOL )? string_literal | identifier | SQLWARNING_SYMBOL | NOT_SYMBOL FOUND_SYMBOL | SQLEXCEPTION_SYMBOL );
 */
static MySQLParser_handler_condition_return
handler_condition(pMySQLParser ctx)
{
    MySQLParser_handler_condition_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    INTEGER2378;
    pANTLR3_COMMON_TOKEN    SQLSTATE_SYMBOL2379;
    pANTLR3_COMMON_TOKEN    VALUE_SYMBOL2380;
    pANTLR3_COMMON_TOKEN    SQLWARNING_SYMBOL2383;
    pANTLR3_COMMON_TOKEN    NOT_SYMBOL2384;
    pANTLR3_COMMON_TOKEN    FOUND_SYMBOL2385;
    pANTLR3_COMMON_TOKEN    SQLEXCEPTION_SYMBOL2386;
    MySQLParser_string_literal_return string_literal2381;
    #undef	RETURN_TYPE_string_literal2381
    #define	RETURN_TYPE_string_literal2381 MySQLParser_string_literal_return

    MySQLParser_identifier_return identifier2382;
    #undef	RETURN_TYPE_identifier2382
    #define	RETURN_TYPE_identifier2382 MySQLParser_identifier_return

    pANTLR3_BASE_TREE INTEGER2378_tree;
    pANTLR3_BASE_TREE SQLSTATE_SYMBOL2379_tree;
    pANTLR3_BASE_TREE VALUE_SYMBOL2380_tree;
    pANTLR3_BASE_TREE SQLWARNING_SYMBOL2383_tree;
    pANTLR3_BASE_TREE NOT_SYMBOL2384_tree;
    pANTLR3_BASE_TREE FOUND_SYMBOL2385_tree;
    pANTLR3_BASE_TREE SQLEXCEPTION_SYMBOL2386_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    INTEGER2378       = NULL;
    SQLSTATE_SYMBOL2379       = NULL;
    VALUE_SYMBOL2380       = NULL;
    SQLWARNING_SYMBOL2383       = NULL;
    NOT_SYMBOL2384       = NULL;
    FOUND_SYMBOL2385       = NULL;
    SQLEXCEPTION_SYMBOL2386       = NULL;
    string_literal2381.tree = NULL;

    identifier2382.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    INTEGER2378_tree   = NULL;
    SQLSTATE_SYMBOL2379_tree   = NULL;
    VALUE_SYMBOL2380_tree   = NULL;
    SQLWARNING_SYMBOL2383_tree   = NULL;
    NOT_SYMBOL2384_tree   = NULL;
    FOUND_SYMBOL2385_tree   = NULL;
    SQLEXCEPTION_SYMBOL2386_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2035:18: ( INTEGER | SQLSTATE_SYMBOL ( VALUE_SYMBOL )? string_literal | identifier | SQLWARNING_SYMBOL | NOT_SYMBOL FOUND_SYMBOL | SQLEXCEPTION_SYMBOL )

            ANTLR3_UINT32 alt627;

            alt627=6;

            {
                int LA627_0 = LA(1);
                if ( (LA627_0 == INTEGER))
                {
                    alt627=1;
                }
                else if ( (LA627_0 == SQLSTATE_SYMBOL))
                {
                    alt627=2;
                }
                else if ( (LA627_0 == BACK_TICK_QUOTED_ID || LA627_0 == IDENTIFIER))
                {
                    alt627=3;
                }
                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA627_0 == DOUBLE_QUOTED_TEXT))
                {
                    alt627=3;
                }
                else if ( (((LA627_0 >= ACTION_SYMBOL) && (LA627_0 <= ADDDATE_SYMBOL)) || ((LA627_0 >= AFTER_SYMBOL) && (LA627_0 <= ALGORITHM_SYMBOL)) || LA627_0 == ANALYZE_SYMBOL || ((LA627_0 >= ANY_SYMBOL) && (LA627_0 <= ASCII_SYMBOL)) || ((LA627_0 >= AT_SYMBOL) && (LA627_0 <= BACKUP_SYMBOL)) || LA627_0 == BEGIN_SYMBOL || LA627_0 == BINLOG_SYMBOL || LA627_0 == BIT_SYMBOL || ((LA627_0 >= BLOCK_SYMBOL) && (LA627_0 <= BOOL_SYMBOL)) || ((LA627_0 >= BTREE_SYMBOL) && (LA627_0 <= BYTE_SYMBOL)) || LA627_0 == CACHE_SYMBOL || LA627_0 == CASCADED_SYMBOL || ((LA627_0 >= CATALOG_NAME_SYMBOL) && (LA627_0 <= CHANGED_SYMBOL)) || LA627_0 == CHARSET_SYMBOL || LA627_0 == CHECKSUM_SYMBOL || ((LA627_0 >= CIPHER_SYMBOL) && (LA627_0 <= CLIENT_SYMBOL)) || ((LA627_0 >= CLOSE_SYMBOL) && (LA627_0 <= CODE_SYMBOL)) || LA627_0 == COLLATION_SYMBOL || ((LA627_0 >= COLUMNS_SYMBOL) && (LA627_0 <= COLUMN_NAME_SYMBOL)) || ((LA627_0 >= COMMENT_SYMBOL) && (LA627_0 <= COMPRESSED_SYMBOL)) || LA627_0 == CONCURRENT_SYMBOL || ((LA627_0 >= CONNECTION_SYMBOL) && (LA627_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA627_0 >= CONTAINS_SYMBOL) && (LA627_0 <= CONTEXT_SYMBOL)) || LA627_0 == CONTRIBUTORS_SYMBOL || LA627_0 == CPU_SYMBOL || LA627_0 == CUBE_SYMBOL || LA627_0 == CURRENT_SYMBOL || LA627_0 == CURSOR_NAME_SYMBOL || ((LA627_0 >= DATAFILE_SYMBOL) && (LA627_0 <= DATETIME_SYMBOL)) || LA627_0 == DATE_SYMBOL || ((LA627_0 >= DAY_SYMBOL) && (LA627_0 <= DEALLOCATE_SYMBOL)) || LA627_0 == DEFAULT_AUTH_SYMBOL || LA627_0 == DEFINER_SYMBOL || LA627_0 == DELAY_KEY_WRITE_SYMBOL || LA627_0 == DES_KEY_FILE_SYMBOL || LA627_0 == DIAGNOSTICS_SYMBOL || ((LA627_0 >= DIRECTORY_SYMBOL) && (LA627_0 <= DISK_SYMBOL)) || LA627_0 == DO_SYMBOL || ((LA627_0 >= DUMPFILE_SYMBOL) && (LA627_0 <= DYNAMIC_SYMBOL)) || LA627_0 == ENABLE_SYMBOL || LA627_0 == ENDS_SYMBOL || ((LA627_0 >= END_SYMBOL) && (LA627_0 <= ENUM_SYMBOL)) || ((LA627_0 >= ERRORS_SYMBOL) && (LA627_0 <= ERROR_SYMBOL)) || ((LA627_0 >= ESCAPE_SYMBOL) && (LA627_0 <= EVERY_SYMBOL)) || LA627_0 == EXECUTE_SYMBOL || LA627_0 == EXPANSION_SYMBOL || LA627_0 == EXPORT_SYMBOL || ((LA627_0 >= EXTENDED_SYMBOL) && (LA627_0 <= EXTENT_SIZE_SYMBOL)) || ((LA627_0 >= FAST_SYMBOL) && (LA627_0 <= FAULTS_SYMBOL)) || ((LA627_0 >= FILE_SYMBOL) && (LA627_0 <= FIXED_SYMBOL)) || LA627_0 == FLUSH_SYMBOL || LA627_0 == FORMAT_SYMBOL || LA627_0 == FOUND_SYMBOL || LA627_0 == FULL_SYMBOL || ((LA627_0 >= FUNCTION_SYMBOL) && (LA627_0 <= GET_FORMAT_SYMBOL)) || ((LA627_0 >= GLOBAL_SYMBOL) && (LA627_0 <= GRANTS_SYMBOL)) || ((LA627_0 >= HANDLER_SYMBOL) && (LA627_0 <= HASH_SYMBOL)) || LA627_0 == HELP_SYMBOL || ((LA627_0 >= HOSTS_SYMBOL) && (LA627_0 <= HOST_SYMBOL)) || ((LA627_0 >= HOUR_SYMBOL) && (LA627_0 <= IDENTIFIED_SYMBOL)) || LA627_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA627_0 >= IMPORT_SYMBOL) && (LA627_0 <= INDEXES_SYMBOL)) || LA627_0 == INITIAL_SIZE_SYMBOL || LA627_0 == INNODB_SYMBOL || LA627_0 == INSERT_METHOD_SYMBOL || LA627_0 == INSTALL_SYMBOL || LA627_0 == INVOKER_SYMBOL || LA627_0 == IO_SYMBOL || ((LA627_0 >= IPC_SYMBOL) && (LA627_0 <= ISSUER_SYMBOL)) || LA627_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA627_0 >= LANGUAGE_SYMBOL) && (LA627_0 <= LAST_SYMBOL)) || LA627_0 == LEAVES_SYMBOL || LA627_0 == LESS_SYMBOL || LA627_0 == LEVEL_SYMBOL || LA627_0 == LINESTRING_SYMBOL || LA627_0 == LIST_SYMBOL || LA627_0 == LOCAL_SYMBOL || LA627_0 == LOCKS_SYMBOL || LA627_0 == LOGFILE_SYMBOL || LA627_0 == LOGS_SYMBOL || LA627_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA627_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA627_0 <= MASTER_SSL_SYMBOL)) || ((LA627_0 >= MASTER_SYMBOL) && (LA627_0 <= MASTER_USER_SYMBOL)) || ((LA627_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA627_0 <= MAX_SIZE_SYMBOL)) || ((LA627_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA627_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA627_0 >= MEDIUM_SYMBOL) && (LA627_0 <= MICROSECOND_SYMBOL)) || LA627_0 == MIGRATE_SYMBOL || ((LA627_0 >= MINUTE_SYMBOL) && (LA627_0 <= MIN_ROWS_SYMBOL)) || LA627_0 == MODE_SYMBOL || LA627_0 == MODIFY_SYMBOL || ((LA627_0 >= MONTH_SYMBOL) && (LA627_0 <= MULTILINESTRING_SYMBOL)) || ((LA627_0 >= MULTIPOINT_SYMBOL) && (LA627_0 <= MULTIPOLYGON_SYMBOL)) || ((LA627_0 >= MUTEX_SYMBOL) && (LA627_0 <= NATIONAL_SYMBOL)) || LA627_0 == NCHAR_SYMBOL || LA627_0 == NDBCLUSTER_SYMBOL || ((LA627_0 >= NEW_SYMBOL) && (LA627_0 <= NONE_SYMBOL)) || ((LA627_0 >= NO_SYMBOL) && (LA627_0 <= NO_WAIT_SYMBOL)) || LA627_0 == NUMBER_SYMBOL || LA627_0 == NVARCHAR_SYMBOL || ((LA627_0 >= OFFSET_SYMBOL) && (LA627_0 <= ONE_SYMBOL)) || LA627_0 == OPEN_SYMBOL || LA627_0 == OPTIONS_SYMBOL || ((LA627_0 >= OWNER_SYMBOL) && (LA627_0 <= PAGE_SYMBOL)) || ((LA627_0 >= PARSER_SYMBOL) && (LA627_0 <= PARTITION_SYMBOL)) || ((LA627_0 >= PASSWORD_SYMBOL) && (LA627_0 <= PLUGIN_SYMBOL)) || ((LA627_0 >= POINT_SYMBOL) && (LA627_0 <= PORT_SYMBOL)) || ((LA627_0 >= PREPARE_SYMBOL) && (LA627_0 <= PREV_SYMBOL)) || LA627_0 == PRIVILEGES_SYMBOL || ((LA627_0 >= PROCESSLIST_SYMBOL) && (LA627_0 <= PROXY_SYMBOL)) || ((LA627_0 >= QUARTER_SYMBOL) && (LA627_0 <= QUICK_SYMBOL)) || LA627_0 == READ_ONLY_SYMBOL || ((LA627_0 >= REBUILD_SYMBOL) && (LA627_0 <= REDUNDANT_SYMBOL)) || ((LA627_0 >= RELAYLOG_SYMBOL) && (LA627_0 <= RELAY_THREAD_SYMBOL)) || ((LA627_0 >= RELOAD_SYMBOL) && (LA627_0 <= REMOVE_SYMBOL)) || ((LA627_0 >= REORGANIZE_SYMBOL) && (LA627_0 <= REPEATABLE_SYMBOL)) || LA627_0 == REPLICATION_SYMBOL || LA627_0 == RESET_SYMBOL || LA627_0 == RESTORE_SYMBOL || ((LA627_0 >= RESUME_SYMBOL) && (LA627_0 <= RETURNS_SYMBOL)) || LA627_0 == REVERSE_SYMBOL || ((LA627_0 >= ROLLBACK_SYMBOL) && (LA627_0 <= SCHEDULE_SYMBOL)) || LA627_0 == SCHEMA_NAME_SYMBOL || ((LA627_0 >= SECOND_SYMBOL) && (LA627_0 <= SECURITY_SYMBOL)) || ((LA627_0 >= SERIALIZABLE_SYMBOL) && (LA627_0 <= SERIAL_SYMBOL)) || ((LA627_0 >= SERVER_SYMBOL) && (LA627_0 <= SESSION_SYMBOL)) || LA627_0 == SHARE_SYMBOL || LA627_0 == SHUTDOWN_SYMBOL || ((LA627_0 >= SIGNED_SYMBOL) && (LA627_0 <= SIMPLE_SYMBOL)) || ((LA627_0 >= SLAVE_SYMBOL) && (LA627_0 <= SLOW_SYMBOL)) || ((LA627_0 >= SNAPSHOT_SYMBOL) && (LA627_0 <= SOURCE_SYMBOL)) || ((LA627_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA627_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA627_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA627_0 <= SQL_CACHE_SYMBOL)) || LA627_0 == SQL_NO_CACHE_SYMBOL || LA627_0 == SQL_THREAD_SYMBOL || ((LA627_0 >= STARTS_SYMBOL) && (LA627_0 <= STATUS_SYMBOL)) || ((LA627_0 >= STOP_SYMBOL) && (LA627_0 <= STORAGE_SYMBOL)) || ((LA627_0 >= STRING_SYMBOL) && (LA627_0 <= SUBPARTITION_SYMBOL)) || ((LA627_0 >= SUPER_SYMBOL) && (LA627_0 <= SWITCHES_SYMBOL)) || ((LA627_0 >= TABLESPACE_SYMBOL) && (LA627_0 <= TABLE_NAME_SYMBOL)) || ((LA627_0 >= TEMPORARY_SYMBOL) && (LA627_0 <= TEMPTABLE_SYMBOL)) || ((LA627_0 >= TEXT_SYMBOL) && (LA627_0 <= THAN_SYMBOL)) || ((LA627_0 >= TIMESTAMP_ADD_SYMBOL) && (LA627_0 <= TIME_SYMBOL)) || ((LA627_0 >= TRANSACTION_SYMBOL) && (LA627_0 <= TRIGGERS_SYMBOL)) || ((LA627_0 >= TRUNCATE_SYMBOL) && (LA627_0 <= UDF_RETURNS_SYMBOL)) || ((LA627_0 >= UNCOMMITTED_SYMBOL) && (LA627_0 <= UNDEFINED_SYMBOL)) || ((LA627_0 >= UNDOFILE_SYMBOL) && (LA627_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA627_0 >= UNICODE_SYMBOL) && (LA627_0 <= UNINSTALL_SYMBOL)) || LA627_0 == UNKNOWN_SYMBOL || LA627_0 == UNTIL_SYMBOL || LA627_0 == UPGRADE_SYMBOL || ((LA627_0 >= USER_RESOURCES_SYMBOL) && (LA627_0 <= USE_FRM_SYMBOL)) || LA627_0 == VALUE_SYMBOL || LA627_0 == VARIABLES_SYMBOL || ((LA627_0 >= VIEW_SYMBOL) && (LA627_0 <= WEIGHT_STRING_SYMBOL)) || ((LA627_0 >= WORK_SYMBOL) && (LA627_0 <= WRAPPER_SYMBOL)) || LA627_0 == X509_SYMBOL || ((LA627_0 >= XA_SYMBOL) && (LA627_0 <= XML_SYMBOL)) || LA627_0 == YEAR_SYMBOL))
                {
                    alt627=3;
                }
                else if ( (LA627_0 == SQLWARNING_SYMBOL))
                {
                    alt627=4;
                }
                else if ( (LA627_0 == NOT_SYMBOL))
                {
                    alt627=5;
                }
                else if ( (LA627_0 == SQLEXCEPTION_SYMBOL))
                {
                    alt627=6;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 627;
                    EXCEPTION->state        = 0;


                    goto rulehandler_conditionEx;

                }
            }
            switch (alt627)
            {
        	case 1:
        	    // MySQL.g:2036:2: INTEGER
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        INTEGER2378 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_handler_condition11717);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulehandler_conditionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INTEGER2378_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER2378));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER2378_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2037:4: SQLSTATE_SYMBOL ( VALUE_SYMBOL )? string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SQLSTATE_SYMBOL2379 = (pANTLR3_COMMON_TOKEN) MATCHT(SQLSTATE_SYMBOL, &FOLLOW_SQLSTATE_SYMBOL_in_handler_condition11722);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulehandler_conditionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SQLSTATE_SYMBOL2379_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SQLSTATE_SYMBOL2379));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SQLSTATE_SYMBOL2379_tree);
        	        }

        	        // MySQL.g:2037:20: ( VALUE_SYMBOL )?
        	        {
        	            int alt626=2;
        	            switch ( LA(1) )
        	            {
        	                case VALUE_SYMBOL:
        	                	{
        	                		alt626=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt626)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2037:20: VALUE_SYMBOL
        	        	    {
        	        	        VALUE_SYMBOL2380 = (pANTLR3_COMMON_TOKEN) MATCHT(VALUE_SYMBOL, &FOLLOW_VALUE_SYMBOL_in_handler_condition11724);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulehandler_conditionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        VALUE_SYMBOL2380_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VALUE_SYMBOL2380));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, VALUE_SYMBOL2380_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_handler_condition11727);
        	        string_literal2381=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulehandler_conditionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal2381.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2038:4: identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_identifier_in_handler_condition11732);
        	        identifier2382=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulehandler_conditionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2382.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:2039:4: SQLWARNING_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SQLWARNING_SYMBOL2383 = (pANTLR3_COMMON_TOKEN) MATCHT(SQLWARNING_SYMBOL, &FOLLOW_SQLWARNING_SYMBOL_in_handler_condition11737);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulehandler_conditionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SQLWARNING_SYMBOL2383_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SQLWARNING_SYMBOL2383));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SQLWARNING_SYMBOL2383_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:2040:4: NOT_SYMBOL FOUND_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NOT_SYMBOL2384 = (pANTLR3_COMMON_TOKEN) MATCHT(NOT_SYMBOL, &FOLLOW_NOT_SYMBOL_in_handler_condition11742);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulehandler_conditionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NOT_SYMBOL2384_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NOT_SYMBOL2384));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NOT_SYMBOL2384_tree);
        	        }

        	        FOUND_SYMBOL2385 = (pANTLR3_COMMON_TOKEN) MATCHT(FOUND_SYMBOL, &FOLLOW_FOUND_SYMBOL_in_handler_condition11744);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulehandler_conditionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FOUND_SYMBOL2385_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOUND_SYMBOL2385));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FOUND_SYMBOL2385_tree);
        	        }

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:2041:4: SQLEXCEPTION_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SQLEXCEPTION_SYMBOL2386 = (pANTLR3_COMMON_TOKEN) MATCHT(SQLEXCEPTION_SYMBOL, &FOLLOW_SQLEXCEPTION_SYMBOL_in_handler_condition11749);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulehandler_conditionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SQLEXCEPTION_SYMBOL2386_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SQLEXCEPTION_SYMBOL2386));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SQLEXCEPTION_SYMBOL2386_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulehandler_conditionEx; /* Prevent compiler warnings */
    rulehandler_conditionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end handler_condition */

/**
 * $ANTLR start case_statement
 * MySQL.g:2045:1: case_statement : CASE_SYMBOL ( expression )? ( when_expression then_statement )+ ( else_statement )? END_SYMBOL CASE_SYMBOL ;
 */
static MySQLParser_case_statement_return
case_statement(pMySQLParser ctx)
{
    MySQLParser_case_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    CASE_SYMBOL2387;
    pANTLR3_COMMON_TOKEN    END_SYMBOL2392;
    pANTLR3_COMMON_TOKEN    CASE_SYMBOL2393;
    MySQLParser_expression_return expression2388;
    #undef	RETURN_TYPE_expression2388
    #define	RETURN_TYPE_expression2388 MySQLParser_expression_return

    MySQLParser_when_expression_return when_expression2389;
    #undef	RETURN_TYPE_when_expression2389
    #define	RETURN_TYPE_when_expression2389 MySQLParser_when_expression_return

    MySQLParser_then_statement_return then_statement2390;
    #undef	RETURN_TYPE_then_statement2390
    #define	RETURN_TYPE_then_statement2390 MySQLParser_then_statement_return

    MySQLParser_else_statement_return else_statement2391;
    #undef	RETURN_TYPE_else_statement2391
    #define	RETURN_TYPE_else_statement2391 MySQLParser_else_statement_return

    pANTLR3_BASE_TREE CASE_SYMBOL2387_tree;
    pANTLR3_BASE_TREE END_SYMBOL2392_tree;
    pANTLR3_BASE_TREE CASE_SYMBOL2393_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CASE_SYMBOL2387       = NULL;
    END_SYMBOL2392       = NULL;
    CASE_SYMBOL2393       = NULL;
    expression2388.tree = NULL;

    when_expression2389.tree = NULL;

    then_statement2390.tree = NULL;

    else_statement2391.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CASE_SYMBOL2387_tree   = NULL;
    END_SYMBOL2392_tree   = NULL;
    CASE_SYMBOL2393_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2045:15: ( CASE_SYMBOL ( expression )? ( when_expression then_statement )+ ( else_statement )? END_SYMBOL CASE_SYMBOL )
        // MySQL.g:2046:2: CASE_SYMBOL ( expression )? ( when_expression then_statement )+ ( else_statement )? END_SYMBOL CASE_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            CASE_SYMBOL2387 = (pANTLR3_COMMON_TOKEN) MATCHT(CASE_SYMBOL, &FOLLOW_CASE_SYMBOL_in_case_statement11759);
            if  (HASEXCEPTION())
            {
                goto rulecase_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CASE_SYMBOL2387_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CASE_SYMBOL2387));
            ADAPTOR->addChild(ADAPTOR, root_0, CASE_SYMBOL2387_tree);
            }

            // MySQL.g:2046:14: ( expression )?
            {
                int alt628=2;
                {
                    int LA628_0 = LA(1);
                    if ( (LA628_0 == BITWISE_NOT_OPERATOR || LA628_0 == DATE_SYMBOL || LA628_0 == INTERVAL_SYMBOL || LA628_0 == LOGICAL_NOT_OPERATOR || LA628_0 == MINUS_OPERATOR || LA628_0 == NCHAR_TEXT || LA628_0 == NOT2_SYMBOL || LA628_0 == NOT_SYMBOL || LA628_0 == PLUS_OPERATOR || LA628_0 == SINGLE_QUOTED_TEXT || ((LA628_0 >= TIMESTAMP_SYMBOL) && (LA628_0 <= TIME_SYMBOL)) || LA628_0 == UNDERSCORE_CHARSET))
                    {
                        alt628=1;
                    }
                    else if ( ((((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)))||((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))) && (LA628_0 == DOUBLE_QUOTED_TEXT))
                    {
                        alt628=1;
                    }
                    else if ( (LA628_0 == FALSE_SYMBOL || LA628_0 == FLOAT || ((LA628_0 >= HEXNUMBER) && (LA628_0 <= HEXSTRING)) || LA628_0 == INTEGER || LA628_0 == TRUE_SYMBOL))
                    {
                        alt628=1;
                    }
                    else if ( ((SERVER_VERSION >= 50003)) && (((LA628_0 >= BITNUMBER) && (LA628_0 <= BITSTRING))))
                    {
                        alt628=1;
                    }
                    else if ( (((LA628_0 >= ACTION_SYMBOL) && (LA628_0 <= ADDDATE_SYMBOL)) || ((LA628_0 >= AFTER_SYMBOL) && (LA628_0 <= ALGORITHM_SYMBOL)) || LA628_0 == ANALYZE_SYMBOL || ((LA628_0 >= ANY_SYMBOL) && (LA628_0 <= ASCII_SYMBOL)) || ((LA628_0 >= AT_AT_SIGN_SYMBOL) && (LA628_0 <= BACKUP_SYMBOL)) || LA628_0 == BACK_TICK_QUOTED_ID || LA628_0 == BEGIN_SYMBOL || ((LA628_0 >= BINARY_SYMBOL) && (LA628_0 <= BINLOG_SYMBOL)) || ((LA628_0 >= BIT_AND_SYMBOL) && (LA628_0 <= BIT_XOR_SYMBOL)) || ((LA628_0 >= BLOCK_SYMBOL) && (LA628_0 <= BOOL_SYMBOL)) || ((LA628_0 >= BTREE_SYMBOL) && (LA628_0 <= BYTE_SYMBOL)) || LA628_0 == CACHE_SYMBOL || LA628_0 == CASCADED_SYMBOL || ((LA628_0 >= CASE_SYMBOL) && (LA628_0 <= CHANGED_SYMBOL)) || ((LA628_0 >= CHARSET_SYMBOL) && (LA628_0 <= CHECKSUM_SYMBOL)) || ((LA628_0 >= CIPHER_SYMBOL) && (LA628_0 <= CLIENT_SYMBOL)) || ((LA628_0 >= CLOSE_SYMBOL) && (LA628_0 <= CODE_SYMBOL)) || LA628_0 == COLLATION_SYMBOL || ((LA628_0 >= COLUMNS_SYMBOL) && (LA628_0 <= COLUMN_NAME_SYMBOL)) || ((LA628_0 >= COMMENT_SYMBOL) && (LA628_0 <= COMPRESSED_SYMBOL)) || LA628_0 == CONCURRENT_SYMBOL || ((LA628_0 >= CONNECTION_SYMBOL) && (LA628_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA628_0 >= CONTAINS_SYMBOL) && (LA628_0 <= CONTEXT_SYMBOL)) || ((LA628_0 >= CONTRIBUTORS_SYMBOL) && (LA628_0 <= CPU_SYMBOL)) || ((LA628_0 >= CUBE_SYMBOL) && (LA628_0 <= CURRENT_SYMBOL)) || ((LA628_0 >= CURRENT_USER_SYMBOL) && (LA628_0 <= CURSOR_NAME_SYMBOL)) || LA628_0 == CURTIME_SYMBOL || ((LA628_0 >= DATABASE_SYMBOL) && (LA628_0 <= DATETIME_SYMBOL)) || LA628_0 == DATE_ADD_SYMBOL || LA628_0 == DATE_SUB_SYMBOL || ((LA628_0 >= DAY_SYMBOL) && (LA628_0 <= DEALLOCATE_SYMBOL)) || LA628_0 == DEFAULT_AUTH_SYMBOL || LA628_0 == DEFINER_SYMBOL || LA628_0 == DELAY_KEY_WRITE_SYMBOL || LA628_0 == DES_KEY_FILE_SYMBOL || LA628_0 == DIAGNOSTICS_SYMBOL || ((LA628_0 >= DIRECTORY_SYMBOL) && (LA628_0 <= DISK_SYMBOL)) || LA628_0 == DOT_SYMBOL || LA628_0 == DO_SYMBOL || ((LA628_0 >= DUMPFILE_SYMBOL) && (LA628_0 <= DYNAMIC_SYMBOL)) || LA628_0 == ENABLE_SYMBOL || LA628_0 == ENDS_SYMBOL || ((LA628_0 >= END_SYMBOL) && (LA628_0 <= ENUM_SYMBOL)) || ((LA628_0 >= ERRORS_SYMBOL) && (LA628_0 <= ERROR_SYMBOL)) || ((LA628_0 >= ESCAPE_SYMBOL) && (LA628_0 <= EVERY_SYMBOL)) || ((LA628_0 >= EXECUTE_SYMBOL) && (LA628_0 <= EXISTS_SYMBOL)) || LA628_0 == EXPANSION_SYMBOL || LA628_0 == EXPORT_SYMBOL || ((LA628_0 >= EXTENDED_SYMBOL) && (LA628_0 <= EXTRACT_SYMBOL)) || ((LA628_0 >= FAST_SYMBOL) && (LA628_0 <= FAULTS_SYMBOL)) || ((LA628_0 >= FILE_SYMBOL) && (LA628_0 <= FIXED_SYMBOL)) || LA628_0 == FLUSH_SYMBOL || LA628_0 == FORMAT_SYMBOL || LA628_0 == FOUND_SYMBOL || LA628_0 == FULL_SYMBOL || ((LA628_0 >= FUNCTION_SYMBOL) && (LA628_0 <= GET_FORMAT_SYMBOL)) || ((LA628_0 >= GLOBAL_SYMBOL) && (LA628_0 <= GRANTS_SYMBOL)) || LA628_0 == GROUP_CONCAT_SYMBOL || ((LA628_0 >= HANDLER_SYMBOL) && (LA628_0 <= HASH_SYMBOL)) || LA628_0 == HELP_SYMBOL || ((LA628_0 >= HOSTS_SYMBOL) && (LA628_0 <= HOST_SYMBOL)) || ((LA628_0 >= HOUR_SYMBOL) && (LA628_0 <= IGNORE_SERVER_IDS_SYMBOL)) || ((LA628_0 >= IMPORT_SYMBOL) && (LA628_0 <= INDEXES_SYMBOL)) || LA628_0 == INITIAL_SIZE_SYMBOL || LA628_0 == INNODB_SYMBOL || ((LA628_0 >= INSERT_METHOD_SYMBOL) && (LA628_0 <= INSTALL_SYMBOL)) || LA628_0 == INVOKER_SYMBOL || LA628_0 == IO_SYMBOL || ((LA628_0 >= IPC_SYMBOL) && (LA628_0 <= ISSUER_SYMBOL)) || LA628_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA628_0 >= LANGUAGE_SYMBOL) && (LA628_0 <= LAST_SYMBOL)) || LA628_0 == LEAVES_SYMBOL || LA628_0 == LEFT_SYMBOL || LA628_0 == LESS_SYMBOL || LA628_0 == LEVEL_SYMBOL || LA628_0 == LINESTRING_SYMBOL || LA628_0 == LIST_SYMBOL || LA628_0 == LOCAL_SYMBOL || LA628_0 == LOCKS_SYMBOL || LA628_0 == LOGFILE_SYMBOL || LA628_0 == LOGS_SYMBOL || LA628_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA628_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA628_0 <= MASTER_SSL_SYMBOL)) || ((LA628_0 >= MASTER_SYMBOL) && (LA628_0 <= MATCH_SYMBOL)) || ((LA628_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA628_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA628_0 >= MEDIUM_SYMBOL) && (LA628_0 <= MICROSECOND_SYMBOL)) || LA628_0 == MIGRATE_SYMBOL || ((LA628_0 >= MINUTE_SYMBOL) && (LA628_0 <= MIN_SYMBOL)) || LA628_0 == MODE_SYMBOL || LA628_0 == MODIFY_SYMBOL || ((LA628_0 >= MOD_SYMBOL) && (LA628_0 <= MULTILINESTRING_SYMBOL)) || ((LA628_0 >= MULTIPOINT_SYMBOL) && (LA628_0 <= MULTIPOLYGON_SYMBOL)) || ((LA628_0 >= MUTEX_SYMBOL) && (LA628_0 <= NATIONAL_SYMBOL)) || LA628_0 == NCHAR_SYMBOL || LA628_0 == NDBCLUSTER_SYMBOL || ((LA628_0 >= NEW_SYMBOL) && (LA628_0 <= NONE_SYMBOL)) || ((LA628_0 >= NOW_SYMBOL) && (LA628_0 <= NO_WAIT_SYMBOL)) || LA628_0 == NULL2_SYMBOL || ((LA628_0 >= NULL_SYMBOL) && (LA628_0 <= NUMBER_SYMBOL)) || LA628_0 == NVARCHAR_SYMBOL || ((LA628_0 >= OFFSET_SYMBOL) && (LA628_0 <= ONE_SYMBOL)) || ((LA628_0 >= OPEN_PAR_SYMBOL) && (LA628_0 <= OPEN_SYMBOL)) || LA628_0 == OPTIONS_SYMBOL || ((LA628_0 >= OWNER_SYMBOL) && (LA628_0 <= PARAM_MARKER)) || ((LA628_0 >= PARSER_SYMBOL) && (LA628_0 <= PARTITION_SYMBOL)) || ((LA628_0 >= PASSWORD_SYMBOL) && (LA628_0 <= PLUGIN_SYMBOL)) || ((LA628_0 >= POINT_SYMBOL) && (LA628_0 <= POSITION_SYMBOL)) || ((LA628_0 >= PREPARE_SYMBOL) && (LA628_0 <= PREV_SYMBOL)) || LA628_0 == PRIVILEGES_SYMBOL || ((LA628_0 >= PROCESSLIST_SYMBOL) && (LA628_0 <= PROXY_SYMBOL)) || ((LA628_0 >= QUARTER_SYMBOL) && (LA628_0 <= QUICK_SYMBOL)) || LA628_0 == READ_ONLY_SYMBOL || ((LA628_0 >= REBUILD_SYMBOL) && (LA628_0 <= REDUNDANT_SYMBOL)) || ((LA628_0 >= RELAYLOG_SYMBOL) && (LA628_0 <= RELAY_THREAD_SYMBOL)) || ((LA628_0 >= RELOAD_SYMBOL) && (LA628_0 <= REMOVE_SYMBOL)) || ((LA628_0 >= REORGANIZE_SYMBOL) && (LA628_0 <= REPLICATION_SYMBOL)) || LA628_0 == RESET_SYMBOL || LA628_0 == RESTORE_SYMBOL || ((LA628_0 >= RESUME_SYMBOL) && (LA628_0 <= RETURNS_SYMBOL)) || LA628_0 == REVERSE_SYMBOL || LA628_0 == RIGHT_SYMBOL || ((LA628_0 >= ROLLBACK_SYMBOL) && (LA628_0 <= SCHEDULE_SYMBOL)) || LA628_0 == SCHEMA_NAME_SYMBOL || ((LA628_0 >= SECOND_SYMBOL) && (LA628_0 <= SECURITY_SYMBOL)) || ((LA628_0 >= SERIALIZABLE_SYMBOL) && (LA628_0 <= SERIAL_SYMBOL)) || ((LA628_0 >= SERVER_SYMBOL) && (LA628_0 <= SESSION_SYMBOL)) || LA628_0 == SHARE_SYMBOL || LA628_0 == SHUTDOWN_SYMBOL || ((LA628_0 >= SIGNED_SYMBOL) && (LA628_0 <= SIMPLE_SYMBOL)) || ((LA628_0 >= SLAVE_SYMBOL) && (LA628_0 <= SLOW_SYMBOL)) || ((LA628_0 >= SNAPSHOT_SYMBOL) && (LA628_0 <= SOURCE_SYMBOL)) || ((LA628_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA628_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA628_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA628_0 <= SQL_CACHE_SYMBOL)) || LA628_0 == SQL_NO_CACHE_SYMBOL || LA628_0 == SQL_THREAD_SYMBOL || ((LA628_0 >= STARTS_SYMBOL) && (LA628_0 <= STATUS_SYMBOL)) || LA628_0 == STDDEV_SAMP_SYMBOL || ((LA628_0 >= STD_SYMBOL) && (LA628_0 <= STORAGE_SYMBOL)) || ((LA628_0 >= STRING_SYMBOL) && (LA628_0 <= SUBPARTITION_SYMBOL)) || LA628_0 == SUBSTRING_SYMBOL || ((LA628_0 >= SUM_SYMBOL) && (LA628_0 <= SYSDATE_SYMBOL)) || ((LA628_0 >= TABLESPACE_SYMBOL) && (LA628_0 <= TABLE_NAME_SYMBOL)) || ((LA628_0 >= TEMPORARY_SYMBOL) && (LA628_0 <= TEMPTABLE_SYMBOL)) || ((LA628_0 >= TEXT_SYMBOL) && (LA628_0 <= THAN_SYMBOL)) || ((LA628_0 >= TIMESTAMP_ADD_SYMBOL) && (LA628_0 <= TIMESTAMP_DIFF_SYMBOL)) || ((LA628_0 >= TRANSACTION_SYMBOL) && (LA628_0 <= TRIGGERS_SYMBOL)) || LA628_0 == TRIM_SYMBOL || ((LA628_0 >= TRUNCATE_SYMBOL) && (LA628_0 <= UDF_RETURNS_SYMBOL)) || ((LA628_0 >= UNCOMMITTED_SYMBOL) && (LA628_0 <= UNDEFINED_SYMBOL)) || ((LA628_0 >= UNDOFILE_SYMBOL) && (LA628_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA628_0 >= UNICODE_SYMBOL) && (LA628_0 <= UNINSTALL_SYMBOL)) || LA628_0 == UNKNOWN_SYMBOL || LA628_0 == UNTIL_SYMBOL || LA628_0 == UPGRADE_SYMBOL || ((LA628_0 >= USER_RESOURCES_SYMBOL) && (LA628_0 <= USE_FRM_SYMBOL)) || ((LA628_0 >= UTC_DATE_SYMBOL) && (LA628_0 <= VALUE_SYMBOL)) || ((LA628_0 >= VARIABLES_SYMBOL) && (LA628_0 <= VARIANCE_SYMBOL)) || LA628_0 == VAR_SAMP_SYMBOL || ((LA628_0 >= VIEW_SYMBOL) && (LA628_0 <= WEIGHT_STRING_SYMBOL)) || ((LA628_0 >= WORK_SYMBOL) && (LA628_0 <= WRAPPER_SYMBOL)) || LA628_0 == X509_SYMBOL || ((LA628_0 >= XA_SYMBOL) && (LA628_0 <= XML_SYMBOL)) || LA628_0 == YEAR_SYMBOL || LA628_0 == 732))
                    {
                        alt628=1;
                    }
                }
                switch (alt628)
                {
            	case 1:
            	    // MySQL.g:2046:14: expression
            	    {
            	        FOLLOWPUSH(FOLLOW_expression_in_case_statement11761);
            	        expression2388=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecase_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2388.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:2046:26: ( when_expression then_statement )+
            {
                int cnt629=0;

                for (;;)
                {
                    int alt629=2;
            	switch ( LA(1) )
            	{
            	case WHEN_SYMBOL:
            		{
            			alt629=1;
            		}
            	    break;

            	}

            	switch (alt629)
            	{
            	    case 1:
            	        // MySQL.g:2046:27: when_expression then_statement
            	        {
            	            FOLLOWPUSH(FOLLOW_when_expression_in_case_statement11765);
            	            when_expression2389=when_expression(ctx);

            	            FOLLOWPOP();
            	            if  (HASEXCEPTION())
            	            {
            	                goto rulecase_statementEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, when_expression2389.tree);

            	            FOLLOWPUSH(FOLLOW_then_statement_in_case_statement11767);
            	            then_statement2390=then_statement(ctx);

            	            FOLLOWPOP();
            	            if  (HASEXCEPTION())
            	            {
            	                goto rulecase_statementEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, then_statement2390.tree);

            	        }
            	        break;

            	    default:

            		if ( cnt629 >= 1 )
            		{
            		    goto loop629;
            		}
            		if (BACKTRACKING>0)
            		{
            		    FAILEDFLAG = ANTLR3_TRUE;
            		    return retval;
            		}

            		/* mismatchedSetEx()
            		 */
            		CONSTRUCTEX();
            		EXCEPTION->type = ANTLR3_EARLY_EXIT_EXCEPTION;
            		EXCEPTION->name = (void *)ANTLR3_EARLY_EXIT_NAME;


            		goto rulecase_statementEx;
            	}
            	cnt629++;
                }
                loop629: ;	/* Jump to here if this rule does not match */
            }

            // MySQL.g:2046:60: ( else_statement )?
            {
                int alt630=2;
                switch ( LA(1) )
                {
                    case ELSE_SYMBOL:
                    	{
                    		alt630=1;
                    	}
                        break;
                }

                switch (alt630)
                {
            	case 1:
            	    // MySQL.g:2046:60: else_statement
            	    {
            	        FOLLOWPUSH(FOLLOW_else_statement_in_case_statement11771);
            	        else_statement2391=else_statement(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecase_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, else_statement2391.tree);

            	    }
            	    break;

                }
            }

            END_SYMBOL2392 = (pANTLR3_COMMON_TOKEN) MATCHT(END_SYMBOL, &FOLLOW_END_SYMBOL_in_case_statement11774);
            if  (HASEXCEPTION())
            {
                goto rulecase_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            END_SYMBOL2392_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, END_SYMBOL2392));
            ADAPTOR->addChild(ADAPTOR, root_0, END_SYMBOL2392_tree);
            }

            CASE_SYMBOL2393 = (pANTLR3_COMMON_TOKEN) MATCHT(CASE_SYMBOL, &FOLLOW_CASE_SYMBOL_in_case_statement11776);
            if  (HASEXCEPTION())
            {
                goto rulecase_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CASE_SYMBOL2393_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CASE_SYMBOL2393));
            ADAPTOR->addChild(ADAPTOR, root_0, CASE_SYMBOL2393_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulecase_statementEx; /* Prevent compiler warnings */
    rulecase_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end case_statement */

/**
 * $ANTLR start then_statement
 * MySQL.g:2049:1: then_statement : THEN_SYMBOL ^ compound_statement_list ;
 */
static MySQLParser_then_statement_return
then_statement(pMySQLParser ctx)
{
    MySQLParser_then_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    THEN_SYMBOL2394;
    MySQLParser_compound_statement_list_return compound_statement_list2395;
    #undef	RETURN_TYPE_compound_statement_list2395
    #define	RETURN_TYPE_compound_statement_list2395 MySQLParser_compound_statement_list_return

    pANTLR3_BASE_TREE THEN_SYMBOL2394_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    THEN_SYMBOL2394       = NULL;
    compound_statement_list2395.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    THEN_SYMBOL2394_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2049:15: ( THEN_SYMBOL ^ compound_statement_list )
        // MySQL.g:2050:2: THEN_SYMBOL ^ compound_statement_list
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            THEN_SYMBOL2394 = (pANTLR3_COMMON_TOKEN) MATCHT(THEN_SYMBOL, &FOLLOW_THEN_SYMBOL_in_then_statement11785);
            if  (HASEXCEPTION())
            {
                goto rulethen_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            THEN_SYMBOL2394_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, THEN_SYMBOL2394))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, THEN_SYMBOL2394_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_compound_statement_list_in_then_statement11788);
            compound_statement_list2395=compound_statement_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulethen_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, compound_statement_list2395.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto rulethen_statementEx; /* Prevent compiler warnings */
    rulethen_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end then_statement */

/**
 * $ANTLR start else_statement
 * MySQL.g:2053:1: else_statement : ELSE_SYMBOL ^ compound_statement_list ;
 */
static MySQLParser_else_statement_return
else_statement(pMySQLParser ctx)
{
    MySQLParser_else_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    ELSE_SYMBOL2396;
    MySQLParser_compound_statement_list_return compound_statement_list2397;
    #undef	RETURN_TYPE_compound_statement_list2397
    #define	RETURN_TYPE_compound_statement_list2397 MySQLParser_compound_statement_list_return

    pANTLR3_BASE_TREE ELSE_SYMBOL2396_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ELSE_SYMBOL2396       = NULL;
    compound_statement_list2397.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ELSE_SYMBOL2396_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2053:15: ( ELSE_SYMBOL ^ compound_statement_list )
        // MySQL.g:2054:2: ELSE_SYMBOL ^ compound_statement_list
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            ELSE_SYMBOL2396 = (pANTLR3_COMMON_TOKEN) MATCHT(ELSE_SYMBOL, &FOLLOW_ELSE_SYMBOL_in_else_statement11797);
            if  (HASEXCEPTION())
            {
                goto ruleelse_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ELSE_SYMBOL2396_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ELSE_SYMBOL2396))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, ELSE_SYMBOL2396_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_compound_statement_list_in_else_statement11800);
            compound_statement_list2397=compound_statement_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleelse_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, compound_statement_list2397.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleelse_statementEx; /* Prevent compiler warnings */
    ruleelse_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end else_statement */

/**
 * $ANTLR start if_statement
 * MySQL.g:2057:1: if_statement : IF_SYMBOL if_body END_SYMBOL IF_SYMBOL ;
 */
static MySQLParser_if_statement_return
if_statement(pMySQLParser ctx)
{
    MySQLParser_if_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    IF_SYMBOL2398;
    pANTLR3_COMMON_TOKEN    END_SYMBOL2400;
    pANTLR3_COMMON_TOKEN    IF_SYMBOL2401;
    MySQLParser_if_body_return if_body2399;
    #undef	RETURN_TYPE_if_body2399
    #define	RETURN_TYPE_if_body2399 MySQLParser_if_body_return

    pANTLR3_BASE_TREE IF_SYMBOL2398_tree;
    pANTLR3_BASE_TREE END_SYMBOL2400_tree;
    pANTLR3_BASE_TREE IF_SYMBOL2401_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    IF_SYMBOL2398       = NULL;
    END_SYMBOL2400       = NULL;
    IF_SYMBOL2401       = NULL;
    if_body2399.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    IF_SYMBOL2398_tree   = NULL;
    END_SYMBOL2400_tree   = NULL;
    IF_SYMBOL2401_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2057:13: ( IF_SYMBOL if_body END_SYMBOL IF_SYMBOL )
        // MySQL.g:2058:2: IF_SYMBOL if_body END_SYMBOL IF_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            IF_SYMBOL2398 = (pANTLR3_COMMON_TOKEN) MATCHT(IF_SYMBOL, &FOLLOW_IF_SYMBOL_in_if_statement11809);
            if  (HASEXCEPTION())
            {
                goto ruleif_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            IF_SYMBOL2398_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IF_SYMBOL2398));
            ADAPTOR->addChild(ADAPTOR, root_0, IF_SYMBOL2398_tree);
            }

            FOLLOWPUSH(FOLLOW_if_body_in_if_statement11811);
            if_body2399=if_body(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleif_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, if_body2399.tree);

            END_SYMBOL2400 = (pANTLR3_COMMON_TOKEN) MATCHT(END_SYMBOL, &FOLLOW_END_SYMBOL_in_if_statement11813);
            if  (HASEXCEPTION())
            {
                goto ruleif_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            END_SYMBOL2400_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, END_SYMBOL2400));
            ADAPTOR->addChild(ADAPTOR, root_0, END_SYMBOL2400_tree);
            }

            IF_SYMBOL2401 = (pANTLR3_COMMON_TOKEN) MATCHT(IF_SYMBOL, &FOLLOW_IF_SYMBOL_in_if_statement11815);
            if  (HASEXCEPTION())
            {
                goto ruleif_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            IF_SYMBOL2401_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IF_SYMBOL2401));
            ADAPTOR->addChild(ADAPTOR, root_0, IF_SYMBOL2401_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleif_statementEx; /* Prevent compiler warnings */
    ruleif_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end if_statement */

/**
 * $ANTLR start if_body
 * MySQL.g:2061:1: if_body : expression then_statement ( ELSEIF_SYMBOL if_body | ELSE_SYMBOL compound_statement_list )? ;
 */
static MySQLParser_if_body_return
if_body(pMySQLParser ctx)
{
    MySQLParser_if_body_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    ELSEIF_SYMBOL2404;
    pANTLR3_COMMON_TOKEN    ELSE_SYMBOL2406;
    MySQLParser_expression_return expression2402;
    #undef	RETURN_TYPE_expression2402
    #define	RETURN_TYPE_expression2402 MySQLParser_expression_return

    MySQLParser_then_statement_return then_statement2403;
    #undef	RETURN_TYPE_then_statement2403
    #define	RETURN_TYPE_then_statement2403 MySQLParser_then_statement_return

    MySQLParser_if_body_return if_body2405;
    #undef	RETURN_TYPE_if_body2405
    #define	RETURN_TYPE_if_body2405 MySQLParser_if_body_return

    MySQLParser_compound_statement_list_return compound_statement_list2407;
    #undef	RETURN_TYPE_compound_statement_list2407
    #define	RETURN_TYPE_compound_statement_list2407 MySQLParser_compound_statement_list_return

    pANTLR3_BASE_TREE ELSEIF_SYMBOL2404_tree;
    pANTLR3_BASE_TREE ELSE_SYMBOL2406_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ELSEIF_SYMBOL2404       = NULL;
    ELSE_SYMBOL2406       = NULL;
    expression2402.tree = NULL;

    then_statement2403.tree = NULL;

    if_body2405.tree = NULL;

    compound_statement_list2407.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ELSEIF_SYMBOL2404_tree   = NULL;
    ELSE_SYMBOL2406_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2061:8: ( expression then_statement ( ELSEIF_SYMBOL if_body | ELSE_SYMBOL compound_statement_list )? )
        // MySQL.g:2062:2: expression then_statement ( ELSEIF_SYMBOL if_body | ELSE_SYMBOL compound_statement_list )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_expression_in_if_body11824);
            expression2402=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleif_bodyEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2402.tree);

            FOLLOWPUSH(FOLLOW_then_statement_in_if_body11826);
            then_statement2403=then_statement(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleif_bodyEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, then_statement2403.tree);

            // MySQL.g:2062:28: ( ELSEIF_SYMBOL if_body | ELSE_SYMBOL compound_statement_list )?
            {
                int alt631=3;
                switch ( LA(1) )
                {
                    case ELSEIF_SYMBOL:
                    	{
                    		alt631=1;
                    	}
                        break;
                    case ELSE_SYMBOL:
                    	{
                    		alt631=2;
                    	}
                        break;
                }

                switch (alt631)
                {
            	case 1:
            	    // MySQL.g:2062:29: ELSEIF_SYMBOL if_body
            	    {
            	        ELSEIF_SYMBOL2404 = (pANTLR3_COMMON_TOKEN) MATCHT(ELSEIF_SYMBOL, &FOLLOW_ELSEIF_SYMBOL_in_if_body11829);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleif_bodyEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ELSEIF_SYMBOL2404_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ELSEIF_SYMBOL2404));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ELSEIF_SYMBOL2404_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_if_body_in_if_body11831);
            	        if_body2405=if_body(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleif_bodyEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, if_body2405.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2062:53: ELSE_SYMBOL compound_statement_list
            	    {
            	        ELSE_SYMBOL2406 = (pANTLR3_COMMON_TOKEN) MATCHT(ELSE_SYMBOL, &FOLLOW_ELSE_SYMBOL_in_if_body11835);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleif_bodyEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ELSE_SYMBOL2406_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ELSE_SYMBOL2406));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ELSE_SYMBOL2406_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_compound_statement_list_in_if_body11837);
            	        compound_statement_list2407=compound_statement_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleif_bodyEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, compound_statement_list2407.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleif_bodyEx; /* Prevent compiler warnings */
    ruleif_bodyEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end if_body */

/**
 * $ANTLR start iterate_statement
 * MySQL.g:2065:1: iterate_statement : ITERATE_SYMBOL label_identifier ;
 */
static MySQLParser_iterate_statement_return
iterate_statement(pMySQLParser ctx)
{
    MySQLParser_iterate_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    ITERATE_SYMBOL2408;
    MySQLParser_label_identifier_return label_identifier2409;
    #undef	RETURN_TYPE_label_identifier2409
    #define	RETURN_TYPE_label_identifier2409 MySQLParser_label_identifier_return

    pANTLR3_BASE_TREE ITERATE_SYMBOL2408_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ITERATE_SYMBOL2408       = NULL;
    label_identifier2409.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ITERATE_SYMBOL2408_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2065:18: ( ITERATE_SYMBOL label_identifier )
        // MySQL.g:2066:2: ITERATE_SYMBOL label_identifier
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            ITERATE_SYMBOL2408 = (pANTLR3_COMMON_TOKEN) MATCHT(ITERATE_SYMBOL, &FOLLOW_ITERATE_SYMBOL_in_iterate_statement11848);
            if  (HASEXCEPTION())
            {
                goto ruleiterate_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ITERATE_SYMBOL2408_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ITERATE_SYMBOL2408));
            ADAPTOR->addChild(ADAPTOR, root_0, ITERATE_SYMBOL2408_tree);
            }

            FOLLOWPUSH(FOLLOW_label_identifier_in_iterate_statement11850);
            label_identifier2409=label_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleiterate_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, label_identifier2409.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleiterate_statementEx; /* Prevent compiler warnings */
    ruleiterate_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end iterate_statement */

/**
 * $ANTLR start leave_statement
 * MySQL.g:2069:1: leave_statement : LEAVE_SYMBOL label_identifier ;
 */
static MySQLParser_leave_statement_return
leave_statement(pMySQLParser ctx)
{
    MySQLParser_leave_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    LEAVE_SYMBOL2410;
    MySQLParser_label_identifier_return label_identifier2411;
    #undef	RETURN_TYPE_label_identifier2411
    #define	RETURN_TYPE_label_identifier2411 MySQLParser_label_identifier_return

    pANTLR3_BASE_TREE LEAVE_SYMBOL2410_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    LEAVE_SYMBOL2410       = NULL;
    label_identifier2411.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    LEAVE_SYMBOL2410_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2069:16: ( LEAVE_SYMBOL label_identifier )
        // MySQL.g:2070:2: LEAVE_SYMBOL label_identifier
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            LEAVE_SYMBOL2410 = (pANTLR3_COMMON_TOKEN) MATCHT(LEAVE_SYMBOL, &FOLLOW_LEAVE_SYMBOL_in_leave_statement11859);
            if  (HASEXCEPTION())
            {
                goto ruleleave_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            LEAVE_SYMBOL2410_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LEAVE_SYMBOL2410));
            ADAPTOR->addChild(ADAPTOR, root_0, LEAVE_SYMBOL2410_tree);
            }

            FOLLOWPUSH(FOLLOW_label_identifier_in_leave_statement11861);
            label_identifier2411=label_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleleave_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, label_identifier2411.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleleave_statementEx; /* Prevent compiler warnings */
    ruleleave_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end leave_statement */

/**
 * $ANTLR start return_statement
 * MySQL.g:2073:1: return_statement : RETURN_SYMBOL expression ;
 */
static MySQLParser_return_statement_return
return_statement(pMySQLParser ctx)
{
    MySQLParser_return_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    RETURN_SYMBOL2412;
    MySQLParser_expression_return expression2413;
    #undef	RETURN_TYPE_expression2413
    #define	RETURN_TYPE_expression2413 MySQLParser_expression_return

    pANTLR3_BASE_TREE RETURN_SYMBOL2412_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    RETURN_SYMBOL2412       = NULL;
    expression2413.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    RETURN_SYMBOL2412_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2073:17: ( RETURN_SYMBOL expression )
        // MySQL.g:2074:2: RETURN_SYMBOL expression
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            RETURN_SYMBOL2412 = (pANTLR3_COMMON_TOKEN) MATCHT(RETURN_SYMBOL, &FOLLOW_RETURN_SYMBOL_in_return_statement11870);
            if  (HASEXCEPTION())
            {
                goto rulereturn_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            RETURN_SYMBOL2412_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RETURN_SYMBOL2412));
            ADAPTOR->addChild(ADAPTOR, root_0, RETURN_SYMBOL2412_tree);
            }

            FOLLOWPUSH(FOLLOW_expression_in_return_statement11872);
            expression2413=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulereturn_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2413.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto rulereturn_statementEx; /* Prevent compiler warnings */
    rulereturn_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end return_statement */

/**
 * $ANTLR start get_diagnostics
 * MySQL.g:2077:1: get_diagnostics : GET_SYMBOL ( CURRENT_SYMBOL )? DIAGNOSTICS_SYMBOL ( statement_information_item ( COMMA_SYMBOL statement_information_item )* | CONDITION_SYMBOL INTEGER condition_information_item ( COMMA_SYMBOL condition_information_item )* ) ;
 */
static MySQLParser_get_diagnostics_return
get_diagnostics(pMySQLParser ctx)
{
    MySQLParser_get_diagnostics_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    GET_SYMBOL2414;
    pANTLR3_COMMON_TOKEN    CURRENT_SYMBOL2415;
    pANTLR3_COMMON_TOKEN    DIAGNOSTICS_SYMBOL2416;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2418;
    pANTLR3_COMMON_TOKEN    CONDITION_SYMBOL2420;
    pANTLR3_COMMON_TOKEN    INTEGER2421;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2423;
    MySQLParser_statement_information_item_return statement_information_item2417;
    #undef	RETURN_TYPE_statement_information_item2417
    #define	RETURN_TYPE_statement_information_item2417 MySQLParser_statement_information_item_return

    MySQLParser_statement_information_item_return statement_information_item2419;
    #undef	RETURN_TYPE_statement_information_item2419
    #define	RETURN_TYPE_statement_information_item2419 MySQLParser_statement_information_item_return

    MySQLParser_condition_information_item_return condition_information_item2422;
    #undef	RETURN_TYPE_condition_information_item2422
    #define	RETURN_TYPE_condition_information_item2422 MySQLParser_condition_information_item_return

    MySQLParser_condition_information_item_return condition_information_item2424;
    #undef	RETURN_TYPE_condition_information_item2424
    #define	RETURN_TYPE_condition_information_item2424 MySQLParser_condition_information_item_return

    pANTLR3_BASE_TREE GET_SYMBOL2414_tree;
    pANTLR3_BASE_TREE CURRENT_SYMBOL2415_tree;
    pANTLR3_BASE_TREE DIAGNOSTICS_SYMBOL2416_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2418_tree;
    pANTLR3_BASE_TREE CONDITION_SYMBOL2420_tree;
    pANTLR3_BASE_TREE INTEGER2421_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2423_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    GET_SYMBOL2414       = NULL;
    CURRENT_SYMBOL2415       = NULL;
    DIAGNOSTICS_SYMBOL2416       = NULL;
    COMMA_SYMBOL2418       = NULL;
    CONDITION_SYMBOL2420       = NULL;
    INTEGER2421       = NULL;
    COMMA_SYMBOL2423       = NULL;
    statement_information_item2417.tree = NULL;

    statement_information_item2419.tree = NULL;

    condition_information_item2422.tree = NULL;

    condition_information_item2424.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    GET_SYMBOL2414_tree   = NULL;
    CURRENT_SYMBOL2415_tree   = NULL;
    DIAGNOSTICS_SYMBOL2416_tree   = NULL;
    COMMA_SYMBOL2418_tree   = NULL;
    CONDITION_SYMBOL2420_tree   = NULL;
    INTEGER2421_tree   = NULL;
    COMMA_SYMBOL2423_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2077:16: ( GET_SYMBOL ( CURRENT_SYMBOL )? DIAGNOSTICS_SYMBOL ( statement_information_item ( COMMA_SYMBOL statement_information_item )* | CONDITION_SYMBOL INTEGER condition_information_item ( COMMA_SYMBOL condition_information_item )* ) )
        // MySQL.g:2078:2: GET_SYMBOL ( CURRENT_SYMBOL )? DIAGNOSTICS_SYMBOL ( statement_information_item ( COMMA_SYMBOL statement_information_item )* | CONDITION_SYMBOL INTEGER condition_information_item ( COMMA_SYMBOL condition_information_item )* )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            GET_SYMBOL2414 = (pANTLR3_COMMON_TOKEN) MATCHT(GET_SYMBOL, &FOLLOW_GET_SYMBOL_in_get_diagnostics11881);
            if  (HASEXCEPTION())
            {
                goto ruleget_diagnosticsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            GET_SYMBOL2414_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GET_SYMBOL2414));
            ADAPTOR->addChild(ADAPTOR, root_0, GET_SYMBOL2414_tree);
            }

            // MySQL.g:2078:13: ( CURRENT_SYMBOL )?
            {
                int alt632=2;
                switch ( LA(1) )
                {
                    case CURRENT_SYMBOL:
                    	{
                    		alt632=1;
                    	}
                        break;
                }

                switch (alt632)
                {
            	case 1:
            	    // MySQL.g:2078:13: CURRENT_SYMBOL
            	    {
            	        CURRENT_SYMBOL2415 = (pANTLR3_COMMON_TOKEN) MATCHT(CURRENT_SYMBOL, &FOLLOW_CURRENT_SYMBOL_in_get_diagnostics11883);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleget_diagnosticsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CURRENT_SYMBOL2415_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CURRENT_SYMBOL2415));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CURRENT_SYMBOL2415_tree);
            	        }

            	    }
            	    break;

                }
            }

            DIAGNOSTICS_SYMBOL2416 = (pANTLR3_COMMON_TOKEN) MATCHT(DIAGNOSTICS_SYMBOL, &FOLLOW_DIAGNOSTICS_SYMBOL_in_get_diagnostics11886);
            if  (HASEXCEPTION())
            {
                goto ruleget_diagnosticsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DIAGNOSTICS_SYMBOL2416_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DIAGNOSTICS_SYMBOL2416));
            ADAPTOR->addChild(ADAPTOR, root_0, DIAGNOSTICS_SYMBOL2416_tree);
            }

            // MySQL.g:2079:2: ( statement_information_item ( COMMA_SYMBOL statement_information_item )* | CONDITION_SYMBOL INTEGER condition_information_item ( COMMA_SYMBOL condition_information_item )* )
            {
                int alt635=2;
                {
                    int LA635_0 = LA(1);
                    if ( (((LA635_0 >= AT_AT_SIGN_SYMBOL) && (LA635_0 <= AT_SIGN_SYMBOL)) || LA635_0 == BACK_TICK_QUOTED_ID || LA635_0 == IDENTIFIER))
                    {
                        alt635=1;
                    }
                    else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA635_0 == DOUBLE_QUOTED_TEXT))
                    {
                        alt635=1;
                    }
                    else if ( (((LA635_0 >= ACTION_SYMBOL) && (LA635_0 <= ADDDATE_SYMBOL)) || ((LA635_0 >= AFTER_SYMBOL) && (LA635_0 <= ALGORITHM_SYMBOL)) || LA635_0 == ANALYZE_SYMBOL || ((LA635_0 >= ANY_SYMBOL) && (LA635_0 <= ASCII_SYMBOL)) || ((LA635_0 >= AT_SYMBOL) && (LA635_0 <= BACKUP_SYMBOL)) || LA635_0 == BEGIN_SYMBOL || LA635_0 == BINLOG_SYMBOL || LA635_0 == BIT_SYMBOL || ((LA635_0 >= BLOCK_SYMBOL) && (LA635_0 <= BOOL_SYMBOL)) || ((LA635_0 >= BTREE_SYMBOL) && (LA635_0 <= BYTE_SYMBOL)) || LA635_0 == CACHE_SYMBOL || LA635_0 == CASCADED_SYMBOL || ((LA635_0 >= CATALOG_NAME_SYMBOL) && (LA635_0 <= CHANGED_SYMBOL)) || LA635_0 == CHARSET_SYMBOL || LA635_0 == CHECKSUM_SYMBOL || ((LA635_0 >= CIPHER_SYMBOL) && (LA635_0 <= CLIENT_SYMBOL)) || ((LA635_0 >= CLOSE_SYMBOL) && (LA635_0 <= CODE_SYMBOL)) || LA635_0 == COLLATION_SYMBOL || ((LA635_0 >= COLUMNS_SYMBOL) && (LA635_0 <= COLUMN_NAME_SYMBOL)) || ((LA635_0 >= COMMENT_SYMBOL) && (LA635_0 <= COMPRESSED_SYMBOL)) || LA635_0 == CONCURRENT_SYMBOL || ((LA635_0 >= CONNECTION_SYMBOL) && (LA635_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA635_0 >= CONTAINS_SYMBOL) && (LA635_0 <= CONTEXT_SYMBOL)) || LA635_0 == CONTRIBUTORS_SYMBOL || LA635_0 == CPU_SYMBOL || LA635_0 == CUBE_SYMBOL || LA635_0 == CURRENT_SYMBOL || LA635_0 == CURSOR_NAME_SYMBOL || ((LA635_0 >= DATAFILE_SYMBOL) && (LA635_0 <= DATETIME_SYMBOL)) || LA635_0 == DATE_SYMBOL || ((LA635_0 >= DAY_SYMBOL) && (LA635_0 <= DEALLOCATE_SYMBOL)) || LA635_0 == DEFAULT_AUTH_SYMBOL || LA635_0 == DEFINER_SYMBOL || LA635_0 == DELAY_KEY_WRITE_SYMBOL || LA635_0 == DES_KEY_FILE_SYMBOL || LA635_0 == DIAGNOSTICS_SYMBOL || ((LA635_0 >= DIRECTORY_SYMBOL) && (LA635_0 <= DISK_SYMBOL)) || LA635_0 == DO_SYMBOL || ((LA635_0 >= DUMPFILE_SYMBOL) && (LA635_0 <= DYNAMIC_SYMBOL)) || LA635_0 == ENABLE_SYMBOL || LA635_0 == ENDS_SYMBOL || ((LA635_0 >= END_SYMBOL) && (LA635_0 <= ENUM_SYMBOL)) || ((LA635_0 >= ERRORS_SYMBOL) && (LA635_0 <= ERROR_SYMBOL)) || ((LA635_0 >= ESCAPE_SYMBOL) && (LA635_0 <= EVERY_SYMBOL)) || LA635_0 == EXECUTE_SYMBOL || LA635_0 == EXPANSION_SYMBOL || LA635_0 == EXPORT_SYMBOL || ((LA635_0 >= EXTENDED_SYMBOL) && (LA635_0 <= EXTENT_SIZE_SYMBOL)) || ((LA635_0 >= FAST_SYMBOL) && (LA635_0 <= FAULTS_SYMBOL)) || ((LA635_0 >= FILE_SYMBOL) && (LA635_0 <= FIXED_SYMBOL)) || LA635_0 == FLUSH_SYMBOL || LA635_0 == FORMAT_SYMBOL || LA635_0 == FOUND_SYMBOL || LA635_0 == FULL_SYMBOL || ((LA635_0 >= FUNCTION_SYMBOL) && (LA635_0 <= GET_FORMAT_SYMBOL)) || ((LA635_0 >= GLOBAL_SYMBOL) && (LA635_0 <= GRANTS_SYMBOL)) || ((LA635_0 >= HANDLER_SYMBOL) && (LA635_0 <= HASH_SYMBOL)) || LA635_0 == HELP_SYMBOL || ((LA635_0 >= HOSTS_SYMBOL) && (LA635_0 <= HOST_SYMBOL)) || ((LA635_0 >= HOUR_SYMBOL) && (LA635_0 <= IDENTIFIED_SYMBOL)) || LA635_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA635_0 >= IMPORT_SYMBOL) && (LA635_0 <= INDEXES_SYMBOL)) || LA635_0 == INITIAL_SIZE_SYMBOL || LA635_0 == INNODB_SYMBOL || LA635_0 == INSERT_METHOD_SYMBOL || LA635_0 == INSTALL_SYMBOL || LA635_0 == INVOKER_SYMBOL || LA635_0 == IO_SYMBOL || ((LA635_0 >= IPC_SYMBOL) && (LA635_0 <= ISSUER_SYMBOL)) || LA635_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA635_0 >= LANGUAGE_SYMBOL) && (LA635_0 <= LAST_SYMBOL)) || LA635_0 == LEAVES_SYMBOL || LA635_0 == LESS_SYMBOL || LA635_0 == LEVEL_SYMBOL || LA635_0 == LINESTRING_SYMBOL || LA635_0 == LIST_SYMBOL || LA635_0 == LOCAL_SYMBOL || LA635_0 == LOCKS_SYMBOL || LA635_0 == LOGFILE_SYMBOL || LA635_0 == LOGS_SYMBOL || LA635_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA635_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA635_0 <= MASTER_SSL_SYMBOL)) || ((LA635_0 >= MASTER_SYMBOL) && (LA635_0 <= MASTER_USER_SYMBOL)) || ((LA635_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA635_0 <= MAX_SIZE_SYMBOL)) || ((LA635_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA635_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA635_0 >= MEDIUM_SYMBOL) && (LA635_0 <= MICROSECOND_SYMBOL)) || LA635_0 == MIGRATE_SYMBOL || ((LA635_0 >= MINUTE_SYMBOL) && (LA635_0 <= MIN_ROWS_SYMBOL)) || LA635_0 == MODE_SYMBOL || LA635_0 == MODIFY_SYMBOL || ((LA635_0 >= MONTH_SYMBOL) && (LA635_0 <= MULTILINESTRING_SYMBOL)) || ((LA635_0 >= MULTIPOINT_SYMBOL) && (LA635_0 <= MULTIPOLYGON_SYMBOL)) || ((LA635_0 >= MUTEX_SYMBOL) && (LA635_0 <= NATIONAL_SYMBOL)) || LA635_0 == NCHAR_SYMBOL || LA635_0 == NDBCLUSTER_SYMBOL || ((LA635_0 >= NEW_SYMBOL) && (LA635_0 <= NONE_SYMBOL)) || ((LA635_0 >= NO_SYMBOL) && (LA635_0 <= NO_WAIT_SYMBOL)) || LA635_0 == NUMBER_SYMBOL || LA635_0 == NVARCHAR_SYMBOL || ((LA635_0 >= OFFSET_SYMBOL) && (LA635_0 <= ONE_SYMBOL)) || LA635_0 == OPEN_SYMBOL || LA635_0 == OPTIONS_SYMBOL || ((LA635_0 >= OWNER_SYMBOL) && (LA635_0 <= PAGE_SYMBOL)) || ((LA635_0 >= PARSER_SYMBOL) && (LA635_0 <= PARTITION_SYMBOL)) || ((LA635_0 >= PASSWORD_SYMBOL) && (LA635_0 <= PLUGIN_SYMBOL)) || ((LA635_0 >= POINT_SYMBOL) && (LA635_0 <= PORT_SYMBOL)) || ((LA635_0 >= PREPARE_SYMBOL) && (LA635_0 <= PREV_SYMBOL)) || LA635_0 == PRIVILEGES_SYMBOL || ((LA635_0 >= PROCESSLIST_SYMBOL) && (LA635_0 <= PROXY_SYMBOL)) || ((LA635_0 >= QUARTER_SYMBOL) && (LA635_0 <= QUICK_SYMBOL)) || LA635_0 == READ_ONLY_SYMBOL || ((LA635_0 >= REBUILD_SYMBOL) && (LA635_0 <= REDUNDANT_SYMBOL)) || ((LA635_0 >= RELAYLOG_SYMBOL) && (LA635_0 <= RELAY_THREAD_SYMBOL)) || ((LA635_0 >= RELOAD_SYMBOL) && (LA635_0 <= REMOVE_SYMBOL)) || ((LA635_0 >= REORGANIZE_SYMBOL) && (LA635_0 <= REPEATABLE_SYMBOL)) || LA635_0 == REPLICATION_SYMBOL || LA635_0 == RESET_SYMBOL || LA635_0 == RESTORE_SYMBOL || ((LA635_0 >= RESUME_SYMBOL) && (LA635_0 <= RETURNS_SYMBOL)) || LA635_0 == REVERSE_SYMBOL || ((LA635_0 >= ROLLBACK_SYMBOL) && (LA635_0 <= SCHEDULE_SYMBOL)) || LA635_0 == SCHEMA_NAME_SYMBOL || ((LA635_0 >= SECOND_SYMBOL) && (LA635_0 <= SECURITY_SYMBOL)) || ((LA635_0 >= SERIALIZABLE_SYMBOL) && (LA635_0 <= SERIAL_SYMBOL)) || ((LA635_0 >= SERVER_SYMBOL) && (LA635_0 <= SESSION_SYMBOL)) || LA635_0 == SHARE_SYMBOL || LA635_0 == SHUTDOWN_SYMBOL || ((LA635_0 >= SIGNED_SYMBOL) && (LA635_0 <= SIMPLE_SYMBOL)) || ((LA635_0 >= SLAVE_SYMBOL) && (LA635_0 <= SLOW_SYMBOL)) || ((LA635_0 >= SNAPSHOT_SYMBOL) && (LA635_0 <= SOURCE_SYMBOL)) || ((LA635_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA635_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA635_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA635_0 <= SQL_CACHE_SYMBOL)) || LA635_0 == SQL_NO_CACHE_SYMBOL || LA635_0 == SQL_THREAD_SYMBOL || ((LA635_0 >= STARTS_SYMBOL) && (LA635_0 <= STATUS_SYMBOL)) || ((LA635_0 >= STOP_SYMBOL) && (LA635_0 <= STORAGE_SYMBOL)) || ((LA635_0 >= STRING_SYMBOL) && (LA635_0 <= SUBPARTITION_SYMBOL)) || ((LA635_0 >= SUPER_SYMBOL) && (LA635_0 <= SWITCHES_SYMBOL)) || ((LA635_0 >= TABLESPACE_SYMBOL) && (LA635_0 <= TABLE_NAME_SYMBOL)) || ((LA635_0 >= TEMPORARY_SYMBOL) && (LA635_0 <= TEMPTABLE_SYMBOL)) || ((LA635_0 >= TEXT_SYMBOL) && (LA635_0 <= THAN_SYMBOL)) || ((LA635_0 >= TIMESTAMP_ADD_SYMBOL) && (LA635_0 <= TIME_SYMBOL)) || ((LA635_0 >= TRANSACTION_SYMBOL) && (LA635_0 <= TRIGGERS_SYMBOL)) || ((LA635_0 >= TRUNCATE_SYMBOL) && (LA635_0 <= UDF_RETURNS_SYMBOL)) || ((LA635_0 >= UNCOMMITTED_SYMBOL) && (LA635_0 <= UNDEFINED_SYMBOL)) || ((LA635_0 >= UNDOFILE_SYMBOL) && (LA635_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA635_0 >= UNICODE_SYMBOL) && (LA635_0 <= UNINSTALL_SYMBOL)) || LA635_0 == UNKNOWN_SYMBOL || LA635_0 == UNTIL_SYMBOL || LA635_0 == UPGRADE_SYMBOL || ((LA635_0 >= USER_RESOURCES_SYMBOL) && (LA635_0 <= USE_FRM_SYMBOL)) || LA635_0 == VALUE_SYMBOL || LA635_0 == VARIABLES_SYMBOL || ((LA635_0 >= VIEW_SYMBOL) && (LA635_0 <= WEIGHT_STRING_SYMBOL)) || ((LA635_0 >= WORK_SYMBOL) && (LA635_0 <= WRAPPER_SYMBOL)) || LA635_0 == X509_SYMBOL || ((LA635_0 >= XA_SYMBOL) && (LA635_0 <= XML_SYMBOL)) || LA635_0 == YEAR_SYMBOL))
                    {
                        alt635=1;
                    }
                    else if ( (LA635_0 == CONDITION_SYMBOL))
                    {
                        alt635=2;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 635;
                        EXCEPTION->state        = 0;


                        goto ruleget_diagnosticsEx;

                    }
                }
                switch (alt635)
                {
            	case 1:
            	    // MySQL.g:2080:3: statement_information_item ( COMMA_SYMBOL statement_information_item )*
            	    {
            	        FOLLOWPUSH(FOLLOW_statement_information_item_in_get_diagnostics11893);
            	        statement_information_item2417=statement_information_item(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleget_diagnosticsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, statement_information_item2417.tree);

            	        // MySQL.g:2080:30: ( COMMA_SYMBOL statement_information_item )*

            	        for (;;)
            	        {
            	            int alt633=2;
            	            switch ( LA(1) )
            	            {
            	            case COMMA_SYMBOL:
            	            	{
            	            		alt633=1;
            	            	}
            	                break;

            	            }

            	            switch (alt633)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2080:31: COMMA_SYMBOL statement_information_item
            	        	    {
            	        	        COMMA_SYMBOL2418 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_get_diagnostics11896);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleget_diagnosticsEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COMMA_SYMBOL2418_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2418));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2418_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_statement_information_item_in_get_diagnostics11898);
            	        	        statement_information_item2419=statement_information_item(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleget_diagnosticsEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, statement_information_item2419.tree);

            	        	    }
            	        	    break;

            	        	default:
            	        	    goto loop633;	/* break out of the loop */
            	        	    break;
            	            }
            	        }
            	        loop633: ; /* Jump out to here if this rule does not match */


            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2081:5: CONDITION_SYMBOL INTEGER condition_information_item ( COMMA_SYMBOL condition_information_item )*
            	    {
            	        CONDITION_SYMBOL2420 = (pANTLR3_COMMON_TOKEN) MATCHT(CONDITION_SYMBOL, &FOLLOW_CONDITION_SYMBOL_in_get_diagnostics11906);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleget_diagnosticsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CONDITION_SYMBOL2420_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CONDITION_SYMBOL2420));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CONDITION_SYMBOL2420_tree);
            	        }

            	        INTEGER2421 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_get_diagnostics11908);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleget_diagnosticsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INTEGER2421_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER2421));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER2421_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_condition_information_item_in_get_diagnostics11910);
            	        condition_information_item2422=condition_information_item(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleget_diagnosticsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, condition_information_item2422.tree);

            	        // MySQL.g:2081:57: ( COMMA_SYMBOL condition_information_item )*

            	        for (;;)
            	        {
            	            int alt634=2;
            	            switch ( LA(1) )
            	            {
            	            case COMMA_SYMBOL:
            	            	{
            	            		alt634=1;
            	            	}
            	                break;

            	            }

            	            switch (alt634)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2081:58: COMMA_SYMBOL condition_information_item
            	        	    {
            	        	        COMMA_SYMBOL2423 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_get_diagnostics11913);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleget_diagnosticsEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COMMA_SYMBOL2423_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2423));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2423_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_condition_information_item_in_get_diagnostics11915);
            	        	        condition_information_item2424=condition_information_item(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleget_diagnosticsEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, condition_information_item2424.tree);

            	        	    }
            	        	    break;

            	        	default:
            	        	    goto loop634;	/* break out of the loop */
            	        	    break;
            	            }
            	        }
            	        loop634: ; /* Jump out to here if this rule does not match */


            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleget_diagnosticsEx; /* Prevent compiler warnings */
    ruleget_diagnosticsEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end get_diagnostics */

/**
 * $ANTLR start statement_information_item
 * MySQL.g:2085:1: statement_information_item : ( variable | identifier ) EQUAL_OPERATOR ( NUMBER_SYMBOL | ROW_COUNT_SYMBOL ) ;
 */
static MySQLParser_statement_information_item_return
statement_information_item(pMySQLParser ctx)
{
    MySQLParser_statement_information_item_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2427;
    pANTLR3_COMMON_TOKEN    set2428;
    MySQLParser_variable_return variable2425;
    #undef	RETURN_TYPE_variable2425
    #define	RETURN_TYPE_variable2425 MySQLParser_variable_return

    MySQLParser_identifier_return identifier2426;
    #undef	RETURN_TYPE_identifier2426
    #define	RETURN_TYPE_identifier2426 MySQLParser_identifier_return

    pANTLR3_BASE_TREE EQUAL_OPERATOR2427_tree;
    pANTLR3_BASE_TREE set2428_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    EQUAL_OPERATOR2427       = NULL;
    set2428       = NULL;
    variable2425.tree = NULL;

    identifier2426.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    EQUAL_OPERATOR2427_tree   = NULL;
    set2428_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2085:27: ( ( variable | identifier ) EQUAL_OPERATOR ( NUMBER_SYMBOL | ROW_COUNT_SYMBOL ) )
        // MySQL.g:2086:2: ( variable | identifier ) EQUAL_OPERATOR ( NUMBER_SYMBOL | ROW_COUNT_SYMBOL )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:2086:2: ( variable | identifier )
            {
                int alt636=2;
                {
                    int LA636_0 = LA(1);
                    if ( (((LA636_0 >= AT_AT_SIGN_SYMBOL) && (LA636_0 <= AT_SIGN_SYMBOL))))
                    {
                        alt636=1;
                    }
                    else if ( (LA636_0 == BACK_TICK_QUOTED_ID || LA636_0 == IDENTIFIER))
                    {
                        alt636=2;
                    }
                    else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA636_0 == DOUBLE_QUOTED_TEXT))
                    {
                        alt636=2;
                    }
                    else if ( (((LA636_0 >= ACTION_SYMBOL) && (LA636_0 <= ADDDATE_SYMBOL)) || ((LA636_0 >= AFTER_SYMBOL) && (LA636_0 <= ALGORITHM_SYMBOL)) || LA636_0 == ANALYZE_SYMBOL || ((LA636_0 >= ANY_SYMBOL) && (LA636_0 <= ASCII_SYMBOL)) || ((LA636_0 >= AT_SYMBOL) && (LA636_0 <= BACKUP_SYMBOL)) || LA636_0 == BEGIN_SYMBOL || LA636_0 == BINLOG_SYMBOL || LA636_0 == BIT_SYMBOL || ((LA636_0 >= BLOCK_SYMBOL) && (LA636_0 <= BOOL_SYMBOL)) || ((LA636_0 >= BTREE_SYMBOL) && (LA636_0 <= BYTE_SYMBOL)) || LA636_0 == CACHE_SYMBOL || LA636_0 == CASCADED_SYMBOL || ((LA636_0 >= CATALOG_NAME_SYMBOL) && (LA636_0 <= CHANGED_SYMBOL)) || LA636_0 == CHARSET_SYMBOL || LA636_0 == CHECKSUM_SYMBOL || ((LA636_0 >= CIPHER_SYMBOL) && (LA636_0 <= CLIENT_SYMBOL)) || ((LA636_0 >= CLOSE_SYMBOL) && (LA636_0 <= CODE_SYMBOL)) || LA636_0 == COLLATION_SYMBOL || ((LA636_0 >= COLUMNS_SYMBOL) && (LA636_0 <= COLUMN_NAME_SYMBOL)) || ((LA636_0 >= COMMENT_SYMBOL) && (LA636_0 <= COMPRESSED_SYMBOL)) || LA636_0 == CONCURRENT_SYMBOL || ((LA636_0 >= CONNECTION_SYMBOL) && (LA636_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA636_0 >= CONTAINS_SYMBOL) && (LA636_0 <= CONTEXT_SYMBOL)) || LA636_0 == CONTRIBUTORS_SYMBOL || LA636_0 == CPU_SYMBOL || LA636_0 == CUBE_SYMBOL || LA636_0 == CURRENT_SYMBOL || LA636_0 == CURSOR_NAME_SYMBOL || ((LA636_0 >= DATAFILE_SYMBOL) && (LA636_0 <= DATETIME_SYMBOL)) || LA636_0 == DATE_SYMBOL || ((LA636_0 >= DAY_SYMBOL) && (LA636_0 <= DEALLOCATE_SYMBOL)) || LA636_0 == DEFAULT_AUTH_SYMBOL || LA636_0 == DEFINER_SYMBOL || LA636_0 == DELAY_KEY_WRITE_SYMBOL || LA636_0 == DES_KEY_FILE_SYMBOL || LA636_0 == DIAGNOSTICS_SYMBOL || ((LA636_0 >= DIRECTORY_SYMBOL) && (LA636_0 <= DISK_SYMBOL)) || LA636_0 == DO_SYMBOL || ((LA636_0 >= DUMPFILE_SYMBOL) && (LA636_0 <= DYNAMIC_SYMBOL)) || LA636_0 == ENABLE_SYMBOL || LA636_0 == ENDS_SYMBOL || ((LA636_0 >= END_SYMBOL) && (LA636_0 <= ENUM_SYMBOL)) || ((LA636_0 >= ERRORS_SYMBOL) && (LA636_0 <= ERROR_SYMBOL)) || ((LA636_0 >= ESCAPE_SYMBOL) && (LA636_0 <= EVERY_SYMBOL)) || LA636_0 == EXECUTE_SYMBOL || LA636_0 == EXPANSION_SYMBOL || LA636_0 == EXPORT_SYMBOL || ((LA636_0 >= EXTENDED_SYMBOL) && (LA636_0 <= EXTENT_SIZE_SYMBOL)) || ((LA636_0 >= FAST_SYMBOL) && (LA636_0 <= FAULTS_SYMBOL)) || ((LA636_0 >= FILE_SYMBOL) && (LA636_0 <= FIXED_SYMBOL)) || LA636_0 == FLUSH_SYMBOL || LA636_0 == FORMAT_SYMBOL || LA636_0 == FOUND_SYMBOL || LA636_0 == FULL_SYMBOL || ((LA636_0 >= FUNCTION_SYMBOL) && (LA636_0 <= GET_FORMAT_SYMBOL)) || ((LA636_0 >= GLOBAL_SYMBOL) && (LA636_0 <= GRANTS_SYMBOL)) || ((LA636_0 >= HANDLER_SYMBOL) && (LA636_0 <= HASH_SYMBOL)) || LA636_0 == HELP_SYMBOL || ((LA636_0 >= HOSTS_SYMBOL) && (LA636_0 <= HOST_SYMBOL)) || ((LA636_0 >= HOUR_SYMBOL) && (LA636_0 <= IDENTIFIED_SYMBOL)) || LA636_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA636_0 >= IMPORT_SYMBOL) && (LA636_0 <= INDEXES_SYMBOL)) || LA636_0 == INITIAL_SIZE_SYMBOL || LA636_0 == INNODB_SYMBOL || LA636_0 == INSERT_METHOD_SYMBOL || LA636_0 == INSTALL_SYMBOL || LA636_0 == INVOKER_SYMBOL || LA636_0 == IO_SYMBOL || ((LA636_0 >= IPC_SYMBOL) && (LA636_0 <= ISSUER_SYMBOL)) || LA636_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA636_0 >= LANGUAGE_SYMBOL) && (LA636_0 <= LAST_SYMBOL)) || LA636_0 == LEAVES_SYMBOL || LA636_0 == LESS_SYMBOL || LA636_0 == LEVEL_SYMBOL || LA636_0 == LINESTRING_SYMBOL || LA636_0 == LIST_SYMBOL || LA636_0 == LOCAL_SYMBOL || LA636_0 == LOCKS_SYMBOL || LA636_0 == LOGFILE_SYMBOL || LA636_0 == LOGS_SYMBOL || LA636_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA636_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA636_0 <= MASTER_SSL_SYMBOL)) || ((LA636_0 >= MASTER_SYMBOL) && (LA636_0 <= MASTER_USER_SYMBOL)) || ((LA636_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA636_0 <= MAX_SIZE_SYMBOL)) || ((LA636_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA636_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA636_0 >= MEDIUM_SYMBOL) && (LA636_0 <= MICROSECOND_SYMBOL)) || LA636_0 == MIGRATE_SYMBOL || ((LA636_0 >= MINUTE_SYMBOL) && (LA636_0 <= MIN_ROWS_SYMBOL)) || LA636_0 == MODE_SYMBOL || LA636_0 == MODIFY_SYMBOL || ((LA636_0 >= MONTH_SYMBOL) && (LA636_0 <= MULTILINESTRING_SYMBOL)) || ((LA636_0 >= MULTIPOINT_SYMBOL) && (LA636_0 <= MULTIPOLYGON_SYMBOL)) || ((LA636_0 >= MUTEX_SYMBOL) && (LA636_0 <= NATIONAL_SYMBOL)) || LA636_0 == NCHAR_SYMBOL || LA636_0 == NDBCLUSTER_SYMBOL || ((LA636_0 >= NEW_SYMBOL) && (LA636_0 <= NONE_SYMBOL)) || ((LA636_0 >= NO_SYMBOL) && (LA636_0 <= NO_WAIT_SYMBOL)) || LA636_0 == NUMBER_SYMBOL || LA636_0 == NVARCHAR_SYMBOL || ((LA636_0 >= OFFSET_SYMBOL) && (LA636_0 <= ONE_SYMBOL)) || LA636_0 == OPEN_SYMBOL || LA636_0 == OPTIONS_SYMBOL || ((LA636_0 >= OWNER_SYMBOL) && (LA636_0 <= PAGE_SYMBOL)) || ((LA636_0 >= PARSER_SYMBOL) && (LA636_0 <= PARTITION_SYMBOL)) || ((LA636_0 >= PASSWORD_SYMBOL) && (LA636_0 <= PLUGIN_SYMBOL)) || ((LA636_0 >= POINT_SYMBOL) && (LA636_0 <= PORT_SYMBOL)) || ((LA636_0 >= PREPARE_SYMBOL) && (LA636_0 <= PREV_SYMBOL)) || LA636_0 == PRIVILEGES_SYMBOL || ((LA636_0 >= PROCESSLIST_SYMBOL) && (LA636_0 <= PROXY_SYMBOL)) || ((LA636_0 >= QUARTER_SYMBOL) && (LA636_0 <= QUICK_SYMBOL)) || LA636_0 == READ_ONLY_SYMBOL || ((LA636_0 >= REBUILD_SYMBOL) && (LA636_0 <= REDUNDANT_SYMBOL)) || ((LA636_0 >= RELAYLOG_SYMBOL) && (LA636_0 <= RELAY_THREAD_SYMBOL)) || ((LA636_0 >= RELOAD_SYMBOL) && (LA636_0 <= REMOVE_SYMBOL)) || ((LA636_0 >= REORGANIZE_SYMBOL) && (LA636_0 <= REPEATABLE_SYMBOL)) || LA636_0 == REPLICATION_SYMBOL || LA636_0 == RESET_SYMBOL || LA636_0 == RESTORE_SYMBOL || ((LA636_0 >= RESUME_SYMBOL) && (LA636_0 <= RETURNS_SYMBOL)) || LA636_0 == REVERSE_SYMBOL || ((LA636_0 >= ROLLBACK_SYMBOL) && (LA636_0 <= SCHEDULE_SYMBOL)) || LA636_0 == SCHEMA_NAME_SYMBOL || ((LA636_0 >= SECOND_SYMBOL) && (LA636_0 <= SECURITY_SYMBOL)) || ((LA636_0 >= SERIALIZABLE_SYMBOL) && (LA636_0 <= SERIAL_SYMBOL)) || ((LA636_0 >= SERVER_SYMBOL) && (LA636_0 <= SESSION_SYMBOL)) || LA636_0 == SHARE_SYMBOL || LA636_0 == SHUTDOWN_SYMBOL || ((LA636_0 >= SIGNED_SYMBOL) && (LA636_0 <= SIMPLE_SYMBOL)) || ((LA636_0 >= SLAVE_SYMBOL) && (LA636_0 <= SLOW_SYMBOL)) || ((LA636_0 >= SNAPSHOT_SYMBOL) && (LA636_0 <= SOURCE_SYMBOL)) || ((LA636_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA636_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA636_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA636_0 <= SQL_CACHE_SYMBOL)) || LA636_0 == SQL_NO_CACHE_SYMBOL || LA636_0 == SQL_THREAD_SYMBOL || ((LA636_0 >= STARTS_SYMBOL) && (LA636_0 <= STATUS_SYMBOL)) || ((LA636_0 >= STOP_SYMBOL) && (LA636_0 <= STORAGE_SYMBOL)) || ((LA636_0 >= STRING_SYMBOL) && (LA636_0 <= SUBPARTITION_SYMBOL)) || ((LA636_0 >= SUPER_SYMBOL) && (LA636_0 <= SWITCHES_SYMBOL)) || ((LA636_0 >= TABLESPACE_SYMBOL) && (LA636_0 <= TABLE_NAME_SYMBOL)) || ((LA636_0 >= TEMPORARY_SYMBOL) && (LA636_0 <= TEMPTABLE_SYMBOL)) || ((LA636_0 >= TEXT_SYMBOL) && (LA636_0 <= THAN_SYMBOL)) || ((LA636_0 >= TIMESTAMP_ADD_SYMBOL) && (LA636_0 <= TIME_SYMBOL)) || ((LA636_0 >= TRANSACTION_SYMBOL) && (LA636_0 <= TRIGGERS_SYMBOL)) || ((LA636_0 >= TRUNCATE_SYMBOL) && (LA636_0 <= UDF_RETURNS_SYMBOL)) || ((LA636_0 >= UNCOMMITTED_SYMBOL) && (LA636_0 <= UNDEFINED_SYMBOL)) || ((LA636_0 >= UNDOFILE_SYMBOL) && (LA636_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA636_0 >= UNICODE_SYMBOL) && (LA636_0 <= UNINSTALL_SYMBOL)) || LA636_0 == UNKNOWN_SYMBOL || LA636_0 == UNTIL_SYMBOL || LA636_0 == UPGRADE_SYMBOL || ((LA636_0 >= USER_RESOURCES_SYMBOL) && (LA636_0 <= USE_FRM_SYMBOL)) || LA636_0 == VALUE_SYMBOL || LA636_0 == VARIABLES_SYMBOL || ((LA636_0 >= VIEW_SYMBOL) && (LA636_0 <= WEIGHT_STRING_SYMBOL)) || ((LA636_0 >= WORK_SYMBOL) && (LA636_0 <= WRAPPER_SYMBOL)) || LA636_0 == X509_SYMBOL || ((LA636_0 >= XA_SYMBOL) && (LA636_0 <= XML_SYMBOL)) || LA636_0 == YEAR_SYMBOL))
                    {
                        alt636=2;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 636;
                        EXCEPTION->state        = 0;


                        goto rulestatement_information_itemEx;

                    }
                }
                switch (alt636)
                {
            	case 1:
            	    // MySQL.g:2086:3: variable
            	    {
            	        FOLLOWPUSH(FOLLOW_variable_in_statement_information_item11930);
            	        variable2425=variable(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulestatement_information_itemEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, variable2425.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2086:14: identifier
            	    {
            	        FOLLOWPUSH(FOLLOW_identifier_in_statement_information_item11934);
            	        identifier2426=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulestatement_information_itemEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2426.tree);

            	    }
            	    break;

                }
            }

            EQUAL_OPERATOR2427 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_statement_information_item11937);
            if  (HASEXCEPTION())
            {
                goto rulestatement_information_itemEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EQUAL_OPERATOR2427_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2427));
            ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2427_tree);
            }

            set2428=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == NUMBER_SYMBOL || LA(1) == ROW_COUNT_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2428))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto rulestatement_information_itemEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto rulestatement_information_itemEx; /* Prevent compiler warnings */
    rulestatement_information_itemEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end statement_information_item */

/**
 * $ANTLR start condition_information_item
 * MySQL.g:2089:1: condition_information_item : ( variable | identifier ) EQUAL_OPERATOR condition_information_item_name ;
 */
static MySQLParser_condition_information_item_return
condition_information_item(pMySQLParser ctx)
{
    MySQLParser_condition_information_item_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2431;
    MySQLParser_variable_return variable2429;
    #undef	RETURN_TYPE_variable2429
    #define	RETURN_TYPE_variable2429 MySQLParser_variable_return

    MySQLParser_identifier_return identifier2430;
    #undef	RETURN_TYPE_identifier2430
    #define	RETURN_TYPE_identifier2430 MySQLParser_identifier_return

    MySQLParser_condition_information_item_name_return condition_information_item_name2432;
    #undef	RETURN_TYPE_condition_information_item_name2432
    #define	RETURN_TYPE_condition_information_item_name2432 MySQLParser_condition_information_item_name_return

    pANTLR3_BASE_TREE EQUAL_OPERATOR2431_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    EQUAL_OPERATOR2431       = NULL;
    variable2429.tree = NULL;

    identifier2430.tree = NULL;

    condition_information_item_name2432.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    EQUAL_OPERATOR2431_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2089:27: ( ( variable | identifier ) EQUAL_OPERATOR condition_information_item_name )
        // MySQL.g:2090:2: ( variable | identifier ) EQUAL_OPERATOR condition_information_item_name
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:2090:2: ( variable | identifier )
            {
                int alt637=2;
                {
                    int LA637_0 = LA(1);
                    if ( (((LA637_0 >= AT_AT_SIGN_SYMBOL) && (LA637_0 <= AT_SIGN_SYMBOL))))
                    {
                        alt637=1;
                    }
                    else if ( (LA637_0 == BACK_TICK_QUOTED_ID || LA637_0 == IDENTIFIER))
                    {
                        alt637=2;
                    }
                    else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA637_0 == DOUBLE_QUOTED_TEXT))
                    {
                        alt637=2;
                    }
                    else if ( (((LA637_0 >= ACTION_SYMBOL) && (LA637_0 <= ADDDATE_SYMBOL)) || ((LA637_0 >= AFTER_SYMBOL) && (LA637_0 <= ALGORITHM_SYMBOL)) || LA637_0 == ANALYZE_SYMBOL || ((LA637_0 >= ANY_SYMBOL) && (LA637_0 <= ASCII_SYMBOL)) || ((LA637_0 >= AT_SYMBOL) && (LA637_0 <= BACKUP_SYMBOL)) || LA637_0 == BEGIN_SYMBOL || LA637_0 == BINLOG_SYMBOL || LA637_0 == BIT_SYMBOL || ((LA637_0 >= BLOCK_SYMBOL) && (LA637_0 <= BOOL_SYMBOL)) || ((LA637_0 >= BTREE_SYMBOL) && (LA637_0 <= BYTE_SYMBOL)) || LA637_0 == CACHE_SYMBOL || LA637_0 == CASCADED_SYMBOL || ((LA637_0 >= CATALOG_NAME_SYMBOL) && (LA637_0 <= CHANGED_SYMBOL)) || LA637_0 == CHARSET_SYMBOL || LA637_0 == CHECKSUM_SYMBOL || ((LA637_0 >= CIPHER_SYMBOL) && (LA637_0 <= CLIENT_SYMBOL)) || ((LA637_0 >= CLOSE_SYMBOL) && (LA637_0 <= CODE_SYMBOL)) || LA637_0 == COLLATION_SYMBOL || ((LA637_0 >= COLUMNS_SYMBOL) && (LA637_0 <= COLUMN_NAME_SYMBOL)) || ((LA637_0 >= COMMENT_SYMBOL) && (LA637_0 <= COMPRESSED_SYMBOL)) || LA637_0 == CONCURRENT_SYMBOL || ((LA637_0 >= CONNECTION_SYMBOL) && (LA637_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA637_0 >= CONTAINS_SYMBOL) && (LA637_0 <= CONTEXT_SYMBOL)) || LA637_0 == CONTRIBUTORS_SYMBOL || LA637_0 == CPU_SYMBOL || LA637_0 == CUBE_SYMBOL || LA637_0 == CURRENT_SYMBOL || LA637_0 == CURSOR_NAME_SYMBOL || ((LA637_0 >= DATAFILE_SYMBOL) && (LA637_0 <= DATETIME_SYMBOL)) || LA637_0 == DATE_SYMBOL || ((LA637_0 >= DAY_SYMBOL) && (LA637_0 <= DEALLOCATE_SYMBOL)) || LA637_0 == DEFAULT_AUTH_SYMBOL || LA637_0 == DEFINER_SYMBOL || LA637_0 == DELAY_KEY_WRITE_SYMBOL || LA637_0 == DES_KEY_FILE_SYMBOL || LA637_0 == DIAGNOSTICS_SYMBOL || ((LA637_0 >= DIRECTORY_SYMBOL) && (LA637_0 <= DISK_SYMBOL)) || LA637_0 == DO_SYMBOL || ((LA637_0 >= DUMPFILE_SYMBOL) && (LA637_0 <= DYNAMIC_SYMBOL)) || LA637_0 == ENABLE_SYMBOL || LA637_0 == ENDS_SYMBOL || ((LA637_0 >= END_SYMBOL) && (LA637_0 <= ENUM_SYMBOL)) || ((LA637_0 >= ERRORS_SYMBOL) && (LA637_0 <= ERROR_SYMBOL)) || ((LA637_0 >= ESCAPE_SYMBOL) && (LA637_0 <= EVERY_SYMBOL)) || LA637_0 == EXECUTE_SYMBOL || LA637_0 == EXPANSION_SYMBOL || LA637_0 == EXPORT_SYMBOL || ((LA637_0 >= EXTENDED_SYMBOL) && (LA637_0 <= EXTENT_SIZE_SYMBOL)) || ((LA637_0 >= FAST_SYMBOL) && (LA637_0 <= FAULTS_SYMBOL)) || ((LA637_0 >= FILE_SYMBOL) && (LA637_0 <= FIXED_SYMBOL)) || LA637_0 == FLUSH_SYMBOL || LA637_0 == FORMAT_SYMBOL || LA637_0 == FOUND_SYMBOL || LA637_0 == FULL_SYMBOL || ((LA637_0 >= FUNCTION_SYMBOL) && (LA637_0 <= GET_FORMAT_SYMBOL)) || ((LA637_0 >= GLOBAL_SYMBOL) && (LA637_0 <= GRANTS_SYMBOL)) || ((LA637_0 >= HANDLER_SYMBOL) && (LA637_0 <= HASH_SYMBOL)) || LA637_0 == HELP_SYMBOL || ((LA637_0 >= HOSTS_SYMBOL) && (LA637_0 <= HOST_SYMBOL)) || ((LA637_0 >= HOUR_SYMBOL) && (LA637_0 <= IDENTIFIED_SYMBOL)) || LA637_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA637_0 >= IMPORT_SYMBOL) && (LA637_0 <= INDEXES_SYMBOL)) || LA637_0 == INITIAL_SIZE_SYMBOL || LA637_0 == INNODB_SYMBOL || LA637_0 == INSERT_METHOD_SYMBOL || LA637_0 == INSTALL_SYMBOL || LA637_0 == INVOKER_SYMBOL || LA637_0 == IO_SYMBOL || ((LA637_0 >= IPC_SYMBOL) && (LA637_0 <= ISSUER_SYMBOL)) || LA637_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA637_0 >= LANGUAGE_SYMBOL) && (LA637_0 <= LAST_SYMBOL)) || LA637_0 == LEAVES_SYMBOL || LA637_0 == LESS_SYMBOL || LA637_0 == LEVEL_SYMBOL || LA637_0 == LINESTRING_SYMBOL || LA637_0 == LIST_SYMBOL || LA637_0 == LOCAL_SYMBOL || LA637_0 == LOCKS_SYMBOL || LA637_0 == LOGFILE_SYMBOL || LA637_0 == LOGS_SYMBOL || LA637_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA637_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA637_0 <= MASTER_SSL_SYMBOL)) || ((LA637_0 >= MASTER_SYMBOL) && (LA637_0 <= MASTER_USER_SYMBOL)) || ((LA637_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA637_0 <= MAX_SIZE_SYMBOL)) || ((LA637_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA637_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA637_0 >= MEDIUM_SYMBOL) && (LA637_0 <= MICROSECOND_SYMBOL)) || LA637_0 == MIGRATE_SYMBOL || ((LA637_0 >= MINUTE_SYMBOL) && (LA637_0 <= MIN_ROWS_SYMBOL)) || LA637_0 == MODE_SYMBOL || LA637_0 == MODIFY_SYMBOL || ((LA637_0 >= MONTH_SYMBOL) && (LA637_0 <= MULTILINESTRING_SYMBOL)) || ((LA637_0 >= MULTIPOINT_SYMBOL) && (LA637_0 <= MULTIPOLYGON_SYMBOL)) || ((LA637_0 >= MUTEX_SYMBOL) && (LA637_0 <= NATIONAL_SYMBOL)) || LA637_0 == NCHAR_SYMBOL || LA637_0 == NDBCLUSTER_SYMBOL || ((LA637_0 >= NEW_SYMBOL) && (LA637_0 <= NONE_SYMBOL)) || ((LA637_0 >= NO_SYMBOL) && (LA637_0 <= NO_WAIT_SYMBOL)) || LA637_0 == NUMBER_SYMBOL || LA637_0 == NVARCHAR_SYMBOL || ((LA637_0 >= OFFSET_SYMBOL) && (LA637_0 <= ONE_SYMBOL)) || LA637_0 == OPEN_SYMBOL || LA637_0 == OPTIONS_SYMBOL || ((LA637_0 >= OWNER_SYMBOL) && (LA637_0 <= PAGE_SYMBOL)) || ((LA637_0 >= PARSER_SYMBOL) && (LA637_0 <= PARTITION_SYMBOL)) || ((LA637_0 >= PASSWORD_SYMBOL) && (LA637_0 <= PLUGIN_SYMBOL)) || ((LA637_0 >= POINT_SYMBOL) && (LA637_0 <= PORT_SYMBOL)) || ((LA637_0 >= PREPARE_SYMBOL) && (LA637_0 <= PREV_SYMBOL)) || LA637_0 == PRIVILEGES_SYMBOL || ((LA637_0 >= PROCESSLIST_SYMBOL) && (LA637_0 <= PROXY_SYMBOL)) || ((LA637_0 >= QUARTER_SYMBOL) && (LA637_0 <= QUICK_SYMBOL)) || LA637_0 == READ_ONLY_SYMBOL || ((LA637_0 >= REBUILD_SYMBOL) && (LA637_0 <= REDUNDANT_SYMBOL)) || ((LA637_0 >= RELAYLOG_SYMBOL) && (LA637_0 <= RELAY_THREAD_SYMBOL)) || ((LA637_0 >= RELOAD_SYMBOL) && (LA637_0 <= REMOVE_SYMBOL)) || ((LA637_0 >= REORGANIZE_SYMBOL) && (LA637_0 <= REPEATABLE_SYMBOL)) || LA637_0 == REPLICATION_SYMBOL || LA637_0 == RESET_SYMBOL || LA637_0 == RESTORE_SYMBOL || ((LA637_0 >= RESUME_SYMBOL) && (LA637_0 <= RETURNS_SYMBOL)) || LA637_0 == REVERSE_SYMBOL || ((LA637_0 >= ROLLBACK_SYMBOL) && (LA637_0 <= SCHEDULE_SYMBOL)) || LA637_0 == SCHEMA_NAME_SYMBOL || ((LA637_0 >= SECOND_SYMBOL) && (LA637_0 <= SECURITY_SYMBOL)) || ((LA637_0 >= SERIALIZABLE_SYMBOL) && (LA637_0 <= SERIAL_SYMBOL)) || ((LA637_0 >= SERVER_SYMBOL) && (LA637_0 <= SESSION_SYMBOL)) || LA637_0 == SHARE_SYMBOL || LA637_0 == SHUTDOWN_SYMBOL || ((LA637_0 >= SIGNED_SYMBOL) && (LA637_0 <= SIMPLE_SYMBOL)) || ((LA637_0 >= SLAVE_SYMBOL) && (LA637_0 <= SLOW_SYMBOL)) || ((LA637_0 >= SNAPSHOT_SYMBOL) && (LA637_0 <= SOURCE_SYMBOL)) || ((LA637_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA637_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA637_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA637_0 <= SQL_CACHE_SYMBOL)) || LA637_0 == SQL_NO_CACHE_SYMBOL || LA637_0 == SQL_THREAD_SYMBOL || ((LA637_0 >= STARTS_SYMBOL) && (LA637_0 <= STATUS_SYMBOL)) || ((LA637_0 >= STOP_SYMBOL) && (LA637_0 <= STORAGE_SYMBOL)) || ((LA637_0 >= STRING_SYMBOL) && (LA637_0 <= SUBPARTITION_SYMBOL)) || ((LA637_0 >= SUPER_SYMBOL) && (LA637_0 <= SWITCHES_SYMBOL)) || ((LA637_0 >= TABLESPACE_SYMBOL) && (LA637_0 <= TABLE_NAME_SYMBOL)) || ((LA637_0 >= TEMPORARY_SYMBOL) && (LA637_0 <= TEMPTABLE_SYMBOL)) || ((LA637_0 >= TEXT_SYMBOL) && (LA637_0 <= THAN_SYMBOL)) || ((LA637_0 >= TIMESTAMP_ADD_SYMBOL) && (LA637_0 <= TIME_SYMBOL)) || ((LA637_0 >= TRANSACTION_SYMBOL) && (LA637_0 <= TRIGGERS_SYMBOL)) || ((LA637_0 >= TRUNCATE_SYMBOL) && (LA637_0 <= UDF_RETURNS_SYMBOL)) || ((LA637_0 >= UNCOMMITTED_SYMBOL) && (LA637_0 <= UNDEFINED_SYMBOL)) || ((LA637_0 >= UNDOFILE_SYMBOL) && (LA637_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA637_0 >= UNICODE_SYMBOL) && (LA637_0 <= UNINSTALL_SYMBOL)) || LA637_0 == UNKNOWN_SYMBOL || LA637_0 == UNTIL_SYMBOL || LA637_0 == UPGRADE_SYMBOL || ((LA637_0 >= USER_RESOURCES_SYMBOL) && (LA637_0 <= USE_FRM_SYMBOL)) || LA637_0 == VALUE_SYMBOL || LA637_0 == VARIABLES_SYMBOL || ((LA637_0 >= VIEW_SYMBOL) && (LA637_0 <= WEIGHT_STRING_SYMBOL)) || ((LA637_0 >= WORK_SYMBOL) && (LA637_0 <= WRAPPER_SYMBOL)) || LA637_0 == X509_SYMBOL || ((LA637_0 >= XA_SYMBOL) && (LA637_0 <= XML_SYMBOL)) || LA637_0 == YEAR_SYMBOL))
                    {
                        alt637=2;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 637;
                        EXCEPTION->state        = 0;


                        goto rulecondition_information_itemEx;

                    }
                }
                switch (alt637)
                {
            	case 1:
            	    // MySQL.g:2090:3: variable
            	    {
            	        FOLLOWPUSH(FOLLOW_variable_in_condition_information_item11955);
            	        variable2429=variable(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecondition_information_itemEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, variable2429.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2090:14: identifier
            	    {
            	        FOLLOWPUSH(FOLLOW_identifier_in_condition_information_item11959);
            	        identifier2430=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecondition_information_itemEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2430.tree);

            	    }
            	    break;

                }
            }

            EQUAL_OPERATOR2431 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_condition_information_item11962);
            if  (HASEXCEPTION())
            {
                goto rulecondition_information_itemEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EQUAL_OPERATOR2431_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2431));
            ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2431_tree);
            }

            FOLLOWPUSH(FOLLOW_condition_information_item_name_in_condition_information_item11964);
            condition_information_item_name2432=condition_information_item_name(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecondition_information_itemEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, condition_information_item_name2432.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto rulecondition_information_itemEx; /* Prevent compiler warnings */
    rulecondition_information_itemEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end condition_information_item */

/**
 * $ANTLR start condition_information_item_name
 * MySQL.g:2093:1: condition_information_item_name : ( CLASS_ORIGIN_SYMBOL | SUBCLASS_ORIGIN_SYMBOL | RETURNED_SQLSTATE_SYMBOL | MESSAGE_TEXT_SYMBOL | MYSQL_ERRNO_SYMBOL | CONSTRAINT_CATALOG_SYMBOL | CONSTRAINT_SCHEMA_SYMBOL | CONSTRAINT_NAME_SYMBOL | CATALOG_NAME_SYMBOL | SCHEMA_NAME_SYMBOL | TABLE_NAME_SYMBOL | COLUMN_NAME_SYMBOL | CURSOR_NAME_SYMBOL );
 */
static MySQLParser_condition_information_item_name_return
condition_information_item_name(pMySQLParser ctx)
{
    MySQLParser_condition_information_item_name_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set2433;

    pANTLR3_BASE_TREE set2433_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2433       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2433_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2093:32: ( CLASS_ORIGIN_SYMBOL | SUBCLASS_ORIGIN_SYMBOL | RETURNED_SQLSTATE_SYMBOL | MESSAGE_TEXT_SYMBOL | MYSQL_ERRNO_SYMBOL | CONSTRAINT_CATALOG_SYMBOL | CONSTRAINT_SCHEMA_SYMBOL | CONSTRAINT_NAME_SYMBOL | CATALOG_NAME_SYMBOL | SCHEMA_NAME_SYMBOL | TABLE_NAME_SYMBOL | COLUMN_NAME_SYMBOL | CURSOR_NAME_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set2433=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == CATALOG_NAME_SYMBOL || LA(1) == CLASS_ORIGIN_SYMBOL || LA(1) == COLUMN_NAME_SYMBOL || ((LA(1) >= CONSTRAINT_CATALOG_SYMBOL) && (LA(1) <= CONSTRAINT_SCHEMA_SYMBOL)) || LA(1) == CURSOR_NAME_SYMBOL || LA(1) == MESSAGE_TEXT_SYMBOL || LA(1) == MYSQL_ERRNO_SYMBOL || LA(1) == RETURNED_SQLSTATE_SYMBOL || LA(1) == SCHEMA_NAME_SYMBOL || LA(1) == SUBCLASS_ORIGIN_SYMBOL || LA(1) == TABLE_NAME_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2433))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto rulecondition_information_item_nameEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto rulecondition_information_item_nameEx; /* Prevent compiler warnings */
    rulecondition_information_item_nameEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end condition_information_item_name */

/**
 * $ANTLR start signal_statement
 * MySQL.g:2109:1: signal_statement : SIGNAL_SYMBOL ( SQLSTATE_SYMBOL ( VALUE_SYMBOL )? text_or_identifier ) ( SET_SYMBOL signal_information_item ( COMMA_SYMBOL signal_information_item )* )? ;
 */
static MySQLParser_signal_statement_return
signal_statement(pMySQLParser ctx)
{
    MySQLParser_signal_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    SIGNAL_SYMBOL2434;
    pANTLR3_COMMON_TOKEN    SQLSTATE_SYMBOL2435;
    pANTLR3_COMMON_TOKEN    VALUE_SYMBOL2436;
    pANTLR3_COMMON_TOKEN    SET_SYMBOL2438;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2440;
    MySQLParser_text_or_identifier_return text_or_identifier2437;
    #undef	RETURN_TYPE_text_or_identifier2437
    #define	RETURN_TYPE_text_or_identifier2437 MySQLParser_text_or_identifier_return

    MySQLParser_signal_information_item_return signal_information_item2439;
    #undef	RETURN_TYPE_signal_information_item2439
    #define	RETURN_TYPE_signal_information_item2439 MySQLParser_signal_information_item_return

    MySQLParser_signal_information_item_return signal_information_item2441;
    #undef	RETURN_TYPE_signal_information_item2441
    #define	RETURN_TYPE_signal_information_item2441 MySQLParser_signal_information_item_return

    pANTLR3_BASE_TREE SIGNAL_SYMBOL2434_tree;
    pANTLR3_BASE_TREE SQLSTATE_SYMBOL2435_tree;
    pANTLR3_BASE_TREE VALUE_SYMBOL2436_tree;
    pANTLR3_BASE_TREE SET_SYMBOL2438_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2440_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SIGNAL_SYMBOL2434       = NULL;
    SQLSTATE_SYMBOL2435       = NULL;
    VALUE_SYMBOL2436       = NULL;
    SET_SYMBOL2438       = NULL;
    COMMA_SYMBOL2440       = NULL;
    text_or_identifier2437.tree = NULL;

    signal_information_item2439.tree = NULL;

    signal_information_item2441.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SIGNAL_SYMBOL2434_tree   = NULL;
    SQLSTATE_SYMBOL2435_tree   = NULL;
    VALUE_SYMBOL2436_tree   = NULL;
    SET_SYMBOL2438_tree   = NULL;
    COMMA_SYMBOL2440_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2109:17: ( SIGNAL_SYMBOL ( SQLSTATE_SYMBOL ( VALUE_SYMBOL )? text_or_identifier ) ( SET_SYMBOL signal_information_item ( COMMA_SYMBOL signal_information_item )* )? )
        // MySQL.g:2110:2: SIGNAL_SYMBOL ( SQLSTATE_SYMBOL ( VALUE_SYMBOL )? text_or_identifier ) ( SET_SYMBOL signal_information_item ( COMMA_SYMBOL signal_information_item )* )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            SIGNAL_SYMBOL2434 = (pANTLR3_COMMON_TOKEN) MATCHT(SIGNAL_SYMBOL, &FOLLOW_SIGNAL_SYMBOL_in_signal_statement12042);
            if  (HASEXCEPTION())
            {
                goto rulesignal_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SIGNAL_SYMBOL2434_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SIGNAL_SYMBOL2434));
            ADAPTOR->addChild(ADAPTOR, root_0, SIGNAL_SYMBOL2434_tree);
            }

            // MySQL.g:2110:16: ( SQLSTATE_SYMBOL ( VALUE_SYMBOL )? text_or_identifier )
            // MySQL.g:2110:17: SQLSTATE_SYMBOL ( VALUE_SYMBOL )? text_or_identifier
            {
                SQLSTATE_SYMBOL2435 = (pANTLR3_COMMON_TOKEN) MATCHT(SQLSTATE_SYMBOL, &FOLLOW_SQLSTATE_SYMBOL_in_signal_statement12045);
                if  (HASEXCEPTION())
                {
                    goto rulesignal_statementEx;
                }
                if (HASFAILED())
                {
                    return retval;
                }

                if ( BACKTRACKING==0 ) {
                SQLSTATE_SYMBOL2435_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SQLSTATE_SYMBOL2435));
                ADAPTOR->addChild(ADAPTOR, root_0, SQLSTATE_SYMBOL2435_tree);
                }

                // MySQL.g:2110:33: ( VALUE_SYMBOL )?
                {
                    int alt638=2;
                    switch ( LA(1) )
                    {
                        case VALUE_SYMBOL:
                        	{
                        		switch ( LA(2) )
                        		{
                        		    case ACTION_SYMBOL:
                        		    case ADDDATE_SYMBOL:
                        		    case AFTER_SYMBOL:
                        		    case AGAINST_SYMBOL:
                        		    case AGGREGATE_SYMBOL:
                        		    case ALGORITHM_SYMBOL:
                        		    case ANALYZE_SYMBOL:
                        		    case ANY_SYMBOL:
                        		    case ASCII_SYMBOL:
                        		    case AT_SYMBOL:
                        		    case AUTHORS_SYMBOL:
                        		    case AUTOEXTEND_SIZE_SYMBOL:
                        		    case AUTO_INCREMENT_SYMBOL:
                        		    case AVG_ROW_LENGTH_SYMBOL:
                        		    case AVG_SYMBOL:
                        		    case BACKUP_SYMBOL:
                        		    case BACK_TICK_QUOTED_ID:
                        		    case BEGIN_SYMBOL:
                        		    case BINLOG_SYMBOL:
                        		    case BIT_SYMBOL:
                        		    case BLOCK_SYMBOL:
                        		    case BOOLEAN_SYMBOL:
                        		    case BOOL_SYMBOL:
                        		    case BTREE_SYMBOL:
                        		    case BYTE_SYMBOL:
                        		    case CACHE_SYMBOL:
                        		    case CASCADED_SYMBOL:
                        		    case CATALOG_NAME_SYMBOL:
                        		    case CHAIN_SYMBOL:
                        		    case CHANGED_SYMBOL:
                        		    case CHARSET_SYMBOL:
                        		    case CHECKSUM_SYMBOL:
                        		    case CIPHER_SYMBOL:
                        		    case CLASS_ORIGIN_SYMBOL:
                        		    case CLIENT_SYMBOL:
                        		    case CLOSE_SYMBOL:
                        		    case COALESCE_SYMBOL:
                        		    case CODE_SYMBOL:
                        		    case COLLATION_SYMBOL:
                        		    case COLUMNS_SYMBOL:
                        		    case COLUMN_FORMAT_SYMBOL:
                        		    case COLUMN_NAME_SYMBOL:
                        		    case COMMENT_SYMBOL:
                        		    case COMMITTED_SYMBOL:
                        		    case COMMIT_SYMBOL:
                        		    case COMPACT_SYMBOL:
                        		    case COMPLETION_SYMBOL:
                        		    case COMPRESSED_SYMBOL:
                        		    case CONCURRENT_SYMBOL:
                        		    case CONNECTION_SYMBOL:
                        		    case CONSISTENT_SYMBOL:
                        		    case CONSTRAINT_CATALOG_SYMBOL:
                        		    case CONSTRAINT_NAME_SYMBOL:
                        		    case CONSTRAINT_SCHEMA_SYMBOL:
                        		    case CONTAINS_SYMBOL:
                        		    case CONTEXT_SYMBOL:
                        		    case CONTRIBUTORS_SYMBOL:
                        		    case CPU_SYMBOL:
                        		    case CUBE_SYMBOL:
                        		    case CURRENT_SYMBOL:
                        		    case CURSOR_NAME_SYMBOL:
                        		    case DATAFILE_SYMBOL:
                        		    case DATA_SYMBOL:
                        		    case DATETIME_SYMBOL:
                        		    case DATE_SYMBOL:
                        		    case DAY_SYMBOL:
                        		    case DEALLOCATE_SYMBOL:
                        		    case DEFAULT_AUTH_SYMBOL:
                        		    case DEFINER_SYMBOL:
                        		    case DELAY_KEY_WRITE_SYMBOL:
                        		    case DES_KEY_FILE_SYMBOL:
                        		    case DIAGNOSTICS_SYMBOL:
                        		    case DIRECTORY_SYMBOL:
                        		    case DISABLE_SYMBOL:
                        		    case DISCARD_SYMBOL:
                        		    case DISK_SYMBOL:
                        		    case DOUBLE_QUOTED_TEXT:
                        		    case DO_SYMBOL:
                        		    case DUMPFILE_SYMBOL:
                        		    case DUPLICATE_SYMBOL:
                        		    case DYNAMIC_SYMBOL:
                        		    case ENABLE_SYMBOL:
                        		    case ENDS_SYMBOL:
                        		    case END_SYMBOL:
                        		    case ENGINES_SYMBOL:
                        		    case ENGINE_SYMBOL:
                        		    case ENUM_SYMBOL:
                        		    case ERRORS_SYMBOL:
                        		    case ERROR_SYMBOL:
                        		    case ESCAPE_SYMBOL:
                        		    case EVENTS_SYMBOL:
                        		    case EVENT_SYMBOL:
                        		    case EVERY_SYMBOL:
                        		    case EXECUTE_SYMBOL:
                        		    case EXPANSION_SYMBOL:
                        		    case EXPORT_SYMBOL:
                        		    case EXTENDED_SYMBOL:
                        		    case EXTENT_SIZE_SYMBOL:
                        		    case FAST_SYMBOL:
                        		    case FAULTS_SYMBOL:
                        		    case FILE_SYMBOL:
                        		    case FIRST_SYMBOL:
                        		    case FIXED_SYMBOL:
                        		    case FLUSH_SYMBOL:
                        		    case FORMAT_SYMBOL:
                        		    case FOUND_SYMBOL:
                        		    case FULL_SYMBOL:
                        		    case FUNCTION_SYMBOL:
                        		    case GENERAL_SYMBOL:
                        		    case GEOMETRYCOLLECTION_SYMBOL:
                        		    case GEOMETRY_SYMBOL:
                        		    case GET_FORMAT_SYMBOL:
                        		    case GLOBAL_SYMBOL:
                        		    case GRANTS_SYMBOL:
                        		    case HANDLER_SYMBOL:
                        		    case HASH_SYMBOL:
                        		    case HELP_SYMBOL:
                        		    case HOSTS_SYMBOL:
                        		    case HOST_SYMBOL:
                        		    case HOUR_SYMBOL:
                        		    case IDENTIFIED_SYMBOL:
                        		    case IDENTIFIER:
                        		    case IGNORE_SERVER_IDS_SYMBOL:
                        		    case IMPORT_SYMBOL:
                        		    case INDEXES_SYMBOL:
                        		    case INITIAL_SIZE_SYMBOL:
                        		    case INNODB_SYMBOL:
                        		    case INSERT_METHOD_SYMBOL:
                        		    case INSTALL_SYMBOL:
                        		    case INVOKER_SYMBOL:
                        		    case IO_SYMBOL:
                        		    case IPC_SYMBOL:
                        		    case ISOLATION_SYMBOL:
                        		    case ISSUER_SYMBOL:
                        		    case KEY_BLOCK_SIZE_SYMBOL:
                        		    case LANGUAGE_SYMBOL:
                        		    case LAST_SYMBOL:
                        		    case LEAVES_SYMBOL:
                        		    case LESS_SYMBOL:
                        		    case LEVEL_SYMBOL:
                        		    case LINESTRING_SYMBOL:
                        		    case LIST_SYMBOL:
                        		    case LOCAL_SYMBOL:
                        		    case LOCKS_SYMBOL:
                        		    case LOGFILE_SYMBOL:
                        		    case LOGS_SYMBOL:
                        		    case MASTER_AUTO_POSITION_SYMBOL:
                        		    case MASTER_CONNECT_RETRY_SYMBOL:
                        		    case MASTER_DELAY_SYMBOL:
                        		    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                        		    case MASTER_HOST_SYMBOL:
                        		    case MASTER_LOG_FILE_SYMBOL:
                        		    case MASTER_LOG_POS_SYMBOL:
                        		    case MASTER_PASSWORD_SYMBOL:
                        		    case MASTER_PORT_SYMBOL:
                        		    case MASTER_RETRY_COUNT_SYMBOL:
                        		    case MASTER_SERVER_ID_SYMBOL:
                        		    case MASTER_SSL_CAPATH_SYMBOL:
                        		    case MASTER_SSL_CA_SYMBOL:
                        		    case MASTER_SSL_CERT_SYMBOL:
                        		    case MASTER_SSL_CIPHER_SYMBOL:
                        		    case MASTER_SSL_CRLPATH_SYMBOL:
                        		    case MASTER_SSL_CRL_SYMBOL:
                        		    case MASTER_SSL_KEY_SYMBOL:
                        		    case MASTER_SSL_SYMBOL:
                        		    case MASTER_SYMBOL:
                        		    case MASTER_USER_SYMBOL:
                        		    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                        		    case MAX_QUERIES_PER_HOUR_SYMBOL:
                        		    case MAX_ROWS_SYMBOL:
                        		    case MAX_SIZE_SYMBOL:
                        		    case MAX_UPDATES_PER_HOUR_SYMBOL:
                        		    case MAX_USER_CONNECTIONS_SYMBOL:
                        		    case MEDIUM_SYMBOL:
                        		    case MEMORY_SYMBOL:
                        		    case MERGE_SYMBOL:
                        		    case MESSAGE_TEXT_SYMBOL:
                        		    case MICROSECOND_SYMBOL:
                        		    case MIGRATE_SYMBOL:
                        		    case MINUTE_SYMBOL:
                        		    case MIN_ROWS_SYMBOL:
                        		    case MODE_SYMBOL:
                        		    case MODIFY_SYMBOL:
                        		    case MONTH_SYMBOL:
                        		    case MULTILINESTRING_SYMBOL:
                        		    case MULTIPOINT_SYMBOL:
                        		    case MULTIPOLYGON_SYMBOL:
                        		    case MUTEX_SYMBOL:
                        		    case MYSQL_ERRNO_SYMBOL:
                        		    case NAMES_SYMBOL:
                        		    case NAME_SYMBOL:
                        		    case NATIONAL_SYMBOL:
                        		    case NCHAR_SYMBOL:
                        		    case NCHAR_TEXT:
                        		    case NDBCLUSTER_SYMBOL:
                        		    case NEW_SYMBOL:
                        		    case NEXT_SYMBOL:
                        		    case NODEGROUP_SYMBOL:
                        		    case NONE_SYMBOL:
                        		    case NO_SYMBOL:
                        		    case NO_WAIT_SYMBOL:
                        		    case NUMBER_SYMBOL:
                        		    case NVARCHAR_SYMBOL:
                        		    case OFFSET_SYMBOL:
                        		    case OLD_PASSWORD_SYMBOL:
                        		    case ONE_SHOT_SYMBOL:
                        		    case ONE_SYMBOL:
                        		    case OPEN_SYMBOL:
                        		    case OPTIONS_SYMBOL:
                        		    case OWNER_SYMBOL:
                        		    case PACK_KEYS_SYMBOL:
                        		    case PAGE_SYMBOL:
                        		    case PARSER_SYMBOL:
                        		    case PARTIAL_SYMBOL:
                        		    case PARTITIONING_SYMBOL:
                        		    case PARTITIONS_SYMBOL:
                        		    case PARTITION_SYMBOL:
                        		    case PASSWORD_SYMBOL:
                        		    case PHASE_SYMBOL:
                        		    case PLUGINS_SYMBOL:
                        		    case PLUGIN_DIR_SYMBOL:
                        		    case PLUGIN_SYMBOL:
                        		    case POINT_SYMBOL:
                        		    case POLYGON_SYMBOL:
                        		    case PORT_SYMBOL:
                        		    case PREPARE_SYMBOL:
                        		    case PRESERVE_SYMBOL:
                        		    case PREV_SYMBOL:
                        		    case PRIVILEGES_SYMBOL:
                        		    case PROCESSLIST_SYMBOL:
                        		    case PROCESS_SYMBOL:
                        		    case PROFILES_SYMBOL:
                        		    case PROFILE_SYMBOL:
                        		    case PROXY_SYMBOL:
                        		    case QUARTER_SYMBOL:
                        		    case QUERY_SYMBOL:
                        		    case QUICK_SYMBOL:
                        		    case READ_ONLY_SYMBOL:
                        		    case REBUILD_SYMBOL:
                        		    case RECOVER_SYMBOL:
                        		    case REDOFILE_SYMBOL:
                        		    case REDO_BUFFER_SIZE_SYMBOL:
                        		    case REDUNDANT_SYMBOL:
                        		    case RELAYLOG_SYMBOL:
                        		    case RELAY_LOG_FILE_SYMBOL:
                        		    case RELAY_LOG_POS_SYMBOL:
                        		    case RELAY_SYMBOL:
                        		    case RELAY_THREAD_SYMBOL:
                        		    case RELOAD_SYMBOL:
                        		    case REMOVE_SYMBOL:
                        		    case REORGANIZE_SYMBOL:
                        		    case REPAIR_SYMBOL:
                        		    case REPEATABLE_SYMBOL:
                        		    case REPLICATION_SYMBOL:
                        		    case RESET_SYMBOL:
                        		    case RESTORE_SYMBOL:
                        		    case RESUME_SYMBOL:
                        		    case RETURNED_SQLSTATE_SYMBOL:
                        		    case RETURNS_SYMBOL:
                        		    case REVERSE_SYMBOL:
                        		    case ROLLBACK_SYMBOL:
                        		    case ROLLUP_SYMBOL:
                        		    case ROUTINE_SYMBOL:
                        		    case ROWS_SYMBOL:
                        		    case ROW_COUNT_SYMBOL:
                        		    case ROW_FORMAT_SYMBOL:
                        		    case ROW_SYMBOL:
                        		    case RTREE_SYMBOL:
                        		    case SAVEPOINT_SYMBOL:
                        		    case SCHEDULE_SYMBOL:
                        		    case SCHEMA_NAME_SYMBOL:
                        		    case SECOND_SYMBOL:
                        		    case SECURITY_SYMBOL:
                        		    case SERIALIZABLE_SYMBOL:
                        		    case SERIAL_SYMBOL:
                        		    case SERVER_SYMBOL:
                        		    case SESSION_SYMBOL:
                        		    case SHARE_SYMBOL:
                        		    case SHUTDOWN_SYMBOL:
                        		    case SIGNED_SYMBOL:
                        		    case SIMPLE_SYMBOL:
                        		    case SINGLE_QUOTED_TEXT:
                        		    case SLAVE_SYMBOL:
                        		    case SLOW_SYMBOL:
                        		    case SNAPSHOT_SYMBOL:
                        		    case SOCKET_SYMBOL:
                        		    case SONAME_SYMBOL:
                        		    case SOUNDS_SYMBOL:
                        		    case SOURCE_SYMBOL:
                        		    case SQL_AFTER_GTIDS_SYMBOL:
                        		    case SQL_AFTER_MTS_GAPS_SYMBOL:
                        		    case SQL_BEFORE_GTIDS_SYMBOL:
                        		    case SQL_BUFFER_RESULT_SYMBOL:
                        		    case SQL_CACHE_SYMBOL:
                        		    case SQL_NO_CACHE_SYMBOL:
                        		    case SQL_THREAD_SYMBOL:
                        		    case STARTS_SYMBOL:
                        		    case START_SYMBOL:
                        		    case STATS_AUTO_RECALC_SYMBOL:
                        		    case STATS_PERSISTENT_SYMBOL:
                        		    case STATS_SAMPLE_PAGES_SYMBOL:
                        		    case STATUS_SYMBOL:
                        		    case STOP_SYMBOL:
                        		    case STORAGE_SYMBOL:
                        		    case STRING_SYMBOL:
                        		    case SUBCLASS_ORIGIN_SYMBOL:
                        		    case SUBDATE_SYMBOL:
                        		    case SUBJECT_SYMBOL:
                        		    case SUBPARTITIONS_SYMBOL:
                        		    case SUBPARTITION_SYMBOL:
                        		    case SUPER_SYMBOL:
                        		    case SUSPEND_SYMBOL:
                        		    case SWAPS_SYMBOL:
                        		    case SWITCHES_SYMBOL:
                        		    case TABLESPACE_SYMBOL:
                        		    case TABLES_SYMBOL:
                        		    case TABLE_CHECKSUM_SYMBOL:
                        		    case TABLE_NAME_SYMBOL:
                        		    case TEMPORARY_SYMBOL:
                        		    case TEMPTABLE_SYMBOL:
                        		    case TEXT_SYMBOL:
                        		    case THAN_SYMBOL:
                        		    case TIMESTAMP_ADD_SYMBOL:
                        		    case TIMESTAMP_DIFF_SYMBOL:
                        		    case TIMESTAMP_SYMBOL:
                        		    case TIME_SYMBOL:
                        		    case TRANSACTION_SYMBOL:
                        		    case TRIGGERS_SYMBOL:
                        		    case TRUNCATE_SYMBOL:
                        		    case TYPES_SYMBOL:
                        		    case TYPE_SYMBOL:
                        		    case UDF_RETURNS_SYMBOL:
                        		    case UNCOMMITTED_SYMBOL:
                        		    case UNDEFINED_SYMBOL:
                        		    case UNDERSCORE_CHARSET:
                        		    case UNDOFILE_SYMBOL:
                        		    case UNDO_BUFFER_SIZE_SYMBOL:
                        		    case UNICODE_SYMBOL:
                        		    case UNINSTALL_SYMBOL:
                        		    case UNKNOWN_SYMBOL:
                        		    case UNTIL_SYMBOL:
                        		    case UPGRADE_SYMBOL:
                        		    case USER_RESOURCES_SYMBOL:
                        		    case USER_SYMBOL:
                        		    case USE_FRM_SYMBOL:
                        		    case VALUE_SYMBOL:
                        		    case VARIABLES_SYMBOL:
                        		    case VIEW_SYMBOL:
                        		    case WAIT_SYMBOL:
                        		    case WARNINGS_SYMBOL:
                        		    case WEEK_SYMBOL:
                        		    case WEIGHT_STRING_SYMBOL:
                        		    case WORK_SYMBOL:
                        		    case WRAPPER_SYMBOL:
                        		    case X509_SYMBOL:
                        		    case XA_SYMBOL:
                        		    case XML_SYMBOL:
                        		    case YEAR_SYMBOL:
                        		    	{
                        		    		alt638=1;
                        		    	}
                        		        break;
                        		}

                        	}
                            break;
                    }

                    switch (alt638)
                    {
                	case 1:
                	    // MySQL.g:2110:33: VALUE_SYMBOL
                	    {
                	        VALUE_SYMBOL2436 = (pANTLR3_COMMON_TOKEN) MATCHT(VALUE_SYMBOL, &FOLLOW_VALUE_SYMBOL_in_signal_statement12047);
                	        if  (HASEXCEPTION())
                	        {
                	            goto rulesignal_statementEx;
                	        }
                	        if (HASFAILED())
                	        {
                	            return retval;
                	        }

                	        if ( BACKTRACKING==0 ) {
                	        VALUE_SYMBOL2436_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VALUE_SYMBOL2436));
                	        ADAPTOR->addChild(ADAPTOR, root_0, VALUE_SYMBOL2436_tree);
                	        }

                	    }
                	    break;

                    }
                }

                FOLLOWPUSH(FOLLOW_text_or_identifier_in_signal_statement12050);
                text_or_identifier2437=text_or_identifier(ctx);

                FOLLOWPOP();
                if  (HASEXCEPTION())
                {
                    goto rulesignal_statementEx;
                }
                if (HASFAILED())
                {
                    return retval;
                }

                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_identifier2437.tree);

            }


            // MySQL.g:2111:3: ( SET_SYMBOL signal_information_item ( COMMA_SYMBOL signal_information_item )* )?
            {
                int alt640=2;
                switch ( LA(1) )
                {
                    case SET_SYMBOL:
                    	{
                    		alt640=1;
                    	}
                        break;
                }

                switch (alt640)
                {
            	case 1:
            	    // MySQL.g:2111:4: SET_SYMBOL signal_information_item ( COMMA_SYMBOL signal_information_item )*
            	    {
            	        SET_SYMBOL2438 = (pANTLR3_COMMON_TOKEN) MATCHT(SET_SYMBOL, &FOLLOW_SET_SYMBOL_in_signal_statement12056);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesignal_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SET_SYMBOL2438_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SET_SYMBOL2438));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SET_SYMBOL2438_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_signal_information_item_in_signal_statement12058);
            	        signal_information_item2439=signal_information_item(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesignal_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, signal_information_item2439.tree);

            	        // MySQL.g:2111:39: ( COMMA_SYMBOL signal_information_item )*

            	        for (;;)
            	        {
            	            int alt639=2;
            	            switch ( LA(1) )
            	            {
            	            case COMMA_SYMBOL:
            	            	{
            	            		alt639=1;
            	            	}
            	                break;

            	            }

            	            switch (alt639)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2111:40: COMMA_SYMBOL signal_information_item
            	        	    {
            	        	        COMMA_SYMBOL2440 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_signal_statement12061);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulesignal_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COMMA_SYMBOL2440_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2440));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2440_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_signal_information_item_in_signal_statement12063);
            	        	        signal_information_item2441=signal_information_item(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulesignal_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, signal_information_item2441.tree);

            	        	    }
            	        	    break;

            	        	default:
            	        	    goto loop639;	/* break out of the loop */
            	        	    break;
            	            }
            	        }
            	        loop639: ; /* Jump out to here if this rule does not match */


            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulesignal_statementEx; /* Prevent compiler warnings */
    rulesignal_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end signal_statement */

/**
 * $ANTLR start resignal_statement
 * MySQL.g:2114:1: resignal_statement : RESIGNAL_SYMBOL ( SQLSTATE_SYMBOL ( VALUE_SYMBOL )? text_or_identifier )? ( SET_SYMBOL signal_information_item ( COMMA_SYMBOL signal_information_item )* )? ;
 */
static MySQLParser_resignal_statement_return
resignal_statement(pMySQLParser ctx)
{
    MySQLParser_resignal_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    RESIGNAL_SYMBOL2442;
    pANTLR3_COMMON_TOKEN    SQLSTATE_SYMBOL2443;
    pANTLR3_COMMON_TOKEN    VALUE_SYMBOL2444;
    pANTLR3_COMMON_TOKEN    SET_SYMBOL2446;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2448;
    MySQLParser_text_or_identifier_return text_or_identifier2445;
    #undef	RETURN_TYPE_text_or_identifier2445
    #define	RETURN_TYPE_text_or_identifier2445 MySQLParser_text_or_identifier_return

    MySQLParser_signal_information_item_return signal_information_item2447;
    #undef	RETURN_TYPE_signal_information_item2447
    #define	RETURN_TYPE_signal_information_item2447 MySQLParser_signal_information_item_return

    MySQLParser_signal_information_item_return signal_information_item2449;
    #undef	RETURN_TYPE_signal_information_item2449
    #define	RETURN_TYPE_signal_information_item2449 MySQLParser_signal_information_item_return

    pANTLR3_BASE_TREE RESIGNAL_SYMBOL2442_tree;
    pANTLR3_BASE_TREE SQLSTATE_SYMBOL2443_tree;
    pANTLR3_BASE_TREE VALUE_SYMBOL2444_tree;
    pANTLR3_BASE_TREE SET_SYMBOL2446_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2448_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    RESIGNAL_SYMBOL2442       = NULL;
    SQLSTATE_SYMBOL2443       = NULL;
    VALUE_SYMBOL2444       = NULL;
    SET_SYMBOL2446       = NULL;
    COMMA_SYMBOL2448       = NULL;
    text_or_identifier2445.tree = NULL;

    signal_information_item2447.tree = NULL;

    signal_information_item2449.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    RESIGNAL_SYMBOL2442_tree   = NULL;
    SQLSTATE_SYMBOL2443_tree   = NULL;
    VALUE_SYMBOL2444_tree   = NULL;
    SET_SYMBOL2446_tree   = NULL;
    COMMA_SYMBOL2448_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2114:19: ( RESIGNAL_SYMBOL ( SQLSTATE_SYMBOL ( VALUE_SYMBOL )? text_or_identifier )? ( SET_SYMBOL signal_information_item ( COMMA_SYMBOL signal_information_item )* )? )
        // MySQL.g:2115:2: RESIGNAL_SYMBOL ( SQLSTATE_SYMBOL ( VALUE_SYMBOL )? text_or_identifier )? ( SET_SYMBOL signal_information_item ( COMMA_SYMBOL signal_information_item )* )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            RESIGNAL_SYMBOL2442 = (pANTLR3_COMMON_TOKEN) MATCHT(RESIGNAL_SYMBOL, &FOLLOW_RESIGNAL_SYMBOL_in_resignal_statement12076);
            if  (HASEXCEPTION())
            {
                goto ruleresignal_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            RESIGNAL_SYMBOL2442_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RESIGNAL_SYMBOL2442));
            ADAPTOR->addChild(ADAPTOR, root_0, RESIGNAL_SYMBOL2442_tree);
            }

            // MySQL.g:2115:18: ( SQLSTATE_SYMBOL ( VALUE_SYMBOL )? text_or_identifier )?
            {
                int alt642=2;
                switch ( LA(1) )
                {
                    case SQLSTATE_SYMBOL:
                    	{
                    		alt642=1;
                    	}
                        break;
                }

                switch (alt642)
                {
            	case 1:
            	    // MySQL.g:2115:19: SQLSTATE_SYMBOL ( VALUE_SYMBOL )? text_or_identifier
            	    {
            	        SQLSTATE_SYMBOL2443 = (pANTLR3_COMMON_TOKEN) MATCHT(SQLSTATE_SYMBOL, &FOLLOW_SQLSTATE_SYMBOL_in_resignal_statement12079);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleresignal_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SQLSTATE_SYMBOL2443_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SQLSTATE_SYMBOL2443));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SQLSTATE_SYMBOL2443_tree);
            	        }

            	        // MySQL.g:2115:35: ( VALUE_SYMBOL )?
            	        {
            	            int alt641=2;
            	            switch ( LA(1) )
            	            {
            	                case VALUE_SYMBOL:
            	                	{
            	                		switch ( LA(2) )
            	                		{
            	                		    case ACTION_SYMBOL:
            	                		    case ADDDATE_SYMBOL:
            	                		    case AFTER_SYMBOL:
            	                		    case AGAINST_SYMBOL:
            	                		    case AGGREGATE_SYMBOL:
            	                		    case ALGORITHM_SYMBOL:
            	                		    case ANALYZE_SYMBOL:
            	                		    case ANY_SYMBOL:
            	                		    case ASCII_SYMBOL:
            	                		    case AT_SYMBOL:
            	                		    case AUTHORS_SYMBOL:
            	                		    case AUTOEXTEND_SIZE_SYMBOL:
            	                		    case AUTO_INCREMENT_SYMBOL:
            	                		    case AVG_ROW_LENGTH_SYMBOL:
            	                		    case AVG_SYMBOL:
            	                		    case BACKUP_SYMBOL:
            	                		    case BACK_TICK_QUOTED_ID:
            	                		    case BEGIN_SYMBOL:
            	                		    case BINLOG_SYMBOL:
            	                		    case BIT_SYMBOL:
            	                		    case BLOCK_SYMBOL:
            	                		    case BOOLEAN_SYMBOL:
            	                		    case BOOL_SYMBOL:
            	                		    case BTREE_SYMBOL:
            	                		    case BYTE_SYMBOL:
            	                		    case CACHE_SYMBOL:
            	                		    case CASCADED_SYMBOL:
            	                		    case CATALOG_NAME_SYMBOL:
            	                		    case CHAIN_SYMBOL:
            	                		    case CHANGED_SYMBOL:
            	                		    case CHARSET_SYMBOL:
            	                		    case CHECKSUM_SYMBOL:
            	                		    case CIPHER_SYMBOL:
            	                		    case CLASS_ORIGIN_SYMBOL:
            	                		    case CLIENT_SYMBOL:
            	                		    case CLOSE_SYMBOL:
            	                		    case COALESCE_SYMBOL:
            	                		    case CODE_SYMBOL:
            	                		    case COLLATION_SYMBOL:
            	                		    case COLUMNS_SYMBOL:
            	                		    case COLUMN_FORMAT_SYMBOL:
            	                		    case COLUMN_NAME_SYMBOL:
            	                		    case COMMENT_SYMBOL:
            	                		    case COMMITTED_SYMBOL:
            	                		    case COMMIT_SYMBOL:
            	                		    case COMPACT_SYMBOL:
            	                		    case COMPLETION_SYMBOL:
            	                		    case COMPRESSED_SYMBOL:
            	                		    case CONCURRENT_SYMBOL:
            	                		    case CONNECTION_SYMBOL:
            	                		    case CONSISTENT_SYMBOL:
            	                		    case CONSTRAINT_CATALOG_SYMBOL:
            	                		    case CONSTRAINT_NAME_SYMBOL:
            	                		    case CONSTRAINT_SCHEMA_SYMBOL:
            	                		    case CONTAINS_SYMBOL:
            	                		    case CONTEXT_SYMBOL:
            	                		    case CONTRIBUTORS_SYMBOL:
            	                		    case CPU_SYMBOL:
            	                		    case CUBE_SYMBOL:
            	                		    case CURRENT_SYMBOL:
            	                		    case CURSOR_NAME_SYMBOL:
            	                		    case DATAFILE_SYMBOL:
            	                		    case DATA_SYMBOL:
            	                		    case DATETIME_SYMBOL:
            	                		    case DATE_SYMBOL:
            	                		    case DAY_SYMBOL:
            	                		    case DEALLOCATE_SYMBOL:
            	                		    case DEFAULT_AUTH_SYMBOL:
            	                		    case DEFINER_SYMBOL:
            	                		    case DELAY_KEY_WRITE_SYMBOL:
            	                		    case DES_KEY_FILE_SYMBOL:
            	                		    case DIAGNOSTICS_SYMBOL:
            	                		    case DIRECTORY_SYMBOL:
            	                		    case DISABLE_SYMBOL:
            	                		    case DISCARD_SYMBOL:
            	                		    case DISK_SYMBOL:
            	                		    case DOUBLE_QUOTED_TEXT:
            	                		    case DO_SYMBOL:
            	                		    case DUMPFILE_SYMBOL:
            	                		    case DUPLICATE_SYMBOL:
            	                		    case DYNAMIC_SYMBOL:
            	                		    case ENABLE_SYMBOL:
            	                		    case ENDS_SYMBOL:
            	                		    case END_SYMBOL:
            	                		    case ENGINES_SYMBOL:
            	                		    case ENGINE_SYMBOL:
            	                		    case ENUM_SYMBOL:
            	                		    case ERRORS_SYMBOL:
            	                		    case ERROR_SYMBOL:
            	                		    case ESCAPE_SYMBOL:
            	                		    case EVENTS_SYMBOL:
            	                		    case EVENT_SYMBOL:
            	                		    case EVERY_SYMBOL:
            	                		    case EXECUTE_SYMBOL:
            	                		    case EXPANSION_SYMBOL:
            	                		    case EXPORT_SYMBOL:
            	                		    case EXTENDED_SYMBOL:
            	                		    case EXTENT_SIZE_SYMBOL:
            	                		    case FAST_SYMBOL:
            	                		    case FAULTS_SYMBOL:
            	                		    case FILE_SYMBOL:
            	                		    case FIRST_SYMBOL:
            	                		    case FIXED_SYMBOL:
            	                		    case FLUSH_SYMBOL:
            	                		    case FORMAT_SYMBOL:
            	                		    case FOUND_SYMBOL:
            	                		    case FULL_SYMBOL:
            	                		    case FUNCTION_SYMBOL:
            	                		    case GENERAL_SYMBOL:
            	                		    case GEOMETRYCOLLECTION_SYMBOL:
            	                		    case GEOMETRY_SYMBOL:
            	                		    case GET_FORMAT_SYMBOL:
            	                		    case GLOBAL_SYMBOL:
            	                		    case GRANTS_SYMBOL:
            	                		    case HANDLER_SYMBOL:
            	                		    case HASH_SYMBOL:
            	                		    case HELP_SYMBOL:
            	                		    case HOSTS_SYMBOL:
            	                		    case HOST_SYMBOL:
            	                		    case HOUR_SYMBOL:
            	                		    case IDENTIFIED_SYMBOL:
            	                		    case IDENTIFIER:
            	                		    case IGNORE_SERVER_IDS_SYMBOL:
            	                		    case IMPORT_SYMBOL:
            	                		    case INDEXES_SYMBOL:
            	                		    case INITIAL_SIZE_SYMBOL:
            	                		    case INNODB_SYMBOL:
            	                		    case INSERT_METHOD_SYMBOL:
            	                		    case INSTALL_SYMBOL:
            	                		    case INVOKER_SYMBOL:
            	                		    case IO_SYMBOL:
            	                		    case IPC_SYMBOL:
            	                		    case ISOLATION_SYMBOL:
            	                		    case ISSUER_SYMBOL:
            	                		    case KEY_BLOCK_SIZE_SYMBOL:
            	                		    case LANGUAGE_SYMBOL:
            	                		    case LAST_SYMBOL:
            	                		    case LEAVES_SYMBOL:
            	                		    case LESS_SYMBOL:
            	                		    case LEVEL_SYMBOL:
            	                		    case LINESTRING_SYMBOL:
            	                		    case LIST_SYMBOL:
            	                		    case LOCAL_SYMBOL:
            	                		    case LOCKS_SYMBOL:
            	                		    case LOGFILE_SYMBOL:
            	                		    case LOGS_SYMBOL:
            	                		    case MASTER_AUTO_POSITION_SYMBOL:
            	                		    case MASTER_CONNECT_RETRY_SYMBOL:
            	                		    case MASTER_DELAY_SYMBOL:
            	                		    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
            	                		    case MASTER_HOST_SYMBOL:
            	                		    case MASTER_LOG_FILE_SYMBOL:
            	                		    case MASTER_LOG_POS_SYMBOL:
            	                		    case MASTER_PASSWORD_SYMBOL:
            	                		    case MASTER_PORT_SYMBOL:
            	                		    case MASTER_RETRY_COUNT_SYMBOL:
            	                		    case MASTER_SERVER_ID_SYMBOL:
            	                		    case MASTER_SSL_CAPATH_SYMBOL:
            	                		    case MASTER_SSL_CA_SYMBOL:
            	                		    case MASTER_SSL_CERT_SYMBOL:
            	                		    case MASTER_SSL_CIPHER_SYMBOL:
            	                		    case MASTER_SSL_CRLPATH_SYMBOL:
            	                		    case MASTER_SSL_CRL_SYMBOL:
            	                		    case MASTER_SSL_KEY_SYMBOL:
            	                		    case MASTER_SSL_SYMBOL:
            	                		    case MASTER_SYMBOL:
            	                		    case MASTER_USER_SYMBOL:
            	                		    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
            	                		    case MAX_QUERIES_PER_HOUR_SYMBOL:
            	                		    case MAX_ROWS_SYMBOL:
            	                		    case MAX_SIZE_SYMBOL:
            	                		    case MAX_UPDATES_PER_HOUR_SYMBOL:
            	                		    case MAX_USER_CONNECTIONS_SYMBOL:
            	                		    case MEDIUM_SYMBOL:
            	                		    case MEMORY_SYMBOL:
            	                		    case MERGE_SYMBOL:
            	                		    case MESSAGE_TEXT_SYMBOL:
            	                		    case MICROSECOND_SYMBOL:
            	                		    case MIGRATE_SYMBOL:
            	                		    case MINUTE_SYMBOL:
            	                		    case MIN_ROWS_SYMBOL:
            	                		    case MODE_SYMBOL:
            	                		    case MODIFY_SYMBOL:
            	                		    case MONTH_SYMBOL:
            	                		    case MULTILINESTRING_SYMBOL:
            	                		    case MULTIPOINT_SYMBOL:
            	                		    case MULTIPOLYGON_SYMBOL:
            	                		    case MUTEX_SYMBOL:
            	                		    case MYSQL_ERRNO_SYMBOL:
            	                		    case NAMES_SYMBOL:
            	                		    case NAME_SYMBOL:
            	                		    case NATIONAL_SYMBOL:
            	                		    case NCHAR_SYMBOL:
            	                		    case NCHAR_TEXT:
            	                		    case NDBCLUSTER_SYMBOL:
            	                		    case NEW_SYMBOL:
            	                		    case NEXT_SYMBOL:
            	                		    case NODEGROUP_SYMBOL:
            	                		    case NONE_SYMBOL:
            	                		    case NO_SYMBOL:
            	                		    case NO_WAIT_SYMBOL:
            	                		    case NUMBER_SYMBOL:
            	                		    case NVARCHAR_SYMBOL:
            	                		    case OFFSET_SYMBOL:
            	                		    case OLD_PASSWORD_SYMBOL:
            	                		    case ONE_SHOT_SYMBOL:
            	                		    case ONE_SYMBOL:
            	                		    case OPEN_SYMBOL:
            	                		    case OPTIONS_SYMBOL:
            	                		    case OWNER_SYMBOL:
            	                		    case PACK_KEYS_SYMBOL:
            	                		    case PAGE_SYMBOL:
            	                		    case PARSER_SYMBOL:
            	                		    case PARTIAL_SYMBOL:
            	                		    case PARTITIONING_SYMBOL:
            	                		    case PARTITIONS_SYMBOL:
            	                		    case PARTITION_SYMBOL:
            	                		    case PASSWORD_SYMBOL:
            	                		    case PHASE_SYMBOL:
            	                		    case PLUGINS_SYMBOL:
            	                		    case PLUGIN_DIR_SYMBOL:
            	                		    case PLUGIN_SYMBOL:
            	                		    case POINT_SYMBOL:
            	                		    case POLYGON_SYMBOL:
            	                		    case PORT_SYMBOL:
            	                		    case PREPARE_SYMBOL:
            	                		    case PRESERVE_SYMBOL:
            	                		    case PREV_SYMBOL:
            	                		    case PRIVILEGES_SYMBOL:
            	                		    case PROCESSLIST_SYMBOL:
            	                		    case PROCESS_SYMBOL:
            	                		    case PROFILES_SYMBOL:
            	                		    case PROFILE_SYMBOL:
            	                		    case PROXY_SYMBOL:
            	                		    case QUARTER_SYMBOL:
            	                		    case QUERY_SYMBOL:
            	                		    case QUICK_SYMBOL:
            	                		    case READ_ONLY_SYMBOL:
            	                		    case REBUILD_SYMBOL:
            	                		    case RECOVER_SYMBOL:
            	                		    case REDOFILE_SYMBOL:
            	                		    case REDO_BUFFER_SIZE_SYMBOL:
            	                		    case REDUNDANT_SYMBOL:
            	                		    case RELAYLOG_SYMBOL:
            	                		    case RELAY_LOG_FILE_SYMBOL:
            	                		    case RELAY_LOG_POS_SYMBOL:
            	                		    case RELAY_SYMBOL:
            	                		    case RELAY_THREAD_SYMBOL:
            	                		    case RELOAD_SYMBOL:
            	                		    case REMOVE_SYMBOL:
            	                		    case REORGANIZE_SYMBOL:
            	                		    case REPAIR_SYMBOL:
            	                		    case REPEATABLE_SYMBOL:
            	                		    case REPLICATION_SYMBOL:
            	                		    case RESET_SYMBOL:
            	                		    case RESTORE_SYMBOL:
            	                		    case RESUME_SYMBOL:
            	                		    case RETURNED_SQLSTATE_SYMBOL:
            	                		    case RETURNS_SYMBOL:
            	                		    case REVERSE_SYMBOL:
            	                		    case ROLLBACK_SYMBOL:
            	                		    case ROLLUP_SYMBOL:
            	                		    case ROUTINE_SYMBOL:
            	                		    case ROWS_SYMBOL:
            	                		    case ROW_COUNT_SYMBOL:
            	                		    case ROW_FORMAT_SYMBOL:
            	                		    case ROW_SYMBOL:
            	                		    case RTREE_SYMBOL:
            	                		    case SAVEPOINT_SYMBOL:
            	                		    case SCHEDULE_SYMBOL:
            	                		    case SCHEMA_NAME_SYMBOL:
            	                		    case SECOND_SYMBOL:
            	                		    case SECURITY_SYMBOL:
            	                		    case SERIALIZABLE_SYMBOL:
            	                		    case SERIAL_SYMBOL:
            	                		    case SERVER_SYMBOL:
            	                		    case SESSION_SYMBOL:
            	                		    case SHARE_SYMBOL:
            	                		    case SHUTDOWN_SYMBOL:
            	                		    case SIGNED_SYMBOL:
            	                		    case SIMPLE_SYMBOL:
            	                		    case SINGLE_QUOTED_TEXT:
            	                		    case SLAVE_SYMBOL:
            	                		    case SLOW_SYMBOL:
            	                		    case SNAPSHOT_SYMBOL:
            	                		    case SOCKET_SYMBOL:
            	                		    case SONAME_SYMBOL:
            	                		    case SOUNDS_SYMBOL:
            	                		    case SOURCE_SYMBOL:
            	                		    case SQL_AFTER_GTIDS_SYMBOL:
            	                		    case SQL_AFTER_MTS_GAPS_SYMBOL:
            	                		    case SQL_BEFORE_GTIDS_SYMBOL:
            	                		    case SQL_BUFFER_RESULT_SYMBOL:
            	                		    case SQL_CACHE_SYMBOL:
            	                		    case SQL_NO_CACHE_SYMBOL:
            	                		    case SQL_THREAD_SYMBOL:
            	                		    case STARTS_SYMBOL:
            	                		    case START_SYMBOL:
            	                		    case STATS_AUTO_RECALC_SYMBOL:
            	                		    case STATS_PERSISTENT_SYMBOL:
            	                		    case STATS_SAMPLE_PAGES_SYMBOL:
            	                		    case STATUS_SYMBOL:
            	                		    case STOP_SYMBOL:
            	                		    case STORAGE_SYMBOL:
            	                		    case STRING_SYMBOL:
            	                		    case SUBCLASS_ORIGIN_SYMBOL:
            	                		    case SUBDATE_SYMBOL:
            	                		    case SUBJECT_SYMBOL:
            	                		    case SUBPARTITIONS_SYMBOL:
            	                		    case SUBPARTITION_SYMBOL:
            	                		    case SUPER_SYMBOL:
            	                		    case SUSPEND_SYMBOL:
            	                		    case SWAPS_SYMBOL:
            	                		    case SWITCHES_SYMBOL:
            	                		    case TABLESPACE_SYMBOL:
            	                		    case TABLES_SYMBOL:
            	                		    case TABLE_CHECKSUM_SYMBOL:
            	                		    case TABLE_NAME_SYMBOL:
            	                		    case TEMPORARY_SYMBOL:
            	                		    case TEMPTABLE_SYMBOL:
            	                		    case TEXT_SYMBOL:
            	                		    case THAN_SYMBOL:
            	                		    case TIMESTAMP_ADD_SYMBOL:
            	                		    case TIMESTAMP_DIFF_SYMBOL:
            	                		    case TIMESTAMP_SYMBOL:
            	                		    case TIME_SYMBOL:
            	                		    case TRANSACTION_SYMBOL:
            	                		    case TRIGGERS_SYMBOL:
            	                		    case TRUNCATE_SYMBOL:
            	                		    case TYPES_SYMBOL:
            	                		    case TYPE_SYMBOL:
            	                		    case UDF_RETURNS_SYMBOL:
            	                		    case UNCOMMITTED_SYMBOL:
            	                		    case UNDEFINED_SYMBOL:
            	                		    case UNDERSCORE_CHARSET:
            	                		    case UNDOFILE_SYMBOL:
            	                		    case UNDO_BUFFER_SIZE_SYMBOL:
            	                		    case UNICODE_SYMBOL:
            	                		    case UNINSTALL_SYMBOL:
            	                		    case UNKNOWN_SYMBOL:
            	                		    case UNTIL_SYMBOL:
            	                		    case UPGRADE_SYMBOL:
            	                		    case USER_RESOURCES_SYMBOL:
            	                		    case USER_SYMBOL:
            	                		    case USE_FRM_SYMBOL:
            	                		    case VALUE_SYMBOL:
            	                		    case VARIABLES_SYMBOL:
            	                		    case VIEW_SYMBOL:
            	                		    case WAIT_SYMBOL:
            	                		    case WARNINGS_SYMBOL:
            	                		    case WEEK_SYMBOL:
            	                		    case WEIGHT_STRING_SYMBOL:
            	                		    case WORK_SYMBOL:
            	                		    case WRAPPER_SYMBOL:
            	                		    case X509_SYMBOL:
            	                		    case XA_SYMBOL:
            	                		    case XML_SYMBOL:
            	                		    case YEAR_SYMBOL:
            	                		    	{
            	                		    		alt641=1;
            	                		    	}
            	                		        break;
            	                		}

            	                	}
            	                    break;
            	            }

            	            switch (alt641)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2115:35: VALUE_SYMBOL
            	        	    {
            	        	        VALUE_SYMBOL2444 = (pANTLR3_COMMON_TOKEN) MATCHT(VALUE_SYMBOL, &FOLLOW_VALUE_SYMBOL_in_resignal_statement12081);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleresignal_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        VALUE_SYMBOL2444_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VALUE_SYMBOL2444));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, VALUE_SYMBOL2444_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_text_or_identifier_in_resignal_statement12084);
            	        text_or_identifier2445=text_or_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleresignal_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_identifier2445.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:2116:3: ( SET_SYMBOL signal_information_item ( COMMA_SYMBOL signal_information_item )* )?
            {
                int alt644=2;
                switch ( LA(1) )
                {
                    case SET_SYMBOL:
                    	{
                    		alt644=1;
                    	}
                        break;
                }

                switch (alt644)
                {
            	case 1:
            	    // MySQL.g:2116:4: SET_SYMBOL signal_information_item ( COMMA_SYMBOL signal_information_item )*
            	    {
            	        SET_SYMBOL2446 = (pANTLR3_COMMON_TOKEN) MATCHT(SET_SYMBOL, &FOLLOW_SET_SYMBOL_in_resignal_statement12091);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleresignal_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SET_SYMBOL2446_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SET_SYMBOL2446));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SET_SYMBOL2446_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_signal_information_item_in_resignal_statement12093);
            	        signal_information_item2447=signal_information_item(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleresignal_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, signal_information_item2447.tree);

            	        // MySQL.g:2116:39: ( COMMA_SYMBOL signal_information_item )*

            	        for (;;)
            	        {
            	            int alt643=2;
            	            switch ( LA(1) )
            	            {
            	            case COMMA_SYMBOL:
            	            	{
            	            		alt643=1;
            	            	}
            	                break;

            	            }

            	            switch (alt643)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2116:40: COMMA_SYMBOL signal_information_item
            	        	    {
            	        	        COMMA_SYMBOL2448 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_resignal_statement12096);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleresignal_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COMMA_SYMBOL2448_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2448));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2448_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_signal_information_item_in_resignal_statement12098);
            	        	        signal_information_item2449=signal_information_item(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleresignal_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, signal_information_item2449.tree);

            	        	    }
            	        	    break;

            	        	default:
            	        	    goto loop643;	/* break out of the loop */
            	        	    break;
            	            }
            	        }
            	        loop643: ; /* Jump out to here if this rule does not match */


            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleresignal_statementEx; /* Prevent compiler warnings */
    ruleresignal_statementEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end resignal_statement */

/**
 * $ANTLR start signal_information_item
 * MySQL.g:2119:1: signal_information_item : condition_information_item_name EQUAL_OPERATOR literal ;
 */
static MySQLParser_signal_information_item_return
signal_information_item(pMySQLParser ctx)
{
    MySQLParser_signal_information_item_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2451;
    MySQLParser_condition_information_item_name_return condition_information_item_name2450;
    #undef	RETURN_TYPE_condition_information_item_name2450
    #define	RETURN_TYPE_condition_information_item_name2450 MySQLParser_condition_information_item_name_return

    MySQLParser_literal_return literal2452;
    #undef	RETURN_TYPE_literal2452
    #define	RETURN_TYPE_literal2452 MySQLParser_literal_return

    pANTLR3_BASE_TREE EQUAL_OPERATOR2451_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    EQUAL_OPERATOR2451       = NULL;
    condition_information_item_name2450.tree = NULL;

    literal2452.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    EQUAL_OPERATOR2451_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2119:24: ( condition_information_item_name EQUAL_OPERATOR literal )
        // MySQL.g:2120:2: condition_information_item_name EQUAL_OPERATOR literal
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_condition_information_item_name_in_signal_information_item12111);
            condition_information_item_name2450=condition_information_item_name(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulesignal_information_itemEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, condition_information_item_name2450.tree);

            EQUAL_OPERATOR2451 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_signal_information_item12113);
            if  (HASEXCEPTION())
            {
                goto rulesignal_information_itemEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EQUAL_OPERATOR2451_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2451));
            ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2451_tree);
            }

            FOLLOWPUSH(FOLLOW_literal_in_signal_information_item12115);
            literal2452=literal(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulesignal_information_itemEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, literal2452.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto rulesignal_information_itemEx; /* Prevent compiler warnings */
    rulesignal_information_itemEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end signal_information_item */

/**
 * $ANTLR start cursor_close
 * MySQL.g:2123:1: cursor_close : CLOSE_SYMBOL identifier ;
 */
static MySQLParser_cursor_close_return
cursor_close(pMySQLParser ctx)
{
    MySQLParser_cursor_close_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    CLOSE_SYMBOL2453;
    MySQLParser_identifier_return identifier2454;
    #undef	RETURN_TYPE_identifier2454
    #define	RETURN_TYPE_identifier2454 MySQLParser_identifier_return

    pANTLR3_BASE_TREE CLOSE_SYMBOL2453_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CLOSE_SYMBOL2453       = NULL;
    identifier2454.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CLOSE_SYMBOL2453_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2123:13: ( CLOSE_SYMBOL identifier )
        // MySQL.g:2124:2: CLOSE_SYMBOL identifier
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            CLOSE_SYMBOL2453 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_SYMBOL, &FOLLOW_CLOSE_SYMBOL_in_cursor_close12124);
            if  (HASEXCEPTION())
            {
                goto rulecursor_closeEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_SYMBOL2453_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_SYMBOL2453));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_SYMBOL2453_tree);
            }

            FOLLOWPUSH(FOLLOW_identifier_in_cursor_close12126);
            identifier2454=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecursor_closeEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2454.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto rulecursor_closeEx; /* Prevent compiler warnings */
    rulecursor_closeEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end cursor_close */

/**
 * $ANTLR start cursor_fetch
 * MySQL.g:2127:1: cursor_fetch : FETCH_SYMBOL identifier INTO_SYMBOL identifier ( COMMA_SYMBOL identifier )* ;
 */
static MySQLParser_cursor_fetch_return
cursor_fetch(pMySQLParser ctx)
{
    MySQLParser_cursor_fetch_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    FETCH_SYMBOL2455;
    pANTLR3_COMMON_TOKEN    INTO_SYMBOL2457;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2459;
    MySQLParser_identifier_return identifier2456;
    #undef	RETURN_TYPE_identifier2456
    #define	RETURN_TYPE_identifier2456 MySQLParser_identifier_return

    MySQLParser_identifier_return identifier2458;
    #undef	RETURN_TYPE_identifier2458
    #define	RETURN_TYPE_identifier2458 MySQLParser_identifier_return

    MySQLParser_identifier_return identifier2460;
    #undef	RETURN_TYPE_identifier2460
    #define	RETURN_TYPE_identifier2460 MySQLParser_identifier_return

    pANTLR3_BASE_TREE FETCH_SYMBOL2455_tree;
    pANTLR3_BASE_TREE INTO_SYMBOL2457_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2459_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    FETCH_SYMBOL2455       = NULL;
    INTO_SYMBOL2457       = NULL;
    COMMA_SYMBOL2459       = NULL;
    identifier2456.tree = NULL;

    identifier2458.tree = NULL;

    identifier2460.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    FETCH_SYMBOL2455_tree   = NULL;
    INTO_SYMBOL2457_tree   = NULL;
    COMMA_SYMBOL2459_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2127:13: ( FETCH_SYMBOL identifier INTO_SYMBOL identifier ( COMMA_SYMBOL identifier )* )
        // MySQL.g:2128:2: FETCH_SYMBOL identifier INTO_SYMBOL identifier ( COMMA_SYMBOL identifier )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FETCH_SYMBOL2455 = (pANTLR3_COMMON_TOKEN) MATCHT(FETCH_SYMBOL, &FOLLOW_FETCH_SYMBOL_in_cursor_fetch12135);
            if  (HASEXCEPTION())
            {
                goto rulecursor_fetchEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            FETCH_SYMBOL2455_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FETCH_SYMBOL2455));
            ADAPTOR->addChild(ADAPTOR, root_0, FETCH_SYMBOL2455_tree);
            }

            FOLLOWPUSH(FOLLOW_identifier_in_cursor_fetch12137);
            identifier2456=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecursor_fetchEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2456.tree);

            INTO_SYMBOL2457 = (pANTLR3_COMMON_TOKEN) MATCHT(INTO_SYMBOL, &FOLLOW_INTO_SYMBOL_in_cursor_fetch12139);
            if  (HASEXCEPTION())
            {
                goto rulecursor_fetchEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            INTO_SYMBOL2457_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTO_SYMBOL2457));
            ADAPTOR->addChild(ADAPTOR, root_0, INTO_SYMBOL2457_tree);
            }

            FOLLOWPUSH(FOLLOW_identifier_in_cursor_fetch12141);
            identifier2458=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecursor_fetchEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2458.tree);

            // MySQL.g:2128:49: ( COMMA_SYMBOL identifier )*

            for (;;)
            {
                int alt645=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt645=1;
                	}
                    break;

                }

                switch (alt645)
                {
            	case 1:
            	    // MySQL.g:2128:50: COMMA_SYMBOL identifier
            	    {
            	        COMMA_SYMBOL2459 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_cursor_fetch12144);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecursor_fetchEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL2459_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2459));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2459_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_identifier_in_cursor_fetch12146);
            	        identifier2460=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecursor_fetchEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2460.tree);

            	    }
            	    break;

            	default:
            	    goto loop645;	/* break out of the loop */
            	    break;
                }
            }
            loop645: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto rulecursor_fetchEx; /* Prevent compiler warnings */
    rulecursor_fetchEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end cursor_fetch */

/**
 * $ANTLR start cursor_open
 * MySQL.g:2131:1: cursor_open : OPEN_SYMBOL identifier ;
 */
static MySQLParser_cursor_open_return
cursor_open(pMySQLParser ctx)
{
    MySQLParser_cursor_open_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    OPEN_SYMBOL2461;
    MySQLParser_identifier_return identifier2462;
    #undef	RETURN_TYPE_identifier2462
    #define	RETURN_TYPE_identifier2462 MySQLParser_identifier_return

    pANTLR3_BASE_TREE OPEN_SYMBOL2461_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_SYMBOL2461       = NULL;
    identifier2462.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_SYMBOL2461_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2131:12: ( OPEN_SYMBOL identifier )
        // MySQL.g:2132:2: OPEN_SYMBOL identifier
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPEN_SYMBOL2461 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_SYMBOL, &FOLLOW_OPEN_SYMBOL_in_cursor_open12157);
            if  (HASEXCEPTION())
            {
                goto rulecursor_openEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_SYMBOL2461_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_SYMBOL2461));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_SYMBOL2461_tree);
            }

            FOLLOWPUSH(FOLLOW_identifier_in_cursor_open12159);
            identifier2462=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecursor_openEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2462.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto rulecursor_openEx; /* Prevent compiler warnings */
    rulecursor_openEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end cursor_open */

/**
 * $ANTLR start schedule
 * MySQL.g:2138:1: schedule : ( AT_SYMBOL expression ( PLUS_OPERATOR interval_expression )* | EVERY_SYMBOL interval ( STARTS_SYMBOL expression ( PLUS_OPERATOR interval_expression )* )? ( ENDS_SYMBOL expression ( PLUS_OPERATOR interval_expression )* )? );
 */
static MySQLParser_schedule_return
schedule(pMySQLParser ctx)
{
    MySQLParser_schedule_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    AT_SYMBOL2463;
    pANTLR3_COMMON_TOKEN    PLUS_OPERATOR2465;
    pANTLR3_COMMON_TOKEN    EVERY_SYMBOL2467;
    pANTLR3_COMMON_TOKEN    STARTS_SYMBOL2469;
    pANTLR3_COMMON_TOKEN    PLUS_OPERATOR2471;
    pANTLR3_COMMON_TOKEN    ENDS_SYMBOL2473;
    pANTLR3_COMMON_TOKEN    PLUS_OPERATOR2475;
    MySQLParser_expression_return expression2464;
    #undef	RETURN_TYPE_expression2464
    #define	RETURN_TYPE_expression2464 MySQLParser_expression_return

    MySQLParser_interval_expression_return interval_expression2466;
    #undef	RETURN_TYPE_interval_expression2466
    #define	RETURN_TYPE_interval_expression2466 MySQLParser_interval_expression_return

    MySQLParser_interval_return interval2468;
    #undef	RETURN_TYPE_interval2468
    #define	RETURN_TYPE_interval2468 MySQLParser_interval_return

    MySQLParser_expression_return expression2470;
    #undef	RETURN_TYPE_expression2470
    #define	RETURN_TYPE_expression2470 MySQLParser_expression_return

    MySQLParser_interval_expression_return interval_expression2472;
    #undef	RETURN_TYPE_interval_expression2472
    #define	RETURN_TYPE_interval_expression2472 MySQLParser_interval_expression_return

    MySQLParser_expression_return expression2474;
    #undef	RETURN_TYPE_expression2474
    #define	RETURN_TYPE_expression2474 MySQLParser_expression_return

    MySQLParser_interval_expression_return interval_expression2476;
    #undef	RETURN_TYPE_interval_expression2476
    #define	RETURN_TYPE_interval_expression2476 MySQLParser_interval_expression_return

    pANTLR3_BASE_TREE AT_SYMBOL2463_tree;
    pANTLR3_BASE_TREE PLUS_OPERATOR2465_tree;
    pANTLR3_BASE_TREE EVERY_SYMBOL2467_tree;
    pANTLR3_BASE_TREE STARTS_SYMBOL2469_tree;
    pANTLR3_BASE_TREE PLUS_OPERATOR2471_tree;
    pANTLR3_BASE_TREE ENDS_SYMBOL2473_tree;
    pANTLR3_BASE_TREE PLUS_OPERATOR2475_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    AT_SYMBOL2463       = NULL;
    PLUS_OPERATOR2465       = NULL;
    EVERY_SYMBOL2467       = NULL;
    STARTS_SYMBOL2469       = NULL;
    PLUS_OPERATOR2471       = NULL;
    ENDS_SYMBOL2473       = NULL;
    PLUS_OPERATOR2475       = NULL;
    expression2464.tree = NULL;

    interval_expression2466.tree = NULL;

    interval2468.tree = NULL;

    expression2470.tree = NULL;

    interval_expression2472.tree = NULL;

    expression2474.tree = NULL;

    interval_expression2476.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    AT_SYMBOL2463_tree   = NULL;
    PLUS_OPERATOR2465_tree   = NULL;
    EVERY_SYMBOL2467_tree   = NULL;
    STARTS_SYMBOL2469_tree   = NULL;
    PLUS_OPERATOR2471_tree   = NULL;
    ENDS_SYMBOL2473_tree   = NULL;
    PLUS_OPERATOR2475_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2138:9: ( AT_SYMBOL expression ( PLUS_OPERATOR interval_expression )* | EVERY_SYMBOL interval ( STARTS_SYMBOL expression ( PLUS_OPERATOR interval_expression )* )? ( ENDS_SYMBOL expression ( PLUS_OPERATOR interval_expression )* )? )

            ANTLR3_UINT32 alt651;

            alt651=2;

            switch ( LA(1) )
            {
            case AT_SYMBOL:
            	{
            		alt651=1;
            	}
                break;
            case EVERY_SYMBOL:
            	{
            		alt651=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 651;
                EXCEPTION->state        = 0;


                goto rulescheduleEx;

            }

            switch (alt651)
            {
        	case 1:
        	    // MySQL.g:2139:2: AT_SYMBOL expression ( PLUS_OPERATOR interval_expression )*
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        AT_SYMBOL2463 = (pANTLR3_COMMON_TOKEN) MATCHT(AT_SYMBOL, &FOLLOW_AT_SYMBOL_in_schedule12171);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulescheduleEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        AT_SYMBOL2463_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AT_SYMBOL2463));
        	        ADAPTOR->addChild(ADAPTOR, root_0, AT_SYMBOL2463_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_schedule12173);
        	        expression2464=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulescheduleEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2464.tree);

        	        // MySQL.g:2139:23: ( PLUS_OPERATOR interval_expression )*

        	        for (;;)
        	        {
        	            int alt646=2;
        	            switch ( LA(1) )
        	            {
        	            case PLUS_OPERATOR:
        	            	{
        	            		alt646=1;
        	            	}
        	                break;

        	            }

        	            switch (alt646)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2139:24: PLUS_OPERATOR interval_expression
        	        	    {
        	        	        PLUS_OPERATOR2465 = (pANTLR3_COMMON_TOKEN) MATCHT(PLUS_OPERATOR, &FOLLOW_PLUS_OPERATOR_in_schedule12176);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulescheduleEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        PLUS_OPERATOR2465_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PLUS_OPERATOR2465));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, PLUS_OPERATOR2465_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_interval_expression_in_schedule12178);
        	        	        interval_expression2466=interval_expression(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulescheduleEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, interval_expression2466.tree);

        	        	    }
        	        	    break;

        	        	default:
        	        	    goto loop646;	/* break out of the loop */
        	        	    break;
        	            }
        	        }
        	        loop646: ; /* Jump out to here if this rule does not match */


        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2140:4: EVERY_SYMBOL interval ( STARTS_SYMBOL expression ( PLUS_OPERATOR interval_expression )* )? ( ENDS_SYMBOL expression ( PLUS_OPERATOR interval_expression )* )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        EVERY_SYMBOL2467 = (pANTLR3_COMMON_TOKEN) MATCHT(EVERY_SYMBOL, &FOLLOW_EVERY_SYMBOL_in_schedule12185);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulescheduleEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EVERY_SYMBOL2467_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EVERY_SYMBOL2467));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EVERY_SYMBOL2467_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_interval_in_schedule12187);
        	        interval2468=interval(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulescheduleEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, interval2468.tree);

        	        // MySQL.g:2141:3: ( STARTS_SYMBOL expression ( PLUS_OPERATOR interval_expression )* )?
        	        {
        	            int alt648=2;
        	            switch ( LA(1) )
        	            {
        	                case STARTS_SYMBOL:
        	                	{
        	                		alt648=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt648)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2141:4: STARTS_SYMBOL expression ( PLUS_OPERATOR interval_expression )*
        	        	    {
        	        	        STARTS_SYMBOL2469 = (pANTLR3_COMMON_TOKEN) MATCHT(STARTS_SYMBOL, &FOLLOW_STARTS_SYMBOL_in_schedule12192);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulescheduleEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        STARTS_SYMBOL2469_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STARTS_SYMBOL2469));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, STARTS_SYMBOL2469_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_expression_in_schedule12194);
        	        	        expression2470=expression(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulescheduleEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2470.tree);

        	        	        // MySQL.g:2141:29: ( PLUS_OPERATOR interval_expression )*

        	        	        for (;;)
        	        	        {
        	        	            int alt647=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	            case PLUS_OPERATOR:
        	        	            	{
        	        	            		alt647=1;
        	        	            	}
        	        	                break;

        	        	            }

        	        	            switch (alt647)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:2141:30: PLUS_OPERATOR interval_expression
        	        	        	    {
        	        	        	        PLUS_OPERATOR2471 = (pANTLR3_COMMON_TOKEN) MATCHT(PLUS_OPERATOR, &FOLLOW_PLUS_OPERATOR_in_schedule12197);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulescheduleEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        PLUS_OPERATOR2471_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PLUS_OPERATOR2471));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, PLUS_OPERATOR2471_tree);
        	        	        	        }

        	        	        	        FOLLOWPUSH(FOLLOW_interval_expression_in_schedule12199);
        	        	        	        interval_expression2472=interval_expression(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulescheduleEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, interval_expression2472.tree);

        	        	        	    }
        	        	        	    break;

        	        	        	default:
        	        	        	    goto loop647;	/* break out of the loop */
        	        	        	    break;
        	        	            }
        	        	        }
        	        	        loop647: ; /* Jump out to here if this rule does not match */


        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:2142:3: ( ENDS_SYMBOL expression ( PLUS_OPERATOR interval_expression )* )?
        	        {
        	            int alt650=2;
        	            switch ( LA(1) )
        	            {
        	                case ENDS_SYMBOL:
        	                	{
        	                		alt650=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt650)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2142:4: ENDS_SYMBOL expression ( PLUS_OPERATOR interval_expression )*
        	        	    {
        	        	        ENDS_SYMBOL2473 = (pANTLR3_COMMON_TOKEN) MATCHT(ENDS_SYMBOL, &FOLLOW_ENDS_SYMBOL_in_schedule12208);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulescheduleEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        ENDS_SYMBOL2473_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ENDS_SYMBOL2473));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, ENDS_SYMBOL2473_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_expression_in_schedule12210);
        	        	        expression2474=expression(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulescheduleEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2474.tree);

        	        	        // MySQL.g:2142:27: ( PLUS_OPERATOR interval_expression )*

        	        	        for (;;)
        	        	        {
        	        	            int alt649=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	            case PLUS_OPERATOR:
        	        	            	{
        	        	            		alt649=1;
        	        	            	}
        	        	                break;

        	        	            }

        	        	            switch (alt649)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:2142:28: PLUS_OPERATOR interval_expression
        	        	        	    {
        	        	        	        PLUS_OPERATOR2475 = (pANTLR3_COMMON_TOKEN) MATCHT(PLUS_OPERATOR, &FOLLOW_PLUS_OPERATOR_in_schedule12213);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulescheduleEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        PLUS_OPERATOR2475_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PLUS_OPERATOR2475));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, PLUS_OPERATOR2475_tree);
        	        	        	        }

        	        	        	        FOLLOWPUSH(FOLLOW_interval_expression_in_schedule12215);
        	        	        	        interval_expression2476=interval_expression(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulescheduleEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, interval_expression2476.tree);

        	        	        	    }
        	        	        	    break;

        	        	        	default:
        	        	        	    goto loop649;	/* break out of the loop */
        	        	        	    break;
        	        	            }
        	        	        }
        	        	        loop649: ; /* Jump out to here if this rule does not match */


        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulescheduleEx; /* Prevent compiler warnings */
    rulescheduleEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end schedule */

/**
 * $ANTLR start server_option
 * MySQL.g:2146:1: server_option : ( HOST_SYMBOL string_literal | DATABASE_SYMBOL string_literal | USER_SYMBOL string_literal | PASSWORD_SYMBOL string_literal | SOCKET_SYMBOL string_literal | OWNER_SYMBOL string_literal | PORT_SYMBOL INTEGER );
 */
static MySQLParser_server_option_return
server_option(pMySQLParser ctx)
{
    MySQLParser_server_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    HOST_SYMBOL2477;
    pANTLR3_COMMON_TOKEN    DATABASE_SYMBOL2479;
    pANTLR3_COMMON_TOKEN    USER_SYMBOL2481;
    pANTLR3_COMMON_TOKEN    PASSWORD_SYMBOL2483;
    pANTLR3_COMMON_TOKEN    SOCKET_SYMBOL2485;
    pANTLR3_COMMON_TOKEN    OWNER_SYMBOL2487;
    pANTLR3_COMMON_TOKEN    PORT_SYMBOL2489;
    pANTLR3_COMMON_TOKEN    INTEGER2490;
    MySQLParser_string_literal_return string_literal2478;
    #undef	RETURN_TYPE_string_literal2478
    #define	RETURN_TYPE_string_literal2478 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal2480;
    #undef	RETURN_TYPE_string_literal2480
    #define	RETURN_TYPE_string_literal2480 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal2482;
    #undef	RETURN_TYPE_string_literal2482
    #define	RETURN_TYPE_string_literal2482 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal2484;
    #undef	RETURN_TYPE_string_literal2484
    #define	RETURN_TYPE_string_literal2484 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal2486;
    #undef	RETURN_TYPE_string_literal2486
    #define	RETURN_TYPE_string_literal2486 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal2488;
    #undef	RETURN_TYPE_string_literal2488
    #define	RETURN_TYPE_string_literal2488 MySQLParser_string_literal_return

    pANTLR3_BASE_TREE HOST_SYMBOL2477_tree;
    pANTLR3_BASE_TREE DATABASE_SYMBOL2479_tree;
    pANTLR3_BASE_TREE USER_SYMBOL2481_tree;
    pANTLR3_BASE_TREE PASSWORD_SYMBOL2483_tree;
    pANTLR3_BASE_TREE SOCKET_SYMBOL2485_tree;
    pANTLR3_BASE_TREE OWNER_SYMBOL2487_tree;
    pANTLR3_BASE_TREE PORT_SYMBOL2489_tree;
    pANTLR3_BASE_TREE INTEGER2490_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    HOST_SYMBOL2477       = NULL;
    DATABASE_SYMBOL2479       = NULL;
    USER_SYMBOL2481       = NULL;
    PASSWORD_SYMBOL2483       = NULL;
    SOCKET_SYMBOL2485       = NULL;
    OWNER_SYMBOL2487       = NULL;
    PORT_SYMBOL2489       = NULL;
    INTEGER2490       = NULL;
    string_literal2478.tree = NULL;

    string_literal2480.tree = NULL;

    string_literal2482.tree = NULL;

    string_literal2484.tree = NULL;

    string_literal2486.tree = NULL;

    string_literal2488.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    HOST_SYMBOL2477_tree   = NULL;
    DATABASE_SYMBOL2479_tree   = NULL;
    USER_SYMBOL2481_tree   = NULL;
    PASSWORD_SYMBOL2483_tree   = NULL;
    SOCKET_SYMBOL2485_tree   = NULL;
    OWNER_SYMBOL2487_tree   = NULL;
    PORT_SYMBOL2489_tree   = NULL;
    INTEGER2490_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2146:14: ( HOST_SYMBOL string_literal | DATABASE_SYMBOL string_literal | USER_SYMBOL string_literal | PASSWORD_SYMBOL string_literal | SOCKET_SYMBOL string_literal | OWNER_SYMBOL string_literal | PORT_SYMBOL INTEGER )

            ANTLR3_UINT32 alt652;

            alt652=7;

            switch ( LA(1) )
            {
            case HOST_SYMBOL:
            	{
            		alt652=1;
            	}
                break;
            case DATABASE_SYMBOL:
            	{
            		alt652=2;
            	}
                break;
            case USER_SYMBOL:
            	{
            		alt652=3;
            	}
                break;
            case PASSWORD_SYMBOL:
            	{
            		alt652=4;
            	}
                break;
            case SOCKET_SYMBOL:
            	{
            		alt652=5;
            	}
                break;
            case OWNER_SYMBOL:
            	{
            		alt652=6;
            	}
                break;
            case PORT_SYMBOL:
            	{
            		alt652=7;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 652;
                EXCEPTION->state        = 0;


                goto ruleserver_optionEx;

            }

            switch (alt652)
            {
        	case 1:
        	    // MySQL.g:2147:2: HOST_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        HOST_SYMBOL2477 = (pANTLR3_COMMON_TOKEN) MATCHT(HOST_SYMBOL, &FOLLOW_HOST_SYMBOL_in_server_option12229);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleserver_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        HOST_SYMBOL2477_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HOST_SYMBOL2477));
        	        ADAPTOR->addChild(ADAPTOR, root_0, HOST_SYMBOL2477_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_server_option12231);
        	        string_literal2478=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleserver_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal2478.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2148:4: DATABASE_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DATABASE_SYMBOL2479 = (pANTLR3_COMMON_TOKEN) MATCHT(DATABASE_SYMBOL, &FOLLOW_DATABASE_SYMBOL_in_server_option12236);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleserver_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DATABASE_SYMBOL2479_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATABASE_SYMBOL2479));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DATABASE_SYMBOL2479_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_server_option12238);
        	        string_literal2480=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleserver_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal2480.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2149:4: USER_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        USER_SYMBOL2481 = (pANTLR3_COMMON_TOKEN) MATCHT(USER_SYMBOL, &FOLLOW_USER_SYMBOL_in_server_option12243);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleserver_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        USER_SYMBOL2481_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USER_SYMBOL2481));
        	        ADAPTOR->addChild(ADAPTOR, root_0, USER_SYMBOL2481_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_server_option12245);
        	        string_literal2482=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleserver_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal2482.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:2150:4: PASSWORD_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PASSWORD_SYMBOL2483 = (pANTLR3_COMMON_TOKEN) MATCHT(PASSWORD_SYMBOL, &FOLLOW_PASSWORD_SYMBOL_in_server_option12250);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleserver_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PASSWORD_SYMBOL2483_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PASSWORD_SYMBOL2483));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PASSWORD_SYMBOL2483_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_server_option12252);
        	        string_literal2484=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleserver_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal2484.tree);

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:2151:4: SOCKET_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SOCKET_SYMBOL2485 = (pANTLR3_COMMON_TOKEN) MATCHT(SOCKET_SYMBOL, &FOLLOW_SOCKET_SYMBOL_in_server_option12257);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleserver_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SOCKET_SYMBOL2485_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SOCKET_SYMBOL2485));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SOCKET_SYMBOL2485_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_server_option12259);
        	        string_literal2486=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleserver_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal2486.tree);

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:2152:4: OWNER_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        OWNER_SYMBOL2487 = (pANTLR3_COMMON_TOKEN) MATCHT(OWNER_SYMBOL, &FOLLOW_OWNER_SYMBOL_in_server_option12264);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleserver_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OWNER_SYMBOL2487_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OWNER_SYMBOL2487));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OWNER_SYMBOL2487_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_server_option12266);
        	        string_literal2488=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleserver_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal2488.tree);

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:2153:4: PORT_SYMBOL INTEGER
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PORT_SYMBOL2489 = (pANTLR3_COMMON_TOKEN) MATCHT(PORT_SYMBOL, &FOLLOW_PORT_SYMBOL_in_server_option12271);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleserver_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PORT_SYMBOL2489_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PORT_SYMBOL2489));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PORT_SYMBOL2489_tree);
        	        }

        	        INTEGER2490 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_server_option12273);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleserver_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INTEGER2490_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER2490));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER2490_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleserver_optionEx; /* Prevent compiler warnings */
    ruleserver_optionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end server_option */

/**
 * $ANTLR start database_option
 * MySQL.g:2156:1: database_option : ( DEFAULT_SYMBOL )? ( CHAR_SYMBOL SET_SYMBOL ( EQUAL_OPERATOR )? charset_name_or_default | COLLATE_SYMBOL ( EQUAL_OPERATOR )? collation_name_or_default ) ;
 */
static MySQLParser_database_option_return
database_option(pMySQLParser ctx)
{
    MySQLParser_database_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL2491;
    pANTLR3_COMMON_TOKEN    CHAR_SYMBOL2492;
    pANTLR3_COMMON_TOKEN    SET_SYMBOL2493;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2494;
    pANTLR3_COMMON_TOKEN    COLLATE_SYMBOL2496;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2497;
    MySQLParser_charset_name_or_default_return charset_name_or_default2495;
    #undef	RETURN_TYPE_charset_name_or_default2495
    #define	RETURN_TYPE_charset_name_or_default2495 MySQLParser_charset_name_or_default_return

    MySQLParser_collation_name_or_default_return collation_name_or_default2498;
    #undef	RETURN_TYPE_collation_name_or_default2498
    #define	RETURN_TYPE_collation_name_or_default2498 MySQLParser_collation_name_or_default_return

    pANTLR3_BASE_TREE DEFAULT_SYMBOL2491_tree;
    pANTLR3_BASE_TREE CHAR_SYMBOL2492_tree;
    pANTLR3_BASE_TREE SET_SYMBOL2493_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2494_tree;
    pANTLR3_BASE_TREE COLLATE_SYMBOL2496_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2497_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DEFAULT_SYMBOL2491       = NULL;
    CHAR_SYMBOL2492       = NULL;
    SET_SYMBOL2493       = NULL;
    EQUAL_OPERATOR2494       = NULL;
    COLLATE_SYMBOL2496       = NULL;
    EQUAL_OPERATOR2497       = NULL;
    charset_name_or_default2495.tree = NULL;

    collation_name_or_default2498.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DEFAULT_SYMBOL2491_tree   = NULL;
    CHAR_SYMBOL2492_tree   = NULL;
    SET_SYMBOL2493_tree   = NULL;
    EQUAL_OPERATOR2494_tree   = NULL;
    COLLATE_SYMBOL2496_tree   = NULL;
    EQUAL_OPERATOR2497_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2156:16: ( ( DEFAULT_SYMBOL )? ( CHAR_SYMBOL SET_SYMBOL ( EQUAL_OPERATOR )? charset_name_or_default | COLLATE_SYMBOL ( EQUAL_OPERATOR )? collation_name_or_default ) )
        // MySQL.g:2157:2: ( DEFAULT_SYMBOL )? ( CHAR_SYMBOL SET_SYMBOL ( EQUAL_OPERATOR )? charset_name_or_default | COLLATE_SYMBOL ( EQUAL_OPERATOR )? collation_name_or_default )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:2157:2: ( DEFAULT_SYMBOL )?
            {
                int alt653=2;
                switch ( LA(1) )
                {
                    case DEFAULT_SYMBOL:
                    	{
                    		alt653=1;
                    	}
                        break;
                }

                switch (alt653)
                {
            	case 1:
            	    // MySQL.g:2157:2: DEFAULT_SYMBOL
            	    {
            	        DEFAULT_SYMBOL2491 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_database_option12282);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledatabase_optionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DEFAULT_SYMBOL2491_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL2491));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL2491_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:2158:3: ( CHAR_SYMBOL SET_SYMBOL ( EQUAL_OPERATOR )? charset_name_or_default | COLLATE_SYMBOL ( EQUAL_OPERATOR )? collation_name_or_default )
            {
                int alt656=2;
                switch ( LA(1) )
                {
                case CHAR_SYMBOL:
                	{
                		alt656=1;
                	}
                    break;
                case COLLATE_SYMBOL:
                	{
                		alt656=2;
                	}
                    break;

                default:
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 656;
                    EXCEPTION->state        = 0;


                    goto ruledatabase_optionEx;

                }

                switch (alt656)
                {
            	case 1:
            	    // MySQL.g:2159:4: CHAR_SYMBOL SET_SYMBOL ( EQUAL_OPERATOR )? charset_name_or_default
            	    {
            	        CHAR_SYMBOL2492 = (pANTLR3_COMMON_TOKEN) MATCHT(CHAR_SYMBOL, &FOLLOW_CHAR_SYMBOL_in_database_option12292);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledatabase_optionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CHAR_SYMBOL2492_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHAR_SYMBOL2492));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CHAR_SYMBOL2492_tree);
            	        }

            	        SET_SYMBOL2493 = (pANTLR3_COMMON_TOKEN) MATCHT(SET_SYMBOL, &FOLLOW_SET_SYMBOL_in_database_option12294);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledatabase_optionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SET_SYMBOL2493_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SET_SYMBOL2493));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SET_SYMBOL2493_tree);
            	        }

            	        // MySQL.g:2159:27: ( EQUAL_OPERATOR )?
            	        {
            	            int alt654=2;
            	            switch ( LA(1) )
            	            {
            	                case EQUAL_OPERATOR:
            	                	{
            	                		alt654=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt654)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2159:27: EQUAL_OPERATOR
            	        	    {
            	        	        EQUAL_OPERATOR2494 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_database_option12296);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledatabase_optionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EQUAL_OPERATOR2494_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2494));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2494_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_charset_name_or_default_in_database_option12299);
            	        charset_name_or_default2495=charset_name_or_default(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledatabase_optionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset_name_or_default2495.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2160:6: COLLATE_SYMBOL ( EQUAL_OPERATOR )? collation_name_or_default
            	    {
            	        COLLATE_SYMBOL2496 = (pANTLR3_COMMON_TOKEN) MATCHT(COLLATE_SYMBOL, &FOLLOW_COLLATE_SYMBOL_in_database_option12306);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledatabase_optionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COLLATE_SYMBOL2496_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLLATE_SYMBOL2496));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COLLATE_SYMBOL2496_tree);
            	        }

            	        // MySQL.g:2160:21: ( EQUAL_OPERATOR )?
            	        {
            	            int alt655=2;
            	            switch ( LA(1) )
            	            {
            	                case EQUAL_OPERATOR:
            	                	{
            	                		alt655=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt655)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2160:21: EQUAL_OPERATOR
            	        	    {
            	        	        EQUAL_OPERATOR2497 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_database_option12308);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledatabase_optionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EQUAL_OPERATOR2497_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2497));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2497_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_collation_name_or_default_in_database_option12311);
            	        collation_name_or_default2498=collation_name_or_default(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledatabase_optionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, collation_name_or_default2498.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruledatabase_optionEx; /* Prevent compiler warnings */
    ruledatabase_optionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end database_option */

/**
 * $ANTLR start column_definition
 * MySQL.g:2164:1: column_definition : data_type ( column_option )* ( reference_definition )? ;
 */
static MySQLParser_column_definition_return
column_definition(pMySQLParser ctx)
{
    MySQLParser_column_definition_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_data_type_return data_type2499;
    #undef	RETURN_TYPE_data_type2499
    #define	RETURN_TYPE_data_type2499 MySQLParser_data_type_return

    MySQLParser_column_option_return column_option2500;
    #undef	RETURN_TYPE_column_option2500
    #define	RETURN_TYPE_column_option2500 MySQLParser_column_option_return

    MySQLParser_reference_definition_return reference_definition2501;
    #undef	RETURN_TYPE_reference_definition2501
    #define	RETURN_TYPE_reference_definition2501 MySQLParser_reference_definition_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    data_type2499.tree = NULL;

    column_option2500.tree = NULL;

    reference_definition2501.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:2164:18: ( data_type ( column_option )* ( reference_definition )? )
        // MySQL.g:2165:2: data_type ( column_option )* ( reference_definition )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_data_type_in_column_definition12324);
            data_type2499=data_type(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecolumn_definitionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, data_type2499.tree);

            // MySQL.g:2165:12: ( column_option )*

            for (;;)
            {
                int alt657=2;
                switch ( LA(1) )
                {
                case AUTO_INCREMENT_SYMBOL:
                case COLUMN_FORMAT_SYMBOL:
                case COMMENT_SYMBOL:
                case DEFAULT_SYMBOL:
                case KEY_SYMBOL:
                case NOT_SYMBOL:
                case NULL2_SYMBOL:
                case NULL_SYMBOL:
                case PRIMARY_SYMBOL:
                case STORAGE_SYMBOL:
                case UNIQUE_SYMBOL:
                	{
                		alt657=1;
                	}
                    break;

                }

                switch (alt657)
                {
            	case 1:
            	    // MySQL.g:2165:12: column_option
            	    {
            	        FOLLOWPUSH(FOLLOW_column_option_in_column_definition12326);
            	        column_option2500=column_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecolumn_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, column_option2500.tree);

            	    }
            	    break;

            	default:
            	    goto loop657;	/* break out of the loop */
            	    break;
                }
            }
            loop657: ; /* Jump out to here if this rule does not match */


            // MySQL.g:2165:27: ( reference_definition )?
            {
                int alt658=2;
                switch ( LA(1) )
                {
                    case REFERENCES_SYMBOL:
                    	{
                    		alt658=1;
                    	}
                        break;
                }

                switch (alt658)
                {
            	case 1:
            	    // MySQL.g:2165:27: reference_definition
            	    {
            	        FOLLOWPUSH(FOLLOW_reference_definition_in_column_definition12329);
            	        reference_definition2501=reference_definition(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecolumn_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, reference_definition2501.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulecolumn_definitionEx; /* Prevent compiler warnings */
    rulecolumn_definitionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end column_definition */

/**
 * $ANTLR start column_option
 * MySQL.g:2168:1: column_option : ( ( NOT_SYMBOL )? null_literal | DEFAULT_SYMBOL ( literal | NOW_SYMBOL ) | AUTO_INCREMENT_SYMBOL |{...}? UNIQUE_SYMBOL | ( PRIMARY_SYMBOL | UNIQUE_SYMBOL ) KEY_SYMBOL | KEY_SYMBOL | COMMENT_SYMBOL string_literal | COLUMN_FORMAT_SYMBOL ( FIXED_SYMBOL | DYNAMIC_SYMBOL | DEFAULT_SYMBOL ) | STORAGE_SYMBOL ( DISK_SYMBOL | MEMORY_SYMBOL | DEFAULT_SYMBOL ) );
 */
static MySQLParser_column_option_return
column_option(pMySQLParser ctx)
{
    MySQLParser_column_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    NOT_SYMBOL2502;
    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL2504;
    pANTLR3_COMMON_TOKEN    NOW_SYMBOL2506;
    pANTLR3_COMMON_TOKEN    AUTO_INCREMENT_SYMBOL2507;
    pANTLR3_COMMON_TOKEN    UNIQUE_SYMBOL2508;
    pANTLR3_COMMON_TOKEN    set2509;
    pANTLR3_COMMON_TOKEN    KEY_SYMBOL2510;
    pANTLR3_COMMON_TOKEN    KEY_SYMBOL2511;
    pANTLR3_COMMON_TOKEN    COMMENT_SYMBOL2512;
    pANTLR3_COMMON_TOKEN    COLUMN_FORMAT_SYMBOL2514;
    pANTLR3_COMMON_TOKEN    set2515;
    pANTLR3_COMMON_TOKEN    STORAGE_SYMBOL2516;
    pANTLR3_COMMON_TOKEN    set2517;
    MySQLParser_null_literal_return null_literal2503;
    #undef	RETURN_TYPE_null_literal2503
    #define	RETURN_TYPE_null_literal2503 MySQLParser_null_literal_return

    MySQLParser_literal_return literal2505;
    #undef	RETURN_TYPE_literal2505
    #define	RETURN_TYPE_literal2505 MySQLParser_literal_return

    MySQLParser_string_literal_return string_literal2513;
    #undef	RETURN_TYPE_string_literal2513
    #define	RETURN_TYPE_string_literal2513 MySQLParser_string_literal_return

    pANTLR3_BASE_TREE NOT_SYMBOL2502_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL2504_tree;
    pANTLR3_BASE_TREE NOW_SYMBOL2506_tree;
    pANTLR3_BASE_TREE AUTO_INCREMENT_SYMBOL2507_tree;
    pANTLR3_BASE_TREE UNIQUE_SYMBOL2508_tree;
    pANTLR3_BASE_TREE set2509_tree;
    pANTLR3_BASE_TREE KEY_SYMBOL2510_tree;
    pANTLR3_BASE_TREE KEY_SYMBOL2511_tree;
    pANTLR3_BASE_TREE COMMENT_SYMBOL2512_tree;
    pANTLR3_BASE_TREE COLUMN_FORMAT_SYMBOL2514_tree;
    pANTLR3_BASE_TREE set2515_tree;
    pANTLR3_BASE_TREE STORAGE_SYMBOL2516_tree;
    pANTLR3_BASE_TREE set2517_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    NOT_SYMBOL2502       = NULL;
    DEFAULT_SYMBOL2504       = NULL;
    NOW_SYMBOL2506       = NULL;
    AUTO_INCREMENT_SYMBOL2507       = NULL;
    UNIQUE_SYMBOL2508       = NULL;
    set2509       = NULL;
    KEY_SYMBOL2510       = NULL;
    KEY_SYMBOL2511       = NULL;
    COMMENT_SYMBOL2512       = NULL;
    COLUMN_FORMAT_SYMBOL2514       = NULL;
    set2515       = NULL;
    STORAGE_SYMBOL2516       = NULL;
    set2517       = NULL;
    null_literal2503.tree = NULL;

    literal2505.tree = NULL;

    string_literal2513.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    NOT_SYMBOL2502_tree   = NULL;
    DEFAULT_SYMBOL2504_tree   = NULL;
    NOW_SYMBOL2506_tree   = NULL;
    AUTO_INCREMENT_SYMBOL2507_tree   = NULL;
    UNIQUE_SYMBOL2508_tree   = NULL;
    set2509_tree   = NULL;
    KEY_SYMBOL2510_tree   = NULL;
    KEY_SYMBOL2511_tree   = NULL;
    COMMENT_SYMBOL2512_tree   = NULL;
    COLUMN_FORMAT_SYMBOL2514_tree   = NULL;
    set2515_tree   = NULL;
    STORAGE_SYMBOL2516_tree   = NULL;
    set2517_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2168:14: ( ( NOT_SYMBOL )? null_literal | DEFAULT_SYMBOL ( literal | NOW_SYMBOL ) | AUTO_INCREMENT_SYMBOL |{...}? UNIQUE_SYMBOL | ( PRIMARY_SYMBOL | UNIQUE_SYMBOL ) KEY_SYMBOL | KEY_SYMBOL | COMMENT_SYMBOL string_literal | COLUMN_FORMAT_SYMBOL ( FIXED_SYMBOL | DYNAMIC_SYMBOL | DEFAULT_SYMBOL ) | STORAGE_SYMBOL ( DISK_SYMBOL | MEMORY_SYMBOL | DEFAULT_SYMBOL ) )

            ANTLR3_UINT32 alt661;

            alt661=9;

            switch ( LA(1) )
            {
            case NOT_SYMBOL:
            case NULL2_SYMBOL:
            case NULL_SYMBOL:
            	{
            		alt661=1;
            	}
                break;
            case DEFAULT_SYMBOL:
            	{
            		alt661=2;
            	}
                break;
            case AUTO_INCREMENT_SYMBOL:
            	{
            		alt661=3;
            	}
                break;
            case UNIQUE_SYMBOL:
            	{
            		switch ( LA(2) )
            		{
            		case KEY_SYMBOL:
            			{
            				{
            				    int LA661_11 = LA(3);
            				    if ( ((LA(2) != KEY_SYMBOL)))
            				    {
            				        alt661=4;
            				    }
            				    else if ( (ANTLR3_TRUE))
            				    {
            				        alt661=5;
            				    }
            				    else
            				    {
            				        if (BACKTRACKING>0)
            				        {
            				            FAILEDFLAG = ANTLR3_TRUE;
            				            return retval;
            				        }


            				        CONSTRUCTEX();
            				        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            				        EXCEPTION->message      = (void *)"";
            				        EXCEPTION->decisionNum  = 661;
            				        EXCEPTION->state        = 11;


            				        goto rulecolumn_optionEx;

            				    }
            				}
            			}
            		    break;
            		case EOF:
            		case AFTER_SYMBOL:
            		case AUTO_INCREMENT_SYMBOL:
            		case CLOSE_PAR_SYMBOL:
            		case COLUMN_FORMAT_SYMBOL:
            		case COMMA_SYMBOL:
            		case COMMENT_SYMBOL:
            		case DEFAULT_SYMBOL:
            		case FIRST_SYMBOL:
            		case NOT_SYMBOL:
            		case NULL2_SYMBOL:
            		case NULL_SYMBOL:
            		case PARTITION_SYMBOL:
            		case PRIMARY_SYMBOL:
            		case REFERENCES_SYMBOL:
            		case REMOVE_SYMBOL:
            		case SEMICOLON_SYMBOL:
            		case STORAGE_SYMBOL:
            		case UNIQUE_SYMBOL:
            			{
            				alt661=4;
            			}
            		    break;

            		default:
            		    if (BACKTRACKING>0)
            		    {
            		        FAILEDFLAG = ANTLR3_TRUE;
            		        return retval;
            		    }

            		    CONSTRUCTEX();
            		    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            		    EXCEPTION->message      = (void *)"";
            		    EXCEPTION->decisionNum  = 661;
            		    EXCEPTION->state        = 5;


            		    goto rulecolumn_optionEx;

            		}

            	}
                break;
            case PRIMARY_SYMBOL:
            	{
            		alt661=5;
            	}
                break;
            case KEY_SYMBOL:
            	{
            		alt661=6;
            	}
                break;
            case COMMENT_SYMBOL:
            	{
            		alt661=7;
            	}
                break;
            case COLUMN_FORMAT_SYMBOL:
            	{
            		alt661=8;
            	}
                break;
            case STORAGE_SYMBOL:
            	{
            		alt661=9;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 661;
                EXCEPTION->state        = 0;


                goto rulecolumn_optionEx;

            }

            switch (alt661)
            {
        	case 1:
        	    // MySQL.g:2169:2: ( NOT_SYMBOL )? null_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:2169:2: ( NOT_SYMBOL )?
        	        {
        	            int alt659=2;
        	            switch ( LA(1) )
        	            {
        	                case NOT_SYMBOL:
        	                	{
        	                		alt659=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt659)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2169:2: NOT_SYMBOL
        	        	    {
        	        	        NOT_SYMBOL2502 = (pANTLR3_COMMON_TOKEN) MATCHT(NOT_SYMBOL, &FOLLOW_NOT_SYMBOL_in_column_option12339);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecolumn_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        NOT_SYMBOL2502_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NOT_SYMBOL2502));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, NOT_SYMBOL2502_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_null_literal_in_column_option12342);
        	        null_literal2503=null_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecolumn_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, null_literal2503.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2170:4: DEFAULT_SYMBOL ( literal | NOW_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DEFAULT_SYMBOL2504 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_column_option12347);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecolumn_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DEFAULT_SYMBOL2504_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL2504));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL2504_tree);
        	        }

        	        // MySQL.g:2170:19: ( literal | NOW_SYMBOL )
        	        {
        	            int alt660=2;
        	            {
        	                int LA660_0 = LA(1);
        	                if ( (LA660_0 == NCHAR_TEXT || LA660_0 == SINGLE_QUOTED_TEXT || LA660_0 == UNDERSCORE_CHARSET))
        	                {
        	                    alt660=1;
        	                }
        	                else if ( ((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA660_0 == DOUBLE_QUOTED_TEXT))
        	                {
        	                    alt660=1;
        	                }
        	                else if ( (LA660_0 == FALSE_SYMBOL || LA660_0 == FLOAT || ((LA660_0 >= HEXNUMBER) && (LA660_0 <= HEXSTRING)) || LA660_0 == INTEGER || LA660_0 == TRUE_SYMBOL))
        	                {
        	                    alt660=1;
        	                }
        	                else if ( ((SERVER_VERSION >= 50003)) && (((LA660_0 >= BITNUMBER) && (LA660_0 <= BITSTRING))))
        	                {
        	                    alt660=1;
        	                }
        	                else if ( (LA660_0 == NULL2_SYMBOL || LA660_0 == NULL_SYMBOL))
        	                {
        	                    alt660=1;
        	                }
        	                else if ( (LA660_0 == NOW_SYMBOL))
        	                {
        	                    alt660=2;
        	                }
        	                else
        	                {
        	                    if (BACKTRACKING>0)
        	                    {
        	                        FAILEDFLAG = ANTLR3_TRUE;
        	                        return retval;
        	                    }


        	                    CONSTRUCTEX();
        	                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    EXCEPTION->message      = (void *)"";
        	                    EXCEPTION->decisionNum  = 660;
        	                    EXCEPTION->state        = 0;


        	                    goto rulecolumn_optionEx;

        	                }
        	            }
        	            switch (alt660)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2170:20: literal
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_literal_in_column_option12350);
        	        	        literal2505=literal(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecolumn_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, literal2505.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:2170:30: NOW_SYMBOL
        	        	    {
        	        	        NOW_SYMBOL2506 = (pANTLR3_COMMON_TOKEN) MATCHT(NOW_SYMBOL, &FOLLOW_NOW_SYMBOL_in_column_option12354);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecolumn_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        NOW_SYMBOL2506_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NOW_SYMBOL2506));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, NOW_SYMBOL2506_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2171:4: AUTO_INCREMENT_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        AUTO_INCREMENT_SYMBOL2507 = (pANTLR3_COMMON_TOKEN) MATCHT(AUTO_INCREMENT_SYMBOL, &FOLLOW_AUTO_INCREMENT_SYMBOL_in_column_option12360);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecolumn_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        AUTO_INCREMENT_SYMBOL2507_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AUTO_INCREMENT_SYMBOL2507));
        	        ADAPTOR->addChild(ADAPTOR, root_0, AUTO_INCREMENT_SYMBOL2507_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:2172:4: {...}? UNIQUE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((LA(2) != KEY_SYMBOL)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"LA(2) != KEY_SYMBOL";
        	                EXCEPTION->ruleName	 = (void *)"column_option";


        	        }

        	        UNIQUE_SYMBOL2508 = (pANTLR3_COMMON_TOKEN) MATCHT(UNIQUE_SYMBOL, &FOLLOW_UNIQUE_SYMBOL_in_column_option12367);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecolumn_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UNIQUE_SYMBOL2508_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNIQUE_SYMBOL2508));
        	        ADAPTOR->addChild(ADAPTOR, root_0, UNIQUE_SYMBOL2508_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:2173:4: ( PRIMARY_SYMBOL | UNIQUE_SYMBOL ) KEY_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set2509=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == PRIMARY_SYMBOL || LA(1) == UNIQUE_SYMBOL )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2509))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	            CONSTRUCTEX();
        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
        	            EXCEPTION->expectingSet = NULL;

        	            goto rulecolumn_optionEx;
        	        }


        	        KEY_SYMBOL2510 = (pANTLR3_COMMON_TOKEN) MATCHT(KEY_SYMBOL, &FOLLOW_KEY_SYMBOL_in_column_option12380);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecolumn_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        KEY_SYMBOL2510_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, KEY_SYMBOL2510));
        	        ADAPTOR->addChild(ADAPTOR, root_0, KEY_SYMBOL2510_tree);
        	        }

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:2174:4: KEY_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        KEY_SYMBOL2511 = (pANTLR3_COMMON_TOKEN) MATCHT(KEY_SYMBOL, &FOLLOW_KEY_SYMBOL_in_column_option12385);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecolumn_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        KEY_SYMBOL2511_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, KEY_SYMBOL2511));
        	        ADAPTOR->addChild(ADAPTOR, root_0, KEY_SYMBOL2511_tree);
        	        }

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:2175:4: COMMENT_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        COMMENT_SYMBOL2512 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMENT_SYMBOL, &FOLLOW_COMMENT_SYMBOL_in_column_option12390);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecolumn_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMENT_SYMBOL2512_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMENT_SYMBOL2512));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMENT_SYMBOL2512_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_column_option12392);
        	        string_literal2513=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecolumn_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal2513.tree);

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:2176:4: COLUMN_FORMAT_SYMBOL ( FIXED_SYMBOL | DYNAMIC_SYMBOL | DEFAULT_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        COLUMN_FORMAT_SYMBOL2514 = (pANTLR3_COMMON_TOKEN) MATCHT(COLUMN_FORMAT_SYMBOL, &FOLLOW_COLUMN_FORMAT_SYMBOL_in_column_option12397);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecolumn_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COLUMN_FORMAT_SYMBOL2514_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLUMN_FORMAT_SYMBOL2514));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COLUMN_FORMAT_SYMBOL2514_tree);
        	        }

        	        set2515=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == DEFAULT_SYMBOL || LA(1) == DYNAMIC_SYMBOL || LA(1) == FIXED_SYMBOL )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2515))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	            CONSTRUCTEX();
        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
        	            EXCEPTION->expectingSet = NULL;

        	            goto rulecolumn_optionEx;
        	        }


        	    }
        	    break;
        	case 9:
        	    // MySQL.g:2177:4: STORAGE_SYMBOL ( DISK_SYMBOL | MEMORY_SYMBOL | DEFAULT_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        STORAGE_SYMBOL2516 = (pANTLR3_COMMON_TOKEN) MATCHT(STORAGE_SYMBOL, &FOLLOW_STORAGE_SYMBOL_in_column_option12414);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecolumn_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        STORAGE_SYMBOL2516_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STORAGE_SYMBOL2516));
        	        ADAPTOR->addChild(ADAPTOR, root_0, STORAGE_SYMBOL2516_tree);
        	        }

        	        set2517=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == DEFAULT_SYMBOL || LA(1) == DISK_SYMBOL || LA(1) == MEMORY_SYMBOL )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2517))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	            CONSTRUCTEX();
        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
        	            EXCEPTION->expectingSet = NULL;

        	            goto rulecolumn_optionEx;
        	        }


        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulecolumn_optionEx; /* Prevent compiler warnings */
    rulecolumn_optionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end column_option */

/**
 * $ANTLR start reference_definition
 * MySQL.g:2180:1: reference_definition : REFERENCES_SYMBOL identifier OPEN_PAR_SYMBOL index_column ( COMMA_SYMBOL index_column )? CLOSE_PAR_SYMBOL ( MATCH_SYMBOL ( FULL_SYMBOL | PARTIAL_SYMBOL | SIMPLE_SYMBOL ) )? ( ON_SYMBOL DELETE_SYMBOL reference_option )? ( ON_SYMBOL UPDATE_SYMBOL reference_option )? ;
 */
static MySQLParser_reference_definition_return
reference_definition(pMySQLParser ctx)
{
    MySQLParser_reference_definition_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    REFERENCES_SYMBOL2518;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2520;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2522;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2524;
    pANTLR3_COMMON_TOKEN    MATCH_SYMBOL2525;
    pANTLR3_COMMON_TOKEN    set2526;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL2527;
    pANTLR3_COMMON_TOKEN    DELETE_SYMBOL2528;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL2530;
    pANTLR3_COMMON_TOKEN    UPDATE_SYMBOL2531;
    MySQLParser_identifier_return identifier2519;
    #undef	RETURN_TYPE_identifier2519
    #define	RETURN_TYPE_identifier2519 MySQLParser_identifier_return

    MySQLParser_index_column_return index_column2521;
    #undef	RETURN_TYPE_index_column2521
    #define	RETURN_TYPE_index_column2521 MySQLParser_index_column_return

    MySQLParser_index_column_return index_column2523;
    #undef	RETURN_TYPE_index_column2523
    #define	RETURN_TYPE_index_column2523 MySQLParser_index_column_return

    MySQLParser_reference_option_return reference_option2529;
    #undef	RETURN_TYPE_reference_option2529
    #define	RETURN_TYPE_reference_option2529 MySQLParser_reference_option_return

    MySQLParser_reference_option_return reference_option2532;
    #undef	RETURN_TYPE_reference_option2532
    #define	RETURN_TYPE_reference_option2532 MySQLParser_reference_option_return

    pANTLR3_BASE_TREE REFERENCES_SYMBOL2518_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2520_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2522_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2524_tree;
    pANTLR3_BASE_TREE MATCH_SYMBOL2525_tree;
    pANTLR3_BASE_TREE set2526_tree;
    pANTLR3_BASE_TREE ON_SYMBOL2527_tree;
    pANTLR3_BASE_TREE DELETE_SYMBOL2528_tree;
    pANTLR3_BASE_TREE ON_SYMBOL2530_tree;
    pANTLR3_BASE_TREE UPDATE_SYMBOL2531_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    REFERENCES_SYMBOL2518       = NULL;
    OPEN_PAR_SYMBOL2520       = NULL;
    COMMA_SYMBOL2522       = NULL;
    CLOSE_PAR_SYMBOL2524       = NULL;
    MATCH_SYMBOL2525       = NULL;
    set2526       = NULL;
    ON_SYMBOL2527       = NULL;
    DELETE_SYMBOL2528       = NULL;
    ON_SYMBOL2530       = NULL;
    UPDATE_SYMBOL2531       = NULL;
    identifier2519.tree = NULL;

    index_column2521.tree = NULL;

    index_column2523.tree = NULL;

    reference_option2529.tree = NULL;

    reference_option2532.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    REFERENCES_SYMBOL2518_tree   = NULL;
    OPEN_PAR_SYMBOL2520_tree   = NULL;
    COMMA_SYMBOL2522_tree   = NULL;
    CLOSE_PAR_SYMBOL2524_tree   = NULL;
    MATCH_SYMBOL2525_tree   = NULL;
    set2526_tree   = NULL;
    ON_SYMBOL2527_tree   = NULL;
    DELETE_SYMBOL2528_tree   = NULL;
    ON_SYMBOL2530_tree   = NULL;
    UPDATE_SYMBOL2531_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2180:21: ( REFERENCES_SYMBOL identifier OPEN_PAR_SYMBOL index_column ( COMMA_SYMBOL index_column )? CLOSE_PAR_SYMBOL ( MATCH_SYMBOL ( FULL_SYMBOL | PARTIAL_SYMBOL | SIMPLE_SYMBOL ) )? ( ON_SYMBOL DELETE_SYMBOL reference_option )? ( ON_SYMBOL UPDATE_SYMBOL reference_option )? )
        // MySQL.g:2181:2: REFERENCES_SYMBOL identifier OPEN_PAR_SYMBOL index_column ( COMMA_SYMBOL index_column )? CLOSE_PAR_SYMBOL ( MATCH_SYMBOL ( FULL_SYMBOL | PARTIAL_SYMBOL | SIMPLE_SYMBOL ) )? ( ON_SYMBOL DELETE_SYMBOL reference_option )? ( ON_SYMBOL UPDATE_SYMBOL reference_option )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            REFERENCES_SYMBOL2518 = (pANTLR3_COMMON_TOKEN) MATCHT(REFERENCES_SYMBOL, &FOLLOW_REFERENCES_SYMBOL_in_reference_definition12435);
            if  (HASEXCEPTION())
            {
                goto rulereference_definitionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            REFERENCES_SYMBOL2518_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REFERENCES_SYMBOL2518));
            ADAPTOR->addChild(ADAPTOR, root_0, REFERENCES_SYMBOL2518_tree);
            }

            FOLLOWPUSH(FOLLOW_identifier_in_reference_definition12437);
            identifier2519=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulereference_definitionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2519.tree);

            OPEN_PAR_SYMBOL2520 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_reference_definition12439);
            if  (HASEXCEPTION())
            {
                goto rulereference_definitionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL2520_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2520));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2520_tree);
            }

            FOLLOWPUSH(FOLLOW_index_column_in_reference_definition12441);
            index_column2521=index_column(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulereference_definitionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_column2521.tree);

            // MySQL.g:2181:60: ( COMMA_SYMBOL index_column )?
            {
                int alt662=2;
                switch ( LA(1) )
                {
                    case COMMA_SYMBOL:
                    	{
                    		alt662=1;
                    	}
                        break;
                }

                switch (alt662)
                {
            	case 1:
            	    // MySQL.g:2181:61: COMMA_SYMBOL index_column
            	    {
            	        COMMA_SYMBOL2522 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_reference_definition12444);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereference_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL2522_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2522));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2522_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_index_column_in_reference_definition12446);
            	        index_column2523=index_column(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereference_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_column2523.tree);

            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL2524 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_reference_definition12450);
            if  (HASEXCEPTION())
            {
                goto rulereference_definitionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL2524_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2524));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2524_tree);
            }

            // MySQL.g:2182:3: ( MATCH_SYMBOL ( FULL_SYMBOL | PARTIAL_SYMBOL | SIMPLE_SYMBOL ) )?
            {
                int alt663=2;
                switch ( LA(1) )
                {
                    case MATCH_SYMBOL:
                    	{
                    		alt663=1;
                    	}
                        break;
                }

                switch (alt663)
                {
            	case 1:
            	    // MySQL.g:2182:4: MATCH_SYMBOL ( FULL_SYMBOL | PARTIAL_SYMBOL | SIMPLE_SYMBOL )
            	    {
            	        MATCH_SYMBOL2525 = (pANTLR3_COMMON_TOKEN) MATCHT(MATCH_SYMBOL, &FOLLOW_MATCH_SYMBOL_in_reference_definition12455);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereference_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        MATCH_SYMBOL2525_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MATCH_SYMBOL2525));
            	        ADAPTOR->addChild(ADAPTOR, root_0, MATCH_SYMBOL2525_tree);
            	        }

            	        set2526=(pANTLR3_COMMON_TOKEN)LT(1);

            	        if ( LA(1) == FULL_SYMBOL || LA(1) == PARTIAL_SYMBOL || LA(1) == SIMPLE_SYMBOL )
            	        {
            	            CONSUME();
            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2526))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	            CONSTRUCTEX();
            	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	            EXCEPTION->expectingSet = NULL;

            	            goto rulereference_definitionEx;
            	        }


            	    }
            	    break;

                }
            }

            // MySQL.g:2183:3: ( ON_SYMBOL DELETE_SYMBOL reference_option )?
            {
                int alt664=2;
                switch ( LA(1) )
                {
                    case ON_SYMBOL:
                    	{
                    		switch ( LA(2) )
                    		{
                    		    case DELETE_SYMBOL:
                    		    	{
                    		    		alt664=1;
                    		    	}
                    		        break;
                    		}

                    	}
                        break;
                }

                switch (alt664)
                {
            	case 1:
            	    // MySQL.g:2183:4: ON_SYMBOL DELETE_SYMBOL reference_option
            	    {
            	        ON_SYMBOL2527 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_reference_definition12474);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereference_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ON_SYMBOL2527_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL2527));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL2527_tree);
            	        }

            	        DELETE_SYMBOL2528 = (pANTLR3_COMMON_TOKEN) MATCHT(DELETE_SYMBOL, &FOLLOW_DELETE_SYMBOL_in_reference_definition12476);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereference_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DELETE_SYMBOL2528_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DELETE_SYMBOL2528));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DELETE_SYMBOL2528_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_reference_option_in_reference_definition12478);
            	        reference_option2529=reference_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereference_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, reference_option2529.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:2184:3: ( ON_SYMBOL UPDATE_SYMBOL reference_option )?
            {
                int alt665=2;
                switch ( LA(1) )
                {
                    case ON_SYMBOL:
                    	{
                    		alt665=1;
                    	}
                        break;
                }

                switch (alt665)
                {
            	case 1:
            	    // MySQL.g:2184:4: ON_SYMBOL UPDATE_SYMBOL reference_option
            	    {
            	        ON_SYMBOL2530 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_reference_definition12485);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereference_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ON_SYMBOL2530_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL2530));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL2530_tree);
            	        }

            	        UPDATE_SYMBOL2531 = (pANTLR3_COMMON_TOKEN) MATCHT(UPDATE_SYMBOL, &FOLLOW_UPDATE_SYMBOL_in_reference_definition12487);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereference_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        UPDATE_SYMBOL2531_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UPDATE_SYMBOL2531));
            	        ADAPTOR->addChild(ADAPTOR, root_0, UPDATE_SYMBOL2531_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_reference_option_in_reference_definition12489);
            	        reference_option2532=reference_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereference_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, reference_option2532.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulereference_definitionEx; /* Prevent compiler warnings */
    rulereference_definitionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end reference_definition */

/**
 * $ANTLR start index_columns
 * MySQL.g:2187:1: index_columns : OPEN_PAR_SYMBOL index_column ( COMMA_SYMBOL index_column )* CLOSE_PAR_SYMBOL ;
 */
static MySQLParser_index_columns_return
index_columns(pMySQLParser ctx)
{
    MySQLParser_index_columns_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2533;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2535;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2537;
    MySQLParser_index_column_return index_column2534;
    #undef	RETURN_TYPE_index_column2534
    #define	RETURN_TYPE_index_column2534 MySQLParser_index_column_return

    MySQLParser_index_column_return index_column2536;
    #undef	RETURN_TYPE_index_column2536
    #define	RETURN_TYPE_index_column2536 MySQLParser_index_column_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2533_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2535_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2537_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL2533       = NULL;
    COMMA_SYMBOL2535       = NULL;
    CLOSE_PAR_SYMBOL2537       = NULL;
    index_column2534.tree = NULL;

    index_column2536.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL2533_tree   = NULL;
    COMMA_SYMBOL2535_tree   = NULL;
    CLOSE_PAR_SYMBOL2537_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2187:14: ( OPEN_PAR_SYMBOL index_column ( COMMA_SYMBOL index_column )* CLOSE_PAR_SYMBOL )
        // MySQL.g:2188:2: OPEN_PAR_SYMBOL index_column ( COMMA_SYMBOL index_column )* CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPEN_PAR_SYMBOL2533 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_index_columns12500);
            if  (HASEXCEPTION())
            {
                goto ruleindex_columnsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL2533_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2533));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2533_tree);
            }

            FOLLOWPUSH(FOLLOW_index_column_in_index_columns12502);
            index_column2534=index_column(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleindex_columnsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_column2534.tree);

            // MySQL.g:2188:31: ( COMMA_SYMBOL index_column )*

            for (;;)
            {
                int alt666=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt666=1;
                	}
                    break;

                }

                switch (alt666)
                {
            	case 1:
            	    // MySQL.g:2188:32: COMMA_SYMBOL index_column
            	    {
            	        COMMA_SYMBOL2535 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_index_columns12505);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleindex_columnsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL2535_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2535));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2535_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_index_column_in_index_columns12507);
            	        index_column2536=index_column(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleindex_columnsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_column2536.tree);

            	    }
            	    break;

            	default:
            	    goto loop666;	/* break out of the loop */
            	    break;
                }
            }
            loop666: ; /* Jump out to here if this rule does not match */


            CLOSE_PAR_SYMBOL2537 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_index_columns12511);
            if  (HASEXCEPTION())
            {
                goto ruleindex_columnsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL2537_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2537));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2537_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleindex_columnsEx; /* Prevent compiler warnings */
    ruleindex_columnsEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end index_columns */

/**
 * $ANTLR start index_column
 * MySQL.g:2191:1: index_column : identifier ( field_length )? ( direction )? ;
 */
static MySQLParser_index_column_return
index_column(pMySQLParser ctx)
{
    MySQLParser_index_column_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_identifier_return identifier2538;
    #undef	RETURN_TYPE_identifier2538
    #define	RETURN_TYPE_identifier2538 MySQLParser_identifier_return

    MySQLParser_field_length_return field_length2539;
    #undef	RETURN_TYPE_field_length2539
    #define	RETURN_TYPE_field_length2539 MySQLParser_field_length_return

    MySQLParser_direction_return direction2540;
    #undef	RETURN_TYPE_direction2540
    #define	RETURN_TYPE_direction2540 MySQLParser_direction_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    identifier2538.tree = NULL;

    field_length2539.tree = NULL;

    direction2540.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:2191:13: ( identifier ( field_length )? ( direction )? )
        // MySQL.g:2192:2: identifier ( field_length )? ( direction )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_identifier_in_index_column12520);
            identifier2538=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleindex_columnEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2538.tree);

            // MySQL.g:2192:13: ( field_length )?
            {
                int alt667=2;
                switch ( LA(1) )
                {
                    case OPEN_PAR_SYMBOL:
                    	{
                    		alt667=1;
                    	}
                        break;
                }

                switch (alt667)
                {
            	case 1:
            	    // MySQL.g:2192:13: field_length
            	    {
            	        FOLLOWPUSH(FOLLOW_field_length_in_index_column12522);
            	        field_length2539=field_length(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleindex_columnEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2539.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:2192:27: ( direction )?
            {
                int alt668=2;
                switch ( LA(1) )
                {
                    case ASC_SYMBOL:
                    case DESC_SYMBOL:
                    	{
                    		alt668=1;
                    	}
                        break;
                }

                switch (alt668)
                {
            	case 1:
            	    // MySQL.g:2192:27: direction
            	    {
            	        FOLLOWPUSH(FOLLOW_direction_in_index_column12525);
            	        direction2540=direction(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleindex_columnEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, direction2540.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleindex_columnEx; /* Prevent compiler warnings */
    ruleindex_columnEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end index_column */

/**
 * $ANTLR start index_type
 * MySQL.g:2195:1: index_type : ( USING_SYMBOL | TYPE_SYMBOL ) ( BTREE_SYMBOL | HASH_SYMBOL ) ;
 */
static MySQLParser_index_type_return
index_type(pMySQLParser ctx)
{
    MySQLParser_index_type_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set2541;
    pANTLR3_COMMON_TOKEN    set2542;

    pANTLR3_BASE_TREE set2541_tree;
    pANTLR3_BASE_TREE set2542_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2541       = NULL;
    set2542       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2541_tree   = NULL;
    set2542_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2195:11: ( ( USING_SYMBOL | TYPE_SYMBOL ) ( BTREE_SYMBOL | HASH_SYMBOL ) )
        // MySQL.g:2196:2: ( USING_SYMBOL | TYPE_SYMBOL ) ( BTREE_SYMBOL | HASH_SYMBOL )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set2541=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == TYPE_SYMBOL || LA(1) == USING_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2541))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto ruleindex_typeEx;
            }


            set2542=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == BTREE_SYMBOL || LA(1) == HASH_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2542))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto ruleindex_typeEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto ruleindex_typeEx; /* Prevent compiler warnings */
    ruleindex_typeEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end index_type */

/**
 * $ANTLR start index_option
 * MySQL.g:2199:1: index_option : ( KEY_BLOCK_SIZE_SYMBOL ( EQUAL_OPERATOR )? INTEGER | index_type | WITH_SYMBOL PARSER_SYMBOL identifier |{...}? => COMMENT_SYMBOL string_literal );
 */
static MySQLParser_index_option_return
index_option(pMySQLParser ctx)
{
    MySQLParser_index_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    KEY_BLOCK_SIZE_SYMBOL2543;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2544;
    pANTLR3_COMMON_TOKEN    INTEGER2545;
    pANTLR3_COMMON_TOKEN    WITH_SYMBOL2547;
    pANTLR3_COMMON_TOKEN    PARSER_SYMBOL2548;
    pANTLR3_COMMON_TOKEN    COMMENT_SYMBOL2550;
    MySQLParser_index_type_return index_type2546;
    #undef	RETURN_TYPE_index_type2546
    #define	RETURN_TYPE_index_type2546 MySQLParser_index_type_return

    MySQLParser_identifier_return identifier2549;
    #undef	RETURN_TYPE_identifier2549
    #define	RETURN_TYPE_identifier2549 MySQLParser_identifier_return

    MySQLParser_string_literal_return string_literal2551;
    #undef	RETURN_TYPE_string_literal2551
    #define	RETURN_TYPE_string_literal2551 MySQLParser_string_literal_return

    pANTLR3_BASE_TREE KEY_BLOCK_SIZE_SYMBOL2543_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2544_tree;
    pANTLR3_BASE_TREE INTEGER2545_tree;
    pANTLR3_BASE_TREE WITH_SYMBOL2547_tree;
    pANTLR3_BASE_TREE PARSER_SYMBOL2548_tree;
    pANTLR3_BASE_TREE COMMENT_SYMBOL2550_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    KEY_BLOCK_SIZE_SYMBOL2543       = NULL;
    EQUAL_OPERATOR2544       = NULL;
    INTEGER2545       = NULL;
    WITH_SYMBOL2547       = NULL;
    PARSER_SYMBOL2548       = NULL;
    COMMENT_SYMBOL2550       = NULL;
    index_type2546.tree = NULL;

    identifier2549.tree = NULL;

    string_literal2551.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    KEY_BLOCK_SIZE_SYMBOL2543_tree   = NULL;
    EQUAL_OPERATOR2544_tree   = NULL;
    INTEGER2545_tree   = NULL;
    WITH_SYMBOL2547_tree   = NULL;
    PARSER_SYMBOL2548_tree   = NULL;
    COMMENT_SYMBOL2550_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2199:13: ( KEY_BLOCK_SIZE_SYMBOL ( EQUAL_OPERATOR )? INTEGER | index_type | WITH_SYMBOL PARSER_SYMBOL identifier |{...}? => COMMENT_SYMBOL string_literal )

            ANTLR3_UINT32 alt670;

            alt670=4;

            {
                int LA670_0 = LA(1);
                if ( (LA670_0 == KEY_BLOCK_SIZE_SYMBOL))
                {
                    alt670=1;
                }
                else if ( (LA670_0 == TYPE_SYMBOL || LA670_0 == USING_SYMBOL))
                {
                    alt670=2;
                }
                else if ( (LA670_0 == WITH_SYMBOL))
                {
                    alt670=3;
                }
                else if ( ((SERVER_VERSION >= 50600)) && (LA670_0 == COMMENT_SYMBOL))
                {
                    alt670=4;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 670;
                    EXCEPTION->state        = 0;


                    goto ruleindex_optionEx;

                }
            }
            switch (alt670)
            {
        	case 1:
        	    // MySQL.g:2200:2: KEY_BLOCK_SIZE_SYMBOL ( EQUAL_OPERATOR )? INTEGER
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        KEY_BLOCK_SIZE_SYMBOL2543 = (pANTLR3_COMMON_TOKEN) MATCHT(KEY_BLOCK_SIZE_SYMBOL, &FOLLOW_KEY_BLOCK_SIZE_SYMBOL_in_index_option12558);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        KEY_BLOCK_SIZE_SYMBOL2543_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, KEY_BLOCK_SIZE_SYMBOL2543));
        	        ADAPTOR->addChild(ADAPTOR, root_0, KEY_BLOCK_SIZE_SYMBOL2543_tree);
        	        }

        	        // MySQL.g:2200:24: ( EQUAL_OPERATOR )?
        	        {
        	            int alt669=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt669=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt669)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2200:24: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR2544 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_index_option12560);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleindex_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR2544_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2544));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2544_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        INTEGER2545 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_index_option12563);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INTEGER2545_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER2545));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER2545_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2201:4: index_type
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_index_type_in_index_option12568);
        	        index_type2546=index_type(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_type2546.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2202:4: WITH_SYMBOL PARSER_SYMBOL identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        WITH_SYMBOL2547 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_index_option12573);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        WITH_SYMBOL2547_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WITH_SYMBOL2547));
        	        ADAPTOR->addChild(ADAPTOR, root_0, WITH_SYMBOL2547_tree);
        	        }

        	        PARSER_SYMBOL2548 = (pANTLR3_COMMON_TOKEN) MATCHT(PARSER_SYMBOL, &FOLLOW_PARSER_SYMBOL_in_index_option12575);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PARSER_SYMBOL2548_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARSER_SYMBOL2548));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PARSER_SYMBOL2548_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_identifier_in_index_option12577);
        	        identifier2549=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2549.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:2203:4: {...}? => COMMENT_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((SERVER_VERSION >= 50600)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50600";
        	                EXCEPTION->ruleName	 = (void *)"index_option";


        	        }

        	        COMMENT_SYMBOL2550 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMENT_SYMBOL, &FOLLOW_COMMENT_SYMBOL_in_index_option12586);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMENT_SYMBOL2550_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMENT_SYMBOL2550));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMENT_SYMBOL2550_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_index_option12588);
        	        string_literal2551=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal2551.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleindex_optionEx; /* Prevent compiler warnings */
    ruleindex_optionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end index_option */

/**
 * $ANTLR start reference_option
 * MySQL.g:2206:1: reference_option : ( RESTRICT_SYMBOL | CASCADE_SYMBOL | SET_SYMBOL null_literal | NO_SYMBOL ACTION_SYMBOL );
 */
static MySQLParser_reference_option_return
reference_option(pMySQLParser ctx)
{
    MySQLParser_reference_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    RESTRICT_SYMBOL2552;
    pANTLR3_COMMON_TOKEN    CASCADE_SYMBOL2553;
    pANTLR3_COMMON_TOKEN    SET_SYMBOL2554;
    pANTLR3_COMMON_TOKEN    NO_SYMBOL2556;
    pANTLR3_COMMON_TOKEN    ACTION_SYMBOL2557;
    MySQLParser_null_literal_return null_literal2555;
    #undef	RETURN_TYPE_null_literal2555
    #define	RETURN_TYPE_null_literal2555 MySQLParser_null_literal_return

    pANTLR3_BASE_TREE RESTRICT_SYMBOL2552_tree;
    pANTLR3_BASE_TREE CASCADE_SYMBOL2553_tree;
    pANTLR3_BASE_TREE SET_SYMBOL2554_tree;
    pANTLR3_BASE_TREE NO_SYMBOL2556_tree;
    pANTLR3_BASE_TREE ACTION_SYMBOL2557_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    RESTRICT_SYMBOL2552       = NULL;
    CASCADE_SYMBOL2553       = NULL;
    SET_SYMBOL2554       = NULL;
    NO_SYMBOL2556       = NULL;
    ACTION_SYMBOL2557       = NULL;
    null_literal2555.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    RESTRICT_SYMBOL2552_tree   = NULL;
    CASCADE_SYMBOL2553_tree   = NULL;
    SET_SYMBOL2554_tree   = NULL;
    NO_SYMBOL2556_tree   = NULL;
    ACTION_SYMBOL2557_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2206:17: ( RESTRICT_SYMBOL | CASCADE_SYMBOL | SET_SYMBOL null_literal | NO_SYMBOL ACTION_SYMBOL )

            ANTLR3_UINT32 alt671;

            alt671=4;

            switch ( LA(1) )
            {
            case RESTRICT_SYMBOL:
            	{
            		alt671=1;
            	}
                break;
            case CASCADE_SYMBOL:
            	{
            		alt671=2;
            	}
                break;
            case SET_SYMBOL:
            	{
            		alt671=3;
            	}
                break;
            case NO_SYMBOL:
            	{
            		alt671=4;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 671;
                EXCEPTION->state        = 0;


                goto rulereference_optionEx;

            }

            switch (alt671)
            {
        	case 1:
        	    // MySQL.g:2207:2: RESTRICT_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        RESTRICT_SYMBOL2552 = (pANTLR3_COMMON_TOKEN) MATCHT(RESTRICT_SYMBOL, &FOLLOW_RESTRICT_SYMBOL_in_reference_option12597);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereference_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        RESTRICT_SYMBOL2552_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RESTRICT_SYMBOL2552));
        	        ADAPTOR->addChild(ADAPTOR, root_0, RESTRICT_SYMBOL2552_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2207:20: CASCADE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CASCADE_SYMBOL2553 = (pANTLR3_COMMON_TOKEN) MATCHT(CASCADE_SYMBOL, &FOLLOW_CASCADE_SYMBOL_in_reference_option12601);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereference_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CASCADE_SYMBOL2553_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CASCADE_SYMBOL2553));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CASCADE_SYMBOL2553_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2207:37: SET_SYMBOL null_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SET_SYMBOL2554 = (pANTLR3_COMMON_TOKEN) MATCHT(SET_SYMBOL, &FOLLOW_SET_SYMBOL_in_reference_option12605);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereference_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SET_SYMBOL2554_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SET_SYMBOL2554));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SET_SYMBOL2554_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_null_literal_in_reference_option12607);
        	        null_literal2555=null_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereference_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, null_literal2555.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:2207:63: NO_SYMBOL ACTION_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NO_SYMBOL2556 = (pANTLR3_COMMON_TOKEN) MATCHT(NO_SYMBOL, &FOLLOW_NO_SYMBOL_in_reference_option12611);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereference_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NO_SYMBOL2556_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NO_SYMBOL2556));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NO_SYMBOL2556_tree);
        	        }

        	        ACTION_SYMBOL2557 = (pANTLR3_COMMON_TOKEN) MATCHT(ACTION_SYMBOL, &FOLLOW_ACTION_SYMBOL_in_reference_option12613);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereference_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ACTION_SYMBOL2557_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ACTION_SYMBOL2557));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ACTION_SYMBOL2557_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulereference_optionEx; /* Prevent compiler warnings */
    rulereference_optionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end reference_option */

/**
 * $ANTLR start data_type
 * MySQL.g:2210:1: data_type : ( integer_type ( field_length )? ( field_options )? | ( REAL_SYMBOL | DOUBLE_SYMBOL ( PRECISION_SYMBOL )? ) ( precision )? ( field_options )? | FLOAT_SYMBOL ( float_options )? ( field_options )? | BIT_SYMBOL ( field_length )? | BOOL_SYMBOL | BOOLEAN_SYMBOL | nchar_literal ( field_length )? ( BINARY_SYMBOL )? | BINARY_SYMBOL ( field_length )? | varchar_literal field_length ( BINARY_SYMBOL )? | nvarchar_literal field_length ( BINARY_SYMBOL )? | VARBINARY_SYMBOL field_length | YEAR_SYMBOL ( field_length )? ( field_options )? | DATE_SYMBOL | TIME_SYMBOL ( type_datetime_precision )? | TIMESTAMP_SYMBOL ( type_datetime_precision )? | DATETIME_SYMBOL ( type_datetime_precision )? | TINYBLOB_SYMBOL | BLOB_SYMBOL ( field_length )? | MEDIUMBLOB_SYMBOL | LONGBLOB_SYMBOL | LONG_SYMBOL VARBINARY_SYMBOL | LONG_SYMBOL ( varchar_literal )? ( BINARY_SYMBOL )? | TINYTEXT_SYMBOL ( BINARY_SYMBOL )? | TEXT_SYMBOL ( field_length )? ( BINARY_SYMBOL )? | MEDIUMTEXT_SYMBOL ( BINARY_SYMBOL )? | LONGTEXT_SYMBOL ( BINARY_SYMBOL )? | DECIMAL_SYMBOL ( float_options )? ( field_options )? | NUMERIC_SYMBOL ( float_options )? ( field_options )? | FIXED_SYMBOL ( float_options )? ( field_options )? | ENUM_SYMBOL string_list | SET_SYMBOL string_list | SERIAL_SYMBOL | spatial_type );
 */
static MySQLParser_data_type_return
data_type(pMySQLParser ctx)
{
    MySQLParser_data_type_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    REAL_SYMBOL2561;
    pANTLR3_COMMON_TOKEN    DOUBLE_SYMBOL2562;
    pANTLR3_COMMON_TOKEN    PRECISION_SYMBOL2563;
    pANTLR3_COMMON_TOKEN    FLOAT_SYMBOL2566;
    pANTLR3_COMMON_TOKEN    BIT_SYMBOL2569;
    pANTLR3_COMMON_TOKEN    BOOL_SYMBOL2571;
    pANTLR3_COMMON_TOKEN    BOOLEAN_SYMBOL2572;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2575;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2576;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2580;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2583;
    pANTLR3_COMMON_TOKEN    VARBINARY_SYMBOL2584;
    pANTLR3_COMMON_TOKEN    YEAR_SYMBOL2586;
    pANTLR3_COMMON_TOKEN    DATE_SYMBOL2589;
    pANTLR3_COMMON_TOKEN    TIME_SYMBOL2590;
    pANTLR3_COMMON_TOKEN    TIMESTAMP_SYMBOL2592;
    pANTLR3_COMMON_TOKEN    DATETIME_SYMBOL2594;
    pANTLR3_COMMON_TOKEN    TINYBLOB_SYMBOL2596;
    pANTLR3_COMMON_TOKEN    BLOB_SYMBOL2597;
    pANTLR3_COMMON_TOKEN    MEDIUMBLOB_SYMBOL2599;
    pANTLR3_COMMON_TOKEN    LONGBLOB_SYMBOL2600;
    pANTLR3_COMMON_TOKEN    LONG_SYMBOL2601;
    pANTLR3_COMMON_TOKEN    VARBINARY_SYMBOL2602;
    pANTLR3_COMMON_TOKEN    LONG_SYMBOL2603;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2605;
    pANTLR3_COMMON_TOKEN    TINYTEXT_SYMBOL2606;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2607;
    pANTLR3_COMMON_TOKEN    TEXT_SYMBOL2608;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2610;
    pANTLR3_COMMON_TOKEN    MEDIUMTEXT_SYMBOL2611;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2612;
    pANTLR3_COMMON_TOKEN    LONGTEXT_SYMBOL2613;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2614;
    pANTLR3_COMMON_TOKEN    DECIMAL_SYMBOL2615;
    pANTLR3_COMMON_TOKEN    NUMERIC_SYMBOL2618;
    pANTLR3_COMMON_TOKEN    FIXED_SYMBOL2621;
    pANTLR3_COMMON_TOKEN    ENUM_SYMBOL2624;
    pANTLR3_COMMON_TOKEN    SET_SYMBOL2626;
    pANTLR3_COMMON_TOKEN    SERIAL_SYMBOL2628;
    MySQLParser_integer_type_return integer_type2558;
    #undef	RETURN_TYPE_integer_type2558
    #define	RETURN_TYPE_integer_type2558 MySQLParser_integer_type_return

    MySQLParser_field_length_return field_length2559;
    #undef	RETURN_TYPE_field_length2559
    #define	RETURN_TYPE_field_length2559 MySQLParser_field_length_return

    MySQLParser_field_options_return field_options2560;
    #undef	RETURN_TYPE_field_options2560
    #define	RETURN_TYPE_field_options2560 MySQLParser_field_options_return

    MySQLParser_precision_return precision2564;
    #undef	RETURN_TYPE_precision2564
    #define	RETURN_TYPE_precision2564 MySQLParser_precision_return

    MySQLParser_field_options_return field_options2565;
    #undef	RETURN_TYPE_field_options2565
    #define	RETURN_TYPE_field_options2565 MySQLParser_field_options_return

    MySQLParser_float_options_return float_options2567;
    #undef	RETURN_TYPE_float_options2567
    #define	RETURN_TYPE_float_options2567 MySQLParser_float_options_return

    MySQLParser_field_options_return field_options2568;
    #undef	RETURN_TYPE_field_options2568
    #define	RETURN_TYPE_field_options2568 MySQLParser_field_options_return

    MySQLParser_field_length_return field_length2570;
    #undef	RETURN_TYPE_field_length2570
    #define	RETURN_TYPE_field_length2570 MySQLParser_field_length_return

    MySQLParser_nchar_literal_return nchar_literal2573;
    #undef	RETURN_TYPE_nchar_literal2573
    #define	RETURN_TYPE_nchar_literal2573 MySQLParser_nchar_literal_return

    MySQLParser_field_length_return field_length2574;
    #undef	RETURN_TYPE_field_length2574
    #define	RETURN_TYPE_field_length2574 MySQLParser_field_length_return

    MySQLParser_field_length_return field_length2577;
    #undef	RETURN_TYPE_field_length2577
    #define	RETURN_TYPE_field_length2577 MySQLParser_field_length_return

    MySQLParser_varchar_literal_return varchar_literal2578;
    #undef	RETURN_TYPE_varchar_literal2578
    #define	RETURN_TYPE_varchar_literal2578 MySQLParser_varchar_literal_return

    MySQLParser_field_length_return field_length2579;
    #undef	RETURN_TYPE_field_length2579
    #define	RETURN_TYPE_field_length2579 MySQLParser_field_length_return

    MySQLParser_nvarchar_literal_return nvarchar_literal2581;
    #undef	RETURN_TYPE_nvarchar_literal2581
    #define	RETURN_TYPE_nvarchar_literal2581 MySQLParser_nvarchar_literal_return

    MySQLParser_field_length_return field_length2582;
    #undef	RETURN_TYPE_field_length2582
    #define	RETURN_TYPE_field_length2582 MySQLParser_field_length_return

    MySQLParser_field_length_return field_length2585;
    #undef	RETURN_TYPE_field_length2585
    #define	RETURN_TYPE_field_length2585 MySQLParser_field_length_return

    MySQLParser_field_length_return field_length2587;
    #undef	RETURN_TYPE_field_length2587
    #define	RETURN_TYPE_field_length2587 MySQLParser_field_length_return

    MySQLParser_field_options_return field_options2588;
    #undef	RETURN_TYPE_field_options2588
    #define	RETURN_TYPE_field_options2588 MySQLParser_field_options_return

    MySQLParser_type_datetime_precision_return type_datetime_precision2591;
    #undef	RETURN_TYPE_type_datetime_precision2591
    #define	RETURN_TYPE_type_datetime_precision2591 MySQLParser_type_datetime_precision_return

    MySQLParser_type_datetime_precision_return type_datetime_precision2593;
    #undef	RETURN_TYPE_type_datetime_precision2593
    #define	RETURN_TYPE_type_datetime_precision2593 MySQLParser_type_datetime_precision_return

    MySQLParser_type_datetime_precision_return type_datetime_precision2595;
    #undef	RETURN_TYPE_type_datetime_precision2595
    #define	RETURN_TYPE_type_datetime_precision2595 MySQLParser_type_datetime_precision_return

    MySQLParser_field_length_return field_length2598;
    #undef	RETURN_TYPE_field_length2598
    #define	RETURN_TYPE_field_length2598 MySQLParser_field_length_return

    MySQLParser_varchar_literal_return varchar_literal2604;
    #undef	RETURN_TYPE_varchar_literal2604
    #define	RETURN_TYPE_varchar_literal2604 MySQLParser_varchar_literal_return

    MySQLParser_field_length_return field_length2609;
    #undef	RETURN_TYPE_field_length2609
    #define	RETURN_TYPE_field_length2609 MySQLParser_field_length_return

    MySQLParser_float_options_return float_options2616;
    #undef	RETURN_TYPE_float_options2616
    #define	RETURN_TYPE_float_options2616 MySQLParser_float_options_return

    MySQLParser_field_options_return field_options2617;
    #undef	RETURN_TYPE_field_options2617
    #define	RETURN_TYPE_field_options2617 MySQLParser_field_options_return

    MySQLParser_float_options_return float_options2619;
    #undef	RETURN_TYPE_float_options2619
    #define	RETURN_TYPE_float_options2619 MySQLParser_float_options_return

    MySQLParser_field_options_return field_options2620;
    #undef	RETURN_TYPE_field_options2620
    #define	RETURN_TYPE_field_options2620 MySQLParser_field_options_return

    MySQLParser_float_options_return float_options2622;
    #undef	RETURN_TYPE_float_options2622
    #define	RETURN_TYPE_float_options2622 MySQLParser_float_options_return

    MySQLParser_field_options_return field_options2623;
    #undef	RETURN_TYPE_field_options2623
    #define	RETURN_TYPE_field_options2623 MySQLParser_field_options_return

    MySQLParser_string_list_return string_list2625;
    #undef	RETURN_TYPE_string_list2625
    #define	RETURN_TYPE_string_list2625 MySQLParser_string_list_return

    MySQLParser_string_list_return string_list2627;
    #undef	RETURN_TYPE_string_list2627
    #define	RETURN_TYPE_string_list2627 MySQLParser_string_list_return

    MySQLParser_spatial_type_return spatial_type2629;
    #undef	RETURN_TYPE_spatial_type2629
    #define	RETURN_TYPE_spatial_type2629 MySQLParser_spatial_type_return

    pANTLR3_BASE_TREE REAL_SYMBOL2561_tree;
    pANTLR3_BASE_TREE DOUBLE_SYMBOL2562_tree;
    pANTLR3_BASE_TREE PRECISION_SYMBOL2563_tree;
    pANTLR3_BASE_TREE FLOAT_SYMBOL2566_tree;
    pANTLR3_BASE_TREE BIT_SYMBOL2569_tree;
    pANTLR3_BASE_TREE BOOL_SYMBOL2571_tree;
    pANTLR3_BASE_TREE BOOLEAN_SYMBOL2572_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2575_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2576_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2580_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2583_tree;
    pANTLR3_BASE_TREE VARBINARY_SYMBOL2584_tree;
    pANTLR3_BASE_TREE YEAR_SYMBOL2586_tree;
    pANTLR3_BASE_TREE DATE_SYMBOL2589_tree;
    pANTLR3_BASE_TREE TIME_SYMBOL2590_tree;
    pANTLR3_BASE_TREE TIMESTAMP_SYMBOL2592_tree;
    pANTLR3_BASE_TREE DATETIME_SYMBOL2594_tree;
    pANTLR3_BASE_TREE TINYBLOB_SYMBOL2596_tree;
    pANTLR3_BASE_TREE BLOB_SYMBOL2597_tree;
    pANTLR3_BASE_TREE MEDIUMBLOB_SYMBOL2599_tree;
    pANTLR3_BASE_TREE LONGBLOB_SYMBOL2600_tree;
    pANTLR3_BASE_TREE LONG_SYMBOL2601_tree;
    pANTLR3_BASE_TREE VARBINARY_SYMBOL2602_tree;
    pANTLR3_BASE_TREE LONG_SYMBOL2603_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2605_tree;
    pANTLR3_BASE_TREE TINYTEXT_SYMBOL2606_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2607_tree;
    pANTLR3_BASE_TREE TEXT_SYMBOL2608_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2610_tree;
    pANTLR3_BASE_TREE MEDIUMTEXT_SYMBOL2611_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2612_tree;
    pANTLR3_BASE_TREE LONGTEXT_SYMBOL2613_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2614_tree;
    pANTLR3_BASE_TREE DECIMAL_SYMBOL2615_tree;
    pANTLR3_BASE_TREE NUMERIC_SYMBOL2618_tree;
    pANTLR3_BASE_TREE FIXED_SYMBOL2621_tree;
    pANTLR3_BASE_TREE ENUM_SYMBOL2624_tree;
    pANTLR3_BASE_TREE SET_SYMBOL2626_tree;
    pANTLR3_BASE_TREE SERIAL_SYMBOL2628_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    REAL_SYMBOL2561       = NULL;
    DOUBLE_SYMBOL2562       = NULL;
    PRECISION_SYMBOL2563       = NULL;
    FLOAT_SYMBOL2566       = NULL;
    BIT_SYMBOL2569       = NULL;
    BOOL_SYMBOL2571       = NULL;
    BOOLEAN_SYMBOL2572       = NULL;
    BINARY_SYMBOL2575       = NULL;
    BINARY_SYMBOL2576       = NULL;
    BINARY_SYMBOL2580       = NULL;
    BINARY_SYMBOL2583       = NULL;
    VARBINARY_SYMBOL2584       = NULL;
    YEAR_SYMBOL2586       = NULL;
    DATE_SYMBOL2589       = NULL;
    TIME_SYMBOL2590       = NULL;
    TIMESTAMP_SYMBOL2592       = NULL;
    DATETIME_SYMBOL2594       = NULL;
    TINYBLOB_SYMBOL2596       = NULL;
    BLOB_SYMBOL2597       = NULL;
    MEDIUMBLOB_SYMBOL2599       = NULL;
    LONGBLOB_SYMBOL2600       = NULL;
    LONG_SYMBOL2601       = NULL;
    VARBINARY_SYMBOL2602       = NULL;
    LONG_SYMBOL2603       = NULL;
    BINARY_SYMBOL2605       = NULL;
    TINYTEXT_SYMBOL2606       = NULL;
    BINARY_SYMBOL2607       = NULL;
    TEXT_SYMBOL2608       = NULL;
    BINARY_SYMBOL2610       = NULL;
    MEDIUMTEXT_SYMBOL2611       = NULL;
    BINARY_SYMBOL2612       = NULL;
    LONGTEXT_SYMBOL2613       = NULL;
    BINARY_SYMBOL2614       = NULL;
    DECIMAL_SYMBOL2615       = NULL;
    NUMERIC_SYMBOL2618       = NULL;
    FIXED_SYMBOL2621       = NULL;
    ENUM_SYMBOL2624       = NULL;
    SET_SYMBOL2626       = NULL;
    SERIAL_SYMBOL2628       = NULL;
    integer_type2558.tree = NULL;

    field_length2559.tree = NULL;

    field_options2560.tree = NULL;

    precision2564.tree = NULL;

    field_options2565.tree = NULL;

    float_options2567.tree = NULL;

    field_options2568.tree = NULL;

    field_length2570.tree = NULL;

    nchar_literal2573.tree = NULL;

    field_length2574.tree = NULL;

    field_length2577.tree = NULL;

    varchar_literal2578.tree = NULL;

    field_length2579.tree = NULL;

    nvarchar_literal2581.tree = NULL;

    field_length2582.tree = NULL;

    field_length2585.tree = NULL;

    field_length2587.tree = NULL;

    field_options2588.tree = NULL;

    type_datetime_precision2591.tree = NULL;

    type_datetime_precision2593.tree = NULL;

    type_datetime_precision2595.tree = NULL;

    field_length2598.tree = NULL;

    varchar_literal2604.tree = NULL;

    field_length2609.tree = NULL;

    float_options2616.tree = NULL;

    field_options2617.tree = NULL;

    float_options2619.tree = NULL;

    field_options2620.tree = NULL;

    float_options2622.tree = NULL;

    field_options2623.tree = NULL;

    string_list2625.tree = NULL;

    string_list2627.tree = NULL;

    spatial_type2629.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    REAL_SYMBOL2561_tree   = NULL;
    DOUBLE_SYMBOL2562_tree   = NULL;
    PRECISION_SYMBOL2563_tree   = NULL;
    FLOAT_SYMBOL2566_tree   = NULL;
    BIT_SYMBOL2569_tree   = NULL;
    BOOL_SYMBOL2571_tree   = NULL;
    BOOLEAN_SYMBOL2572_tree   = NULL;
    BINARY_SYMBOL2575_tree   = NULL;
    BINARY_SYMBOL2576_tree   = NULL;
    BINARY_SYMBOL2580_tree   = NULL;
    BINARY_SYMBOL2583_tree   = NULL;
    VARBINARY_SYMBOL2584_tree   = NULL;
    YEAR_SYMBOL2586_tree   = NULL;
    DATE_SYMBOL2589_tree   = NULL;
    TIME_SYMBOL2590_tree   = NULL;
    TIMESTAMP_SYMBOL2592_tree   = NULL;
    DATETIME_SYMBOL2594_tree   = NULL;
    TINYBLOB_SYMBOL2596_tree   = NULL;
    BLOB_SYMBOL2597_tree   = NULL;
    MEDIUMBLOB_SYMBOL2599_tree   = NULL;
    LONGBLOB_SYMBOL2600_tree   = NULL;
    LONG_SYMBOL2601_tree   = NULL;
    VARBINARY_SYMBOL2602_tree   = NULL;
    LONG_SYMBOL2603_tree   = NULL;
    BINARY_SYMBOL2605_tree   = NULL;
    TINYTEXT_SYMBOL2606_tree   = NULL;
    BINARY_SYMBOL2607_tree   = NULL;
    TEXT_SYMBOL2608_tree   = NULL;
    BINARY_SYMBOL2610_tree   = NULL;
    MEDIUMTEXT_SYMBOL2611_tree   = NULL;
    BINARY_SYMBOL2612_tree   = NULL;
    LONGTEXT_SYMBOL2613_tree   = NULL;
    BINARY_SYMBOL2614_tree   = NULL;
    DECIMAL_SYMBOL2615_tree   = NULL;
    NUMERIC_SYMBOL2618_tree   = NULL;
    FIXED_SYMBOL2621_tree   = NULL;
    ENUM_SYMBOL2624_tree   = NULL;
    SET_SYMBOL2626_tree   = NULL;
    SERIAL_SYMBOL2628_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2210:10: ( integer_type ( field_length )? ( field_options )? | ( REAL_SYMBOL | DOUBLE_SYMBOL ( PRECISION_SYMBOL )? ) ( precision )? ( field_options )? | FLOAT_SYMBOL ( float_options )? ( field_options )? | BIT_SYMBOL ( field_length )? | BOOL_SYMBOL | BOOLEAN_SYMBOL | nchar_literal ( field_length )? ( BINARY_SYMBOL )? | BINARY_SYMBOL ( field_length )? | varchar_literal field_length ( BINARY_SYMBOL )? | nvarchar_literal field_length ( BINARY_SYMBOL )? | VARBINARY_SYMBOL field_length | YEAR_SYMBOL ( field_length )? ( field_options )? | DATE_SYMBOL | TIME_SYMBOL ( type_datetime_precision )? | TIMESTAMP_SYMBOL ( type_datetime_precision )? | DATETIME_SYMBOL ( type_datetime_precision )? | TINYBLOB_SYMBOL | BLOB_SYMBOL ( field_length )? | MEDIUMBLOB_SYMBOL | LONGBLOB_SYMBOL | LONG_SYMBOL VARBINARY_SYMBOL | LONG_SYMBOL ( varchar_literal )? ( BINARY_SYMBOL )? | TINYTEXT_SYMBOL ( BINARY_SYMBOL )? | TEXT_SYMBOL ( field_length )? ( BINARY_SYMBOL )? | MEDIUMTEXT_SYMBOL ( BINARY_SYMBOL )? | LONGTEXT_SYMBOL ( BINARY_SYMBOL )? | DECIMAL_SYMBOL ( float_options )? ( field_options )? | NUMERIC_SYMBOL ( float_options )? ( field_options )? | FIXED_SYMBOL ( float_options )? ( field_options )? | ENUM_SYMBOL string_list | SET_SYMBOL string_list | SERIAL_SYMBOL | spatial_type )

            ANTLR3_UINT32 alt705;

            alt705=33;

            switch ( LA(1) )
            {
            case BIGINT_SYMBOL:
            case INTEGER_SYMBOL:
            case INT_SYMBOL:
            case MEDIUMINT_SYMBOL:
            case SMALLINT_SYMBOL:
            case TINYINT_SYMBOL:
            	{
            		alt705=1;
            	}
                break;
            case DOUBLE_SYMBOL:
            case REAL_SYMBOL:
            	{
            		alt705=2;
            	}
                break;
            case FLOAT_SYMBOL:
            	{
            		alt705=3;
            	}
                break;
            case BIT_SYMBOL:
            	{
            		alt705=4;
            	}
                break;
            case BOOL_SYMBOL:
            	{
            		alt705=5;
            	}
                break;
            case BOOLEAN_SYMBOL:
            	{
            		alt705=6;
            	}
                break;
            case CHAR_SYMBOL:
            	{
            		switch ( LA(2) )
            		{
            		case VARYING_SYMBOL:
            			{
            				alt705=9;
            			}
            		    break;
            		case EOF:
            		case ACTION_SYMBOL:
            		case ADDDATE_SYMBOL:
            		case AFTER_SYMBOL:
            		case AGAINST_SYMBOL:
            		case AGGREGATE_SYMBOL:
            		case ALGORITHM_SYMBOL:
            		case ALTER_SYMBOL:
            		case ANALYZE_SYMBOL:
            		case ANY_SYMBOL:
            		case AT_SYMBOL:
            		case AUTHORS_SYMBOL:
            		case AUTOEXTEND_SIZE_SYMBOL:
            		case AUTO_INCREMENT_SYMBOL:
            		case AVG_ROW_LENGTH_SYMBOL:
            		case AVG_SYMBOL:
            		case BACKUP_SYMBOL:
            		case BACK_TICK_QUOTED_ID:
            		case BEGIN_SYMBOL:
            		case BINARY_SYMBOL:
            		case BINLOG_SYMBOL:
            		case BIT_SYMBOL:
            		case BLOCK_SYMBOL:
            		case BOOLEAN_SYMBOL:
            		case BOOL_SYMBOL:
            		case BTREE_SYMBOL:
            		case CACHE_SYMBOL:
            		case CALL_SYMBOL:
            		case CASCADED_SYMBOL:
            		case CASE_SYMBOL:
            		case CATALOG_NAME_SYMBOL:
            		case CHAIN_SYMBOL:
            		case CHANGED_SYMBOL:
            		case CHANGE_SYMBOL:
            		case CHECKSUM_SYMBOL:
            		case CHECK_SYMBOL:
            		case CIPHER_SYMBOL:
            		case CLASS_ORIGIN_SYMBOL:
            		case CLIENT_SYMBOL:
            		case CLOSE_PAR_SYMBOL:
            		case CLOSE_SYMBOL:
            		case COALESCE_SYMBOL:
            		case CODE_SYMBOL:
            		case COLLATION_SYMBOL:
            		case COLUMNS_SYMBOL:
            		case COLUMN_FORMAT_SYMBOL:
            		case COLUMN_NAME_SYMBOL:
            		case COMMA_SYMBOL:
            		case COMMENT_SYMBOL:
            		case COMMITTED_SYMBOL:
            		case COMMIT_SYMBOL:
            		case COMPACT_SYMBOL:
            		case COMPLETION_SYMBOL:
            		case COMPRESSED_SYMBOL:
            		case CONCURRENT_SYMBOL:
            		case CONNECTION_SYMBOL:
            		case CONSISTENT_SYMBOL:
            		case CONSTRAINT_CATALOG_SYMBOL:
            		case CONSTRAINT_NAME_SYMBOL:
            		case CONSTRAINT_SCHEMA_SYMBOL:
            		case CONTAINS_SYMBOL:
            		case CONTEXT_SYMBOL:
            		case CONTRIBUTORS_SYMBOL:
            		case CPU_SYMBOL:
            		case CREATE_SYMBOL:
            		case CUBE_SYMBOL:
            		case CURRENT_SYMBOL:
            		case CURSOR_NAME_SYMBOL:
            		case DATAFILE_SYMBOL:
            		case DATA_SYMBOL:
            		case DATETIME_SYMBOL:
            		case DATE_SYMBOL:
            		case DAY_SYMBOL:
            		case DEALLOCATE_SYMBOL:
            		case DEFAULT_AUTH_SYMBOL:
            		case DEFAULT_SYMBOL:
            		case DEFINER_SYMBOL:
            		case DELAY_KEY_WRITE_SYMBOL:
            		case DELETE_SYMBOL:
            		case DESCRIBE_SYMBOL:
            		case DESC_SYMBOL:
            		case DES_KEY_FILE_SYMBOL:
            		case DETERMINISTIC_SYMBOL:
            		case DIAGNOSTICS_SYMBOL:
            		case DIRECTORY_SYMBOL:
            		case DISABLE_SYMBOL:
            		case DISCARD_SYMBOL:
            		case DISK_SYMBOL:
            		case DOUBLE_QUOTED_TEXT:
            		case DO_SYMBOL:
            		case DROP_SYMBOL:
            		case DUMPFILE_SYMBOL:
            		case DUPLICATE_SYMBOL:
            		case DYNAMIC_SYMBOL:
            		case ENABLE_SYMBOL:
            		case ENDS_SYMBOL:
            		case ENGINES_SYMBOL:
            		case ENGINE_SYMBOL:
            		case ENUM_SYMBOL:
            		case ERRORS_SYMBOL:
            		case ERROR_SYMBOL:
            		case ESCAPE_SYMBOL:
            		case EVENTS_SYMBOL:
            		case EVENT_SYMBOL:
            		case EVERY_SYMBOL:
            		case EXECUTE_SYMBOL:
            		case EXPANSION_SYMBOL:
            		case EXPORT_SYMBOL:
            		case EXTENDED_SYMBOL:
            		case EXTENT_SIZE_SYMBOL:
            		case FAST_SYMBOL:
            		case FAULTS_SYMBOL:
            		case FETCH_SYMBOL:
            		case FILE_SYMBOL:
            		case FIRST_SYMBOL:
            		case FIXED_SYMBOL:
            		case FLUSH_SYMBOL:
            		case FOUND_SYMBOL:
            		case FULL_SYMBOL:
            		case FUNCTION_SYMBOL:
            		case GENERAL_SYMBOL:
            		case GEOMETRYCOLLECTION_SYMBOL:
            		case GEOMETRY_SYMBOL:
            		case GET_FORMAT_SYMBOL:
            		case GET_SYMBOL:
            		case GLOBAL_SYMBOL:
            		case GRANTS_SYMBOL:
            		case GRANT_SYMBOL:
            		case HANDLER_SYMBOL:
            		case HASH_SYMBOL:
            		case HELP_SYMBOL:
            		case HOSTS_SYMBOL:
            		case HOUR_SYMBOL:
            		case IDENTIFIED_SYMBOL:
            		case IDENTIFIER:
            		case IF_SYMBOL:
            		case IGNORE_SERVER_IDS_SYMBOL:
            		case IMPORT_SYMBOL:
            		case INDEXES_SYMBOL:
            		case INITIAL_SIZE_SYMBOL:
            		case INNODB_SYMBOL:
            		case INSERT_METHOD_SYMBOL:
            		case INSERT_SYMBOL:
            		case INSTALL_SYMBOL:
            		case INVOKER_SYMBOL:
            		case IO_SYMBOL:
            		case IPC_SYMBOL:
            		case ISOLATION_SYMBOL:
            		case ISSUER_SYMBOL:
            		case ITERATE_SYMBOL:
            		case KEY_BLOCK_SIZE_SYMBOL:
            		case KEY_SYMBOL:
            		case KILL_SYMBOL:
            		case LANGUAGE_SYMBOL:
            		case LAST_SYMBOL:
            		case LEAVES_SYMBOL:
            		case LEAVE_SYMBOL:
            		case LESS_SYMBOL:
            		case LEVEL_SYMBOL:
            		case LINESTRING_SYMBOL:
            		case LIST_SYMBOL:
            		case LOAD_SYMBOL:
            		case LOCAL_SYMBOL:
            		case LOCKS_SYMBOL:
            		case LOCK_SYMBOL:
            		case LOGFILE_SYMBOL:
            		case LOGS_SYMBOL:
            		case LOOP_SYMBOL:
            		case MASTER_AUTO_POSITION_SYMBOL:
            		case MASTER_CONNECT_RETRY_SYMBOL:
            		case MASTER_DELAY_SYMBOL:
            		case MASTER_HEARTBEAT_PERIOD_SYMBOL:
            		case MASTER_HOST_SYMBOL:
            		case MASTER_LOG_FILE_SYMBOL:
            		case MASTER_LOG_POS_SYMBOL:
            		case MASTER_PASSWORD_SYMBOL:
            		case MASTER_PORT_SYMBOL:
            		case MASTER_RETRY_COUNT_SYMBOL:
            		case MASTER_SERVER_ID_SYMBOL:
            		case MASTER_SSL_CAPATH_SYMBOL:
            		case MASTER_SSL_CA_SYMBOL:
            		case MASTER_SSL_CERT_SYMBOL:
            		case MASTER_SSL_CIPHER_SYMBOL:
            		case MASTER_SSL_CRLPATH_SYMBOL:
            		case MASTER_SSL_CRL_SYMBOL:
            		case MASTER_SSL_KEY_SYMBOL:
            		case MASTER_SSL_SYMBOL:
            		case MASTER_SYMBOL:
            		case MASTER_USER_SYMBOL:
            		case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
            		case MAX_QUERIES_PER_HOUR_SYMBOL:
            		case MAX_ROWS_SYMBOL:
            		case MAX_SIZE_SYMBOL:
            		case MAX_UPDATES_PER_HOUR_SYMBOL:
            		case MAX_USER_CONNECTIONS_SYMBOL:
            		case MEDIUM_SYMBOL:
            		case MEMORY_SYMBOL:
            		case MERGE_SYMBOL:
            		case MESSAGE_TEXT_SYMBOL:
            		case MICROSECOND_SYMBOL:
            		case MIGRATE_SYMBOL:
            		case MINUTE_SYMBOL:
            		case MIN_ROWS_SYMBOL:
            		case MODE_SYMBOL:
            		case MODIFIES_SYMBOL:
            		case MODIFY_SYMBOL:
            		case MONTH_SYMBOL:
            		case MULTILINESTRING_SYMBOL:
            		case MULTIPOINT_SYMBOL:
            		case MULTIPOLYGON_SYMBOL:
            		case MUTEX_SYMBOL:
            		case MYSQL_ERRNO_SYMBOL:
            		case NAMES_SYMBOL:
            		case NAME_SYMBOL:
            		case NATIONAL_SYMBOL:
            		case NCHAR_SYMBOL:
            		case NDBCLUSTER_SYMBOL:
            		case NEW_SYMBOL:
            		case NEXT_SYMBOL:
            		case NODEGROUP_SYMBOL:
            		case NONE_SYMBOL:
            		case NOT_SYMBOL:
            		case NO_SYMBOL:
            		case NO_WAIT_SYMBOL:
            		case NULL2_SYMBOL:
            		case NULL_SYMBOL:
            		case NUMBER_SYMBOL:
            		case NVARCHAR_SYMBOL:
            		case OFFSET_SYMBOL:
            		case OLD_PASSWORD_SYMBOL:
            		case ONE_SHOT_SYMBOL:
            		case ONE_SYMBOL:
            		case OPEN_PAR_SYMBOL:
            		case OPEN_SYMBOL:
            		case OPTIMIZE_SYMBOL:
            		case PACK_KEYS_SYMBOL:
            		case PAGE_SYMBOL:
            		case PARTIAL_SYMBOL:
            		case PARTITIONING_SYMBOL:
            		case PARTITIONS_SYMBOL:
            		case PARTITION_SYMBOL:
            		case PASSWORD_SYMBOL:
            		case PHASE_SYMBOL:
            		case PLUGINS_SYMBOL:
            		case PLUGIN_DIR_SYMBOL:
            		case PLUGIN_SYMBOL:
            		case POINT_SYMBOL:
            		case POLYGON_SYMBOL:
            		case PREPARE_SYMBOL:
            		case PRESERVE_SYMBOL:
            		case PREV_SYMBOL:
            		case PRIMARY_SYMBOL:
            		case PRIVILEGES_SYMBOL:
            		case PROCESSLIST_SYMBOL:
            		case PROCESS_SYMBOL:
            		case PROFILES_SYMBOL:
            		case PROFILE_SYMBOL:
            		case PROXY_SYMBOL:
            		case PURGE_SYMBOL:
            		case QUARTER_SYMBOL:
            		case QUERY_SYMBOL:
            		case QUICK_SYMBOL:
            		case READS_SYMBOL:
            		case READ_ONLY_SYMBOL:
            		case REBUILD_SYMBOL:
            		case RECOVER_SYMBOL:
            		case REDOFILE_SYMBOL:
            		case REDO_BUFFER_SIZE_SYMBOL:
            		case REDUNDANT_SYMBOL:
            		case REFERENCES_SYMBOL:
            		case RELAYLOG_SYMBOL:
            		case RELAY_LOG_FILE_SYMBOL:
            		case RELAY_LOG_POS_SYMBOL:
            		case RELAY_SYMBOL:
            		case RELAY_THREAD_SYMBOL:
            		case RELEASE_SYMBOL:
            		case RELOAD_SYMBOL:
            		case REMOVE_SYMBOL:
            		case RENAME_SYMBOL:
            		case REORGANIZE_SYMBOL:
            		case REPAIR_SYMBOL:
            		case REPEATABLE_SYMBOL:
            		case REPEAT_SYMBOL:
            		case REPLACE_SYMBOL:
            		case REPLICATION_SYMBOL:
            		case RESET_SYMBOL:
            		case RESIGNAL_SYMBOL:
            		case RESTORE_SYMBOL:
            		case RESUME_SYMBOL:
            		case RETURNED_SQLSTATE_SYMBOL:
            		case RETURNS_SYMBOL:
            		case RETURN_SYMBOL:
            		case REVERSE_SYMBOL:
            		case REVOKE_SYMBOL:
            		case ROLLBACK_SYMBOL:
            		case ROLLUP_SYMBOL:
            		case ROUTINE_SYMBOL:
            		case ROWS_SYMBOL:
            		case ROW_COUNT_SYMBOL:
            		case ROW_FORMAT_SYMBOL:
            		case ROW_SYMBOL:
            		case RTREE_SYMBOL:
            		case SAVEPOINT_SYMBOL:
            		case SCHEDULE_SYMBOL:
            		case SCHEMA_NAME_SYMBOL:
            		case SECOND_SYMBOL:
            		case SELECT_SYMBOL:
            		case SEMICOLON_SYMBOL:
            		case SERIALIZABLE_SYMBOL:
            		case SERIAL_SYMBOL:
            		case SESSION_SYMBOL:
            		case SET_SYMBOL:
            		case SHARE_SYMBOL:
            		case SHOW_SYMBOL:
            		case SHUTDOWN_SYMBOL:
            		case SIGNAL_SYMBOL:
            		case SIMPLE_SYMBOL:
            		case SLOW_SYMBOL:
            		case SNAPSHOT_SYMBOL:
            		case SOUNDS_SYMBOL:
            		case SOURCE_SYMBOL:
            		case SQL_AFTER_GTIDS_SYMBOL:
            		case SQL_AFTER_MTS_GAPS_SYMBOL:
            		case SQL_BEFORE_GTIDS_SYMBOL:
            		case SQL_BUFFER_RESULT_SYMBOL:
            		case SQL_CACHE_SYMBOL:
            		case SQL_NO_CACHE_SYMBOL:
            		case SQL_SYMBOL:
            		case SQL_THREAD_SYMBOL:
            		case STARTS_SYMBOL:
            		case START_SYMBOL:
            		case STATS_AUTO_RECALC_SYMBOL:
            		case STATS_PERSISTENT_SYMBOL:
            		case STATS_SAMPLE_PAGES_SYMBOL:
            		case STATUS_SYMBOL:
            		case STOP_SYMBOL:
            		case STORAGE_SYMBOL:
            		case STRING_SYMBOL:
            		case SUBCLASS_ORIGIN_SYMBOL:
            		case SUBDATE_SYMBOL:
            		case SUBJECT_SYMBOL:
            		case SUBPARTITIONS_SYMBOL:
            		case SUBPARTITION_SYMBOL:
            		case SUPER_SYMBOL:
            		case SUSPEND_SYMBOL:
            		case SWAPS_SYMBOL:
            		case SWITCHES_SYMBOL:
            		case TABLESPACE_SYMBOL:
            		case TABLES_SYMBOL:
            		case TABLE_CHECKSUM_SYMBOL:
            		case TABLE_NAME_SYMBOL:
            		case TEMPORARY_SYMBOL:
            		case TEMPTABLE_SYMBOL:
            		case TEXT_SYMBOL:
            		case THAN_SYMBOL:
            		case TIMESTAMP_ADD_SYMBOL:
            		case TIMESTAMP_DIFF_SYMBOL:
            		case TIMESTAMP_SYMBOL:
            		case TIME_SYMBOL:
            		case TRANSACTION_SYMBOL:
            		case TRIGGERS_SYMBOL:
            		case TRUNCATE_SYMBOL:
            		case TYPES_SYMBOL:
            		case TYPE_SYMBOL:
            		case UDF_RETURNS_SYMBOL:
            		case UNCOMMITTED_SYMBOL:
            		case UNDEFINED_SYMBOL:
            		case UNDOFILE_SYMBOL:
            		case UNDO_BUFFER_SIZE_SYMBOL:
            		case UNINSTALL_SYMBOL:
            		case UNIQUE_SYMBOL:
            		case UNKNOWN_SYMBOL:
            		case UNLOCK_SYMBOL:
            		case UNTIL_SYMBOL:
            		case UPDATE_SYMBOL:
            		case USER_RESOURCES_SYMBOL:
            		case USER_SYMBOL:
            		case USE_FRM_SYMBOL:
            		case USE_SYMBOL:
            		case VALUE_SYMBOL:
            		case VARIABLES_SYMBOL:
            		case VIEW_SYMBOL:
            		case WAIT_SYMBOL:
            		case WARNINGS_SYMBOL:
            		case WEEK_SYMBOL:
            		case WEIGHT_STRING_SYMBOL:
            		case WHILE_SYMBOL:
            		case WORK_SYMBOL:
            		case X509_SYMBOL:
            		case XA_SYMBOL:
            		case XML_SYMBOL:
            		case YEAR_SYMBOL:
            			{
            				alt705=7;
            			}
            		    break;

            		default:
            		    if (BACKTRACKING>0)
            		    {
            		        FAILEDFLAG = ANTLR3_TRUE;
            		        return retval;
            		    }

            		    CONSTRUCTEX();
            		    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            		    EXCEPTION->message      = (void *)"";
            		    EXCEPTION->decisionNum  = 705;
            		    EXCEPTION->state        = 8;


            		    goto ruledata_typeEx;

            		}

            	}
                break;
            case NATIONAL_SYMBOL:
            	{
            		switch ( LA(2) )
            		{
            		case CHAR_SYMBOL:
            			{
            				{
            				    int LA705_133 = LA(3);
            				    if ( ((LA(3) != VARYING_SYMBOL)))
            				    {
            				        alt705=7;
            				    }
            				    else if ( (ANTLR3_TRUE))
            				    {
            				        alt705=10;
            				    }
            				    else
            				    {
            				        if (BACKTRACKING>0)
            				        {
            				            FAILEDFLAG = ANTLR3_TRUE;
            				            return retval;
            				        }


            				        CONSTRUCTEX();
            				        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            				        EXCEPTION->message      = (void *)"";
            				        EXCEPTION->decisionNum  = 705;
            				        EXCEPTION->state        = 133;


            				        goto ruledata_typeEx;

            				    }
            				}
            			}
            		    break;
            		case VARCHAR_SYMBOL:
            			{
            				alt705=10;
            			}
            		    break;

            		default:
            		    if (BACKTRACKING>0)
            		    {
            		        FAILEDFLAG = ANTLR3_TRUE;
            		        return retval;
            		    }

            		    CONSTRUCTEX();
            		    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            		    EXCEPTION->message      = (void *)"";
            		    EXCEPTION->decisionNum  = 705;
            		    EXCEPTION->state        = 9;


            		    goto ruledata_typeEx;

            		}

            	}
                break;
            case BINARY_SYMBOL:
            	{
            		alt705=8;
            	}
                break;
            case VARCHAR_SYMBOL:
            	{
            		alt705=9;
            	}
                break;
            case NCHAR_SYMBOL:
            case NVARCHAR_SYMBOL:
            	{
            		alt705=10;
            	}
                break;
            case VARBINARY_SYMBOL:
            	{
            		alt705=11;
            	}
                break;
            case YEAR_SYMBOL:
            	{
            		alt705=12;
            	}
                break;
            case DATE_SYMBOL:
            	{
            		alt705=13;
            	}
                break;
            case TIME_SYMBOL:
            	{
            		alt705=14;
            	}
                break;
            case TIMESTAMP_SYMBOL:
            	{
            		alt705=15;
            	}
                break;
            case DATETIME_SYMBOL:
            	{
            		alt705=16;
            	}
                break;
            case TINYBLOB_SYMBOL:
            	{
            		alt705=17;
            	}
                break;
            case BLOB_SYMBOL:
            	{
            		alt705=18;
            	}
                break;
            case MEDIUMBLOB_SYMBOL:
            	{
            		alt705=19;
            	}
                break;
            case LONGBLOB_SYMBOL:
            	{
            		alt705=20;
            	}
                break;
            case LONG_SYMBOL:
            	{
            		switch ( LA(2) )
            		{
            		case VARBINARY_SYMBOL:
            			{
            				alt705=21;
            			}
            		    break;
            		case EOF:
            		case ACTION_SYMBOL:
            		case ADDDATE_SYMBOL:
            		case AFTER_SYMBOL:
            		case AGAINST_SYMBOL:
            		case AGGREGATE_SYMBOL:
            		case ALGORITHM_SYMBOL:
            		case ALTER_SYMBOL:
            		case ANALYZE_SYMBOL:
            		case ANY_SYMBOL:
            		case AT_SYMBOL:
            		case AUTHORS_SYMBOL:
            		case AUTOEXTEND_SIZE_SYMBOL:
            		case AUTO_INCREMENT_SYMBOL:
            		case AVG_ROW_LENGTH_SYMBOL:
            		case AVG_SYMBOL:
            		case BACKUP_SYMBOL:
            		case BACK_TICK_QUOTED_ID:
            		case BEGIN_SYMBOL:
            		case BINARY_SYMBOL:
            		case BINLOG_SYMBOL:
            		case BIT_SYMBOL:
            		case BLOCK_SYMBOL:
            		case BOOLEAN_SYMBOL:
            		case BOOL_SYMBOL:
            		case BTREE_SYMBOL:
            		case CACHE_SYMBOL:
            		case CALL_SYMBOL:
            		case CASCADED_SYMBOL:
            		case CASE_SYMBOL:
            		case CATALOG_NAME_SYMBOL:
            		case CHAIN_SYMBOL:
            		case CHANGED_SYMBOL:
            		case CHANGE_SYMBOL:
            		case CHAR_SYMBOL:
            		case CHECKSUM_SYMBOL:
            		case CHECK_SYMBOL:
            		case CIPHER_SYMBOL:
            		case CLASS_ORIGIN_SYMBOL:
            		case CLIENT_SYMBOL:
            		case CLOSE_PAR_SYMBOL:
            		case CLOSE_SYMBOL:
            		case COALESCE_SYMBOL:
            		case CODE_SYMBOL:
            		case COLLATION_SYMBOL:
            		case COLUMNS_SYMBOL:
            		case COLUMN_FORMAT_SYMBOL:
            		case COLUMN_NAME_SYMBOL:
            		case COMMA_SYMBOL:
            		case COMMENT_SYMBOL:
            		case COMMITTED_SYMBOL:
            		case COMMIT_SYMBOL:
            		case COMPACT_SYMBOL:
            		case COMPLETION_SYMBOL:
            		case COMPRESSED_SYMBOL:
            		case CONCURRENT_SYMBOL:
            		case CONNECTION_SYMBOL:
            		case CONSISTENT_SYMBOL:
            		case CONSTRAINT_CATALOG_SYMBOL:
            		case CONSTRAINT_NAME_SYMBOL:
            		case CONSTRAINT_SCHEMA_SYMBOL:
            		case CONTAINS_SYMBOL:
            		case CONTEXT_SYMBOL:
            		case CONTRIBUTORS_SYMBOL:
            		case CPU_SYMBOL:
            		case CREATE_SYMBOL:
            		case CUBE_SYMBOL:
            		case CURRENT_SYMBOL:
            		case CURSOR_NAME_SYMBOL:
            		case DATAFILE_SYMBOL:
            		case DATA_SYMBOL:
            		case DATETIME_SYMBOL:
            		case DATE_SYMBOL:
            		case DAY_SYMBOL:
            		case DEALLOCATE_SYMBOL:
            		case DEFAULT_AUTH_SYMBOL:
            		case DEFAULT_SYMBOL:
            		case DEFINER_SYMBOL:
            		case DELAY_KEY_WRITE_SYMBOL:
            		case DELETE_SYMBOL:
            		case DESCRIBE_SYMBOL:
            		case DESC_SYMBOL:
            		case DES_KEY_FILE_SYMBOL:
            		case DETERMINISTIC_SYMBOL:
            		case DIAGNOSTICS_SYMBOL:
            		case DIRECTORY_SYMBOL:
            		case DISABLE_SYMBOL:
            		case DISCARD_SYMBOL:
            		case DISK_SYMBOL:
            		case DOUBLE_QUOTED_TEXT:
            		case DO_SYMBOL:
            		case DROP_SYMBOL:
            		case DUMPFILE_SYMBOL:
            		case DUPLICATE_SYMBOL:
            		case DYNAMIC_SYMBOL:
            		case ENABLE_SYMBOL:
            		case ENDS_SYMBOL:
            		case ENGINES_SYMBOL:
            		case ENGINE_SYMBOL:
            		case ENUM_SYMBOL:
            		case ERRORS_SYMBOL:
            		case ERROR_SYMBOL:
            		case ESCAPE_SYMBOL:
            		case EVENTS_SYMBOL:
            		case EVENT_SYMBOL:
            		case EVERY_SYMBOL:
            		case EXECUTE_SYMBOL:
            		case EXPANSION_SYMBOL:
            		case EXPORT_SYMBOL:
            		case EXTENDED_SYMBOL:
            		case EXTENT_SIZE_SYMBOL:
            		case FAST_SYMBOL:
            		case FAULTS_SYMBOL:
            		case FETCH_SYMBOL:
            		case FILE_SYMBOL:
            		case FIRST_SYMBOL:
            		case FIXED_SYMBOL:
            		case FLUSH_SYMBOL:
            		case FOUND_SYMBOL:
            		case FULL_SYMBOL:
            		case FUNCTION_SYMBOL:
            		case GENERAL_SYMBOL:
            		case GEOMETRYCOLLECTION_SYMBOL:
            		case GEOMETRY_SYMBOL:
            		case GET_FORMAT_SYMBOL:
            		case GET_SYMBOL:
            		case GLOBAL_SYMBOL:
            		case GRANTS_SYMBOL:
            		case GRANT_SYMBOL:
            		case HANDLER_SYMBOL:
            		case HASH_SYMBOL:
            		case HELP_SYMBOL:
            		case HOSTS_SYMBOL:
            		case HOUR_SYMBOL:
            		case IDENTIFIED_SYMBOL:
            		case IDENTIFIER:
            		case IF_SYMBOL:
            		case IGNORE_SERVER_IDS_SYMBOL:
            		case IMPORT_SYMBOL:
            		case INDEXES_SYMBOL:
            		case INITIAL_SIZE_SYMBOL:
            		case INNODB_SYMBOL:
            		case INSERT_METHOD_SYMBOL:
            		case INSERT_SYMBOL:
            		case INSTALL_SYMBOL:
            		case INVOKER_SYMBOL:
            		case IO_SYMBOL:
            		case IPC_SYMBOL:
            		case ISOLATION_SYMBOL:
            		case ISSUER_SYMBOL:
            		case ITERATE_SYMBOL:
            		case KEY_BLOCK_SIZE_SYMBOL:
            		case KEY_SYMBOL:
            		case KILL_SYMBOL:
            		case LANGUAGE_SYMBOL:
            		case LAST_SYMBOL:
            		case LEAVES_SYMBOL:
            		case LEAVE_SYMBOL:
            		case LESS_SYMBOL:
            		case LEVEL_SYMBOL:
            		case LINESTRING_SYMBOL:
            		case LIST_SYMBOL:
            		case LOAD_SYMBOL:
            		case LOCAL_SYMBOL:
            		case LOCKS_SYMBOL:
            		case LOCK_SYMBOL:
            		case LOGFILE_SYMBOL:
            		case LOGS_SYMBOL:
            		case LOOP_SYMBOL:
            		case MASTER_AUTO_POSITION_SYMBOL:
            		case MASTER_CONNECT_RETRY_SYMBOL:
            		case MASTER_DELAY_SYMBOL:
            		case MASTER_HEARTBEAT_PERIOD_SYMBOL:
            		case MASTER_HOST_SYMBOL:
            		case MASTER_LOG_FILE_SYMBOL:
            		case MASTER_LOG_POS_SYMBOL:
            		case MASTER_PASSWORD_SYMBOL:
            		case MASTER_PORT_SYMBOL:
            		case MASTER_RETRY_COUNT_SYMBOL:
            		case MASTER_SERVER_ID_SYMBOL:
            		case MASTER_SSL_CAPATH_SYMBOL:
            		case MASTER_SSL_CA_SYMBOL:
            		case MASTER_SSL_CERT_SYMBOL:
            		case MASTER_SSL_CIPHER_SYMBOL:
            		case MASTER_SSL_CRLPATH_SYMBOL:
            		case MASTER_SSL_CRL_SYMBOL:
            		case MASTER_SSL_KEY_SYMBOL:
            		case MASTER_SSL_SYMBOL:
            		case MASTER_SYMBOL:
            		case MASTER_USER_SYMBOL:
            		case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
            		case MAX_QUERIES_PER_HOUR_SYMBOL:
            		case MAX_ROWS_SYMBOL:
            		case MAX_SIZE_SYMBOL:
            		case MAX_UPDATES_PER_HOUR_SYMBOL:
            		case MAX_USER_CONNECTIONS_SYMBOL:
            		case MEDIUM_SYMBOL:
            		case MEMORY_SYMBOL:
            		case MERGE_SYMBOL:
            		case MESSAGE_TEXT_SYMBOL:
            		case MICROSECOND_SYMBOL:
            		case MIGRATE_SYMBOL:
            		case MINUTE_SYMBOL:
            		case MIN_ROWS_SYMBOL:
            		case MODE_SYMBOL:
            		case MODIFIES_SYMBOL:
            		case MODIFY_SYMBOL:
            		case MONTH_SYMBOL:
            		case MULTILINESTRING_SYMBOL:
            		case MULTIPOINT_SYMBOL:
            		case MULTIPOLYGON_SYMBOL:
            		case MUTEX_SYMBOL:
            		case MYSQL_ERRNO_SYMBOL:
            		case NAMES_SYMBOL:
            		case NAME_SYMBOL:
            		case NATIONAL_SYMBOL:
            		case NCHAR_SYMBOL:
            		case NDBCLUSTER_SYMBOL:
            		case NEW_SYMBOL:
            		case NEXT_SYMBOL:
            		case NODEGROUP_SYMBOL:
            		case NONE_SYMBOL:
            		case NOT_SYMBOL:
            		case NO_SYMBOL:
            		case NO_WAIT_SYMBOL:
            		case NULL2_SYMBOL:
            		case NULL_SYMBOL:
            		case NUMBER_SYMBOL:
            		case NVARCHAR_SYMBOL:
            		case OFFSET_SYMBOL:
            		case OLD_PASSWORD_SYMBOL:
            		case ONE_SHOT_SYMBOL:
            		case ONE_SYMBOL:
            		case OPEN_PAR_SYMBOL:
            		case OPEN_SYMBOL:
            		case OPTIMIZE_SYMBOL:
            		case PACK_KEYS_SYMBOL:
            		case PAGE_SYMBOL:
            		case PARTIAL_SYMBOL:
            		case PARTITIONING_SYMBOL:
            		case PARTITIONS_SYMBOL:
            		case PARTITION_SYMBOL:
            		case PASSWORD_SYMBOL:
            		case PHASE_SYMBOL:
            		case PLUGINS_SYMBOL:
            		case PLUGIN_DIR_SYMBOL:
            		case PLUGIN_SYMBOL:
            		case POINT_SYMBOL:
            		case POLYGON_SYMBOL:
            		case PREPARE_SYMBOL:
            		case PRESERVE_SYMBOL:
            		case PREV_SYMBOL:
            		case PRIMARY_SYMBOL:
            		case PRIVILEGES_SYMBOL:
            		case PROCESSLIST_SYMBOL:
            		case PROCESS_SYMBOL:
            		case PROFILES_SYMBOL:
            		case PROFILE_SYMBOL:
            		case PROXY_SYMBOL:
            		case PURGE_SYMBOL:
            		case QUARTER_SYMBOL:
            		case QUERY_SYMBOL:
            		case QUICK_SYMBOL:
            		case READS_SYMBOL:
            		case READ_ONLY_SYMBOL:
            		case REBUILD_SYMBOL:
            		case RECOVER_SYMBOL:
            		case REDOFILE_SYMBOL:
            		case REDO_BUFFER_SIZE_SYMBOL:
            		case REDUNDANT_SYMBOL:
            		case REFERENCES_SYMBOL:
            		case RELAYLOG_SYMBOL:
            		case RELAY_LOG_FILE_SYMBOL:
            		case RELAY_LOG_POS_SYMBOL:
            		case RELAY_SYMBOL:
            		case RELAY_THREAD_SYMBOL:
            		case RELEASE_SYMBOL:
            		case RELOAD_SYMBOL:
            		case REMOVE_SYMBOL:
            		case RENAME_SYMBOL:
            		case REORGANIZE_SYMBOL:
            		case REPAIR_SYMBOL:
            		case REPEATABLE_SYMBOL:
            		case REPEAT_SYMBOL:
            		case REPLACE_SYMBOL:
            		case REPLICATION_SYMBOL:
            		case RESET_SYMBOL:
            		case RESIGNAL_SYMBOL:
            		case RESTORE_SYMBOL:
            		case RESUME_SYMBOL:
            		case RETURNED_SQLSTATE_SYMBOL:
            		case RETURNS_SYMBOL:
            		case RETURN_SYMBOL:
            		case REVERSE_SYMBOL:
            		case REVOKE_SYMBOL:
            		case ROLLBACK_SYMBOL:
            		case ROLLUP_SYMBOL:
            		case ROUTINE_SYMBOL:
            		case ROWS_SYMBOL:
            		case ROW_COUNT_SYMBOL:
            		case ROW_FORMAT_SYMBOL:
            		case ROW_SYMBOL:
            		case RTREE_SYMBOL:
            		case SAVEPOINT_SYMBOL:
            		case SCHEDULE_SYMBOL:
            		case SCHEMA_NAME_SYMBOL:
            		case SECOND_SYMBOL:
            		case SELECT_SYMBOL:
            		case SEMICOLON_SYMBOL:
            		case SERIALIZABLE_SYMBOL:
            		case SERIAL_SYMBOL:
            		case SESSION_SYMBOL:
            		case SET_SYMBOL:
            		case SHARE_SYMBOL:
            		case SHOW_SYMBOL:
            		case SHUTDOWN_SYMBOL:
            		case SIGNAL_SYMBOL:
            		case SIMPLE_SYMBOL:
            		case SLOW_SYMBOL:
            		case SNAPSHOT_SYMBOL:
            		case SOUNDS_SYMBOL:
            		case SOURCE_SYMBOL:
            		case SQL_AFTER_GTIDS_SYMBOL:
            		case SQL_AFTER_MTS_GAPS_SYMBOL:
            		case SQL_BEFORE_GTIDS_SYMBOL:
            		case SQL_BUFFER_RESULT_SYMBOL:
            		case SQL_CACHE_SYMBOL:
            		case SQL_NO_CACHE_SYMBOL:
            		case SQL_SYMBOL:
            		case SQL_THREAD_SYMBOL:
            		case STARTS_SYMBOL:
            		case START_SYMBOL:
            		case STATS_AUTO_RECALC_SYMBOL:
            		case STATS_PERSISTENT_SYMBOL:
            		case STATS_SAMPLE_PAGES_SYMBOL:
            		case STATUS_SYMBOL:
            		case STOP_SYMBOL:
            		case STORAGE_SYMBOL:
            		case STRING_SYMBOL:
            		case SUBCLASS_ORIGIN_SYMBOL:
            		case SUBDATE_SYMBOL:
            		case SUBJECT_SYMBOL:
            		case SUBPARTITIONS_SYMBOL:
            		case SUBPARTITION_SYMBOL:
            		case SUPER_SYMBOL:
            		case SUSPEND_SYMBOL:
            		case SWAPS_SYMBOL:
            		case SWITCHES_SYMBOL:
            		case TABLESPACE_SYMBOL:
            		case TABLES_SYMBOL:
            		case TABLE_CHECKSUM_SYMBOL:
            		case TABLE_NAME_SYMBOL:
            		case TEMPORARY_SYMBOL:
            		case TEMPTABLE_SYMBOL:
            		case TEXT_SYMBOL:
            		case THAN_SYMBOL:
            		case TIMESTAMP_ADD_SYMBOL:
            		case TIMESTAMP_DIFF_SYMBOL:
            		case TIMESTAMP_SYMBOL:
            		case TIME_SYMBOL:
            		case TRANSACTION_SYMBOL:
            		case TRIGGERS_SYMBOL:
            		case TRUNCATE_SYMBOL:
            		case TYPES_SYMBOL:
            		case TYPE_SYMBOL:
            		case UDF_RETURNS_SYMBOL:
            		case UNCOMMITTED_SYMBOL:
            		case UNDEFINED_SYMBOL:
            		case UNDOFILE_SYMBOL:
            		case UNDO_BUFFER_SIZE_SYMBOL:
            		case UNINSTALL_SYMBOL:
            		case UNIQUE_SYMBOL:
            		case UNKNOWN_SYMBOL:
            		case UNLOCK_SYMBOL:
            		case UNTIL_SYMBOL:
            		case UPDATE_SYMBOL:
            		case USER_RESOURCES_SYMBOL:
            		case USER_SYMBOL:
            		case USE_FRM_SYMBOL:
            		case USE_SYMBOL:
            		case VALUE_SYMBOL:
            		case VARCHAR_SYMBOL:
            		case VARIABLES_SYMBOL:
            		case VIEW_SYMBOL:
            		case WAIT_SYMBOL:
            		case WARNINGS_SYMBOL:
            		case WEEK_SYMBOL:
            		case WEIGHT_STRING_SYMBOL:
            		case WHILE_SYMBOL:
            		case WORK_SYMBOL:
            		case X509_SYMBOL:
            		case XA_SYMBOL:
            		case XML_SYMBOL:
            		case YEAR_SYMBOL:
            			{
            				alt705=22;
            			}
            		    break;

            		default:
            		    if (BACKTRACKING>0)
            		    {
            		        FAILEDFLAG = ANTLR3_TRUE;
            		        return retval;
            		    }

            		    CONSTRUCTEX();
            		    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            		    EXCEPTION->message      = (void *)"";
            		    EXCEPTION->decisionNum  = 705;
            		    EXCEPTION->state        = 24;


            		    goto ruledata_typeEx;

            		}

            	}
                break;
            case TINYTEXT_SYMBOL:
            	{
            		alt705=23;
            	}
                break;
            case TEXT_SYMBOL:
            	{
            		alt705=24;
            	}
                break;
            case MEDIUMTEXT_SYMBOL:
            	{
            		alt705=25;
            	}
                break;
            case LONGTEXT_SYMBOL:
            	{
            		alt705=26;
            	}
                break;
            case DECIMAL_SYMBOL:
            	{
            		alt705=27;
            	}
                break;
            case NUMERIC_SYMBOL:
            	{
            		alt705=28;
            	}
                break;
            case FIXED_SYMBOL:
            	{
            		alt705=29;
            	}
                break;
            case ENUM_SYMBOL:
            	{
            		alt705=30;
            	}
                break;
            case SET_SYMBOL:
            	{
            		alt705=31;
            	}
                break;
            case SERIAL_SYMBOL:
            	{
            		alt705=32;
            	}
                break;
            case GEOMETRYCOLLECTION_SYMBOL:
            case GEOMETRY_SYMBOL:
            case LINESTRING_SYMBOL:
            case MULTILINESTRING_SYMBOL:
            case MULTIPOINT_SYMBOL:
            case MULTIPOLYGON_SYMBOL:
            case POINT_SYMBOL:
            case POLYGON_SYMBOL:
            	{
            		alt705=33;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 705;
                EXCEPTION->state        = 0;


                goto ruledata_typeEx;

            }

            switch (alt705)
            {
        	case 1:
        	    // MySQL.g:2211:2: integer_type ( field_length )? ( field_options )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_integer_type_in_data_type12622);
        	        integer_type2558=integer_type(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, integer_type2558.tree);

        	        // MySQL.g:2211:15: ( field_length )?
        	        {
        	            int alt672=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case INTEGER:
        	                		    	{
        	                		    		alt672=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt672)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2211:15: field_length
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_length_in_data_type12624);
        	        	        field_length2559=field_length(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2559.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:2211:29: ( field_options )?
        	        {
        	            int alt673=2;
        	            switch ( LA(1) )
        	            {
        	                case SIGNED_SYMBOL:
        	                case UNSIGNED_SYMBOL:
        	                case ZEROFILL_SYMBOL:
        	                	{
        	                		alt673=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt673)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2211:29: field_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_options_in_data_type12627);
        	        	        field_options2560=field_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_options2560.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2213:4: ( REAL_SYMBOL | DOUBLE_SYMBOL ( PRECISION_SYMBOL )? ) ( precision )? ( field_options )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:2213:4: ( REAL_SYMBOL | DOUBLE_SYMBOL ( PRECISION_SYMBOL )? )
        	        {
        	            int alt675=2;
        	            switch ( LA(1) )
        	            {
        	            case REAL_SYMBOL:
        	            	{
        	            		alt675=1;
        	            	}
        	                break;
        	            case DOUBLE_SYMBOL:
        	            	{
        	            		alt675=2;
        	            	}
        	                break;

        	            default:
        	                if (BACKTRACKING>0)
        	                {
        	                    FAILEDFLAG = ANTLR3_TRUE;
        	                    return retval;
        	                }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                EXCEPTION->message      = (void *)"";
        	                EXCEPTION->decisionNum  = 675;
        	                EXCEPTION->state        = 0;


        	                goto ruledata_typeEx;

        	            }

        	            switch (alt675)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2213:5: REAL_SYMBOL
        	        	    {
        	        	        REAL_SYMBOL2561 = (pANTLR3_COMMON_TOKEN) MATCHT(REAL_SYMBOL, &FOLLOW_REAL_SYMBOL_in_data_type12635);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        REAL_SYMBOL2561_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REAL_SYMBOL2561));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, REAL_SYMBOL2561_tree);
        	        	        }

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:2213:19: DOUBLE_SYMBOL ( PRECISION_SYMBOL )?
        	        	    {
        	        	        DOUBLE_SYMBOL2562 = (pANTLR3_COMMON_TOKEN) MATCHT(DOUBLE_SYMBOL, &FOLLOW_DOUBLE_SYMBOL_in_data_type12639);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DOUBLE_SYMBOL2562_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOUBLE_SYMBOL2562));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DOUBLE_SYMBOL2562_tree);
        	        	        }

        	        	        // MySQL.g:2213:33: ( PRECISION_SYMBOL )?
        	        	        {
        	        	            int alt674=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case PRECISION_SYMBOL:
        	        	                	{
        	        	                		alt674=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt674)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:2213:33: PRECISION_SYMBOL
        	        	        	    {
        	        	        	        PRECISION_SYMBOL2563 = (pANTLR3_COMMON_TOKEN) MATCHT(PRECISION_SYMBOL, &FOLLOW_PRECISION_SYMBOL_in_data_type12641);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruledata_typeEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        PRECISION_SYMBOL2563_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PRECISION_SYMBOL2563));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, PRECISION_SYMBOL2563_tree);
        	        	        	        }

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:2213:52: ( precision )?
        	        {
        	            int alt676=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case INTEGER:
        	                		    	{
        	                		    		alt676=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt676)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2213:52: precision
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_precision_in_data_type12645);
        	        	        precision2564=precision(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, precision2564.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:2213:63: ( field_options )?
        	        {
        	            int alt677=2;
        	            switch ( LA(1) )
        	            {
        	                case SIGNED_SYMBOL:
        	                case UNSIGNED_SYMBOL:
        	                case ZEROFILL_SYMBOL:
        	                	{
        	                		alt677=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt677)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2213:63: field_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_options_in_data_type12648);
        	        	        field_options2565=field_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_options2565.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2214:4: FLOAT_SYMBOL ( float_options )? ( field_options )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FLOAT_SYMBOL2566 = (pANTLR3_COMMON_TOKEN) MATCHT(FLOAT_SYMBOL, &FOLLOW_FLOAT_SYMBOL_in_data_type12654);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FLOAT_SYMBOL2566_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FLOAT_SYMBOL2566));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FLOAT_SYMBOL2566_tree);
        	        }

        	        // MySQL.g:2214:17: ( float_options )?
        	        {
        	            int alt678=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case INTEGER:
        	                		    	{
        	                		    		alt678=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt678)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2214:17: float_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_float_options_in_data_type12656);
        	        	        float_options2567=float_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, float_options2567.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:2214:32: ( field_options )?
        	        {
        	            int alt679=2;
        	            switch ( LA(1) )
        	            {
        	                case SIGNED_SYMBOL:
        	                case UNSIGNED_SYMBOL:
        	                case ZEROFILL_SYMBOL:
        	                	{
        	                		alt679=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt679)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2214:32: field_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_options_in_data_type12659);
        	        	        field_options2568=field_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_options2568.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:2216:4: BIT_SYMBOL ( field_length )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BIT_SYMBOL2569 = (pANTLR3_COMMON_TOKEN) MATCHT(BIT_SYMBOL, &FOLLOW_BIT_SYMBOL_in_data_type12667);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BIT_SYMBOL2569_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BIT_SYMBOL2569));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BIT_SYMBOL2569_tree);
        	        }

        	        // MySQL.g:2216:15: ( field_length )?
        	        {
        	            int alt680=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case INTEGER:
        	                		    	{
        	                		    		alt680=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt680)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2216:15: field_length
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_length_in_data_type12669);
        	        	        field_length2570=field_length(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2570.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:2217:4: BOOL_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BOOL_SYMBOL2571 = (pANTLR3_COMMON_TOKEN) MATCHT(BOOL_SYMBOL, &FOLLOW_BOOL_SYMBOL_in_data_type12675);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BOOL_SYMBOL2571_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BOOL_SYMBOL2571));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BOOL_SYMBOL2571_tree);
        	        }

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:2218:4: BOOLEAN_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BOOLEAN_SYMBOL2572 = (pANTLR3_COMMON_TOKEN) MATCHT(BOOLEAN_SYMBOL, &FOLLOW_BOOLEAN_SYMBOL_in_data_type12680);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BOOLEAN_SYMBOL2572_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BOOLEAN_SYMBOL2572));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BOOLEAN_SYMBOL2572_tree);
        	        }

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:2220:4: nchar_literal ( field_length )? ( BINARY_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_nchar_literal_in_data_type12687);
        	        nchar_literal2573=nchar_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, nchar_literal2573.tree);

        	        // MySQL.g:2220:18: ( field_length )?
        	        {
        	            int alt681=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case INTEGER:
        	                		    	{
        	                		    		alt681=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt681)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2220:18: field_length
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_length_in_data_type12689);
        	        	        field_length2574=field_length(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2574.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:2220:32: ( BINARY_SYMBOL )?
        	        {
        	            int alt682=2;
        	            switch ( LA(1) )
        	            {
        	                case BINARY_SYMBOL:
        	                	{
        	                		alt682=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt682)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2220:32: BINARY_SYMBOL
        	        	    {
        	        	        BINARY_SYMBOL2575 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_data_type12692);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        BINARY_SYMBOL2575_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2575));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2575_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:2221:4: BINARY_SYMBOL ( field_length )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BINARY_SYMBOL2576 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_data_type12698);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BINARY_SYMBOL2576_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2576));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2576_tree);
        	        }

        	        // MySQL.g:2221:18: ( field_length )?
        	        {
        	            int alt683=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case INTEGER:
        	                		    	{
        	                		    		alt683=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt683)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2221:18: field_length
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_length_in_data_type12700);
        	        	        field_length2577=field_length(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2577.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:2222:4: varchar_literal field_length ( BINARY_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_varchar_literal_in_data_type12706);
        	        varchar_literal2578=varchar_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, varchar_literal2578.tree);

        	        FOLLOWPUSH(FOLLOW_field_length_in_data_type12708);
        	        field_length2579=field_length(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2579.tree);

        	        // MySQL.g:2222:33: ( BINARY_SYMBOL )?
        	        {
        	            int alt684=2;
        	            switch ( LA(1) )
        	            {
        	                case BINARY_SYMBOL:
        	                	{
        	                		alt684=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt684)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2222:33: BINARY_SYMBOL
        	        	    {
        	        	        BINARY_SYMBOL2580 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_data_type12710);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        BINARY_SYMBOL2580_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2580));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2580_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 10:
        	    // MySQL.g:2223:4: nvarchar_literal field_length ( BINARY_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_nvarchar_literal_in_data_type12716);
        	        nvarchar_literal2581=nvarchar_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, nvarchar_literal2581.tree);

        	        FOLLOWPUSH(FOLLOW_field_length_in_data_type12718);
        	        field_length2582=field_length(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2582.tree);

        	        // MySQL.g:2223:34: ( BINARY_SYMBOL )?
        	        {
        	            int alt685=2;
        	            switch ( LA(1) )
        	            {
        	                case BINARY_SYMBOL:
        	                	{
        	                		alt685=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt685)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2223:34: BINARY_SYMBOL
        	        	    {
        	        	        BINARY_SYMBOL2583 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_data_type12720);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        BINARY_SYMBOL2583_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2583));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2583_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 11:
        	    // MySQL.g:2225:4: VARBINARY_SYMBOL field_length
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        VARBINARY_SYMBOL2584 = (pANTLR3_COMMON_TOKEN) MATCHT(VARBINARY_SYMBOL, &FOLLOW_VARBINARY_SYMBOL_in_data_type12727);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        VARBINARY_SYMBOL2584_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VARBINARY_SYMBOL2584));
        	        ADAPTOR->addChild(ADAPTOR, root_0, VARBINARY_SYMBOL2584_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_field_length_in_data_type12729);
        	        field_length2585=field_length(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2585.tree);

        	    }
        	    break;
        	case 12:
        	    // MySQL.g:2227:4: YEAR_SYMBOL ( field_length )? ( field_options )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        YEAR_SYMBOL2586 = (pANTLR3_COMMON_TOKEN) MATCHT(YEAR_SYMBOL, &FOLLOW_YEAR_SYMBOL_in_data_type12735);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        YEAR_SYMBOL2586_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, YEAR_SYMBOL2586));
        	        ADAPTOR->addChild(ADAPTOR, root_0, YEAR_SYMBOL2586_tree);
        	        }

        	        // MySQL.g:2227:16: ( field_length )?
        	        {
        	            int alt686=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case INTEGER:
        	                		    	{
        	                		    		alt686=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt686)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2227:16: field_length
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_length_in_data_type12737);
        	        	        field_length2587=field_length(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2587.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:2227:30: ( field_options )?
        	        {
        	            int alt687=2;
        	            switch ( LA(1) )
        	            {
        	                case SIGNED_SYMBOL:
        	                case UNSIGNED_SYMBOL:
        	                case ZEROFILL_SYMBOL:
        	                	{
        	                		alt687=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt687)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2227:30: field_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_options_in_data_type12740);
        	        	        field_options2588=field_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_options2588.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 13:
        	    // MySQL.g:2228:4: DATE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DATE_SYMBOL2589 = (pANTLR3_COMMON_TOKEN) MATCHT(DATE_SYMBOL, &FOLLOW_DATE_SYMBOL_in_data_type12746);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DATE_SYMBOL2589_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATE_SYMBOL2589));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DATE_SYMBOL2589_tree);
        	        }

        	    }
        	    break;
        	case 14:
        	    // MySQL.g:2229:4: TIME_SYMBOL ( type_datetime_precision )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TIME_SYMBOL2590 = (pANTLR3_COMMON_TOKEN) MATCHT(TIME_SYMBOL, &FOLLOW_TIME_SYMBOL_in_data_type12751);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TIME_SYMBOL2590_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TIME_SYMBOL2590));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TIME_SYMBOL2590_tree);
        	        }

        	        // MySQL.g:2229:16: ( type_datetime_precision )?
        	        {
        	            int alt688=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		{
        	                		    int LA688_1 = LA(2);
        	                		    if ( ((SERVER_VERSION >= 50600)) && (LA688_1 == INTEGER))
        	                		    {
        	                		        alt688=1;
        	                		    }
        	                		}
        	                	}
        	                    break;
        	            }

        	            switch (alt688)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2229:16: type_datetime_precision
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_type_datetime_precision_in_data_type12753);
        	        	        type_datetime_precision2591=type_datetime_precision(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, type_datetime_precision2591.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 15:
        	    // MySQL.g:2230:4: TIMESTAMP_SYMBOL ( type_datetime_precision )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TIMESTAMP_SYMBOL2592 = (pANTLR3_COMMON_TOKEN) MATCHT(TIMESTAMP_SYMBOL, &FOLLOW_TIMESTAMP_SYMBOL_in_data_type12759);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TIMESTAMP_SYMBOL2592_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TIMESTAMP_SYMBOL2592));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TIMESTAMP_SYMBOL2592_tree);
        	        }

        	        // MySQL.g:2230:21: ( type_datetime_precision )?
        	        {
        	            int alt689=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		{
        	                		    int LA689_1 = LA(2);
        	                		    if ( ((SERVER_VERSION >= 50600)) && (LA689_1 == INTEGER))
        	                		    {
        	                		        alt689=1;
        	                		    }
        	                		}
        	                	}
        	                    break;
        	            }

        	            switch (alt689)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2230:21: type_datetime_precision
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_type_datetime_precision_in_data_type12761);
        	        	        type_datetime_precision2593=type_datetime_precision(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, type_datetime_precision2593.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 16:
        	    // MySQL.g:2231:4: DATETIME_SYMBOL ( type_datetime_precision )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DATETIME_SYMBOL2594 = (pANTLR3_COMMON_TOKEN) MATCHT(DATETIME_SYMBOL, &FOLLOW_DATETIME_SYMBOL_in_data_type12767);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DATETIME_SYMBOL2594_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATETIME_SYMBOL2594));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DATETIME_SYMBOL2594_tree);
        	        }

        	        // MySQL.g:2231:20: ( type_datetime_precision )?
        	        {
        	            int alt690=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		{
        	                		    int LA690_1 = LA(2);
        	                		    if ( ((SERVER_VERSION >= 50600)) && (LA690_1 == INTEGER))
        	                		    {
        	                		        alt690=1;
        	                		    }
        	                		}
        	                	}
        	                    break;
        	            }

        	            switch (alt690)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2231:20: type_datetime_precision
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_type_datetime_precision_in_data_type12769);
        	        	        type_datetime_precision2595=type_datetime_precision(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, type_datetime_precision2595.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 17:
        	    // MySQL.g:2233:4: TINYBLOB_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TINYBLOB_SYMBOL2596 = (pANTLR3_COMMON_TOKEN) MATCHT(TINYBLOB_SYMBOL, &FOLLOW_TINYBLOB_SYMBOL_in_data_type12776);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TINYBLOB_SYMBOL2596_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TINYBLOB_SYMBOL2596));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TINYBLOB_SYMBOL2596_tree);
        	        }

        	    }
        	    break;
        	case 18:
        	    // MySQL.g:2234:4: BLOB_SYMBOL ( field_length )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BLOB_SYMBOL2597 = (pANTLR3_COMMON_TOKEN) MATCHT(BLOB_SYMBOL, &FOLLOW_BLOB_SYMBOL_in_data_type12781);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BLOB_SYMBOL2597_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BLOB_SYMBOL2597));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BLOB_SYMBOL2597_tree);
        	        }

        	        // MySQL.g:2234:16: ( field_length )?
        	        {
        	            int alt691=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case INTEGER:
        	                		    	{
        	                		    		alt691=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt691)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2234:16: field_length
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_length_in_data_type12783);
        	        	        field_length2598=field_length(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2598.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 19:
        	    // MySQL.g:2235:4: MEDIUMBLOB_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MEDIUMBLOB_SYMBOL2599 = (pANTLR3_COMMON_TOKEN) MATCHT(MEDIUMBLOB_SYMBOL, &FOLLOW_MEDIUMBLOB_SYMBOL_in_data_type12789);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MEDIUMBLOB_SYMBOL2599_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MEDIUMBLOB_SYMBOL2599));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MEDIUMBLOB_SYMBOL2599_tree);
        	        }

        	    }
        	    break;
        	case 20:
        	    // MySQL.g:2236:4: LONGBLOB_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        LONGBLOB_SYMBOL2600 = (pANTLR3_COMMON_TOKEN) MATCHT(LONGBLOB_SYMBOL, &FOLLOW_LONGBLOB_SYMBOL_in_data_type12794);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LONGBLOB_SYMBOL2600_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LONGBLOB_SYMBOL2600));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LONGBLOB_SYMBOL2600_tree);
        	        }

        	    }
        	    break;
        	case 21:
        	    // MySQL.g:2237:4: LONG_SYMBOL VARBINARY_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        LONG_SYMBOL2601 = (pANTLR3_COMMON_TOKEN) MATCHT(LONG_SYMBOL, &FOLLOW_LONG_SYMBOL_in_data_type12799);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LONG_SYMBOL2601_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LONG_SYMBOL2601));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LONG_SYMBOL2601_tree);
        	        }

        	        VARBINARY_SYMBOL2602 = (pANTLR3_COMMON_TOKEN) MATCHT(VARBINARY_SYMBOL, &FOLLOW_VARBINARY_SYMBOL_in_data_type12801);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        VARBINARY_SYMBOL2602_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VARBINARY_SYMBOL2602));
        	        ADAPTOR->addChild(ADAPTOR, root_0, VARBINARY_SYMBOL2602_tree);
        	        }

        	    }
        	    break;
        	case 22:
        	    // MySQL.g:2238:4: LONG_SYMBOL ( varchar_literal )? ( BINARY_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        LONG_SYMBOL2603 = (pANTLR3_COMMON_TOKEN) MATCHT(LONG_SYMBOL, &FOLLOW_LONG_SYMBOL_in_data_type12806);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LONG_SYMBOL2603_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LONG_SYMBOL2603));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LONG_SYMBOL2603_tree);
        	        }

        	        // MySQL.g:2238:16: ( varchar_literal )?
        	        {
        	            int alt692=2;
        	            switch ( LA(1) )
        	            {
        	                case CHAR_SYMBOL:
        	                case VARCHAR_SYMBOL:
        	                	{
        	                		alt692=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt692)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2238:16: varchar_literal
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_varchar_literal_in_data_type12808);
        	        	        varchar_literal2604=varchar_literal(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, varchar_literal2604.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:2238:33: ( BINARY_SYMBOL )?
        	        {
        	            int alt693=2;
        	            switch ( LA(1) )
        	            {
        	                case BINARY_SYMBOL:
        	                	{
        	                		alt693=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt693)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2238:33: BINARY_SYMBOL
        	        	    {
        	        	        BINARY_SYMBOL2605 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_data_type12811);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        BINARY_SYMBOL2605_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2605));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2605_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 23:
        	    // MySQL.g:2240:4: TINYTEXT_SYMBOL ( BINARY_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TINYTEXT_SYMBOL2606 = (pANTLR3_COMMON_TOKEN) MATCHT(TINYTEXT_SYMBOL, &FOLLOW_TINYTEXT_SYMBOL_in_data_type12818);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TINYTEXT_SYMBOL2606_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TINYTEXT_SYMBOL2606));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TINYTEXT_SYMBOL2606_tree);
        	        }

        	        // MySQL.g:2240:20: ( BINARY_SYMBOL )?
        	        {
        	            int alt694=2;
        	            switch ( LA(1) )
        	            {
        	                case BINARY_SYMBOL:
        	                	{
        	                		alt694=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt694)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2240:20: BINARY_SYMBOL
        	        	    {
        	        	        BINARY_SYMBOL2607 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_data_type12820);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        BINARY_SYMBOL2607_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2607));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2607_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 24:
        	    // MySQL.g:2241:4: TEXT_SYMBOL ( field_length )? ( BINARY_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TEXT_SYMBOL2608 = (pANTLR3_COMMON_TOKEN) MATCHT(TEXT_SYMBOL, &FOLLOW_TEXT_SYMBOL_in_data_type12826);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TEXT_SYMBOL2608_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TEXT_SYMBOL2608));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TEXT_SYMBOL2608_tree);
        	        }

        	        // MySQL.g:2241:16: ( field_length )?
        	        {
        	            int alt695=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case INTEGER:
        	                		    	{
        	                		    		alt695=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt695)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2241:16: field_length
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_length_in_data_type12828);
        	        	        field_length2609=field_length(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2609.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:2241:30: ( BINARY_SYMBOL )?
        	        {
        	            int alt696=2;
        	            switch ( LA(1) )
        	            {
        	                case BINARY_SYMBOL:
        	                	{
        	                		alt696=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt696)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2241:30: BINARY_SYMBOL
        	        	    {
        	        	        BINARY_SYMBOL2610 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_data_type12831);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        BINARY_SYMBOL2610_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2610));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2610_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 25:
        	    // MySQL.g:2242:4: MEDIUMTEXT_SYMBOL ( BINARY_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MEDIUMTEXT_SYMBOL2611 = (pANTLR3_COMMON_TOKEN) MATCHT(MEDIUMTEXT_SYMBOL, &FOLLOW_MEDIUMTEXT_SYMBOL_in_data_type12837);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MEDIUMTEXT_SYMBOL2611_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MEDIUMTEXT_SYMBOL2611));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MEDIUMTEXT_SYMBOL2611_tree);
        	        }

        	        // MySQL.g:2242:22: ( BINARY_SYMBOL )?
        	        {
        	            int alt697=2;
        	            switch ( LA(1) )
        	            {
        	                case BINARY_SYMBOL:
        	                	{
        	                		alt697=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt697)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2242:22: BINARY_SYMBOL
        	        	    {
        	        	        BINARY_SYMBOL2612 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_data_type12839);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        BINARY_SYMBOL2612_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2612));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2612_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 26:
        	    // MySQL.g:2243:4: LONGTEXT_SYMBOL ( BINARY_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        LONGTEXT_SYMBOL2613 = (pANTLR3_COMMON_TOKEN) MATCHT(LONGTEXT_SYMBOL, &FOLLOW_LONGTEXT_SYMBOL_in_data_type12845);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LONGTEXT_SYMBOL2613_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LONGTEXT_SYMBOL2613));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LONGTEXT_SYMBOL2613_tree);
        	        }

        	        // MySQL.g:2243:20: ( BINARY_SYMBOL )?
        	        {
        	            int alt698=2;
        	            switch ( LA(1) )
        	            {
        	                case BINARY_SYMBOL:
        	                	{
        	                		alt698=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt698)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2243:20: BINARY_SYMBOL
        	        	    {
        	        	        BINARY_SYMBOL2614 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_data_type12847);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        BINARY_SYMBOL2614_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2614));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2614_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 27:
        	    // MySQL.g:2245:4: DECIMAL_SYMBOL ( float_options )? ( field_options )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DECIMAL_SYMBOL2615 = (pANTLR3_COMMON_TOKEN) MATCHT(DECIMAL_SYMBOL, &FOLLOW_DECIMAL_SYMBOL_in_data_type12855);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DECIMAL_SYMBOL2615_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DECIMAL_SYMBOL2615));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DECIMAL_SYMBOL2615_tree);
        	        }

        	        // MySQL.g:2245:19: ( float_options )?
        	        {
        	            int alt699=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case INTEGER:
        	                		    	{
        	                		    		alt699=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt699)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2245:19: float_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_float_options_in_data_type12857);
        	        	        float_options2616=float_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, float_options2616.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:2245:34: ( field_options )?
        	        {
        	            int alt700=2;
        	            switch ( LA(1) )
        	            {
        	                case SIGNED_SYMBOL:
        	                case UNSIGNED_SYMBOL:
        	                case ZEROFILL_SYMBOL:
        	                	{
        	                		alt700=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt700)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2245:34: field_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_options_in_data_type12860);
        	        	        field_options2617=field_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_options2617.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 28:
        	    // MySQL.g:2246:4: NUMERIC_SYMBOL ( float_options )? ( field_options )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NUMERIC_SYMBOL2618 = (pANTLR3_COMMON_TOKEN) MATCHT(NUMERIC_SYMBOL, &FOLLOW_NUMERIC_SYMBOL_in_data_type12866);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NUMERIC_SYMBOL2618_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NUMERIC_SYMBOL2618));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NUMERIC_SYMBOL2618_tree);
        	        }

        	        // MySQL.g:2246:19: ( float_options )?
        	        {
        	            int alt701=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case INTEGER:
        	                		    	{
        	                		    		alt701=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt701)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2246:19: float_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_float_options_in_data_type12868);
        	        	        float_options2619=float_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, float_options2619.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:2246:34: ( field_options )?
        	        {
        	            int alt702=2;
        	            switch ( LA(1) )
        	            {
        	                case SIGNED_SYMBOL:
        	                case UNSIGNED_SYMBOL:
        	                case ZEROFILL_SYMBOL:
        	                	{
        	                		alt702=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt702)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2246:34: field_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_options_in_data_type12871);
        	        	        field_options2620=field_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_options2620.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 29:
        	    // MySQL.g:2247:4: FIXED_SYMBOL ( float_options )? ( field_options )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FIXED_SYMBOL2621 = (pANTLR3_COMMON_TOKEN) MATCHT(FIXED_SYMBOL, &FOLLOW_FIXED_SYMBOL_in_data_type12877);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FIXED_SYMBOL2621_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FIXED_SYMBOL2621));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FIXED_SYMBOL2621_tree);
        	        }

        	        // MySQL.g:2247:17: ( float_options )?
        	        {
        	            int alt703=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case INTEGER:
        	                		    	{
        	                		    		alt703=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt703)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2247:17: float_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_float_options_in_data_type12879);
        	        	        float_options2622=float_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, float_options2622.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:2247:32: ( field_options )?
        	        {
        	            int alt704=2;
        	            switch ( LA(1) )
        	            {
        	                case SIGNED_SYMBOL:
        	                case UNSIGNED_SYMBOL:
        	                case ZEROFILL_SYMBOL:
        	                	{
        	                		alt704=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt704)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2247:32: field_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_options_in_data_type12882);
        	        	        field_options2623=field_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_options2623.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 30:
        	    // MySQL.g:2249:4: ENUM_SYMBOL string_list
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ENUM_SYMBOL2624 = (pANTLR3_COMMON_TOKEN) MATCHT(ENUM_SYMBOL, &FOLLOW_ENUM_SYMBOL_in_data_type12890);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ENUM_SYMBOL2624_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ENUM_SYMBOL2624));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ENUM_SYMBOL2624_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_list_in_data_type12892);
        	        string_list2625=string_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_list2625.tree);

        	    }
        	    break;
        	case 31:
        	    // MySQL.g:2250:4: SET_SYMBOL string_list
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SET_SYMBOL2626 = (pANTLR3_COMMON_TOKEN) MATCHT(SET_SYMBOL, &FOLLOW_SET_SYMBOL_in_data_type12897);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SET_SYMBOL2626_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SET_SYMBOL2626));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SET_SYMBOL2626_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_list_in_data_type12899);
        	        string_list2627=string_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_list2627.tree);

        	    }
        	    break;
        	case 32:
        	    // MySQL.g:2251:4: SERIAL_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SERIAL_SYMBOL2628 = (pANTLR3_COMMON_TOKEN) MATCHT(SERIAL_SYMBOL, &FOLLOW_SERIAL_SYMBOL_in_data_type12904);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SERIAL_SYMBOL2628_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SERIAL_SYMBOL2628));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SERIAL_SYMBOL2628_tree);
        	        }

        	    }
        	    break;
        	case 33:
        	    // MySQL.g:2252:4: spatial_type
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_spatial_type_in_data_type12909);
        	        spatial_type2629=spatial_type(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, spatial_type2629.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruledata_typeEx; /* Prevent compiler warnings */
    ruledata_typeEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end data_type */

/**
 * $ANTLR start field_length
 * MySQL.g:2255:1: field_length : OPEN_PAR_SYMBOL INTEGER CLOSE_PAR_SYMBOL ;
 */
static MySQLParser_field_length_return
field_length(pMySQLParser ctx)
{
    MySQLParser_field_length_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2630;
    pANTLR3_COMMON_TOKEN    INTEGER2631;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2632;

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2630_tree;
    pANTLR3_BASE_TREE INTEGER2631_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2632_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL2630       = NULL;
    INTEGER2631       = NULL;
    CLOSE_PAR_SYMBOL2632       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL2630_tree   = NULL;
    INTEGER2631_tree   = NULL;
    CLOSE_PAR_SYMBOL2632_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2255:13: ( OPEN_PAR_SYMBOL INTEGER CLOSE_PAR_SYMBOL )
        // MySQL.g:2256:2: OPEN_PAR_SYMBOL INTEGER CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPEN_PAR_SYMBOL2630 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_field_length12918);
            if  (HASEXCEPTION())
            {
                goto rulefield_lengthEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL2630_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2630));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2630_tree);
            }

            INTEGER2631 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_field_length12920);
            if  (HASEXCEPTION())
            {
                goto rulefield_lengthEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            INTEGER2631_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER2631));
            ADAPTOR->addChild(ADAPTOR, root_0, INTEGER2631_tree);
            }

            CLOSE_PAR_SYMBOL2632 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_field_length12922);
            if  (HASEXCEPTION())
            {
                goto rulefield_lengthEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL2632_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2632));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2632_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulefield_lengthEx; /* Prevent compiler warnings */
    rulefield_lengthEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end field_length */

/**
 * $ANTLR start field_options
 * MySQL.g:2259:1: field_options : ( SIGNED_SYMBOL | UNSIGNED_SYMBOL | ZEROFILL_SYMBOL )+ ;
 */
static MySQLParser_field_options_return
field_options(pMySQLParser ctx)
{
    MySQLParser_field_options_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set2633;

    pANTLR3_BASE_TREE set2633_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2633       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2633_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2259:14: ( ( SIGNED_SYMBOL | UNSIGNED_SYMBOL | ZEROFILL_SYMBOL )+ )
        // MySQL.g:2260:2: ( SIGNED_SYMBOL | UNSIGNED_SYMBOL | ZEROFILL_SYMBOL )+
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:2260:2: ( SIGNED_SYMBOL | UNSIGNED_SYMBOL | ZEROFILL_SYMBOL )+
            {
                int cnt706=0;

                for (;;)
                {
                    int alt706=2;
            	switch ( LA(1) )
            	{
            	case SIGNED_SYMBOL:
            	case UNSIGNED_SYMBOL:
            	case ZEROFILL_SYMBOL:
            		{
            			alt706=1;
            		}
            	    break;

            	}

            	switch (alt706)
            	{
            	    case 1:
            	        // MySQL.g:
            	        {
            	            set2633=(pANTLR3_COMMON_TOKEN)LT(1);

            	            if ( LA(1) == SIGNED_SYMBOL || LA(1) == UNSIGNED_SYMBOL || LA(1) == ZEROFILL_SYMBOL )
            	            {
            	                CONSUME();
            	                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2633))
            	                );
            	                PERRORRECOVERY=ANTLR3_FALSE;
            	                FAILEDFLAG=ANTLR3_FALSE;

            	            }
            	            else
            	            {
            	                if (BACKTRACKING>0)
            	                {
            	                    FAILEDFLAG = ANTLR3_TRUE;
            	                    return retval;
            	                }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	                EXCEPTION->expectingSet = NULL;

            	                goto rulefield_optionsEx;
            	            }


            	        }
            	        break;

            	    default:

            		if ( cnt706 >= 1 )
            		{
            		    goto loop706;
            		}
            		if (BACKTRACKING>0)
            		{
            		    FAILEDFLAG = ANTLR3_TRUE;
            		    return retval;
            		}

            		/* mismatchedSetEx()
            		 */
            		CONSTRUCTEX();
            		EXCEPTION->type = ANTLR3_EARLY_EXIT_EXCEPTION;
            		EXCEPTION->name = (void *)ANTLR3_EARLY_EXIT_NAME;


            		goto rulefield_optionsEx;
            	}
            	cnt706++;
                }
                loop706: ;	/* Jump to here if this rule does not match */
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulefield_optionsEx; /* Prevent compiler warnings */
    rulefield_optionsEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end field_options */

/**
 * $ANTLR start type_datetime_precision
 * MySQL.g:2263:1: type_datetime_precision :{...}? => OPEN_PAR_SYMBOL INTEGER CLOSE_PAR_SYMBOL ;
 */
static MySQLParser_type_datetime_precision_return
type_datetime_precision(pMySQLParser ctx)
{
    MySQLParser_type_datetime_precision_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2634;
    pANTLR3_COMMON_TOKEN    INTEGER2635;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2636;

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2634_tree;
    pANTLR3_BASE_TREE INTEGER2635_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2636_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL2634       = NULL;
    INTEGER2635       = NULL;
    CLOSE_PAR_SYMBOL2636       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL2634_tree   = NULL;
    INTEGER2635_tree   = NULL;
    CLOSE_PAR_SYMBOL2636_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2263:24: ({...}? => OPEN_PAR_SYMBOL INTEGER CLOSE_PAR_SYMBOL )
        // MySQL.g:2264:2: {...}? => OPEN_PAR_SYMBOL INTEGER CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            if ( !((SERVER_VERSION >= 50600)) )
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
                    EXCEPTION->message      = (void *)"SERVER_VERSION >= 50600";
                    EXCEPTION->ruleName	 = (void *)"type_datetime_precision";


            }

            OPEN_PAR_SYMBOL2634 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_type_datetime_precision12955);
            if  (HASEXCEPTION())
            {
                goto ruletype_datetime_precisionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL2634_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2634));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2634_tree);
            }

            INTEGER2635 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_type_datetime_precision12957);
            if  (HASEXCEPTION())
            {
                goto ruletype_datetime_precisionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            INTEGER2635_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER2635));
            ADAPTOR->addChild(ADAPTOR, root_0, INTEGER2635_tree);
            }

            CLOSE_PAR_SYMBOL2636 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_type_datetime_precision12959);
            if  (HASEXCEPTION())
            {
                goto ruletype_datetime_precisionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL2636_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2636));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2636_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruletype_datetime_precisionEx; /* Prevent compiler warnings */
    ruletype_datetime_precisionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end type_datetime_precision */

/**
 * $ANTLR start charset_name
 * MySQL.g:2267:1: charset_name : ( text_or_identifier | BINARY_SYMBOL );
 */
static MySQLParser_charset_name_return
charset_name(pMySQLParser ctx)
{
    MySQLParser_charset_name_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2638;
    MySQLParser_text_or_identifier_return text_or_identifier2637;
    #undef	RETURN_TYPE_text_or_identifier2637
    #define	RETURN_TYPE_text_or_identifier2637 MySQLParser_text_or_identifier_return

    pANTLR3_BASE_TREE BINARY_SYMBOL2638_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    BINARY_SYMBOL2638       = NULL;
    text_or_identifier2637.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    BINARY_SYMBOL2638_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2267:13: ( text_or_identifier | BINARY_SYMBOL )

            ANTLR3_UINT32 alt707;

            alt707=2;

            {
                int LA707_0 = LA(1);
                if ( (LA707_0 == NCHAR_TEXT || LA707_0 == SINGLE_QUOTED_TEXT || LA707_0 == UNDERSCORE_CHARSET))
                {
                    alt707=1;
                }
                else if ( ((((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)))||((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))) && (LA707_0 == DOUBLE_QUOTED_TEXT))
                {
                    alt707=1;
                }
                else if ( (((LA707_0 >= ACTION_SYMBOL) && (LA707_0 <= ADDDATE_SYMBOL)) || ((LA707_0 >= AFTER_SYMBOL) && (LA707_0 <= ALGORITHM_SYMBOL)) || LA707_0 == ANALYZE_SYMBOL || ((LA707_0 >= ANY_SYMBOL) && (LA707_0 <= ASCII_SYMBOL)) || ((LA707_0 >= AT_SYMBOL) && (LA707_0 <= BACKUP_SYMBOL)) || LA707_0 == BACK_TICK_QUOTED_ID || LA707_0 == BEGIN_SYMBOL || LA707_0 == BINLOG_SYMBOL || LA707_0 == BIT_SYMBOL || ((LA707_0 >= BLOCK_SYMBOL) && (LA707_0 <= BOOL_SYMBOL)) || ((LA707_0 >= BTREE_SYMBOL) && (LA707_0 <= BYTE_SYMBOL)) || LA707_0 == CACHE_SYMBOL || LA707_0 == CASCADED_SYMBOL || ((LA707_0 >= CATALOG_NAME_SYMBOL) && (LA707_0 <= CHANGED_SYMBOL)) || LA707_0 == CHARSET_SYMBOL || LA707_0 == CHECKSUM_SYMBOL || ((LA707_0 >= CIPHER_SYMBOL) && (LA707_0 <= CLIENT_SYMBOL)) || ((LA707_0 >= CLOSE_SYMBOL) && (LA707_0 <= CODE_SYMBOL)) || LA707_0 == COLLATION_SYMBOL || ((LA707_0 >= COLUMNS_SYMBOL) && (LA707_0 <= COLUMN_NAME_SYMBOL)) || ((LA707_0 >= COMMENT_SYMBOL) && (LA707_0 <= COMPRESSED_SYMBOL)) || LA707_0 == CONCURRENT_SYMBOL || ((LA707_0 >= CONNECTION_SYMBOL) && (LA707_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA707_0 >= CONTAINS_SYMBOL) && (LA707_0 <= CONTEXT_SYMBOL)) || LA707_0 == CONTRIBUTORS_SYMBOL || LA707_0 == CPU_SYMBOL || LA707_0 == CUBE_SYMBOL || LA707_0 == CURRENT_SYMBOL || LA707_0 == CURSOR_NAME_SYMBOL || ((LA707_0 >= DATAFILE_SYMBOL) && (LA707_0 <= DATETIME_SYMBOL)) || LA707_0 == DATE_SYMBOL || ((LA707_0 >= DAY_SYMBOL) && (LA707_0 <= DEALLOCATE_SYMBOL)) || LA707_0 == DEFAULT_AUTH_SYMBOL || LA707_0 == DEFINER_SYMBOL || LA707_0 == DELAY_KEY_WRITE_SYMBOL || LA707_0 == DES_KEY_FILE_SYMBOL || LA707_0 == DIAGNOSTICS_SYMBOL || ((LA707_0 >= DIRECTORY_SYMBOL) && (LA707_0 <= DISK_SYMBOL)) || LA707_0 == DO_SYMBOL || ((LA707_0 >= DUMPFILE_SYMBOL) && (LA707_0 <= DYNAMIC_SYMBOL)) || LA707_0 == ENABLE_SYMBOL || LA707_0 == ENDS_SYMBOL || ((LA707_0 >= END_SYMBOL) && (LA707_0 <= ENUM_SYMBOL)) || ((LA707_0 >= ERRORS_SYMBOL) && (LA707_0 <= ERROR_SYMBOL)) || ((LA707_0 >= ESCAPE_SYMBOL) && (LA707_0 <= EVERY_SYMBOL)) || LA707_0 == EXECUTE_SYMBOL || LA707_0 == EXPANSION_SYMBOL || LA707_0 == EXPORT_SYMBOL || ((LA707_0 >= EXTENDED_SYMBOL) && (LA707_0 <= EXTENT_SIZE_SYMBOL)) || ((LA707_0 >= FAST_SYMBOL) && (LA707_0 <= FAULTS_SYMBOL)) || ((LA707_0 >= FILE_SYMBOL) && (LA707_0 <= FIXED_SYMBOL)) || LA707_0 == FLUSH_SYMBOL || LA707_0 == FORMAT_SYMBOL || LA707_0 == FOUND_SYMBOL || LA707_0 == FULL_SYMBOL || ((LA707_0 >= FUNCTION_SYMBOL) && (LA707_0 <= GET_FORMAT_SYMBOL)) || ((LA707_0 >= GLOBAL_SYMBOL) && (LA707_0 <= GRANTS_SYMBOL)) || ((LA707_0 >= HANDLER_SYMBOL) && (LA707_0 <= HASH_SYMBOL)) || LA707_0 == HELP_SYMBOL || ((LA707_0 >= HOSTS_SYMBOL) && (LA707_0 <= HOST_SYMBOL)) || ((LA707_0 >= HOUR_SYMBOL) && (LA707_0 <= IDENTIFIER)) || LA707_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA707_0 >= IMPORT_SYMBOL) && (LA707_0 <= INDEXES_SYMBOL)) || LA707_0 == INITIAL_SIZE_SYMBOL || LA707_0 == INNODB_SYMBOL || LA707_0 == INSERT_METHOD_SYMBOL || LA707_0 == INSTALL_SYMBOL || LA707_0 == INVOKER_SYMBOL || LA707_0 == IO_SYMBOL || ((LA707_0 >= IPC_SYMBOL) && (LA707_0 <= ISSUER_SYMBOL)) || LA707_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA707_0 >= LANGUAGE_SYMBOL) && (LA707_0 <= LAST_SYMBOL)) || LA707_0 == LEAVES_SYMBOL || LA707_0 == LESS_SYMBOL || LA707_0 == LEVEL_SYMBOL || LA707_0 == LINESTRING_SYMBOL || LA707_0 == LIST_SYMBOL || LA707_0 == LOCAL_SYMBOL || LA707_0 == LOCKS_SYMBOL || LA707_0 == LOGFILE_SYMBOL || LA707_0 == LOGS_SYMBOL || LA707_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA707_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA707_0 <= MASTER_SSL_SYMBOL)) || ((LA707_0 >= MASTER_SYMBOL) && (LA707_0 <= MASTER_USER_SYMBOL)) || ((LA707_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA707_0 <= MAX_SIZE_SYMBOL)) || ((LA707_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA707_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA707_0 >= MEDIUM_SYMBOL) && (LA707_0 <= MICROSECOND_SYMBOL)) || LA707_0 == MIGRATE_SYMBOL || ((LA707_0 >= MINUTE_SYMBOL) && (LA707_0 <= MIN_ROWS_SYMBOL)) || LA707_0 == MODE_SYMBOL || LA707_0 == MODIFY_SYMBOL || ((LA707_0 >= MONTH_SYMBOL) && (LA707_0 <= MULTILINESTRING_SYMBOL)) || ((LA707_0 >= MULTIPOINT_SYMBOL) && (LA707_0 <= MULTIPOLYGON_SYMBOL)) || ((LA707_0 >= MUTEX_SYMBOL) && (LA707_0 <= NATIONAL_SYMBOL)) || LA707_0 == NCHAR_SYMBOL || LA707_0 == NDBCLUSTER_SYMBOL || ((LA707_0 >= NEW_SYMBOL) && (LA707_0 <= NONE_SYMBOL)) || ((LA707_0 >= NO_SYMBOL) && (LA707_0 <= NO_WAIT_SYMBOL)) || LA707_0 == NUMBER_SYMBOL || LA707_0 == NVARCHAR_SYMBOL || ((LA707_0 >= OFFSET_SYMBOL) && (LA707_0 <= ONE_SYMBOL)) || LA707_0 == OPEN_SYMBOL || LA707_0 == OPTIONS_SYMBOL || ((LA707_0 >= OWNER_SYMBOL) && (LA707_0 <= PAGE_SYMBOL)) || ((LA707_0 >= PARSER_SYMBOL) && (LA707_0 <= PARTITION_SYMBOL)) || ((LA707_0 >= PASSWORD_SYMBOL) && (LA707_0 <= PLUGIN_SYMBOL)) || ((LA707_0 >= POINT_SYMBOL) && (LA707_0 <= PORT_SYMBOL)) || ((LA707_0 >= PREPARE_SYMBOL) && (LA707_0 <= PREV_SYMBOL)) || LA707_0 == PRIVILEGES_SYMBOL || ((LA707_0 >= PROCESSLIST_SYMBOL) && (LA707_0 <= PROXY_SYMBOL)) || ((LA707_0 >= QUARTER_SYMBOL) && (LA707_0 <= QUICK_SYMBOL)) || LA707_0 == READ_ONLY_SYMBOL || ((LA707_0 >= REBUILD_SYMBOL) && (LA707_0 <= REDUNDANT_SYMBOL)) || ((LA707_0 >= RELAYLOG_SYMBOL) && (LA707_0 <= RELAY_THREAD_SYMBOL)) || ((LA707_0 >= RELOAD_SYMBOL) && (LA707_0 <= REMOVE_SYMBOL)) || ((LA707_0 >= REORGANIZE_SYMBOL) && (LA707_0 <= REPEATABLE_SYMBOL)) || LA707_0 == REPLICATION_SYMBOL || LA707_0 == RESET_SYMBOL || LA707_0 == RESTORE_SYMBOL || ((LA707_0 >= RESUME_SYMBOL) && (LA707_0 <= RETURNS_SYMBOL)) || LA707_0 == REVERSE_SYMBOL || ((LA707_0 >= ROLLBACK_SYMBOL) && (LA707_0 <= SCHEDULE_SYMBOL)) || LA707_0 == SCHEMA_NAME_SYMBOL || ((LA707_0 >= SECOND_SYMBOL) && (LA707_0 <= SECURITY_SYMBOL)) || ((LA707_0 >= SERIALIZABLE_SYMBOL) && (LA707_0 <= SERIAL_SYMBOL)) || ((LA707_0 >= SERVER_SYMBOL) && (LA707_0 <= SESSION_SYMBOL)) || LA707_0 == SHARE_SYMBOL || LA707_0 == SHUTDOWN_SYMBOL || ((LA707_0 >= SIGNED_SYMBOL) && (LA707_0 <= SIMPLE_SYMBOL)) || ((LA707_0 >= SLAVE_SYMBOL) && (LA707_0 <= SLOW_SYMBOL)) || ((LA707_0 >= SNAPSHOT_SYMBOL) && (LA707_0 <= SOURCE_SYMBOL)) || ((LA707_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA707_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA707_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA707_0 <= SQL_CACHE_SYMBOL)) || LA707_0 == SQL_NO_CACHE_SYMBOL || LA707_0 == SQL_THREAD_SYMBOL || ((LA707_0 >= STARTS_SYMBOL) && (LA707_0 <= STATUS_SYMBOL)) || ((LA707_0 >= STOP_SYMBOL) && (LA707_0 <= STORAGE_SYMBOL)) || ((LA707_0 >= STRING_SYMBOL) && (LA707_0 <= SUBPARTITION_SYMBOL)) || ((LA707_0 >= SUPER_SYMBOL) && (LA707_0 <= SWITCHES_SYMBOL)) || ((LA707_0 >= TABLESPACE_SYMBOL) && (LA707_0 <= TABLE_NAME_SYMBOL)) || ((LA707_0 >= TEMPORARY_SYMBOL) && (LA707_0 <= TEMPTABLE_SYMBOL)) || ((LA707_0 >= TEXT_SYMBOL) && (LA707_0 <= THAN_SYMBOL)) || ((LA707_0 >= TIMESTAMP_ADD_SYMBOL) && (LA707_0 <= TIME_SYMBOL)) || ((LA707_0 >= TRANSACTION_SYMBOL) && (LA707_0 <= TRIGGERS_SYMBOL)) || ((LA707_0 >= TRUNCATE_SYMBOL) && (LA707_0 <= UDF_RETURNS_SYMBOL)) || ((LA707_0 >= UNCOMMITTED_SYMBOL) && (LA707_0 <= UNDEFINED_SYMBOL)) || ((LA707_0 >= UNDOFILE_SYMBOL) && (LA707_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA707_0 >= UNICODE_SYMBOL) && (LA707_0 <= UNINSTALL_SYMBOL)) || LA707_0 == UNKNOWN_SYMBOL || LA707_0 == UNTIL_SYMBOL || LA707_0 == UPGRADE_SYMBOL || ((LA707_0 >= USER_RESOURCES_SYMBOL) && (LA707_0 <= USE_FRM_SYMBOL)) || LA707_0 == VALUE_SYMBOL || LA707_0 == VARIABLES_SYMBOL || ((LA707_0 >= VIEW_SYMBOL) && (LA707_0 <= WEIGHT_STRING_SYMBOL)) || ((LA707_0 >= WORK_SYMBOL) && (LA707_0 <= WRAPPER_SYMBOL)) || LA707_0 == X509_SYMBOL || ((LA707_0 >= XA_SYMBOL) && (LA707_0 <= XML_SYMBOL)) || LA707_0 == YEAR_SYMBOL))
                {
                    alt707=1;
                }
                else if ( (LA707_0 == BINARY_SYMBOL))
                {
                    alt707=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 707;
                    EXCEPTION->state        = 0;


                    goto rulecharset_nameEx;

                }
            }
            switch (alt707)
            {
        	case 1:
        	    // MySQL.g:2268:2: text_or_identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_text_or_identifier_in_charset_name12968);
        	        text_or_identifier2637=text_or_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecharset_nameEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_identifier2637.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2269:4: BINARY_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BINARY_SYMBOL2638 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_charset_name12973);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecharset_nameEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BINARY_SYMBOL2638_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2638));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2638_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulecharset_nameEx; /* Prevent compiler warnings */
    rulecharset_nameEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end charset_name */

/**
 * $ANTLR start charset_name_or_default
 * MySQL.g:2272:1: charset_name_or_default : ( charset | DEFAULT_SYMBOL );
 */
static MySQLParser_charset_name_or_default_return
charset_name_or_default(pMySQLParser ctx)
{
    MySQLParser_charset_name_or_default_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL2640;
    MySQLParser_charset_return charset2639;
    #undef	RETURN_TYPE_charset2639
    #define	RETURN_TYPE_charset2639 MySQLParser_charset_return

    pANTLR3_BASE_TREE DEFAULT_SYMBOL2640_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DEFAULT_SYMBOL2640       = NULL;
    charset2639.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DEFAULT_SYMBOL2640_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2272:24: ( charset | DEFAULT_SYMBOL )

            ANTLR3_UINT32 alt708;

            alt708=2;

            switch ( LA(1) )
            {
            case CHARSET_SYMBOL:
            case CHAR_SYMBOL:
            	{
            		alt708=1;
            	}
                break;
            case DEFAULT_SYMBOL:
            	{
            		alt708=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 708;
                EXCEPTION->state        = 0;


                goto rulecharset_name_or_defaultEx;

            }

            switch (alt708)
            {
        	case 1:
        	    // MySQL.g:2273:2: charset
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_charset_in_charset_name_or_default12982);
        	        charset2639=charset(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecharset_name_or_defaultEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset2639.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2274:4: DEFAULT_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DEFAULT_SYMBOL2640 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_charset_name_or_default12987);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecharset_name_or_defaultEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DEFAULT_SYMBOL2640_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL2640));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL2640_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulecharset_name_or_defaultEx; /* Prevent compiler warnings */
    rulecharset_name_or_defaultEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end charset_name_or_default */

/**
 * $ANTLR start collation_name_or_default
 * MySQL.g:2277:1: collation_name_or_default : ( text_or_identifier | DEFAULT_SYMBOL );
 */
static MySQLParser_collation_name_or_default_return
collation_name_or_default(pMySQLParser ctx)
{
    MySQLParser_collation_name_or_default_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL2642;
    MySQLParser_text_or_identifier_return text_or_identifier2641;
    #undef	RETURN_TYPE_text_or_identifier2641
    #define	RETURN_TYPE_text_or_identifier2641 MySQLParser_text_or_identifier_return

    pANTLR3_BASE_TREE DEFAULT_SYMBOL2642_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DEFAULT_SYMBOL2642       = NULL;
    text_or_identifier2641.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DEFAULT_SYMBOL2642_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2277:26: ( text_or_identifier | DEFAULT_SYMBOL )

            ANTLR3_UINT32 alt709;

            alt709=2;

            {
                int LA709_0 = LA(1);
                if ( (LA709_0 == NCHAR_TEXT || LA709_0 == SINGLE_QUOTED_TEXT || LA709_0 == UNDERSCORE_CHARSET))
                {
                    alt709=1;
                }
                else if ( ((((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)))||((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))) && (LA709_0 == DOUBLE_QUOTED_TEXT))
                {
                    alt709=1;
                }
                else if ( (((LA709_0 >= ACTION_SYMBOL) && (LA709_0 <= ADDDATE_SYMBOL)) || ((LA709_0 >= AFTER_SYMBOL) && (LA709_0 <= ALGORITHM_SYMBOL)) || LA709_0 == ANALYZE_SYMBOL || ((LA709_0 >= ANY_SYMBOL) && (LA709_0 <= ASCII_SYMBOL)) || ((LA709_0 >= AT_SYMBOL) && (LA709_0 <= BACKUP_SYMBOL)) || LA709_0 == BACK_TICK_QUOTED_ID || LA709_0 == BEGIN_SYMBOL || LA709_0 == BINLOG_SYMBOL || LA709_0 == BIT_SYMBOL || ((LA709_0 >= BLOCK_SYMBOL) && (LA709_0 <= BOOL_SYMBOL)) || ((LA709_0 >= BTREE_SYMBOL) && (LA709_0 <= BYTE_SYMBOL)) || LA709_0 == CACHE_SYMBOL || LA709_0 == CASCADED_SYMBOL || ((LA709_0 >= CATALOG_NAME_SYMBOL) && (LA709_0 <= CHANGED_SYMBOL)) || LA709_0 == CHARSET_SYMBOL || LA709_0 == CHECKSUM_SYMBOL || ((LA709_0 >= CIPHER_SYMBOL) && (LA709_0 <= CLIENT_SYMBOL)) || ((LA709_0 >= CLOSE_SYMBOL) && (LA709_0 <= CODE_SYMBOL)) || LA709_0 == COLLATION_SYMBOL || ((LA709_0 >= COLUMNS_SYMBOL) && (LA709_0 <= COLUMN_NAME_SYMBOL)) || ((LA709_0 >= COMMENT_SYMBOL) && (LA709_0 <= COMPRESSED_SYMBOL)) || LA709_0 == CONCURRENT_SYMBOL || ((LA709_0 >= CONNECTION_SYMBOL) && (LA709_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA709_0 >= CONTAINS_SYMBOL) && (LA709_0 <= CONTEXT_SYMBOL)) || LA709_0 == CONTRIBUTORS_SYMBOL || LA709_0 == CPU_SYMBOL || LA709_0 == CUBE_SYMBOL || LA709_0 == CURRENT_SYMBOL || LA709_0 == CURSOR_NAME_SYMBOL || ((LA709_0 >= DATAFILE_SYMBOL) && (LA709_0 <= DATETIME_SYMBOL)) || LA709_0 == DATE_SYMBOL || ((LA709_0 >= DAY_SYMBOL) && (LA709_0 <= DEALLOCATE_SYMBOL)) || LA709_0 == DEFAULT_AUTH_SYMBOL || LA709_0 == DEFINER_SYMBOL || LA709_0 == DELAY_KEY_WRITE_SYMBOL || LA709_0 == DES_KEY_FILE_SYMBOL || LA709_0 == DIAGNOSTICS_SYMBOL || ((LA709_0 >= DIRECTORY_SYMBOL) && (LA709_0 <= DISK_SYMBOL)) || LA709_0 == DO_SYMBOL || ((LA709_0 >= DUMPFILE_SYMBOL) && (LA709_0 <= DYNAMIC_SYMBOL)) || LA709_0 == ENABLE_SYMBOL || LA709_0 == ENDS_SYMBOL || ((LA709_0 >= END_SYMBOL) && (LA709_0 <= ENUM_SYMBOL)) || ((LA709_0 >= ERRORS_SYMBOL) && (LA709_0 <= ERROR_SYMBOL)) || ((LA709_0 >= ESCAPE_SYMBOL) && (LA709_0 <= EVERY_SYMBOL)) || LA709_0 == EXECUTE_SYMBOL || LA709_0 == EXPANSION_SYMBOL || LA709_0 == EXPORT_SYMBOL || ((LA709_0 >= EXTENDED_SYMBOL) && (LA709_0 <= EXTENT_SIZE_SYMBOL)) || ((LA709_0 >= FAST_SYMBOL) && (LA709_0 <= FAULTS_SYMBOL)) || ((LA709_0 >= FILE_SYMBOL) && (LA709_0 <= FIXED_SYMBOL)) || LA709_0 == FLUSH_SYMBOL || LA709_0 == FORMAT_SYMBOL || LA709_0 == FOUND_SYMBOL || LA709_0 == FULL_SYMBOL || ((LA709_0 >= FUNCTION_SYMBOL) && (LA709_0 <= GET_FORMAT_SYMBOL)) || ((LA709_0 >= GLOBAL_SYMBOL) && (LA709_0 <= GRANTS_SYMBOL)) || ((LA709_0 >= HANDLER_SYMBOL) && (LA709_0 <= HASH_SYMBOL)) || LA709_0 == HELP_SYMBOL || ((LA709_0 >= HOSTS_SYMBOL) && (LA709_0 <= HOST_SYMBOL)) || ((LA709_0 >= HOUR_SYMBOL) && (LA709_0 <= IDENTIFIER)) || LA709_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA709_0 >= IMPORT_SYMBOL) && (LA709_0 <= INDEXES_SYMBOL)) || LA709_0 == INITIAL_SIZE_SYMBOL || LA709_0 == INNODB_SYMBOL || LA709_0 == INSERT_METHOD_SYMBOL || LA709_0 == INSTALL_SYMBOL || LA709_0 == INVOKER_SYMBOL || LA709_0 == IO_SYMBOL || ((LA709_0 >= IPC_SYMBOL) && (LA709_0 <= ISSUER_SYMBOL)) || LA709_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA709_0 >= LANGUAGE_SYMBOL) && (LA709_0 <= LAST_SYMBOL)) || LA709_0 == LEAVES_SYMBOL || LA709_0 == LESS_SYMBOL || LA709_0 == LEVEL_SYMBOL || LA709_0 == LINESTRING_SYMBOL || LA709_0 == LIST_SYMBOL || LA709_0 == LOCAL_SYMBOL || LA709_0 == LOCKS_SYMBOL || LA709_0 == LOGFILE_SYMBOL || LA709_0 == LOGS_SYMBOL || LA709_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA709_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA709_0 <= MASTER_SSL_SYMBOL)) || ((LA709_0 >= MASTER_SYMBOL) && (LA709_0 <= MASTER_USER_SYMBOL)) || ((LA709_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA709_0 <= MAX_SIZE_SYMBOL)) || ((LA709_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA709_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA709_0 >= MEDIUM_SYMBOL) && (LA709_0 <= MICROSECOND_SYMBOL)) || LA709_0 == MIGRATE_SYMBOL || ((LA709_0 >= MINUTE_SYMBOL) && (LA709_0 <= MIN_ROWS_SYMBOL)) || LA709_0 == MODE_SYMBOL || LA709_0 == MODIFY_SYMBOL || ((LA709_0 >= MONTH_SYMBOL) && (LA709_0 <= MULTILINESTRING_SYMBOL)) || ((LA709_0 >= MULTIPOINT_SYMBOL) && (LA709_0 <= MULTIPOLYGON_SYMBOL)) || ((LA709_0 >= MUTEX_SYMBOL) && (LA709_0 <= NATIONAL_SYMBOL)) || LA709_0 == NCHAR_SYMBOL || LA709_0 == NDBCLUSTER_SYMBOL || ((LA709_0 >= NEW_SYMBOL) && (LA709_0 <= NONE_SYMBOL)) || ((LA709_0 >= NO_SYMBOL) && (LA709_0 <= NO_WAIT_SYMBOL)) || LA709_0 == NUMBER_SYMBOL || LA709_0 == NVARCHAR_SYMBOL || ((LA709_0 >= OFFSET_SYMBOL) && (LA709_0 <= ONE_SYMBOL)) || LA709_0 == OPEN_SYMBOL || LA709_0 == OPTIONS_SYMBOL || ((LA709_0 >= OWNER_SYMBOL) && (LA709_0 <= PAGE_SYMBOL)) || ((LA709_0 >= PARSER_SYMBOL) && (LA709_0 <= PARTITION_SYMBOL)) || ((LA709_0 >= PASSWORD_SYMBOL) && (LA709_0 <= PLUGIN_SYMBOL)) || ((LA709_0 >= POINT_SYMBOL) && (LA709_0 <= PORT_SYMBOL)) || ((LA709_0 >= PREPARE_SYMBOL) && (LA709_0 <= PREV_SYMBOL)) || LA709_0 == PRIVILEGES_SYMBOL || ((LA709_0 >= PROCESSLIST_SYMBOL) && (LA709_0 <= PROXY_SYMBOL)) || ((LA709_0 >= QUARTER_SYMBOL) && (LA709_0 <= QUICK_SYMBOL)) || LA709_0 == READ_ONLY_SYMBOL || ((LA709_0 >= REBUILD_SYMBOL) && (LA709_0 <= REDUNDANT_SYMBOL)) || ((LA709_0 >= RELAYLOG_SYMBOL) && (LA709_0 <= RELAY_THREAD_SYMBOL)) || ((LA709_0 >= RELOAD_SYMBOL) && (LA709_0 <= REMOVE_SYMBOL)) || ((LA709_0 >= REORGANIZE_SYMBOL) && (LA709_0 <= REPEATABLE_SYMBOL)) || LA709_0 == REPLICATION_SYMBOL || LA709_0 == RESET_SYMBOL || LA709_0 == RESTORE_SYMBOL || ((LA709_0 >= RESUME_SYMBOL) && (LA709_0 <= RETURNS_SYMBOL)) || LA709_0 == REVERSE_SYMBOL || ((LA709_0 >= ROLLBACK_SYMBOL) && (LA709_0 <= SCHEDULE_SYMBOL)) || LA709_0 == SCHEMA_NAME_SYMBOL || ((LA709_0 >= SECOND_SYMBOL) && (LA709_0 <= SECURITY_SYMBOL)) || ((LA709_0 >= SERIALIZABLE_SYMBOL) && (LA709_0 <= SERIAL_SYMBOL)) || ((LA709_0 >= SERVER_SYMBOL) && (LA709_0 <= SESSION_SYMBOL)) || LA709_0 == SHARE_SYMBOL || LA709_0 == SHUTDOWN_SYMBOL || ((LA709_0 >= SIGNED_SYMBOL) && (LA709_0 <= SIMPLE_SYMBOL)) || ((LA709_0 >= SLAVE_SYMBOL) && (LA709_0 <= SLOW_SYMBOL)) || ((LA709_0 >= SNAPSHOT_SYMBOL) && (LA709_0 <= SOURCE_SYMBOL)) || ((LA709_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA709_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA709_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA709_0 <= SQL_CACHE_SYMBOL)) || LA709_0 == SQL_NO_CACHE_SYMBOL || LA709_0 == SQL_THREAD_SYMBOL || ((LA709_0 >= STARTS_SYMBOL) && (LA709_0 <= STATUS_SYMBOL)) || ((LA709_0 >= STOP_SYMBOL) && (LA709_0 <= STORAGE_SYMBOL)) || ((LA709_0 >= STRING_SYMBOL) && (LA709_0 <= SUBPARTITION_SYMBOL)) || ((LA709_0 >= SUPER_SYMBOL) && (LA709_0 <= SWITCHES_SYMBOL)) || ((LA709_0 >= TABLESPACE_SYMBOL) && (LA709_0 <= TABLE_NAME_SYMBOL)) || ((LA709_0 >= TEMPORARY_SYMBOL) && (LA709_0 <= TEMPTABLE_SYMBOL)) || ((LA709_0 >= TEXT_SYMBOL) && (LA709_0 <= THAN_SYMBOL)) || ((LA709_0 >= TIMESTAMP_ADD_SYMBOL) && (LA709_0 <= TIME_SYMBOL)) || ((LA709_0 >= TRANSACTION_SYMBOL) && (LA709_0 <= TRIGGERS_SYMBOL)) || ((LA709_0 >= TRUNCATE_SYMBOL) && (LA709_0 <= UDF_RETURNS_SYMBOL)) || ((LA709_0 >= UNCOMMITTED_SYMBOL) && (LA709_0 <= UNDEFINED_SYMBOL)) || ((LA709_0 >= UNDOFILE_SYMBOL) && (LA709_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA709_0 >= UNICODE_SYMBOL) && (LA709_0 <= UNINSTALL_SYMBOL)) || LA709_0 == UNKNOWN_SYMBOL || LA709_0 == UNTIL_SYMBOL || LA709_0 == UPGRADE_SYMBOL || ((LA709_0 >= USER_RESOURCES_SYMBOL) && (LA709_0 <= USE_FRM_SYMBOL)) || LA709_0 == VALUE_SYMBOL || LA709_0 == VARIABLES_SYMBOL || ((LA709_0 >= VIEW_SYMBOL) && (LA709_0 <= WEIGHT_STRING_SYMBOL)) || ((LA709_0 >= WORK_SYMBOL) && (LA709_0 <= WRAPPER_SYMBOL)) || LA709_0 == X509_SYMBOL || ((LA709_0 >= XA_SYMBOL) && (LA709_0 <= XML_SYMBOL)) || LA709_0 == YEAR_SYMBOL))
                {
                    alt709=1;
                }
                else if ( (LA709_0 == DEFAULT_SYMBOL))
                {
                    alt709=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 709;
                    EXCEPTION->state        = 0;


                    goto rulecollation_name_or_defaultEx;

                }
            }
            switch (alt709)
            {
        	case 1:
        	    // MySQL.g:2278:2: text_or_identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_text_or_identifier_in_collation_name_or_default12996);
        	        text_or_identifier2641=text_or_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecollation_name_or_defaultEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_identifier2641.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2279:4: DEFAULT_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DEFAULT_SYMBOL2642 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_collation_name_or_default13001);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecollation_name_or_defaultEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DEFAULT_SYMBOL2642_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL2642));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL2642_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulecollation_name_or_defaultEx; /* Prevent compiler warnings */
    rulecollation_name_or_defaultEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end collation_name_or_default */

/**
 * $ANTLR start spatial_type
 * MySQL.g:2282:1: spatial_type : ( GEOMETRY_SYMBOL | GEOMETRYCOLLECTION_SYMBOL | POINT_SYMBOL | MULTIPOINT_SYMBOL | LINESTRING_SYMBOL | MULTILINESTRING_SYMBOL | POLYGON_SYMBOL | MULTIPOLYGON_SYMBOL );
 */
static MySQLParser_spatial_type_return
spatial_type(pMySQLParser ctx)
{
    MySQLParser_spatial_type_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set2643;

    pANTLR3_BASE_TREE set2643_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2643       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2643_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2282:13: ( GEOMETRY_SYMBOL | GEOMETRYCOLLECTION_SYMBOL | POINT_SYMBOL | MULTIPOINT_SYMBOL | LINESTRING_SYMBOL | MULTILINESTRING_SYMBOL | POLYGON_SYMBOL | MULTIPOLYGON_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set2643=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( ((LA(1) >= GEOMETRYCOLLECTION_SYMBOL) && (LA(1) <= GEOMETRY_SYMBOL)) || LA(1) == LINESTRING_SYMBOL || LA(1) == MULTILINESTRING_SYMBOL || ((LA(1) >= MULTIPOINT_SYMBOL) && (LA(1) <= MULTIPOLYGON_SYMBOL)) || ((LA(1) >= POINT_SYMBOL) && (LA(1) <= POLYGON_SYMBOL)) )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2643))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto rulespatial_typeEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto rulespatial_typeEx; /* Prevent compiler warnings */
    rulespatial_typeEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end spatial_type */

/**
 * $ANTLR start alter_table_options
 * MySQL.g:2293:1: alter_table_options : ( create_table_option )+ ;
 */
static MySQLParser_alter_table_options_return
alter_table_options(pMySQLParser ctx)
{
    MySQLParser_alter_table_options_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_create_table_option_return create_table_option2644;
    #undef	RETURN_TYPE_create_table_option2644
    #define	RETURN_TYPE_create_table_option2644 MySQLParser_create_table_option_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    create_table_option2644.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:2293:20: ( ( create_table_option )+ )
        // MySQL.g:2294:2: ( create_table_option )+
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:2294:2: ( create_table_option )+
            {
                int cnt710=0;

                for (;;)
                {
                    int alt710=2;
            	{
            	   /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
            	    */
            	    int LA710_0 = LA(1);
            	    if ( (LA710_0 == ENGINE_SYMBOL))
            	    {
            	        alt710=1;
            	    }
            	    else if ( ((SERVER_VERSION < 50500)) && (LA710_0 == TYPE_SYMBOL))
            	    {
            	        alt710=1;
            	    }
            	    else if ( (((LA710_0 >= AUTO_INCREMENT_SYMBOL) && (LA710_0 <= AVG_ROW_LENGTH_SYMBOL)) || LA710_0 == COMMENT_SYMBOL || LA710_0 == MAX_ROWS_SYMBOL || LA710_0 == MIN_ROWS_SYMBOL || LA710_0 == PACK_KEYS_SYMBOL || LA710_0 == PASSWORD_SYMBOL))
            	    {
            	        alt710=1;
            	    }
            	    else if ( ((SERVER_VERSION >= 50600)) && (((LA710_0 >= STATS_AUTO_RECALC_SYMBOL) && (LA710_0 <= STATS_SAMPLE_PAGES_SYMBOL))))
            	    {
            	        alt710=1;
            	    }
            	    else if ( (((LA710_0 >= CHARSET_SYMBOL) && (LA710_0 <= CHECKSUM_SYMBOL)) || LA710_0 == COLLATE_SYMBOL || LA710_0 == CONNECTION_SYMBOL || LA710_0 == DATA_SYMBOL || LA710_0 == DEFAULT_SYMBOL || LA710_0 == DELAY_KEY_WRITE_SYMBOL || LA710_0 == INDEX_SYMBOL || LA710_0 == INSERT_METHOD_SYMBOL || LA710_0 == KEY_BLOCK_SIZE_SYMBOL || LA710_0 == ROW_FORMAT_SYMBOL || LA710_0 == STORAGE_SYMBOL || LA710_0 == TABLESPACE_SYMBOL || LA710_0 == TABLE_CHECKSUM_SYMBOL || LA710_0 == UNION_SYMBOL))
            	    {
            	        alt710=1;
            	    }

            	}
            	switch (alt710)
            	{
            	    case 1:
            	        // MySQL.g:2294:2: create_table_option
            	        {
            	            FOLLOWPUSH(FOLLOW_create_table_option_in_alter_table_options13054);
            	            create_table_option2644=create_table_option(ctx);

            	            FOLLOWPOP();
            	            if  (HASEXCEPTION())
            	            {
            	                goto rulealter_table_optionsEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_table_option2644.tree);

            	        }
            	        break;

            	    default:

            		if ( cnt710 >= 1 )
            		{
            		    goto loop710;
            		}
            		if (BACKTRACKING>0)
            		{
            		    FAILEDFLAG = ANTLR3_TRUE;
            		    return retval;
            		}

            		/* mismatchedSetEx()
            		 */
            		CONSTRUCTEX();
            		EXCEPTION->type = ANTLR3_EARLY_EXIT_EXCEPTION;
            		EXCEPTION->name = (void *)ANTLR3_EARLY_EXIT_NAME;


            		goto rulealter_table_optionsEx;
            	}
            	cnt710++;
                }
                loop710: ;	/* Jump to here if this rule does not match */
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulealter_table_optionsEx; /* Prevent compiler warnings */
    rulealter_table_optionsEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end alter_table_options */

/**
 * $ANTLR start create_table_options
 * MySQL.g:2297:1: create_table_options : create_table_option ( ( COMMA_SYMBOL )? create_table_option )* ;
 */
static MySQLParser_create_table_options_return
create_table_options(pMySQLParser ctx)
{
    MySQLParser_create_table_options_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2646;
    MySQLParser_create_table_option_return create_table_option2645;
    #undef	RETURN_TYPE_create_table_option2645
    #define	RETURN_TYPE_create_table_option2645 MySQLParser_create_table_option_return

    MySQLParser_create_table_option_return create_table_option2647;
    #undef	RETURN_TYPE_create_table_option2647
    #define	RETURN_TYPE_create_table_option2647 MySQLParser_create_table_option_return

    pANTLR3_BASE_TREE COMMA_SYMBOL2646_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL2646       = NULL;
    create_table_option2645.tree = NULL;

    create_table_option2647.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL2646_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2297:21: ( create_table_option ( ( COMMA_SYMBOL )? create_table_option )* )
        // MySQL.g:2298:2: create_table_option ( ( COMMA_SYMBOL )? create_table_option )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_create_table_option_in_create_table_options13064);
            create_table_option2645=create_table_option(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_table_optionsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_table_option2645.tree);

            // MySQL.g:2298:22: ( ( COMMA_SYMBOL )? create_table_option )*

            for (;;)
            {
                int alt712=2;
                {
                   /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                    */
                    int LA712_0 = LA(1);
                    if ( (LA712_0 == COMMA_SYMBOL || LA712_0 == ENGINE_SYMBOL))
                    {
                        alt712=1;
                    }
                    else if ( ((SERVER_VERSION < 50500)) && (LA712_0 == TYPE_SYMBOL))
                    {
                        alt712=1;
                    }
                    else if ( (((LA712_0 >= AUTO_INCREMENT_SYMBOL) && (LA712_0 <= AVG_ROW_LENGTH_SYMBOL)) || LA712_0 == COMMENT_SYMBOL || LA712_0 == MAX_ROWS_SYMBOL || LA712_0 == MIN_ROWS_SYMBOL || LA712_0 == PACK_KEYS_SYMBOL || LA712_0 == PASSWORD_SYMBOL))
                    {
                        alt712=1;
                    }
                    else if ( ((SERVER_VERSION >= 50600)) && (((LA712_0 >= STATS_AUTO_RECALC_SYMBOL) && (LA712_0 <= STATS_SAMPLE_PAGES_SYMBOL))))
                    {
                        alt712=1;
                    }
                    else if ( (((LA712_0 >= CHARSET_SYMBOL) && (LA712_0 <= CHECKSUM_SYMBOL)) || LA712_0 == COLLATE_SYMBOL || LA712_0 == CONNECTION_SYMBOL || LA712_0 == DATA_SYMBOL || LA712_0 == DEFAULT_SYMBOL || LA712_0 == DELAY_KEY_WRITE_SYMBOL || LA712_0 == INDEX_SYMBOL || LA712_0 == INSERT_METHOD_SYMBOL || LA712_0 == KEY_BLOCK_SIZE_SYMBOL || LA712_0 == ROW_FORMAT_SYMBOL || LA712_0 == STORAGE_SYMBOL || LA712_0 == TABLESPACE_SYMBOL || LA712_0 == TABLE_CHECKSUM_SYMBOL || LA712_0 == UNION_SYMBOL))
                    {
                        alt712=1;
                    }

                }
                switch (alt712)
                {
            	case 1:
            	    // MySQL.g:2298:23: ( COMMA_SYMBOL )? create_table_option
            	    {
            	        // MySQL.g:2298:23: ( COMMA_SYMBOL )?
            	        {
            	            int alt711=2;
            	            switch ( LA(1) )
            	            {
            	                case COMMA_SYMBOL:
            	                	{
            	                		alt711=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt711)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2298:23: COMMA_SYMBOL
            	        	    {
            	        	        COMMA_SYMBOL2646 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_create_table_options13067);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_table_optionsEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COMMA_SYMBOL2646_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2646));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2646_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_create_table_option_in_create_table_options13070);
            	        create_table_option2647=create_table_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_table_optionsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_table_option2647.tree);

            	    }
            	    break;

            	default:
            	    goto loop712;	/* break out of the loop */
            	    break;
                }
            }
            loop712: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto rulecreate_table_optionsEx; /* Prevent compiler warnings */
    rulecreate_table_optionsEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end create_table_options */

/**
 * $ANTLR start create_table_option
 * MySQL.g:2301:1: create_table_option : ( ( ENGINE_SYMBOL |{...}? => TYPE_SYMBOL ) ( EQUAL_OPERATOR )? text_or_identifier | MAX_ROWS_SYMBOL ( EQUAL_OPERATOR )? int_or_param_marker | MIN_ROWS_SYMBOL ( EQUAL_OPERATOR )? int_or_param_marker | AVG_ROW_LENGTH_SYMBOL ( EQUAL_OPERATOR )? int_or_param_marker | PASSWORD_SYMBOL ( EQUAL_OPERATOR )? text_or_param_marker | COMMENT_SYMBOL ( EQUAL_OPERATOR )? text_or_param_marker | AUTO_INCREMENT_SYMBOL ( EQUAL_OPERATOR )? int_or_param_marker | PACK_KEYS_SYMBOL ( EQUAL_OPERATOR )? ( DIGIT | DEFAULT_SYMBOL ) |{...}? => ( STATS_AUTO_RECALC_SYMBOL | STATS_PERSISTENT_SYMBOL | STATS_SAMPLE_PAGES_SYMBOL ) ( EQUAL_OPERATOR )? ( int_or_param_marker | DEFAULT_SYMBOL ) | ( CHECKSUM_SYMBOL | TABLE_CHECKSUM_SYMBOL ) ( EQUAL_OPERATOR )? DIGIT | DELAY_KEY_WRITE_SYMBOL ( EQUAL_OPERATOR )? DIGIT | ROW_FORMAT_SYMBOL ( EQUAL_OPERATOR )? ( DEFAULT_SYMBOL | DYNAMIC_SYMBOL | FIXED_SYMBOL | COMPRESSED_SYMBOL | REDUNDANT_SYMBOL | COMPACT_SYMBOL ) | UNION_SYMBOL ( EQUAL_OPERATOR )? OPEN_PAR_SYMBOL qualified_identifier_list CLOSE_PAR_SYMBOL | ( DEFAULT_SYMBOL )? ( COLLATE_SYMBOL ( EQUAL_OPERATOR )? collation_name_or_default | charset ( EQUAL_OPERATOR )? charset_name_or_default ) | INSERT_METHOD_SYMBOL ( EQUAL_OPERATOR )? ( NO_SYMBOL | FIRST_SYMBOL | LAST_SYMBOL ) | DATA_SYMBOL DIRECTORY_SYMBOL ( EQUAL_OPERATOR )? text_or_param_marker | INDEX_SYMBOL DIRECTORY_SYMBOL ( EQUAL_OPERATOR )? text_or_param_marker | TABLESPACE_SYMBOL identifier | STORAGE_SYMBOL ( DISK_SYMBOL | MEMORY_SYMBOL ) | CONNECTION_SYMBOL ( EQUAL_OPERATOR )? text_or_param_marker | KEY_BLOCK_SIZE_SYMBOL ( EQUAL_OPERATOR )? int_or_param_marker );
 */
static MySQLParser_create_table_option_return
create_table_option(pMySQLParser ctx)
{
    MySQLParser_create_table_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    ENGINE_SYMBOL2648;
    pANTLR3_COMMON_TOKEN    TYPE_SYMBOL2649;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2650;
    pANTLR3_COMMON_TOKEN    MAX_ROWS_SYMBOL2652;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2653;
    pANTLR3_COMMON_TOKEN    MIN_ROWS_SYMBOL2655;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2656;
    pANTLR3_COMMON_TOKEN    AVG_ROW_LENGTH_SYMBOL2658;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2659;
    pANTLR3_COMMON_TOKEN    PASSWORD_SYMBOL2661;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2662;
    pANTLR3_COMMON_TOKEN    COMMENT_SYMBOL2664;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2665;
    pANTLR3_COMMON_TOKEN    AUTO_INCREMENT_SYMBOL2667;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2668;
    pANTLR3_COMMON_TOKEN    PACK_KEYS_SYMBOL2670;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2671;
    pANTLR3_COMMON_TOKEN    set2672;
    pANTLR3_COMMON_TOKEN    set2673;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2674;
    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL2676;
    pANTLR3_COMMON_TOKEN    set2677;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2678;
    pANTLR3_COMMON_TOKEN    DIGIT2679;
    pANTLR3_COMMON_TOKEN    DELAY_KEY_WRITE_SYMBOL2680;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2681;
    pANTLR3_COMMON_TOKEN    DIGIT2682;
    pANTLR3_COMMON_TOKEN    ROW_FORMAT_SYMBOL2683;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2684;
    pANTLR3_COMMON_TOKEN    set2685;
    pANTLR3_COMMON_TOKEN    UNION_SYMBOL2686;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2687;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2688;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2690;
    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL2691;
    pANTLR3_COMMON_TOKEN    COLLATE_SYMBOL2692;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2693;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2696;
    pANTLR3_COMMON_TOKEN    INSERT_METHOD_SYMBOL2698;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2699;
    pANTLR3_COMMON_TOKEN    set2700;
    pANTLR3_COMMON_TOKEN    DATA_SYMBOL2701;
    pANTLR3_COMMON_TOKEN    DIRECTORY_SYMBOL2702;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2703;
    pANTLR3_COMMON_TOKEN    INDEX_SYMBOL2705;
    pANTLR3_COMMON_TOKEN    DIRECTORY_SYMBOL2706;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2707;
    pANTLR3_COMMON_TOKEN    TABLESPACE_SYMBOL2709;
    pANTLR3_COMMON_TOKEN    STORAGE_SYMBOL2711;
    pANTLR3_COMMON_TOKEN    set2712;
    pANTLR3_COMMON_TOKEN    CONNECTION_SYMBOL2713;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2714;
    pANTLR3_COMMON_TOKEN    KEY_BLOCK_SIZE_SYMBOL2716;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2717;
    MySQLParser_text_or_identifier_return text_or_identifier2651;
    #undef	RETURN_TYPE_text_or_identifier2651
    #define	RETURN_TYPE_text_or_identifier2651 MySQLParser_text_or_identifier_return

    MySQLParser_int_or_param_marker_return int_or_param_marker2654;
    #undef	RETURN_TYPE_int_or_param_marker2654
    #define	RETURN_TYPE_int_or_param_marker2654 MySQLParser_int_or_param_marker_return

    MySQLParser_int_or_param_marker_return int_or_param_marker2657;
    #undef	RETURN_TYPE_int_or_param_marker2657
    #define	RETURN_TYPE_int_or_param_marker2657 MySQLParser_int_or_param_marker_return

    MySQLParser_int_or_param_marker_return int_or_param_marker2660;
    #undef	RETURN_TYPE_int_or_param_marker2660
    #define	RETURN_TYPE_int_or_param_marker2660 MySQLParser_int_or_param_marker_return

    MySQLParser_text_or_param_marker_return text_or_param_marker2663;
    #undef	RETURN_TYPE_text_or_param_marker2663
    #define	RETURN_TYPE_text_or_param_marker2663 MySQLParser_text_or_param_marker_return

    MySQLParser_text_or_param_marker_return text_or_param_marker2666;
    #undef	RETURN_TYPE_text_or_param_marker2666
    #define	RETURN_TYPE_text_or_param_marker2666 MySQLParser_text_or_param_marker_return

    MySQLParser_int_or_param_marker_return int_or_param_marker2669;
    #undef	RETURN_TYPE_int_or_param_marker2669
    #define	RETURN_TYPE_int_or_param_marker2669 MySQLParser_int_or_param_marker_return

    MySQLParser_int_or_param_marker_return int_or_param_marker2675;
    #undef	RETURN_TYPE_int_or_param_marker2675
    #define	RETURN_TYPE_int_or_param_marker2675 MySQLParser_int_or_param_marker_return

    MySQLParser_qualified_identifier_list_return qualified_identifier_list2689;
    #undef	RETURN_TYPE_qualified_identifier_list2689
    #define	RETURN_TYPE_qualified_identifier_list2689 MySQLParser_qualified_identifier_list_return

    MySQLParser_collation_name_or_default_return collation_name_or_default2694;
    #undef	RETURN_TYPE_collation_name_or_default2694
    #define	RETURN_TYPE_collation_name_or_default2694 MySQLParser_collation_name_or_default_return

    MySQLParser_charset_return charset2695;
    #undef	RETURN_TYPE_charset2695
    #define	RETURN_TYPE_charset2695 MySQLParser_charset_return

    MySQLParser_charset_name_or_default_return charset_name_or_default2697;
    #undef	RETURN_TYPE_charset_name_or_default2697
    #define	RETURN_TYPE_charset_name_or_default2697 MySQLParser_charset_name_or_default_return

    MySQLParser_text_or_param_marker_return text_or_param_marker2704;
    #undef	RETURN_TYPE_text_or_param_marker2704
    #define	RETURN_TYPE_text_or_param_marker2704 MySQLParser_text_or_param_marker_return

    MySQLParser_text_or_param_marker_return text_or_param_marker2708;
    #undef	RETURN_TYPE_text_or_param_marker2708
    #define	RETURN_TYPE_text_or_param_marker2708 MySQLParser_text_or_param_marker_return

    MySQLParser_identifier_return identifier2710;
    #undef	RETURN_TYPE_identifier2710
    #define	RETURN_TYPE_identifier2710 MySQLParser_identifier_return

    MySQLParser_text_or_param_marker_return text_or_param_marker2715;
    #undef	RETURN_TYPE_text_or_param_marker2715
    #define	RETURN_TYPE_text_or_param_marker2715 MySQLParser_text_or_param_marker_return

    MySQLParser_int_or_param_marker_return int_or_param_marker2718;
    #undef	RETURN_TYPE_int_or_param_marker2718
    #define	RETURN_TYPE_int_or_param_marker2718 MySQLParser_int_or_param_marker_return

    pANTLR3_BASE_TREE ENGINE_SYMBOL2648_tree;
    pANTLR3_BASE_TREE TYPE_SYMBOL2649_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2650_tree;
    pANTLR3_BASE_TREE MAX_ROWS_SYMBOL2652_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2653_tree;
    pANTLR3_BASE_TREE MIN_ROWS_SYMBOL2655_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2656_tree;
    pANTLR3_BASE_TREE AVG_ROW_LENGTH_SYMBOL2658_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2659_tree;
    pANTLR3_BASE_TREE PASSWORD_SYMBOL2661_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2662_tree;
    pANTLR3_BASE_TREE COMMENT_SYMBOL2664_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2665_tree;
    pANTLR3_BASE_TREE AUTO_INCREMENT_SYMBOL2667_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2668_tree;
    pANTLR3_BASE_TREE PACK_KEYS_SYMBOL2670_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2671_tree;
    pANTLR3_BASE_TREE set2672_tree;
    pANTLR3_BASE_TREE set2673_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2674_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL2676_tree;
    pANTLR3_BASE_TREE set2677_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2678_tree;
    pANTLR3_BASE_TREE DIGIT2679_tree;
    pANTLR3_BASE_TREE DELAY_KEY_WRITE_SYMBOL2680_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2681_tree;
    pANTLR3_BASE_TREE DIGIT2682_tree;
    pANTLR3_BASE_TREE ROW_FORMAT_SYMBOL2683_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2684_tree;
    pANTLR3_BASE_TREE set2685_tree;
    pANTLR3_BASE_TREE UNION_SYMBOL2686_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2687_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2688_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2690_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL2691_tree;
    pANTLR3_BASE_TREE COLLATE_SYMBOL2692_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2693_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2696_tree;
    pANTLR3_BASE_TREE INSERT_METHOD_SYMBOL2698_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2699_tree;
    pANTLR3_BASE_TREE set2700_tree;
    pANTLR3_BASE_TREE DATA_SYMBOL2701_tree;
    pANTLR3_BASE_TREE DIRECTORY_SYMBOL2702_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2703_tree;
    pANTLR3_BASE_TREE INDEX_SYMBOL2705_tree;
    pANTLR3_BASE_TREE DIRECTORY_SYMBOL2706_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2707_tree;
    pANTLR3_BASE_TREE TABLESPACE_SYMBOL2709_tree;
    pANTLR3_BASE_TREE STORAGE_SYMBOL2711_tree;
    pANTLR3_BASE_TREE set2712_tree;
    pANTLR3_BASE_TREE CONNECTION_SYMBOL2713_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2714_tree;
    pANTLR3_BASE_TREE KEY_BLOCK_SIZE_SYMBOL2716_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2717_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ENGINE_SYMBOL2648       = NULL;
    TYPE_SYMBOL2649       = NULL;
    EQUAL_OPERATOR2650       = NULL;
    MAX_ROWS_SYMBOL2652       = NULL;
    EQUAL_OPERATOR2653       = NULL;
    MIN_ROWS_SYMBOL2655       = NULL;
    EQUAL_OPERATOR2656       = NULL;
    AVG_ROW_LENGTH_SYMBOL2658       = NULL;
    EQUAL_OPERATOR2659       = NULL;
    PASSWORD_SYMBOL2661       = NULL;
    EQUAL_OPERATOR2662       = NULL;
    COMMENT_SYMBOL2664       = NULL;
    EQUAL_OPERATOR2665       = NULL;
    AUTO_INCREMENT_SYMBOL2667       = NULL;
    EQUAL_OPERATOR2668       = NULL;
    PACK_KEYS_SYMBOL2670       = NULL;
    EQUAL_OPERATOR2671       = NULL;
    set2672       = NULL;
    set2673       = NULL;
    EQUAL_OPERATOR2674       = NULL;
    DEFAULT_SYMBOL2676       = NULL;
    set2677       = NULL;
    EQUAL_OPERATOR2678       = NULL;
    DIGIT2679       = NULL;
    DELAY_KEY_WRITE_SYMBOL2680       = NULL;
    EQUAL_OPERATOR2681       = NULL;
    DIGIT2682       = NULL;
    ROW_FORMAT_SYMBOL2683       = NULL;
    EQUAL_OPERATOR2684       = NULL;
    set2685       = NULL;
    UNION_SYMBOL2686       = NULL;
    EQUAL_OPERATOR2687       = NULL;
    OPEN_PAR_SYMBOL2688       = NULL;
    CLOSE_PAR_SYMBOL2690       = NULL;
    DEFAULT_SYMBOL2691       = NULL;
    COLLATE_SYMBOL2692       = NULL;
    EQUAL_OPERATOR2693       = NULL;
    EQUAL_OPERATOR2696       = NULL;
    INSERT_METHOD_SYMBOL2698       = NULL;
    EQUAL_OPERATOR2699       = NULL;
    set2700       = NULL;
    DATA_SYMBOL2701       = NULL;
    DIRECTORY_SYMBOL2702       = NULL;
    EQUAL_OPERATOR2703       = NULL;
    INDEX_SYMBOL2705       = NULL;
    DIRECTORY_SYMBOL2706       = NULL;
    EQUAL_OPERATOR2707       = NULL;
    TABLESPACE_SYMBOL2709       = NULL;
    STORAGE_SYMBOL2711       = NULL;
    set2712       = NULL;
    CONNECTION_SYMBOL2713       = NULL;
    EQUAL_OPERATOR2714       = NULL;
    KEY_BLOCK_SIZE_SYMBOL2716       = NULL;
    EQUAL_OPERATOR2717       = NULL;
    text_or_identifier2651.tree = NULL;

    int_or_param_marker2654.tree = NULL;

    int_or_param_marker2657.tree = NULL;

    int_or_param_marker2660.tree = NULL;

    text_or_param_marker2663.tree = NULL;

    text_or_param_marker2666.tree = NULL;

    int_or_param_marker2669.tree = NULL;

    int_or_param_marker2675.tree = NULL;

    qualified_identifier_list2689.tree = NULL;

    collation_name_or_default2694.tree = NULL;

    charset2695.tree = NULL;

    charset_name_or_default2697.tree = NULL;

    text_or_param_marker2704.tree = NULL;

    text_or_param_marker2708.tree = NULL;

    identifier2710.tree = NULL;

    text_or_param_marker2715.tree = NULL;

    int_or_param_marker2718.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ENGINE_SYMBOL2648_tree   = NULL;
    TYPE_SYMBOL2649_tree   = NULL;
    EQUAL_OPERATOR2650_tree   = NULL;
    MAX_ROWS_SYMBOL2652_tree   = NULL;
    EQUAL_OPERATOR2653_tree   = NULL;
    MIN_ROWS_SYMBOL2655_tree   = NULL;
    EQUAL_OPERATOR2656_tree   = NULL;
    AVG_ROW_LENGTH_SYMBOL2658_tree   = NULL;
    EQUAL_OPERATOR2659_tree   = NULL;
    PASSWORD_SYMBOL2661_tree   = NULL;
    EQUAL_OPERATOR2662_tree   = NULL;
    COMMENT_SYMBOL2664_tree   = NULL;
    EQUAL_OPERATOR2665_tree   = NULL;
    AUTO_INCREMENT_SYMBOL2667_tree   = NULL;
    EQUAL_OPERATOR2668_tree   = NULL;
    PACK_KEYS_SYMBOL2670_tree   = NULL;
    EQUAL_OPERATOR2671_tree   = NULL;
    set2672_tree   = NULL;
    set2673_tree   = NULL;
    EQUAL_OPERATOR2674_tree   = NULL;
    DEFAULT_SYMBOL2676_tree   = NULL;
    set2677_tree   = NULL;
    EQUAL_OPERATOR2678_tree   = NULL;
    DIGIT2679_tree   = NULL;
    DELAY_KEY_WRITE_SYMBOL2680_tree   = NULL;
    EQUAL_OPERATOR2681_tree   = NULL;
    DIGIT2682_tree   = NULL;
    ROW_FORMAT_SYMBOL2683_tree   = NULL;
    EQUAL_OPERATOR2684_tree   = NULL;
    set2685_tree   = NULL;
    UNION_SYMBOL2686_tree   = NULL;
    EQUAL_OPERATOR2687_tree   = NULL;
    OPEN_PAR_SYMBOL2688_tree   = NULL;
    CLOSE_PAR_SYMBOL2690_tree   = NULL;
    DEFAULT_SYMBOL2691_tree   = NULL;
    COLLATE_SYMBOL2692_tree   = NULL;
    EQUAL_OPERATOR2693_tree   = NULL;
    EQUAL_OPERATOR2696_tree   = NULL;
    INSERT_METHOD_SYMBOL2698_tree   = NULL;
    EQUAL_OPERATOR2699_tree   = NULL;
    set2700_tree   = NULL;
    DATA_SYMBOL2701_tree   = NULL;
    DIRECTORY_SYMBOL2702_tree   = NULL;
    EQUAL_OPERATOR2703_tree   = NULL;
    INDEX_SYMBOL2705_tree   = NULL;
    DIRECTORY_SYMBOL2706_tree   = NULL;
    EQUAL_OPERATOR2707_tree   = NULL;
    TABLESPACE_SYMBOL2709_tree   = NULL;
    STORAGE_SYMBOL2711_tree   = NULL;
    set2712_tree   = NULL;
    CONNECTION_SYMBOL2713_tree   = NULL;
    EQUAL_OPERATOR2714_tree   = NULL;
    KEY_BLOCK_SIZE_SYMBOL2716_tree   = NULL;
    EQUAL_OPERATOR2717_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2301:20: ( ( ENGINE_SYMBOL |{...}? => TYPE_SYMBOL ) ( EQUAL_OPERATOR )? text_or_identifier | MAX_ROWS_SYMBOL ( EQUAL_OPERATOR )? int_or_param_marker | MIN_ROWS_SYMBOL ( EQUAL_OPERATOR )? int_or_param_marker | AVG_ROW_LENGTH_SYMBOL ( EQUAL_OPERATOR )? int_or_param_marker | PASSWORD_SYMBOL ( EQUAL_OPERATOR )? text_or_param_marker | COMMENT_SYMBOL ( EQUAL_OPERATOR )? text_or_param_marker | AUTO_INCREMENT_SYMBOL ( EQUAL_OPERATOR )? int_or_param_marker | PACK_KEYS_SYMBOL ( EQUAL_OPERATOR )? ( DIGIT | DEFAULT_SYMBOL ) |{...}? => ( STATS_AUTO_RECALC_SYMBOL | STATS_PERSISTENT_SYMBOL | STATS_SAMPLE_PAGES_SYMBOL ) ( EQUAL_OPERATOR )? ( int_or_param_marker | DEFAULT_SYMBOL ) | ( CHECKSUM_SYMBOL | TABLE_CHECKSUM_SYMBOL ) ( EQUAL_OPERATOR )? DIGIT | DELAY_KEY_WRITE_SYMBOL ( EQUAL_OPERATOR )? DIGIT | ROW_FORMAT_SYMBOL ( EQUAL_OPERATOR )? ( DEFAULT_SYMBOL | DYNAMIC_SYMBOL | FIXED_SYMBOL | COMPRESSED_SYMBOL | REDUNDANT_SYMBOL | COMPACT_SYMBOL ) | UNION_SYMBOL ( EQUAL_OPERATOR )? OPEN_PAR_SYMBOL qualified_identifier_list CLOSE_PAR_SYMBOL | ( DEFAULT_SYMBOL )? ( COLLATE_SYMBOL ( EQUAL_OPERATOR )? collation_name_or_default | charset ( EQUAL_OPERATOR )? charset_name_or_default ) | INSERT_METHOD_SYMBOL ( EQUAL_OPERATOR )? ( NO_SYMBOL | FIRST_SYMBOL | LAST_SYMBOL ) | DATA_SYMBOL DIRECTORY_SYMBOL ( EQUAL_OPERATOR )? text_or_param_marker | INDEX_SYMBOL DIRECTORY_SYMBOL ( EQUAL_OPERATOR )? text_or_param_marker | TABLESPACE_SYMBOL identifier | STORAGE_SYMBOL ( DISK_SYMBOL | MEMORY_SYMBOL ) | CONNECTION_SYMBOL ( EQUAL_OPERATOR )? text_or_param_marker | KEY_BLOCK_SIZE_SYMBOL ( EQUAL_OPERATOR )? int_or_param_marker )

            ANTLR3_UINT32 alt737;

            alt737=21;

            {
                int LA737_0 = LA(1);
                if ( (LA737_0 == ENGINE_SYMBOL))
                {
                    alt737=1;
                }
                else if ( ((SERVER_VERSION < 50500)) && (LA737_0 == TYPE_SYMBOL))
                {
                    alt737=1;
                }
                else if ( (LA737_0 == MAX_ROWS_SYMBOL))
                {
                    alt737=2;
                }
                else if ( (LA737_0 == MIN_ROWS_SYMBOL))
                {
                    alt737=3;
                }
                else if ( (LA737_0 == AVG_ROW_LENGTH_SYMBOL))
                {
                    alt737=4;
                }
                else if ( (LA737_0 == PASSWORD_SYMBOL))
                {
                    alt737=5;
                }
                else if ( (LA737_0 == COMMENT_SYMBOL))
                {
                    alt737=6;
                }
                else if ( (LA737_0 == AUTO_INCREMENT_SYMBOL))
                {
                    alt737=7;
                }
                else if ( (LA737_0 == PACK_KEYS_SYMBOL))
                {
                    alt737=8;
                }
                else if ( ((SERVER_VERSION >= 50600)) && (((LA737_0 >= STATS_AUTO_RECALC_SYMBOL) && (LA737_0 <= STATS_SAMPLE_PAGES_SYMBOL))))
                {
                    alt737=9;
                }
                else if ( (LA737_0 == CHECKSUM_SYMBOL || LA737_0 == TABLE_CHECKSUM_SYMBOL))
                {
                    alt737=10;
                }
                else if ( (LA737_0 == DELAY_KEY_WRITE_SYMBOL))
                {
                    alt737=11;
                }
                else if ( (LA737_0 == ROW_FORMAT_SYMBOL))
                {
                    alt737=12;
                }
                else if ( (LA737_0 == UNION_SYMBOL))
                {
                    alt737=13;
                }
                else if ( (((LA737_0 >= CHARSET_SYMBOL) && (LA737_0 <= CHAR_SYMBOL)) || LA737_0 == COLLATE_SYMBOL || LA737_0 == DEFAULT_SYMBOL))
                {
                    alt737=14;
                }
                else if ( (LA737_0 == INSERT_METHOD_SYMBOL))
                {
                    alt737=15;
                }
                else if ( (LA737_0 == DATA_SYMBOL))
                {
                    alt737=16;
                }
                else if ( (LA737_0 == INDEX_SYMBOL))
                {
                    alt737=17;
                }
                else if ( (LA737_0 == TABLESPACE_SYMBOL))
                {
                    alt737=18;
                }
                else if ( (LA737_0 == STORAGE_SYMBOL))
                {
                    alt737=19;
                }
                else if ( (LA737_0 == CONNECTION_SYMBOL))
                {
                    alt737=20;
                }
                else if ( (LA737_0 == KEY_BLOCK_SIZE_SYMBOL))
                {
                    alt737=21;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 737;
                    EXCEPTION->state        = 0;


                    goto rulecreate_table_optionEx;

                }
            }
            switch (alt737)
            {
        	case 1:
        	    // MySQL.g:2302:2: ( ENGINE_SYMBOL |{...}? => TYPE_SYMBOL ) ( EQUAL_OPERATOR )? text_or_identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:2302:2: ( ENGINE_SYMBOL |{...}? => TYPE_SYMBOL )
        	        {
        	            int alt713=2;
        	            {
        	                int LA713_0 = LA(1);
        	                if ( (LA713_0 == ENGINE_SYMBOL))
        	                {
        	                    alt713=1;
        	                }
        	                else if ( ((SERVER_VERSION < 50500)) && (LA713_0 == TYPE_SYMBOL))
        	                {
        	                    alt713=2;
        	                }
        	                else
        	                {
        	                    if (BACKTRACKING>0)
        	                    {
        	                        FAILEDFLAG = ANTLR3_TRUE;
        	                        return retval;
        	                    }


        	                    CONSTRUCTEX();
        	                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    EXCEPTION->message      = (void *)"";
        	                    EXCEPTION->decisionNum  = 713;
        	                    EXCEPTION->state        = 0;


        	                    goto rulecreate_table_optionEx;

        	                }
        	            }
        	            switch (alt713)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2302:3: ENGINE_SYMBOL
        	        	    {
        	        	        ENGINE_SYMBOL2648 = (pANTLR3_COMMON_TOKEN) MATCHT(ENGINE_SYMBOL, &FOLLOW_ENGINE_SYMBOL_in_create_table_option13083);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        ENGINE_SYMBOL2648_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ENGINE_SYMBOL2648));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, ENGINE_SYMBOL2648_tree);
        	        	        }

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:2302:19: {...}? => TYPE_SYMBOL
        	        	    {
        	        	        if ( !((SERVER_VERSION < 50500)) )
        	        	        {
        	        	            if (BACKTRACKING>0)
        	        	            {
        	        	                FAILEDFLAG = ANTLR3_TRUE;
        	        	                return retval;
        	        	            }

        	        	                CONSTRUCTEX();
        	        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	        	                EXCEPTION->message      = (void *)"SERVER_VERSION < 50500";
        	        	                EXCEPTION->ruleName	 = (void *)"create_table_option";


        	        	        }

        	        	        TYPE_SYMBOL2649 = (pANTLR3_COMMON_TOKEN) MATCHT(TYPE_SYMBOL, &FOLLOW_TYPE_SYMBOL_in_create_table_option13091);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        TYPE_SYMBOL2649_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TYPE_SYMBOL2649));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, TYPE_SYMBOL2649_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:2302:61: ( EQUAL_OPERATOR )?
        	        {
        	            int alt714=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt714=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt714)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2302:61: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR2650 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option13094);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR2650_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2650));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2650_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_text_or_identifier_in_create_table_option13097);
        	        text_or_identifier2651=text_or_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_identifier2651.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2303:4: MAX_ROWS_SYMBOL ( EQUAL_OPERATOR )? int_or_param_marker
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MAX_ROWS_SYMBOL2652 = (pANTLR3_COMMON_TOKEN) MATCHT(MAX_ROWS_SYMBOL, &FOLLOW_MAX_ROWS_SYMBOL_in_create_table_option13102);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MAX_ROWS_SYMBOL2652_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAX_ROWS_SYMBOL2652));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MAX_ROWS_SYMBOL2652_tree);
        	        }

        	        // MySQL.g:2303:20: ( EQUAL_OPERATOR )?
        	        {
        	            int alt715=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt715=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt715)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2303:20: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR2653 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option13104);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR2653_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2653));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2653_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_int_or_param_marker_in_create_table_option13107);
        	        int_or_param_marker2654=int_or_param_marker(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, int_or_param_marker2654.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2304:4: MIN_ROWS_SYMBOL ( EQUAL_OPERATOR )? int_or_param_marker
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MIN_ROWS_SYMBOL2655 = (pANTLR3_COMMON_TOKEN) MATCHT(MIN_ROWS_SYMBOL, &FOLLOW_MIN_ROWS_SYMBOL_in_create_table_option13112);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MIN_ROWS_SYMBOL2655_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MIN_ROWS_SYMBOL2655));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MIN_ROWS_SYMBOL2655_tree);
        	        }

        	        // MySQL.g:2304:20: ( EQUAL_OPERATOR )?
        	        {
        	            int alt716=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt716=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt716)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2304:20: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR2656 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option13114);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR2656_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2656));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2656_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_int_or_param_marker_in_create_table_option13117);
        	        int_or_param_marker2657=int_or_param_marker(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, int_or_param_marker2657.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:2305:4: AVG_ROW_LENGTH_SYMBOL ( EQUAL_OPERATOR )? int_or_param_marker
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        AVG_ROW_LENGTH_SYMBOL2658 = (pANTLR3_COMMON_TOKEN) MATCHT(AVG_ROW_LENGTH_SYMBOL, &FOLLOW_AVG_ROW_LENGTH_SYMBOL_in_create_table_option13122);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        AVG_ROW_LENGTH_SYMBOL2658_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AVG_ROW_LENGTH_SYMBOL2658));
        	        ADAPTOR->addChild(ADAPTOR, root_0, AVG_ROW_LENGTH_SYMBOL2658_tree);
        	        }

        	        // MySQL.g:2305:26: ( EQUAL_OPERATOR )?
        	        {
        	            int alt717=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt717=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt717)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2305:26: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR2659 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option13124);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR2659_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2659));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2659_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_int_or_param_marker_in_create_table_option13127);
        	        int_or_param_marker2660=int_or_param_marker(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, int_or_param_marker2660.tree);

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:2306:4: PASSWORD_SYMBOL ( EQUAL_OPERATOR )? text_or_param_marker
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PASSWORD_SYMBOL2661 = (pANTLR3_COMMON_TOKEN) MATCHT(PASSWORD_SYMBOL, &FOLLOW_PASSWORD_SYMBOL_in_create_table_option13132);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PASSWORD_SYMBOL2661_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PASSWORD_SYMBOL2661));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PASSWORD_SYMBOL2661_tree);
        	        }

        	        // MySQL.g:2306:20: ( EQUAL_OPERATOR )?
        	        {
        	            int alt718=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt718=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt718)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2306:20: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR2662 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option13134);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR2662_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2662));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2662_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_text_or_param_marker_in_create_table_option13137);
        	        text_or_param_marker2663=text_or_param_marker(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_param_marker2663.tree);

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:2307:4: COMMENT_SYMBOL ( EQUAL_OPERATOR )? text_or_param_marker
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        COMMENT_SYMBOL2664 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMENT_SYMBOL, &FOLLOW_COMMENT_SYMBOL_in_create_table_option13142);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMENT_SYMBOL2664_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMENT_SYMBOL2664));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMENT_SYMBOL2664_tree);
        	        }

        	        // MySQL.g:2307:19: ( EQUAL_OPERATOR )?
        	        {
        	            int alt719=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt719=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt719)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2307:19: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR2665 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option13144);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR2665_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2665));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2665_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_text_or_param_marker_in_create_table_option13147);
        	        text_or_param_marker2666=text_or_param_marker(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_param_marker2666.tree);

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:2308:4: AUTO_INCREMENT_SYMBOL ( EQUAL_OPERATOR )? int_or_param_marker
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        AUTO_INCREMENT_SYMBOL2667 = (pANTLR3_COMMON_TOKEN) MATCHT(AUTO_INCREMENT_SYMBOL, &FOLLOW_AUTO_INCREMENT_SYMBOL_in_create_table_option13152);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        AUTO_INCREMENT_SYMBOL2667_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AUTO_INCREMENT_SYMBOL2667));
        	        ADAPTOR->addChild(ADAPTOR, root_0, AUTO_INCREMENT_SYMBOL2667_tree);
        	        }

        	        // MySQL.g:2308:26: ( EQUAL_OPERATOR )?
        	        {
        	            int alt720=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt720=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt720)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2308:26: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR2668 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option13154);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR2668_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2668));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2668_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_int_or_param_marker_in_create_table_option13157);
        	        int_or_param_marker2669=int_or_param_marker(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, int_or_param_marker2669.tree);

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:2309:4: PACK_KEYS_SYMBOL ( EQUAL_OPERATOR )? ( DIGIT | DEFAULT_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PACK_KEYS_SYMBOL2670 = (pANTLR3_COMMON_TOKEN) MATCHT(PACK_KEYS_SYMBOL, &FOLLOW_PACK_KEYS_SYMBOL_in_create_table_option13162);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PACK_KEYS_SYMBOL2670_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PACK_KEYS_SYMBOL2670));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PACK_KEYS_SYMBOL2670_tree);
        	        }

        	        // MySQL.g:2309:21: ( EQUAL_OPERATOR )?
        	        {
        	            int alt721=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt721=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt721)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2309:21: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR2671 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option13164);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR2671_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2671));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2671_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        set2672=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == DEFAULT_SYMBOL || LA(1) == DIGIT )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2672))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	            CONSTRUCTEX();
        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
        	            EXCEPTION->expectingSet = NULL;

        	            goto rulecreate_table_optionEx;
        	        }


        	    }
        	    break;
        	case 9:
        	    // MySQL.g:2310:4: {...}? => ( STATS_AUTO_RECALC_SYMBOL | STATS_PERSISTENT_SYMBOL | STATS_SAMPLE_PAGES_SYMBOL ) ( EQUAL_OPERATOR )? ( int_or_param_marker | DEFAULT_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((SERVER_VERSION >= 50600)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50600";
        	                EXCEPTION->ruleName	 = (void *)"create_table_option";


        	        }

        	        set2673=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( ((LA(1) >= STATS_AUTO_RECALC_SYMBOL) && (LA(1) <= STATS_SAMPLE_PAGES_SYMBOL)) )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2673))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	            CONSTRUCTEX();
        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
        	            EXCEPTION->expectingSet = NULL;

        	            goto rulecreate_table_optionEx;
        	        }


        	        // MySQL.g:2311:3: ( EQUAL_OPERATOR )?
        	        {
        	            int alt722=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt722=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt722)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2311:3: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR2674 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option13196);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR2674_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2674));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2674_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:2311:19: ( int_or_param_marker | DEFAULT_SYMBOL )
        	        {
        	            int alt723=2;
        	            switch ( LA(1) )
        	            {
        	            case INTEGER:
        	            case PARAM_MARKER:
        	            	{
        	            		alt723=1;
        	            	}
        	                break;
        	            case DEFAULT_SYMBOL:
        	            	{
        	            		alt723=2;
        	            	}
        	                break;

        	            default:
        	                if (BACKTRACKING>0)
        	                {
        	                    FAILEDFLAG = ANTLR3_TRUE;
        	                    return retval;
        	                }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                EXCEPTION->message      = (void *)"";
        	                EXCEPTION->decisionNum  = 723;
        	                EXCEPTION->state        = 0;


        	                goto rulecreate_table_optionEx;

        	            }

        	            switch (alt723)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2311:20: int_or_param_marker
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_int_or_param_marker_in_create_table_option13200);
        	        	        int_or_param_marker2675=int_or_param_marker(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, int_or_param_marker2675.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:2311:42: DEFAULT_SYMBOL
        	        	    {
        	        	        DEFAULT_SYMBOL2676 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_create_table_option13204);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DEFAULT_SYMBOL2676_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL2676));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL2676_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 10:
        	    // MySQL.g:2312:4: ( CHECKSUM_SYMBOL | TABLE_CHECKSUM_SYMBOL ) ( EQUAL_OPERATOR )? DIGIT
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set2677=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == CHECKSUM_SYMBOL || LA(1) == TABLE_CHECKSUM_SYMBOL )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2677))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	            CONSTRUCTEX();
        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
        	            EXCEPTION->expectingSet = NULL;

        	            goto rulecreate_table_optionEx;
        	        }


        	        // MySQL.g:2312:46: ( EQUAL_OPERATOR )?
        	        {
        	            int alt724=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt724=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt724)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2312:46: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR2678 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option13218);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR2678_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2678));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2678_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        DIGIT2679 = (pANTLR3_COMMON_TOKEN) MATCHT(DIGIT, &FOLLOW_DIGIT_in_create_table_option13221);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DIGIT2679_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DIGIT2679));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DIGIT2679_tree);
        	        }

        	    }
        	    break;
        	case 11:
        	    // MySQL.g:2313:4: DELAY_KEY_WRITE_SYMBOL ( EQUAL_OPERATOR )? DIGIT
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DELAY_KEY_WRITE_SYMBOL2680 = (pANTLR3_COMMON_TOKEN) MATCHT(DELAY_KEY_WRITE_SYMBOL, &FOLLOW_DELAY_KEY_WRITE_SYMBOL_in_create_table_option13227);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DELAY_KEY_WRITE_SYMBOL2680_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DELAY_KEY_WRITE_SYMBOL2680));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DELAY_KEY_WRITE_SYMBOL2680_tree);
        	        }

        	        // MySQL.g:2313:27: ( EQUAL_OPERATOR )?
        	        {
        	            int alt725=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt725=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt725)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2313:27: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR2681 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option13229);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR2681_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2681));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2681_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        DIGIT2682 = (pANTLR3_COMMON_TOKEN) MATCHT(DIGIT, &FOLLOW_DIGIT_in_create_table_option13232);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DIGIT2682_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DIGIT2682));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DIGIT2682_tree);
        	        }

        	    }
        	    break;
        	case 12:
        	    // MySQL.g:2314:4: ROW_FORMAT_SYMBOL ( EQUAL_OPERATOR )? ( DEFAULT_SYMBOL | DYNAMIC_SYMBOL | FIXED_SYMBOL | COMPRESSED_SYMBOL | REDUNDANT_SYMBOL | COMPACT_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ROW_FORMAT_SYMBOL2683 = (pANTLR3_COMMON_TOKEN) MATCHT(ROW_FORMAT_SYMBOL, &FOLLOW_ROW_FORMAT_SYMBOL_in_create_table_option13237);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ROW_FORMAT_SYMBOL2683_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ROW_FORMAT_SYMBOL2683));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ROW_FORMAT_SYMBOL2683_tree);
        	        }

        	        // MySQL.g:2314:22: ( EQUAL_OPERATOR )?
        	        {
        	            int alt726=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt726=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt726)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2314:22: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR2684 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option13239);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR2684_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2684));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2684_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        set2685=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == COMPACT_SYMBOL || LA(1) == COMPRESSED_SYMBOL || LA(1) == DEFAULT_SYMBOL || LA(1) == DYNAMIC_SYMBOL || LA(1) == FIXED_SYMBOL || LA(1) == REDUNDANT_SYMBOL )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2685))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	            CONSTRUCTEX();
        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
        	            EXCEPTION->expectingSet = NULL;

        	            goto rulecreate_table_optionEx;
        	        }


        	    }
        	    break;
        	case 13:
        	    // MySQL.g:2315:4: UNION_SYMBOL ( EQUAL_OPERATOR )? OPEN_PAR_SYMBOL qualified_identifier_list CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        UNION_SYMBOL2686 = (pANTLR3_COMMON_TOKEN) MATCHT(UNION_SYMBOL, &FOLLOW_UNION_SYMBOL_in_create_table_option13269);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UNION_SYMBOL2686_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNION_SYMBOL2686));
        	        ADAPTOR->addChild(ADAPTOR, root_0, UNION_SYMBOL2686_tree);
        	        }

        	        // MySQL.g:2315:17: ( EQUAL_OPERATOR )?
        	        {
        	            int alt727=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt727=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt727)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2315:17: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR2687 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option13271);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR2687_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2687));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2687_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        OPEN_PAR_SYMBOL2688 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_create_table_option13274);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2688_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2688));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2688_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_qualified_identifier_list_in_create_table_option13276);
        	        qualified_identifier_list2689=qualified_identifier_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, qualified_identifier_list2689.tree);

        	        CLOSE_PAR_SYMBOL2690 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_option13278);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2690_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2690));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2690_tree);
        	        }

        	    }
        	    break;
        	case 14:
        	    // MySQL.g:2316:4: ( DEFAULT_SYMBOL )? ( COLLATE_SYMBOL ( EQUAL_OPERATOR )? collation_name_or_default | charset ( EQUAL_OPERATOR )? charset_name_or_default )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:2316:4: ( DEFAULT_SYMBOL )?
        	        {
        	            int alt728=2;
        	            switch ( LA(1) )
        	            {
        	                case DEFAULT_SYMBOL:
        	                	{
        	                		alt728=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt728)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2316:4: DEFAULT_SYMBOL
        	        	    {
        	        	        DEFAULT_SYMBOL2691 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_create_table_option13283);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DEFAULT_SYMBOL2691_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL2691));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL2691_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:2317:3: ( COLLATE_SYMBOL ( EQUAL_OPERATOR )? collation_name_or_default | charset ( EQUAL_OPERATOR )? charset_name_or_default )
        	        {
        	            int alt731=2;
        	            switch ( LA(1) )
        	            {
        	            case COLLATE_SYMBOL:
        	            	{
        	            		alt731=1;
        	            	}
        	                break;
        	            case CHARSET_SYMBOL:
        	            case CHAR_SYMBOL:
        	            	{
        	            		alt731=2;
        	            	}
        	                break;

        	            default:
        	                if (BACKTRACKING>0)
        	                {
        	                    FAILEDFLAG = ANTLR3_TRUE;
        	                    return retval;
        	                }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                EXCEPTION->message      = (void *)"";
        	                EXCEPTION->decisionNum  = 731;
        	                EXCEPTION->state        = 0;


        	                goto rulecreate_table_optionEx;

        	            }

        	            switch (alt731)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2318:4: COLLATE_SYMBOL ( EQUAL_OPERATOR )? collation_name_or_default
        	        	    {
        	        	        COLLATE_SYMBOL2692 = (pANTLR3_COMMON_TOKEN) MATCHT(COLLATE_SYMBOL, &FOLLOW_COLLATE_SYMBOL_in_create_table_option13293);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COLLATE_SYMBOL2692_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLLATE_SYMBOL2692));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COLLATE_SYMBOL2692_tree);
        	        	        }

        	        	        // MySQL.g:2318:19: ( EQUAL_OPERATOR )?
        	        	        {
        	        	            int alt729=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case EQUAL_OPERATOR:
        	        	                	{
        	        	                		alt729=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt729)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:2318:19: EQUAL_OPERATOR
        	        	        	    {
        	        	        	        EQUAL_OPERATOR2693 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option13295);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulecreate_table_optionEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        EQUAL_OPERATOR2693_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2693));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2693_tree);
        	        	        	        }

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_collation_name_or_default_in_create_table_option13298);
        	        	        collation_name_or_default2694=collation_name_or_default(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, collation_name_or_default2694.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:2319:6: charset ( EQUAL_OPERATOR )? charset_name_or_default
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_charset_in_create_table_option13305);
        	        	        charset2695=charset(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset2695.tree);

        	        	        // MySQL.g:2319:14: ( EQUAL_OPERATOR )?
        	        	        {
        	        	            int alt730=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case EQUAL_OPERATOR:
        	        	                	{
        	        	                		alt730=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt730)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:2319:14: EQUAL_OPERATOR
        	        	        	    {
        	        	        	        EQUAL_OPERATOR2696 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option13307);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulecreate_table_optionEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        EQUAL_OPERATOR2696_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2696));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2696_tree);
        	        	        	        }

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_charset_name_or_default_in_create_table_option13310);
        	        	        charset_name_or_default2697=charset_name_or_default(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset_name_or_default2697.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 15:
        	    // MySQL.g:2322:4: INSERT_METHOD_SYMBOL ( EQUAL_OPERATOR )? ( NO_SYMBOL | FIRST_SYMBOL | LAST_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        INSERT_METHOD_SYMBOL2698 = (pANTLR3_COMMON_TOKEN) MATCHT(INSERT_METHOD_SYMBOL, &FOLLOW_INSERT_METHOD_SYMBOL_in_create_table_option13320);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INSERT_METHOD_SYMBOL2698_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INSERT_METHOD_SYMBOL2698));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INSERT_METHOD_SYMBOL2698_tree);
        	        }

        	        // MySQL.g:2322:25: ( EQUAL_OPERATOR )?
        	        {
        	            int alt732=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt732=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt732)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2322:25: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR2699 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option13322);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR2699_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2699));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2699_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        set2700=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == FIRST_SYMBOL || LA(1) == LAST_SYMBOL || LA(1) == NO_SYMBOL )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2700))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	            CONSTRUCTEX();
        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
        	            EXCEPTION->expectingSet = NULL;

        	            goto rulecreate_table_optionEx;
        	        }


        	    }
        	    break;
        	case 16:
        	    // MySQL.g:2323:4: DATA_SYMBOL DIRECTORY_SYMBOL ( EQUAL_OPERATOR )? text_or_param_marker
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DATA_SYMBOL2701 = (pANTLR3_COMMON_TOKEN) MATCHT(DATA_SYMBOL, &FOLLOW_DATA_SYMBOL_in_create_table_option13340);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DATA_SYMBOL2701_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATA_SYMBOL2701));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DATA_SYMBOL2701_tree);
        	        }

        	        DIRECTORY_SYMBOL2702 = (pANTLR3_COMMON_TOKEN) MATCHT(DIRECTORY_SYMBOL, &FOLLOW_DIRECTORY_SYMBOL_in_create_table_option13342);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DIRECTORY_SYMBOL2702_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DIRECTORY_SYMBOL2702));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DIRECTORY_SYMBOL2702_tree);
        	        }

        	        // MySQL.g:2323:33: ( EQUAL_OPERATOR )?
        	        {
        	            int alt733=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt733=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt733)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2323:33: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR2703 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option13344);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR2703_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2703));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2703_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_text_or_param_marker_in_create_table_option13347);
        	        text_or_param_marker2704=text_or_param_marker(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_param_marker2704.tree);

        	    }
        	    break;
        	case 17:
        	    // MySQL.g:2324:4: INDEX_SYMBOL DIRECTORY_SYMBOL ( EQUAL_OPERATOR )? text_or_param_marker
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        INDEX_SYMBOL2705 = (pANTLR3_COMMON_TOKEN) MATCHT(INDEX_SYMBOL, &FOLLOW_INDEX_SYMBOL_in_create_table_option13352);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INDEX_SYMBOL2705_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INDEX_SYMBOL2705));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INDEX_SYMBOL2705_tree);
        	        }

        	        DIRECTORY_SYMBOL2706 = (pANTLR3_COMMON_TOKEN) MATCHT(DIRECTORY_SYMBOL, &FOLLOW_DIRECTORY_SYMBOL_in_create_table_option13354);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DIRECTORY_SYMBOL2706_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DIRECTORY_SYMBOL2706));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DIRECTORY_SYMBOL2706_tree);
        	        }

        	        // MySQL.g:2324:34: ( EQUAL_OPERATOR )?
        	        {
        	            int alt734=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt734=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt734)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2324:34: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR2707 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option13356);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR2707_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2707));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2707_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_text_or_param_marker_in_create_table_option13359);
        	        text_or_param_marker2708=text_or_param_marker(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_param_marker2708.tree);

        	    }
        	    break;
        	case 18:
        	    // MySQL.g:2325:4: TABLESPACE_SYMBOL identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TABLESPACE_SYMBOL2709 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLESPACE_SYMBOL, &FOLLOW_TABLESPACE_SYMBOL_in_create_table_option13364);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TABLESPACE_SYMBOL2709_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLESPACE_SYMBOL2709));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLESPACE_SYMBOL2709_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_identifier_in_create_table_option13366);
        	        identifier2710=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2710.tree);

        	    }
        	    break;
        	case 19:
        	    // MySQL.g:2326:4: STORAGE_SYMBOL ( DISK_SYMBOL | MEMORY_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        STORAGE_SYMBOL2711 = (pANTLR3_COMMON_TOKEN) MATCHT(STORAGE_SYMBOL, &FOLLOW_STORAGE_SYMBOL_in_create_table_option13371);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        STORAGE_SYMBOL2711_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STORAGE_SYMBOL2711));
        	        ADAPTOR->addChild(ADAPTOR, root_0, STORAGE_SYMBOL2711_tree);
        	        }

        	        set2712=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == DISK_SYMBOL || LA(1) == MEMORY_SYMBOL )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2712))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	            CONSTRUCTEX();
        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
        	            EXCEPTION->expectingSet = NULL;

        	            goto rulecreate_table_optionEx;
        	        }


        	    }
        	    break;
        	case 20:
        	    // MySQL.g:2327:4: CONNECTION_SYMBOL ( EQUAL_OPERATOR )? text_or_param_marker
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CONNECTION_SYMBOL2713 = (pANTLR3_COMMON_TOKEN) MATCHT(CONNECTION_SYMBOL, &FOLLOW_CONNECTION_SYMBOL_in_create_table_option13384);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CONNECTION_SYMBOL2713_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CONNECTION_SYMBOL2713));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CONNECTION_SYMBOL2713_tree);
        	        }

        	        // MySQL.g:2327:22: ( EQUAL_OPERATOR )?
        	        {
        	            int alt735=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt735=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt735)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2327:22: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR2714 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option13386);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR2714_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2714));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2714_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_text_or_param_marker_in_create_table_option13389);
        	        text_or_param_marker2715=text_or_param_marker(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_param_marker2715.tree);

        	    }
        	    break;
        	case 21:
        	    // MySQL.g:2328:4: KEY_BLOCK_SIZE_SYMBOL ( EQUAL_OPERATOR )? int_or_param_marker
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        KEY_BLOCK_SIZE_SYMBOL2716 = (pANTLR3_COMMON_TOKEN) MATCHT(KEY_BLOCK_SIZE_SYMBOL, &FOLLOW_KEY_BLOCK_SIZE_SYMBOL_in_create_table_option13394);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        KEY_BLOCK_SIZE_SYMBOL2716_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, KEY_BLOCK_SIZE_SYMBOL2716));
        	        ADAPTOR->addChild(ADAPTOR, root_0, KEY_BLOCK_SIZE_SYMBOL2716_tree);
        	        }

        	        // MySQL.g:2328:26: ( EQUAL_OPERATOR )?
        	        {
        	            int alt736=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt736=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt736)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2328:26: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR2717 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option13396);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR2717_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2717));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2717_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_int_or_param_marker_in_create_table_option13399);
        	        int_or_param_marker2718=int_or_param_marker(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, int_or_param_marker2718.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulecreate_table_optionEx; /* Prevent compiler warnings */
    rulecreate_table_optionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end create_table_option */

/**
 * $ANTLR start partitioning
 * MySQL.g:2332:1: partitioning :{...}? => PARTITION_SYMBOL BY_SYMBOL ( ( LINEAR_SYMBOL )? HASH_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | ( LINEAR_SYMBOL )? KEY_SYMBOL identifier_list_with_parentheses | ( RANGE_SYMBOL | LIST_SYMBOL ) ( OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL |{...}? => COLUMNS_SYMBOL identifier_list_with_parentheses ) )? ( PARTITIONS_SYMBOL INTEGER )? ( SUBPARTITION_SYMBOL BY_SYMBOL ( ( LINEAR_SYMBOL )? HASH_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | ( LINEAR_SYMBOL )? KEY_SYMBOL identifier_list_with_parentheses )? ( SUBPARTITIONS_SYMBOL INTEGER )? )? ( partition_definitions )? ;
 */
static MySQLParser_partitioning_return
partitioning(pMySQLParser ctx)
{
    MySQLParser_partitioning_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL2719;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL2720;
    pANTLR3_COMMON_TOKEN    LINEAR_SYMBOL2721;
    pANTLR3_COMMON_TOKEN    HASH_SYMBOL2722;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2723;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2725;
    pANTLR3_COMMON_TOKEN    LINEAR_SYMBOL2726;
    pANTLR3_COMMON_TOKEN    KEY_SYMBOL2727;
    pANTLR3_COMMON_TOKEN    set2729;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2730;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2732;
    pANTLR3_COMMON_TOKEN    COLUMNS_SYMBOL2733;
    pANTLR3_COMMON_TOKEN    PARTITIONS_SYMBOL2735;
    pANTLR3_COMMON_TOKEN    INTEGER2736;
    pANTLR3_COMMON_TOKEN    SUBPARTITION_SYMBOL2737;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL2738;
    pANTLR3_COMMON_TOKEN    LINEAR_SYMBOL2739;
    pANTLR3_COMMON_TOKEN    HASH_SYMBOL2740;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2741;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2743;
    pANTLR3_COMMON_TOKEN    LINEAR_SYMBOL2744;
    pANTLR3_COMMON_TOKEN    KEY_SYMBOL2745;
    pANTLR3_COMMON_TOKEN    SUBPARTITIONS_SYMBOL2747;
    pANTLR3_COMMON_TOKEN    INTEGER2748;
    MySQLParser_expression_return expression2724;
    #undef	RETURN_TYPE_expression2724
    #define	RETURN_TYPE_expression2724 MySQLParser_expression_return

    MySQLParser_identifier_list_with_parentheses_return identifier_list_with_parentheses2728;
    #undef	RETURN_TYPE_identifier_list_with_parentheses2728
    #define	RETURN_TYPE_identifier_list_with_parentheses2728 MySQLParser_identifier_list_with_parentheses_return

    MySQLParser_expression_return expression2731;
    #undef	RETURN_TYPE_expression2731
    #define	RETURN_TYPE_expression2731 MySQLParser_expression_return

    MySQLParser_identifier_list_with_parentheses_return identifier_list_with_parentheses2734;
    #undef	RETURN_TYPE_identifier_list_with_parentheses2734
    #define	RETURN_TYPE_identifier_list_with_parentheses2734 MySQLParser_identifier_list_with_parentheses_return

    MySQLParser_expression_return expression2742;
    #undef	RETURN_TYPE_expression2742
    #define	RETURN_TYPE_expression2742 MySQLParser_expression_return

    MySQLParser_identifier_list_with_parentheses_return identifier_list_with_parentheses2746;
    #undef	RETURN_TYPE_identifier_list_with_parentheses2746
    #define	RETURN_TYPE_identifier_list_with_parentheses2746 MySQLParser_identifier_list_with_parentheses_return

    MySQLParser_partition_definitions_return partition_definitions2749;
    #undef	RETURN_TYPE_partition_definitions2749
    #define	RETURN_TYPE_partition_definitions2749 MySQLParser_partition_definitions_return

    pANTLR3_BASE_TREE PARTITION_SYMBOL2719_tree;
    pANTLR3_BASE_TREE BY_SYMBOL2720_tree;
    pANTLR3_BASE_TREE LINEAR_SYMBOL2721_tree;
    pANTLR3_BASE_TREE HASH_SYMBOL2722_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2723_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2725_tree;
    pANTLR3_BASE_TREE LINEAR_SYMBOL2726_tree;
    pANTLR3_BASE_TREE KEY_SYMBOL2727_tree;
    pANTLR3_BASE_TREE set2729_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2730_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2732_tree;
    pANTLR3_BASE_TREE COLUMNS_SYMBOL2733_tree;
    pANTLR3_BASE_TREE PARTITIONS_SYMBOL2735_tree;
    pANTLR3_BASE_TREE INTEGER2736_tree;
    pANTLR3_BASE_TREE SUBPARTITION_SYMBOL2737_tree;
    pANTLR3_BASE_TREE BY_SYMBOL2738_tree;
    pANTLR3_BASE_TREE LINEAR_SYMBOL2739_tree;
    pANTLR3_BASE_TREE HASH_SYMBOL2740_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2741_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2743_tree;
    pANTLR3_BASE_TREE LINEAR_SYMBOL2744_tree;
    pANTLR3_BASE_TREE KEY_SYMBOL2745_tree;
    pANTLR3_BASE_TREE SUBPARTITIONS_SYMBOL2747_tree;
    pANTLR3_BASE_TREE INTEGER2748_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PARTITION_SYMBOL2719       = NULL;
    BY_SYMBOL2720       = NULL;
    LINEAR_SYMBOL2721       = NULL;
    HASH_SYMBOL2722       = NULL;
    OPEN_PAR_SYMBOL2723       = NULL;
    CLOSE_PAR_SYMBOL2725       = NULL;
    LINEAR_SYMBOL2726       = NULL;
    KEY_SYMBOL2727       = NULL;
    set2729       = NULL;
    OPEN_PAR_SYMBOL2730       = NULL;
    CLOSE_PAR_SYMBOL2732       = NULL;
    COLUMNS_SYMBOL2733       = NULL;
    PARTITIONS_SYMBOL2735       = NULL;
    INTEGER2736       = NULL;
    SUBPARTITION_SYMBOL2737       = NULL;
    BY_SYMBOL2738       = NULL;
    LINEAR_SYMBOL2739       = NULL;
    HASH_SYMBOL2740       = NULL;
    OPEN_PAR_SYMBOL2741       = NULL;
    CLOSE_PAR_SYMBOL2743       = NULL;
    LINEAR_SYMBOL2744       = NULL;
    KEY_SYMBOL2745       = NULL;
    SUBPARTITIONS_SYMBOL2747       = NULL;
    INTEGER2748       = NULL;
    expression2724.tree = NULL;

    identifier_list_with_parentheses2728.tree = NULL;

    expression2731.tree = NULL;

    identifier_list_with_parentheses2734.tree = NULL;

    expression2742.tree = NULL;

    identifier_list_with_parentheses2746.tree = NULL;

    partition_definitions2749.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PARTITION_SYMBOL2719_tree   = NULL;
    BY_SYMBOL2720_tree   = NULL;
    LINEAR_SYMBOL2721_tree   = NULL;
    HASH_SYMBOL2722_tree   = NULL;
    OPEN_PAR_SYMBOL2723_tree   = NULL;
    CLOSE_PAR_SYMBOL2725_tree   = NULL;
    LINEAR_SYMBOL2726_tree   = NULL;
    KEY_SYMBOL2727_tree   = NULL;
    set2729_tree   = NULL;
    OPEN_PAR_SYMBOL2730_tree   = NULL;
    CLOSE_PAR_SYMBOL2732_tree   = NULL;
    COLUMNS_SYMBOL2733_tree   = NULL;
    PARTITIONS_SYMBOL2735_tree   = NULL;
    INTEGER2736_tree   = NULL;
    SUBPARTITION_SYMBOL2737_tree   = NULL;
    BY_SYMBOL2738_tree   = NULL;
    LINEAR_SYMBOL2739_tree   = NULL;
    HASH_SYMBOL2740_tree   = NULL;
    OPEN_PAR_SYMBOL2741_tree   = NULL;
    CLOSE_PAR_SYMBOL2743_tree   = NULL;
    LINEAR_SYMBOL2744_tree   = NULL;
    KEY_SYMBOL2745_tree   = NULL;
    SUBPARTITIONS_SYMBOL2747_tree   = NULL;
    INTEGER2748_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2332:13: ({...}? => PARTITION_SYMBOL BY_SYMBOL ( ( LINEAR_SYMBOL )? HASH_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | ( LINEAR_SYMBOL )? KEY_SYMBOL identifier_list_with_parentheses | ( RANGE_SYMBOL | LIST_SYMBOL ) ( OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL |{...}? => COLUMNS_SYMBOL identifier_list_with_parentheses ) )? ( PARTITIONS_SYMBOL INTEGER )? ( SUBPARTITION_SYMBOL BY_SYMBOL ( ( LINEAR_SYMBOL )? HASH_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | ( LINEAR_SYMBOL )? KEY_SYMBOL identifier_list_with_parentheses )? ( SUBPARTITIONS_SYMBOL INTEGER )? )? ( partition_definitions )? )
        // MySQL.g:2333:2: {...}? => PARTITION_SYMBOL BY_SYMBOL ( ( LINEAR_SYMBOL )? HASH_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | ( LINEAR_SYMBOL )? KEY_SYMBOL identifier_list_with_parentheses | ( RANGE_SYMBOL | LIST_SYMBOL ) ( OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL |{...}? => COLUMNS_SYMBOL identifier_list_with_parentheses ) )? ( PARTITIONS_SYMBOL INTEGER )? ( SUBPARTITION_SYMBOL BY_SYMBOL ( ( LINEAR_SYMBOL )? HASH_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | ( LINEAR_SYMBOL )? KEY_SYMBOL identifier_list_with_parentheses )? ( SUBPARTITIONS_SYMBOL INTEGER )? )? ( partition_definitions )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            if ( !((SERVER_VERSION >= 50100)) )
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
                    EXCEPTION->message      = (void *)"SERVER_VERSION >= 50100";
                    EXCEPTION->ruleName	 = (void *)"partitioning";


            }

            PARTITION_SYMBOL2719 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_partitioning13413);
            if  (HASEXCEPTION())
            {
                goto rulepartitioningEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            PARTITION_SYMBOL2719_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITION_SYMBOL2719));
            ADAPTOR->addChild(ADAPTOR, root_0, PARTITION_SYMBOL2719_tree);
            }

            BY_SYMBOL2720 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_partitioning13415);
            if  (HASEXCEPTION())
            {
                goto rulepartitioningEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            BY_SYMBOL2720_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BY_SYMBOL2720));
            ADAPTOR->addChild(ADAPTOR, root_0, BY_SYMBOL2720_tree);
            }

            // MySQL.g:2334:3: ( ( LINEAR_SYMBOL )? HASH_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | ( LINEAR_SYMBOL )? KEY_SYMBOL identifier_list_with_parentheses | ( RANGE_SYMBOL | LIST_SYMBOL ) ( OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL |{...}? => COLUMNS_SYMBOL identifier_list_with_parentheses ) )?
            {
                int alt741=4;
                switch ( LA(1) )
                {
                    case LINEAR_SYMBOL:
                    	{
                    		switch ( LA(2) )
                    		{
                    		    case HASH_SYMBOL:
                    		    	{
                    		    		alt741=1;
                    		    	}
                    		        break;
                    		    case KEY_SYMBOL:
                    		    	{
                    		    		alt741=2;
                    		    	}
                    		        break;
                    		}

                    	}
                        break;
                    case HASH_SYMBOL:
                    	{
                    		alt741=1;
                    	}
                        break;
                    case KEY_SYMBOL:
                    	{
                    		alt741=2;
                    	}
                        break;
                    case LIST_SYMBOL:
                    case RANGE_SYMBOL:
                    	{
                    		alt741=3;
                    	}
                        break;
                }

                switch (alt741)
                {
            	case 1:
            	    // MySQL.g:2335:4: ( LINEAR_SYMBOL )? HASH_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
            	    {
            	        // MySQL.g:2335:4: ( LINEAR_SYMBOL )?
            	        {
            	            int alt738=2;
            	            switch ( LA(1) )
            	            {
            	                case LINEAR_SYMBOL:
            	                	{
            	                		alt738=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt738)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2335:4: LINEAR_SYMBOL
            	        	    {
            	        	        LINEAR_SYMBOL2721 = (pANTLR3_COMMON_TOKEN) MATCHT(LINEAR_SYMBOL, &FOLLOW_LINEAR_SYMBOL_in_partitioning13424);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartitioningEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        LINEAR_SYMBOL2721_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LINEAR_SYMBOL2721));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, LINEAR_SYMBOL2721_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        HASH_SYMBOL2722 = (pANTLR3_COMMON_TOKEN) MATCHT(HASH_SYMBOL, &FOLLOW_HASH_SYMBOL_in_partitioning13427);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartitioningEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        HASH_SYMBOL2722_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HASH_SYMBOL2722));
            	        ADAPTOR->addChild(ADAPTOR, root_0, HASH_SYMBOL2722_tree);
            	        }

            	        OPEN_PAR_SYMBOL2723 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_partitioning13429);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartitioningEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPEN_PAR_SYMBOL2723_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2723));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2723_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_expression_in_partitioning13431);
            	        expression2724=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartitioningEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2724.tree);

            	        CLOSE_PAR_SYMBOL2725 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning13433);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartitioningEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CLOSE_PAR_SYMBOL2725_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2725));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2725_tree);
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2336:6: ( LINEAR_SYMBOL )? KEY_SYMBOL identifier_list_with_parentheses
            	    {
            	        // MySQL.g:2336:6: ( LINEAR_SYMBOL )?
            	        {
            	            int alt739=2;
            	            switch ( LA(1) )
            	            {
            	                case LINEAR_SYMBOL:
            	                	{
            	                		alt739=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt739)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2336:6: LINEAR_SYMBOL
            	        	    {
            	        	        LINEAR_SYMBOL2726 = (pANTLR3_COMMON_TOKEN) MATCHT(LINEAR_SYMBOL, &FOLLOW_LINEAR_SYMBOL_in_partitioning13440);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartitioningEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        LINEAR_SYMBOL2726_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LINEAR_SYMBOL2726));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, LINEAR_SYMBOL2726_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        KEY_SYMBOL2727 = (pANTLR3_COMMON_TOKEN) MATCHT(KEY_SYMBOL, &FOLLOW_KEY_SYMBOL_in_partitioning13443);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartitioningEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        KEY_SYMBOL2727_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, KEY_SYMBOL2727));
            	        ADAPTOR->addChild(ADAPTOR, root_0, KEY_SYMBOL2727_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_identifier_list_with_parentheses_in_partitioning13445);
            	        identifier_list_with_parentheses2728=identifier_list_with_parentheses(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartitioningEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list_with_parentheses2728.tree);

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:2337:6: ( RANGE_SYMBOL | LIST_SYMBOL ) ( OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL |{...}? => COLUMNS_SYMBOL identifier_list_with_parentheses )
            	    {
            	        set2729=(pANTLR3_COMMON_TOKEN)LT(1);

            	        if ( LA(1) == LIST_SYMBOL || LA(1) == RANGE_SYMBOL )
            	        {
            	            CONSUME();
            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2729))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	            CONSTRUCTEX();
            	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	            EXCEPTION->expectingSet = NULL;

            	            goto rulepartitioningEx;
            	        }


            	        // MySQL.g:2338:5: ( OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL |{...}? => COLUMNS_SYMBOL identifier_list_with_parentheses )
            	        {
            	            int alt740=2;
            	            {
            	                int LA740_0 = LA(1);
            	                if ( (LA740_0 == OPEN_PAR_SYMBOL))
            	                {
            	                    alt740=1;
            	                }
            	                else if ( ((SERVER_VERSION >= 50500)) && (LA740_0 == COLUMNS_SYMBOL))
            	                {
            	                    alt740=2;
            	                }
            	                else
            	                {
            	                    if (BACKTRACKING>0)
            	                    {
            	                        FAILEDFLAG = ANTLR3_TRUE;
            	                        return retval;
            	                    }


            	                    CONSTRUCTEX();
            	                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    EXCEPTION->message      = (void *)"";
            	                    EXCEPTION->decisionNum  = 740;
            	                    EXCEPTION->state        = 0;


            	                    goto rulepartitioningEx;

            	                }
            	            }
            	            switch (alt740)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2339:6: OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
            	        	    {
            	        	        OPEN_PAR_SYMBOL2730 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_partitioning13472);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartitioningEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        OPEN_PAR_SYMBOL2730_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2730));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2730_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_expression_in_partitioning13474);
            	        	        expression2731=expression(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartitioningEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2731.tree);

            	        	        CLOSE_PAR_SYMBOL2732 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning13476);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartitioningEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        CLOSE_PAR_SYMBOL2732_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2732));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2732_tree);
            	        	        }

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:2340:8: {...}? => COLUMNS_SYMBOL identifier_list_with_parentheses
            	        	    {
            	        	        if ( !((SERVER_VERSION >= 50500)) )
            	        	        {
            	        	            if (BACKTRACKING>0)
            	        	            {
            	        	                FAILEDFLAG = ANTLR3_TRUE;
            	        	                return retval;
            	        	            }

            	        	                CONSTRUCTEX();
            	        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
            	        	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50500";
            	        	                EXCEPTION->ruleName	 = (void *)"partitioning";


            	        	        }

            	        	        COLUMNS_SYMBOL2733 = (pANTLR3_COMMON_TOKEN) MATCHT(COLUMNS_SYMBOL, &FOLLOW_COLUMNS_SYMBOL_in_partitioning13489);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartitioningEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COLUMNS_SYMBOL2733_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLUMNS_SYMBOL2733));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COLUMNS_SYMBOL2733_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_identifier_list_with_parentheses_in_partitioning13491);
            	        	        identifier_list_with_parentheses2734=identifier_list_with_parentheses(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartitioningEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list_with_parentheses2734.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:2343:3: ( PARTITIONS_SYMBOL INTEGER )?
            {
                int alt742=2;
                switch ( LA(1) )
                {
                    case PARTITIONS_SYMBOL:
                    	{
                    		alt742=1;
                    	}
                        break;
                }

                switch (alt742)
                {
            	case 1:
            	    // MySQL.g:2343:4: PARTITIONS_SYMBOL INTEGER
            	    {
            	        PARTITIONS_SYMBOL2735 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITIONS_SYMBOL, &FOLLOW_PARTITIONS_SYMBOL_in_partitioning13507);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartitioningEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PARTITIONS_SYMBOL2735_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITIONS_SYMBOL2735));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PARTITIONS_SYMBOL2735_tree);
            	        }

            	        INTEGER2736 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_partitioning13509);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartitioningEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INTEGER2736_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER2736));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER2736_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:2344:3: ( SUBPARTITION_SYMBOL BY_SYMBOL ( ( LINEAR_SYMBOL )? HASH_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | ( LINEAR_SYMBOL )? KEY_SYMBOL identifier_list_with_parentheses )? ( SUBPARTITIONS_SYMBOL INTEGER )? )?
            {
                int alt747=2;
                switch ( LA(1) )
                {
                    case SUBPARTITION_SYMBOL:
                    	{
                    		alt747=1;
                    	}
                        break;
                }

                switch (alt747)
                {
            	case 1:
            	    // MySQL.g:2345:4: SUBPARTITION_SYMBOL BY_SYMBOL ( ( LINEAR_SYMBOL )? HASH_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | ( LINEAR_SYMBOL )? KEY_SYMBOL identifier_list_with_parentheses )? ( SUBPARTITIONS_SYMBOL INTEGER )?
            	    {
            	        SUBPARTITION_SYMBOL2737 = (pANTLR3_COMMON_TOKEN) MATCHT(SUBPARTITION_SYMBOL, &FOLLOW_SUBPARTITION_SYMBOL_in_partitioning13520);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartitioningEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SUBPARTITION_SYMBOL2737_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SUBPARTITION_SYMBOL2737));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SUBPARTITION_SYMBOL2737_tree);
            	        }

            	        BY_SYMBOL2738 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_partitioning13522);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartitioningEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        BY_SYMBOL2738_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BY_SYMBOL2738));
            	        ADAPTOR->addChild(ADAPTOR, root_0, BY_SYMBOL2738_tree);
            	        }

            	        // MySQL.g:2346:4: ( ( LINEAR_SYMBOL )? HASH_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | ( LINEAR_SYMBOL )? KEY_SYMBOL identifier_list_with_parentheses )?
            	        {
            	            int alt745=3;
            	            switch ( LA(1) )
            	            {
            	                case LINEAR_SYMBOL:
            	                	{
            	                		switch ( LA(2) )
            	                		{
            	                		    case HASH_SYMBOL:
            	                		    	{
            	                		    		alt745=1;
            	                		    	}
            	                		        break;
            	                		    case KEY_SYMBOL:
            	                		    	{
            	                		    		alt745=2;
            	                		    	}
            	                		        break;
            	                		}

            	                	}
            	                    break;
            	                case HASH_SYMBOL:
            	                	{
            	                		alt745=1;
            	                	}
            	                    break;
            	                case KEY_SYMBOL:
            	                	{
            	                		alt745=2;
            	                	}
            	                    break;
            	            }

            	            switch (alt745)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2347:5: ( LINEAR_SYMBOL )? HASH_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
            	        	    {
            	        	        // MySQL.g:2347:5: ( LINEAR_SYMBOL )?
            	        	        {
            	        	            int alt743=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case LINEAR_SYMBOL:
            	        	                	{
            	        	                		alt743=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt743)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:2347:5: LINEAR_SYMBOL
            	        	        	    {
            	        	        	        LINEAR_SYMBOL2739 = (pANTLR3_COMMON_TOKEN) MATCHT(LINEAR_SYMBOL, &FOLLOW_LINEAR_SYMBOL_in_partitioning13533);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulepartitioningEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        LINEAR_SYMBOL2739_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LINEAR_SYMBOL2739));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, LINEAR_SYMBOL2739_tree);
            	        	        	        }

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	        HASH_SYMBOL2740 = (pANTLR3_COMMON_TOKEN) MATCHT(HASH_SYMBOL, &FOLLOW_HASH_SYMBOL_in_partitioning13536);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartitioningEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        HASH_SYMBOL2740_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HASH_SYMBOL2740));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, HASH_SYMBOL2740_tree);
            	        	        }

            	        	        OPEN_PAR_SYMBOL2741 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_partitioning13538);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartitioningEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        OPEN_PAR_SYMBOL2741_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2741));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2741_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_expression_in_partitioning13540);
            	        	        expression2742=expression(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartitioningEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2742.tree);

            	        	        CLOSE_PAR_SYMBOL2743 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning13542);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartitioningEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        CLOSE_PAR_SYMBOL2743_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2743));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2743_tree);
            	        	        }

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:2348:7: ( LINEAR_SYMBOL )? KEY_SYMBOL identifier_list_with_parentheses
            	        	    {
            	        	        // MySQL.g:2348:7: ( LINEAR_SYMBOL )?
            	        	        {
            	        	            int alt744=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case LINEAR_SYMBOL:
            	        	                	{
            	        	                		alt744=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt744)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:2348:7: LINEAR_SYMBOL
            	        	        	    {
            	        	        	        LINEAR_SYMBOL2744 = (pANTLR3_COMMON_TOKEN) MATCHT(LINEAR_SYMBOL, &FOLLOW_LINEAR_SYMBOL_in_partitioning13550);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulepartitioningEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        LINEAR_SYMBOL2744_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LINEAR_SYMBOL2744));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, LINEAR_SYMBOL2744_tree);
            	        	        	        }

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	        KEY_SYMBOL2745 = (pANTLR3_COMMON_TOKEN) MATCHT(KEY_SYMBOL, &FOLLOW_KEY_SYMBOL_in_partitioning13553);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartitioningEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        KEY_SYMBOL2745_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, KEY_SYMBOL2745));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, KEY_SYMBOL2745_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_identifier_list_with_parentheses_in_partitioning13555);
            	        	        identifier_list_with_parentheses2746=identifier_list_with_parentheses(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartitioningEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list_with_parentheses2746.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:2350:4: ( SUBPARTITIONS_SYMBOL INTEGER )?
            	        {
            	            int alt746=2;
            	            switch ( LA(1) )
            	            {
            	                case SUBPARTITIONS_SYMBOL:
            	                	{
            	                		alt746=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt746)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2350:5: SUBPARTITIONS_SYMBOL INTEGER
            	        	    {
            	        	        SUBPARTITIONS_SYMBOL2747 = (pANTLR3_COMMON_TOKEN) MATCHT(SUBPARTITIONS_SYMBOL, &FOLLOW_SUBPARTITIONS_SYMBOL_in_partitioning13567);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartitioningEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        SUBPARTITIONS_SYMBOL2747_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SUBPARTITIONS_SYMBOL2747));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, SUBPARTITIONS_SYMBOL2747_tree);
            	        	        }

            	        	        INTEGER2748 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_partitioning13569);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartitioningEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        INTEGER2748_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER2748));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER2748_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:2352:6: ( partition_definitions )?
            {
                int alt748=2;
                switch ( LA(1) )
                {
                    case OPEN_PAR_SYMBOL:
                    	{
                    		switch ( LA(2) )
                    		{
                    		    case PARTITION_SYMBOL:
                    		    	{
                    		    		alt748=1;
                    		    	}
                    		        break;
                    		}

                    	}
                        break;
                }

                switch (alt748)
                {
            	case 1:
            	    // MySQL.g:2352:6: partition_definitions
            	    {
            	        FOLLOWPUSH(FOLLOW_partition_definitions_in_partitioning13586);
            	        partition_definitions2749=partition_definitions(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartitioningEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partition_definitions2749.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulepartitioningEx; /* Prevent compiler warnings */
    rulepartitioningEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end partitioning */

/**
 * $ANTLR start partition_definitions
 * MySQL.g:2355:1: partition_definitions : OPEN_PAR_SYMBOL partition_definition ( COMMA_SYMBOL partition_definition )* CLOSE_PAR_SYMBOL ;
 */
static MySQLParser_partition_definitions_return
partition_definitions(pMySQLParser ctx)
{
    MySQLParser_partition_definitions_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2750;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2752;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2754;
    MySQLParser_partition_definition_return partition_definition2751;
    #undef	RETURN_TYPE_partition_definition2751
    #define	RETURN_TYPE_partition_definition2751 MySQLParser_partition_definition_return

    MySQLParser_partition_definition_return partition_definition2753;
    #undef	RETURN_TYPE_partition_definition2753
    #define	RETURN_TYPE_partition_definition2753 MySQLParser_partition_definition_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2750_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2752_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2754_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL2750       = NULL;
    COMMA_SYMBOL2752       = NULL;
    CLOSE_PAR_SYMBOL2754       = NULL;
    partition_definition2751.tree = NULL;

    partition_definition2753.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL2750_tree   = NULL;
    COMMA_SYMBOL2752_tree   = NULL;
    CLOSE_PAR_SYMBOL2754_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2355:22: ( OPEN_PAR_SYMBOL partition_definition ( COMMA_SYMBOL partition_definition )* CLOSE_PAR_SYMBOL )
        // MySQL.g:2356:2: OPEN_PAR_SYMBOL partition_definition ( COMMA_SYMBOL partition_definition )* CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPEN_PAR_SYMBOL2750 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_partition_definitions13596);
            if  (HASEXCEPTION())
            {
                goto rulepartition_definitionsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL2750_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2750));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2750_tree);
            }

            FOLLOWPUSH(FOLLOW_partition_definition_in_partition_definitions13598);
            partition_definition2751=partition_definition(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulepartition_definitionsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partition_definition2751.tree);

            // MySQL.g:2356:39: ( COMMA_SYMBOL partition_definition )*

            for (;;)
            {
                int alt749=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt749=1;
                	}
                    break;

                }

                switch (alt749)
                {
            	case 1:
            	    // MySQL.g:2356:40: COMMA_SYMBOL partition_definition
            	    {
            	        COMMA_SYMBOL2752 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_partition_definitions13601);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_definitionsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL2752_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2752));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2752_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_partition_definition_in_partition_definitions13603);
            	        partition_definition2753=partition_definition(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_definitionsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partition_definition2753.tree);

            	    }
            	    break;

            	default:
            	    goto loop749;	/* break out of the loop */
            	    break;
                }
            }
            loop749: ; /* Jump out to here if this rule does not match */


            CLOSE_PAR_SYMBOL2754 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_partition_definitions13607);
            if  (HASEXCEPTION())
            {
                goto rulepartition_definitionsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL2754_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2754));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2754_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulepartition_definitionsEx; /* Prevent compiler warnings */
    rulepartition_definitionsEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end partition_definitions */

/**
 * $ANTLR start partition_definition
 * MySQL.g:2359:1: partition_definition : PARTITION_SYMBOL identifier ( VALUES_SYMBOL ( LESS_SYMBOL THAN_SYMBOL ( partition_value_list | MAXVALUE_SYMBOL ) | IN_SYMBOL partition_value_list ) )? ( ( STORAGE_SYMBOL )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? IDENTIFIER )? ( COMMENT_SYMBOL ( EQUAL_OPERATOR )? string_literal )? ( DATA_SYMBOL DIRECTORY_SYMBOL ( EQUAL_OPERATOR )? string_literal )? ( INDEX_SYMBOL DIRECTORY_SYMBOL ( EQUAL_OPERATOR )? string_literal )? ( MAX_ROWS_SYMBOL ( EQUAL_OPERATOR )? INTEGER )? ( MIN_ROWS_SYMBOL ( EQUAL_OPERATOR )? INTEGER )? ( TABLESPACE_SYMBOL ( EQUAL_OPERATOR )? identifier )? ( NODEGROUP_SYMBOL ( EQUAL_OPERATOR )? identifier )? ( OPEN_PAR_SYMBOL subpartition_definition ( COMMA_SYMBOL subpartition_definition )* CLOSE_PAR_SYMBOL )? ;
 */
static MySQLParser_partition_definition_return
partition_definition(pMySQLParser ctx)
{
    MySQLParser_partition_definition_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL2755;
    pANTLR3_COMMON_TOKEN    VALUES_SYMBOL2757;
    pANTLR3_COMMON_TOKEN    LESS_SYMBOL2758;
    pANTLR3_COMMON_TOKEN    THAN_SYMBOL2759;
    pANTLR3_COMMON_TOKEN    MAXVALUE_SYMBOL2761;
    pANTLR3_COMMON_TOKEN    IN_SYMBOL2762;
    pANTLR3_COMMON_TOKEN    STORAGE_SYMBOL2764;
    pANTLR3_COMMON_TOKEN    ENGINE_SYMBOL2765;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2766;
    pANTLR3_COMMON_TOKEN    IDENTIFIER2767;
    pANTLR3_COMMON_TOKEN    COMMENT_SYMBOL2768;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2769;
    pANTLR3_COMMON_TOKEN    DATA_SYMBOL2771;
    pANTLR3_COMMON_TOKEN    DIRECTORY_SYMBOL2772;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2773;
    pANTLR3_COMMON_TOKEN    INDEX_SYMBOL2775;
    pANTLR3_COMMON_TOKEN    DIRECTORY_SYMBOL2776;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2777;
    pANTLR3_COMMON_TOKEN    MAX_ROWS_SYMBOL2779;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2780;
    pANTLR3_COMMON_TOKEN    INTEGER2781;
    pANTLR3_COMMON_TOKEN    MIN_ROWS_SYMBOL2782;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2783;
    pANTLR3_COMMON_TOKEN    INTEGER2784;
    pANTLR3_COMMON_TOKEN    TABLESPACE_SYMBOL2785;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2786;
    pANTLR3_COMMON_TOKEN    NODEGROUP_SYMBOL2788;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2789;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2791;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2793;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2795;
    MySQLParser_identifier_return identifier2756;
    #undef	RETURN_TYPE_identifier2756
    #define	RETURN_TYPE_identifier2756 MySQLParser_identifier_return

    MySQLParser_partition_value_list_return partition_value_list2760;
    #undef	RETURN_TYPE_partition_value_list2760
    #define	RETURN_TYPE_partition_value_list2760 MySQLParser_partition_value_list_return

    MySQLParser_partition_value_list_return partition_value_list2763;
    #undef	RETURN_TYPE_partition_value_list2763
    #define	RETURN_TYPE_partition_value_list2763 MySQLParser_partition_value_list_return

    MySQLParser_string_literal_return string_literal2770;
    #undef	RETURN_TYPE_string_literal2770
    #define	RETURN_TYPE_string_literal2770 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal2774;
    #undef	RETURN_TYPE_string_literal2774
    #define	RETURN_TYPE_string_literal2774 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal2778;
    #undef	RETURN_TYPE_string_literal2778
    #define	RETURN_TYPE_string_literal2778 MySQLParser_string_literal_return

    MySQLParser_identifier_return identifier2787;
    #undef	RETURN_TYPE_identifier2787
    #define	RETURN_TYPE_identifier2787 MySQLParser_identifier_return

    MySQLParser_identifier_return identifier2790;
    #undef	RETURN_TYPE_identifier2790
    #define	RETURN_TYPE_identifier2790 MySQLParser_identifier_return

    MySQLParser_subpartition_definition_return subpartition_definition2792;
    #undef	RETURN_TYPE_subpartition_definition2792
    #define	RETURN_TYPE_subpartition_definition2792 MySQLParser_subpartition_definition_return

    MySQLParser_subpartition_definition_return subpartition_definition2794;
    #undef	RETURN_TYPE_subpartition_definition2794
    #define	RETURN_TYPE_subpartition_definition2794 MySQLParser_subpartition_definition_return

    pANTLR3_BASE_TREE PARTITION_SYMBOL2755_tree;
    pANTLR3_BASE_TREE VALUES_SYMBOL2757_tree;
    pANTLR3_BASE_TREE LESS_SYMBOL2758_tree;
    pANTLR3_BASE_TREE THAN_SYMBOL2759_tree;
    pANTLR3_BASE_TREE MAXVALUE_SYMBOL2761_tree;
    pANTLR3_BASE_TREE IN_SYMBOL2762_tree;
    pANTLR3_BASE_TREE STORAGE_SYMBOL2764_tree;
    pANTLR3_BASE_TREE ENGINE_SYMBOL2765_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2766_tree;
    pANTLR3_BASE_TREE IDENTIFIER2767_tree;
    pANTLR3_BASE_TREE COMMENT_SYMBOL2768_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2769_tree;
    pANTLR3_BASE_TREE DATA_SYMBOL2771_tree;
    pANTLR3_BASE_TREE DIRECTORY_SYMBOL2772_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2773_tree;
    pANTLR3_BASE_TREE INDEX_SYMBOL2775_tree;
    pANTLR3_BASE_TREE DIRECTORY_SYMBOL2776_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2777_tree;
    pANTLR3_BASE_TREE MAX_ROWS_SYMBOL2779_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2780_tree;
    pANTLR3_BASE_TREE INTEGER2781_tree;
    pANTLR3_BASE_TREE MIN_ROWS_SYMBOL2782_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2783_tree;
    pANTLR3_BASE_TREE INTEGER2784_tree;
    pANTLR3_BASE_TREE TABLESPACE_SYMBOL2785_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2786_tree;
    pANTLR3_BASE_TREE NODEGROUP_SYMBOL2788_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2789_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2791_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2793_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2795_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PARTITION_SYMBOL2755       = NULL;
    VALUES_SYMBOL2757       = NULL;
    LESS_SYMBOL2758       = NULL;
    THAN_SYMBOL2759       = NULL;
    MAXVALUE_SYMBOL2761       = NULL;
    IN_SYMBOL2762       = NULL;
    STORAGE_SYMBOL2764       = NULL;
    ENGINE_SYMBOL2765       = NULL;
    EQUAL_OPERATOR2766       = NULL;
    IDENTIFIER2767       = NULL;
    COMMENT_SYMBOL2768       = NULL;
    EQUAL_OPERATOR2769       = NULL;
    DATA_SYMBOL2771       = NULL;
    DIRECTORY_SYMBOL2772       = NULL;
    EQUAL_OPERATOR2773       = NULL;
    INDEX_SYMBOL2775       = NULL;
    DIRECTORY_SYMBOL2776       = NULL;
    EQUAL_OPERATOR2777       = NULL;
    MAX_ROWS_SYMBOL2779       = NULL;
    EQUAL_OPERATOR2780       = NULL;
    INTEGER2781       = NULL;
    MIN_ROWS_SYMBOL2782       = NULL;
    EQUAL_OPERATOR2783       = NULL;
    INTEGER2784       = NULL;
    TABLESPACE_SYMBOL2785       = NULL;
    EQUAL_OPERATOR2786       = NULL;
    NODEGROUP_SYMBOL2788       = NULL;
    EQUAL_OPERATOR2789       = NULL;
    OPEN_PAR_SYMBOL2791       = NULL;
    COMMA_SYMBOL2793       = NULL;
    CLOSE_PAR_SYMBOL2795       = NULL;
    identifier2756.tree = NULL;

    partition_value_list2760.tree = NULL;

    partition_value_list2763.tree = NULL;

    string_literal2770.tree = NULL;

    string_literal2774.tree = NULL;

    string_literal2778.tree = NULL;

    identifier2787.tree = NULL;

    identifier2790.tree = NULL;

    subpartition_definition2792.tree = NULL;

    subpartition_definition2794.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PARTITION_SYMBOL2755_tree   = NULL;
    VALUES_SYMBOL2757_tree   = NULL;
    LESS_SYMBOL2758_tree   = NULL;
    THAN_SYMBOL2759_tree   = NULL;
    MAXVALUE_SYMBOL2761_tree   = NULL;
    IN_SYMBOL2762_tree   = NULL;
    STORAGE_SYMBOL2764_tree   = NULL;
    ENGINE_SYMBOL2765_tree   = NULL;
    EQUAL_OPERATOR2766_tree   = NULL;
    IDENTIFIER2767_tree   = NULL;
    COMMENT_SYMBOL2768_tree   = NULL;
    EQUAL_OPERATOR2769_tree   = NULL;
    DATA_SYMBOL2771_tree   = NULL;
    DIRECTORY_SYMBOL2772_tree   = NULL;
    EQUAL_OPERATOR2773_tree   = NULL;
    INDEX_SYMBOL2775_tree   = NULL;
    DIRECTORY_SYMBOL2776_tree   = NULL;
    EQUAL_OPERATOR2777_tree   = NULL;
    MAX_ROWS_SYMBOL2779_tree   = NULL;
    EQUAL_OPERATOR2780_tree   = NULL;
    INTEGER2781_tree   = NULL;
    MIN_ROWS_SYMBOL2782_tree   = NULL;
    EQUAL_OPERATOR2783_tree   = NULL;
    INTEGER2784_tree   = NULL;
    TABLESPACE_SYMBOL2785_tree   = NULL;
    EQUAL_OPERATOR2786_tree   = NULL;
    NODEGROUP_SYMBOL2788_tree   = NULL;
    EQUAL_OPERATOR2789_tree   = NULL;
    OPEN_PAR_SYMBOL2791_tree   = NULL;
    COMMA_SYMBOL2793_tree   = NULL;
    CLOSE_PAR_SYMBOL2795_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2359:21: ( PARTITION_SYMBOL identifier ( VALUES_SYMBOL ( LESS_SYMBOL THAN_SYMBOL ( partition_value_list | MAXVALUE_SYMBOL ) | IN_SYMBOL partition_value_list ) )? ( ( STORAGE_SYMBOL )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? IDENTIFIER )? ( COMMENT_SYMBOL ( EQUAL_OPERATOR )? string_literal )? ( DATA_SYMBOL DIRECTORY_SYMBOL ( EQUAL_OPERATOR )? string_literal )? ( INDEX_SYMBOL DIRECTORY_SYMBOL ( EQUAL_OPERATOR )? string_literal )? ( MAX_ROWS_SYMBOL ( EQUAL_OPERATOR )? INTEGER )? ( MIN_ROWS_SYMBOL ( EQUAL_OPERATOR )? INTEGER )? ( TABLESPACE_SYMBOL ( EQUAL_OPERATOR )? identifier )? ( NODEGROUP_SYMBOL ( EQUAL_OPERATOR )? identifier )? ( OPEN_PAR_SYMBOL subpartition_definition ( COMMA_SYMBOL subpartition_definition )* CLOSE_PAR_SYMBOL )? )
        // MySQL.g:2360:2: PARTITION_SYMBOL identifier ( VALUES_SYMBOL ( LESS_SYMBOL THAN_SYMBOL ( partition_value_list | MAXVALUE_SYMBOL ) | IN_SYMBOL partition_value_list ) )? ( ( STORAGE_SYMBOL )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? IDENTIFIER )? ( COMMENT_SYMBOL ( EQUAL_OPERATOR )? string_literal )? ( DATA_SYMBOL DIRECTORY_SYMBOL ( EQUAL_OPERATOR )? string_literal )? ( INDEX_SYMBOL DIRECTORY_SYMBOL ( EQUAL_OPERATOR )? string_literal )? ( MAX_ROWS_SYMBOL ( EQUAL_OPERATOR )? INTEGER )? ( MIN_ROWS_SYMBOL ( EQUAL_OPERATOR )? INTEGER )? ( TABLESPACE_SYMBOL ( EQUAL_OPERATOR )? identifier )? ( NODEGROUP_SYMBOL ( EQUAL_OPERATOR )? identifier )? ( OPEN_PAR_SYMBOL subpartition_definition ( COMMA_SYMBOL subpartition_definition )* CLOSE_PAR_SYMBOL )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            PARTITION_SYMBOL2755 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_partition_definition13616);
            if  (HASEXCEPTION())
            {
                goto rulepartition_definitionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            PARTITION_SYMBOL2755_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITION_SYMBOL2755));
            ADAPTOR->addChild(ADAPTOR, root_0, PARTITION_SYMBOL2755_tree);
            }

            FOLLOWPUSH(FOLLOW_identifier_in_partition_definition13618);
            identifier2756=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulepartition_definitionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2756.tree);

            // MySQL.g:2361:2: ( VALUES_SYMBOL ( LESS_SYMBOL THAN_SYMBOL ( partition_value_list | MAXVALUE_SYMBOL ) | IN_SYMBOL partition_value_list ) )?
            {
                int alt752=2;
                switch ( LA(1) )
                {
                    case VALUES_SYMBOL:
                    	{
                    		alt752=1;
                    	}
                        break;
                }

                switch (alt752)
                {
            	case 1:
            	    // MySQL.g:2362:3: VALUES_SYMBOL ( LESS_SYMBOL THAN_SYMBOL ( partition_value_list | MAXVALUE_SYMBOL ) | IN_SYMBOL partition_value_list )
            	    {
            	        VALUES_SYMBOL2757 = (pANTLR3_COMMON_TOKEN) MATCHT(VALUES_SYMBOL, &FOLLOW_VALUES_SYMBOL_in_partition_definition13625);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        VALUES_SYMBOL2757_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VALUES_SYMBOL2757));
            	        ADAPTOR->addChild(ADAPTOR, root_0, VALUES_SYMBOL2757_tree);
            	        }

            	        // MySQL.g:2363:3: ( LESS_SYMBOL THAN_SYMBOL ( partition_value_list | MAXVALUE_SYMBOL ) | IN_SYMBOL partition_value_list )
            	        {
            	            int alt751=2;
            	            switch ( LA(1) )
            	            {
            	            case LESS_SYMBOL:
            	            	{
            	            		alt751=1;
            	            	}
            	                break;
            	            case IN_SYMBOL:
            	            	{
            	            		alt751=2;
            	            	}
            	                break;

            	            default:
            	                if (BACKTRACKING>0)
            	                {
            	                    FAILEDFLAG = ANTLR3_TRUE;
            	                    return retval;
            	                }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                EXCEPTION->message      = (void *)"";
            	                EXCEPTION->decisionNum  = 751;
            	                EXCEPTION->state        = 0;


            	                goto rulepartition_definitionEx;

            	            }

            	            switch (alt751)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2364:4: LESS_SYMBOL THAN_SYMBOL ( partition_value_list | MAXVALUE_SYMBOL )
            	        	    {
            	        	        LESS_SYMBOL2758 = (pANTLR3_COMMON_TOKEN) MATCHT(LESS_SYMBOL, &FOLLOW_LESS_SYMBOL_in_partition_definition13634);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartition_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        LESS_SYMBOL2758_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LESS_SYMBOL2758));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, LESS_SYMBOL2758_tree);
            	        	        }

            	        	        THAN_SYMBOL2759 = (pANTLR3_COMMON_TOKEN) MATCHT(THAN_SYMBOL, &FOLLOW_THAN_SYMBOL_in_partition_definition13636);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartition_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        THAN_SYMBOL2759_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, THAN_SYMBOL2759));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, THAN_SYMBOL2759_tree);
            	        	        }

            	        	        // MySQL.g:2364:28: ( partition_value_list | MAXVALUE_SYMBOL )
            	        	        {
            	        	            int alt750=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	            case OPEN_PAR_SYMBOL:
            	        	            	{
            	        	            		alt750=1;
            	        	            	}
            	        	                break;
            	        	            case MAXVALUE_SYMBOL:
            	        	            	{
            	        	            		alt750=2;
            	        	            	}
            	        	                break;

            	        	            default:
            	        	                if (BACKTRACKING>0)
            	        	                {
            	        	                    FAILEDFLAG = ANTLR3_TRUE;
            	        	                    return retval;
            	        	                }

            	        	                CONSTRUCTEX();
            	        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	        	                EXCEPTION->message      = (void *)"";
            	        	                EXCEPTION->decisionNum  = 750;
            	        	                EXCEPTION->state        = 0;


            	        	                goto rulepartition_definitionEx;

            	        	            }

            	        	            switch (alt750)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:2364:29: partition_value_list
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_partition_value_list_in_partition_definition13639);
            	        	        	        partition_value_list2760=partition_value_list(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulepartition_definitionEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partition_value_list2760.tree);

            	        	        	    }
            	        	        	    break;
            	        	        	case 2:
            	        	        	    // MySQL.g:2364:52: MAXVALUE_SYMBOL
            	        	        	    {
            	        	        	        MAXVALUE_SYMBOL2761 = (pANTLR3_COMMON_TOKEN) MATCHT(MAXVALUE_SYMBOL, &FOLLOW_MAXVALUE_SYMBOL_in_partition_definition13643);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulepartition_definitionEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        MAXVALUE_SYMBOL2761_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAXVALUE_SYMBOL2761));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, MAXVALUE_SYMBOL2761_tree);
            	        	        	        }

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:2365:6: IN_SYMBOL partition_value_list
            	        	    {
            	        	        IN_SYMBOL2762 = (pANTLR3_COMMON_TOKEN) MATCHT(IN_SYMBOL, &FOLLOW_IN_SYMBOL_in_partition_definition13651);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartition_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        IN_SYMBOL2762_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IN_SYMBOL2762));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, IN_SYMBOL2762_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_partition_value_list_in_partition_definition13653);
            	        	        partition_value_list2763=partition_value_list(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartition_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partition_value_list2763.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:2368:2: ( ( STORAGE_SYMBOL )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? IDENTIFIER )?
            {
                int alt755=2;
                switch ( LA(1) )
                {
                    case ENGINE_SYMBOL:
                    case STORAGE_SYMBOL:
                    	{
                    		alt755=1;
                    	}
                        break;
                }

                switch (alt755)
                {
            	case 1:
            	    // MySQL.g:2368:3: ( STORAGE_SYMBOL )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? IDENTIFIER
            	    {
            	        // MySQL.g:2368:3: ( STORAGE_SYMBOL )?
            	        {
            	            int alt753=2;
            	            switch ( LA(1) )
            	            {
            	                case STORAGE_SYMBOL:
            	                	{
            	                		alt753=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt753)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2368:3: STORAGE_SYMBOL
            	        	    {
            	        	        STORAGE_SYMBOL2764 = (pANTLR3_COMMON_TOKEN) MATCHT(STORAGE_SYMBOL, &FOLLOW_STORAGE_SYMBOL_in_partition_definition13665);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartition_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        STORAGE_SYMBOL2764_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STORAGE_SYMBOL2764));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, STORAGE_SYMBOL2764_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        ENGINE_SYMBOL2765 = (pANTLR3_COMMON_TOKEN) MATCHT(ENGINE_SYMBOL, &FOLLOW_ENGINE_SYMBOL_in_partition_definition13668);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ENGINE_SYMBOL2765_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ENGINE_SYMBOL2765));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ENGINE_SYMBOL2765_tree);
            	        }

            	        // MySQL.g:2368:33: ( EQUAL_OPERATOR )?
            	        {
            	            int alt754=2;
            	            switch ( LA(1) )
            	            {
            	                case EQUAL_OPERATOR:
            	                	{
            	                		alt754=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt754)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2368:33: EQUAL_OPERATOR
            	        	    {
            	        	        EQUAL_OPERATOR2766 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_partition_definition13670);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartition_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EQUAL_OPERATOR2766_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2766));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2766_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        IDENTIFIER2767 = (pANTLR3_COMMON_TOKEN) MATCHT(IDENTIFIER, &FOLLOW_IDENTIFIER_in_partition_definition13673);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        IDENTIFIER2767_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IDENTIFIER2767));
            	        ADAPTOR->addChild(ADAPTOR, root_0, IDENTIFIER2767_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:2369:2: ( COMMENT_SYMBOL ( EQUAL_OPERATOR )? string_literal )?
            {
                int alt757=2;
                switch ( LA(1) )
                {
                    case COMMENT_SYMBOL:
                    	{
                    		alt757=1;
                    	}
                        break;
                }

                switch (alt757)
                {
            	case 1:
            	    // MySQL.g:2369:3: COMMENT_SYMBOL ( EQUAL_OPERATOR )? string_literal
            	    {
            	        COMMENT_SYMBOL2768 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMENT_SYMBOL, &FOLLOW_COMMENT_SYMBOL_in_partition_definition13679);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMENT_SYMBOL2768_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMENT_SYMBOL2768));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMENT_SYMBOL2768_tree);
            	        }

            	        // MySQL.g:2369:18: ( EQUAL_OPERATOR )?
            	        {
            	            int alt756=2;
            	            switch ( LA(1) )
            	            {
            	                case EQUAL_OPERATOR:
            	                	{
            	                		alt756=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt756)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2369:18: EQUAL_OPERATOR
            	        	    {
            	        	        EQUAL_OPERATOR2769 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_partition_definition13681);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartition_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EQUAL_OPERATOR2769_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2769));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2769_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_string_literal_in_partition_definition13684);
            	        string_literal2770=string_literal(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal2770.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:2370:2: ( DATA_SYMBOL DIRECTORY_SYMBOL ( EQUAL_OPERATOR )? string_literal )?
            {
                int alt759=2;
                switch ( LA(1) )
                {
                    case DATA_SYMBOL:
                    	{
                    		alt759=1;
                    	}
                        break;
                }

                switch (alt759)
                {
            	case 1:
            	    // MySQL.g:2370:3: DATA_SYMBOL DIRECTORY_SYMBOL ( EQUAL_OPERATOR )? string_literal
            	    {
            	        DATA_SYMBOL2771 = (pANTLR3_COMMON_TOKEN) MATCHT(DATA_SYMBOL, &FOLLOW_DATA_SYMBOL_in_partition_definition13690);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DATA_SYMBOL2771_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATA_SYMBOL2771));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DATA_SYMBOL2771_tree);
            	        }

            	        DIRECTORY_SYMBOL2772 = (pANTLR3_COMMON_TOKEN) MATCHT(DIRECTORY_SYMBOL, &FOLLOW_DIRECTORY_SYMBOL_in_partition_definition13692);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DIRECTORY_SYMBOL2772_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DIRECTORY_SYMBOL2772));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DIRECTORY_SYMBOL2772_tree);
            	        }

            	        // MySQL.g:2370:32: ( EQUAL_OPERATOR )?
            	        {
            	            int alt758=2;
            	            switch ( LA(1) )
            	            {
            	                case EQUAL_OPERATOR:
            	                	{
            	                		alt758=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt758)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2370:32: EQUAL_OPERATOR
            	        	    {
            	        	        EQUAL_OPERATOR2773 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_partition_definition13694);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartition_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EQUAL_OPERATOR2773_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2773));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2773_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_string_literal_in_partition_definition13697);
            	        string_literal2774=string_literal(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal2774.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:2371:2: ( INDEX_SYMBOL DIRECTORY_SYMBOL ( EQUAL_OPERATOR )? string_literal )?
            {
                int alt761=2;
                switch ( LA(1) )
                {
                    case INDEX_SYMBOL:
                    	{
                    		alt761=1;
                    	}
                        break;
                }

                switch (alt761)
                {
            	case 1:
            	    // MySQL.g:2371:3: INDEX_SYMBOL DIRECTORY_SYMBOL ( EQUAL_OPERATOR )? string_literal
            	    {
            	        INDEX_SYMBOL2775 = (pANTLR3_COMMON_TOKEN) MATCHT(INDEX_SYMBOL, &FOLLOW_INDEX_SYMBOL_in_partition_definition13703);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INDEX_SYMBOL2775_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INDEX_SYMBOL2775));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INDEX_SYMBOL2775_tree);
            	        }

            	        DIRECTORY_SYMBOL2776 = (pANTLR3_COMMON_TOKEN) MATCHT(DIRECTORY_SYMBOL, &FOLLOW_DIRECTORY_SYMBOL_in_partition_definition13705);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DIRECTORY_SYMBOL2776_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DIRECTORY_SYMBOL2776));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DIRECTORY_SYMBOL2776_tree);
            	        }

            	        // MySQL.g:2371:33: ( EQUAL_OPERATOR )?
            	        {
            	            int alt760=2;
            	            switch ( LA(1) )
            	            {
            	                case EQUAL_OPERATOR:
            	                	{
            	                		alt760=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt760)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2371:33: EQUAL_OPERATOR
            	        	    {
            	        	        EQUAL_OPERATOR2777 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_partition_definition13707);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartition_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EQUAL_OPERATOR2777_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2777));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2777_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_string_literal_in_partition_definition13710);
            	        string_literal2778=string_literal(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal2778.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:2372:2: ( MAX_ROWS_SYMBOL ( EQUAL_OPERATOR )? INTEGER )?
            {
                int alt763=2;
                switch ( LA(1) )
                {
                    case MAX_ROWS_SYMBOL:
                    	{
                    		alt763=1;
                    	}
                        break;
                }

                switch (alt763)
                {
            	case 1:
            	    // MySQL.g:2372:3: MAX_ROWS_SYMBOL ( EQUAL_OPERATOR )? INTEGER
            	    {
            	        MAX_ROWS_SYMBOL2779 = (pANTLR3_COMMON_TOKEN) MATCHT(MAX_ROWS_SYMBOL, &FOLLOW_MAX_ROWS_SYMBOL_in_partition_definition13716);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        MAX_ROWS_SYMBOL2779_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAX_ROWS_SYMBOL2779));
            	        ADAPTOR->addChild(ADAPTOR, root_0, MAX_ROWS_SYMBOL2779_tree);
            	        }

            	        // MySQL.g:2372:19: ( EQUAL_OPERATOR )?
            	        {
            	            int alt762=2;
            	            switch ( LA(1) )
            	            {
            	                case EQUAL_OPERATOR:
            	                	{
            	                		alt762=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt762)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2372:19: EQUAL_OPERATOR
            	        	    {
            	        	        EQUAL_OPERATOR2780 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_partition_definition13718);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartition_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EQUAL_OPERATOR2780_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2780));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2780_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        INTEGER2781 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_partition_definition13721);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INTEGER2781_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER2781));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER2781_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:2373:2: ( MIN_ROWS_SYMBOL ( EQUAL_OPERATOR )? INTEGER )?
            {
                int alt765=2;
                switch ( LA(1) )
                {
                    case MIN_ROWS_SYMBOL:
                    	{
                    		alt765=1;
                    	}
                        break;
                }

                switch (alt765)
                {
            	case 1:
            	    // MySQL.g:2373:3: MIN_ROWS_SYMBOL ( EQUAL_OPERATOR )? INTEGER
            	    {
            	        MIN_ROWS_SYMBOL2782 = (pANTLR3_COMMON_TOKEN) MATCHT(MIN_ROWS_SYMBOL, &FOLLOW_MIN_ROWS_SYMBOL_in_partition_definition13727);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        MIN_ROWS_SYMBOL2782_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MIN_ROWS_SYMBOL2782));
            	        ADAPTOR->addChild(ADAPTOR, root_0, MIN_ROWS_SYMBOL2782_tree);
            	        }

            	        // MySQL.g:2373:19: ( EQUAL_OPERATOR )?
            	        {
            	            int alt764=2;
            	            switch ( LA(1) )
            	            {
            	                case EQUAL_OPERATOR:
            	                	{
            	                		alt764=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt764)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2373:19: EQUAL_OPERATOR
            	        	    {
            	        	        EQUAL_OPERATOR2783 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_partition_definition13729);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartition_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EQUAL_OPERATOR2783_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2783));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2783_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        INTEGER2784 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_partition_definition13732);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INTEGER2784_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER2784));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER2784_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:2374:2: ( TABLESPACE_SYMBOL ( EQUAL_OPERATOR )? identifier )?
            {
                int alt767=2;
                switch ( LA(1) )
                {
                    case TABLESPACE_SYMBOL:
                    	{
                    		alt767=1;
                    	}
                        break;
                }

                switch (alt767)
                {
            	case 1:
            	    // MySQL.g:2374:3: TABLESPACE_SYMBOL ( EQUAL_OPERATOR )? identifier
            	    {
            	        TABLESPACE_SYMBOL2785 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLESPACE_SYMBOL, &FOLLOW_TABLESPACE_SYMBOL_in_partition_definition13738);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TABLESPACE_SYMBOL2785_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLESPACE_SYMBOL2785));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TABLESPACE_SYMBOL2785_tree);
            	        }

            	        // MySQL.g:2374:21: ( EQUAL_OPERATOR )?
            	        {
            	            int alt766=2;
            	            switch ( LA(1) )
            	            {
            	                case EQUAL_OPERATOR:
            	                	{
            	                		alt766=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt766)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2374:21: EQUAL_OPERATOR
            	        	    {
            	        	        EQUAL_OPERATOR2786 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_partition_definition13740);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartition_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EQUAL_OPERATOR2786_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2786));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2786_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_identifier_in_partition_definition13743);
            	        identifier2787=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2787.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:2375:2: ( NODEGROUP_SYMBOL ( EQUAL_OPERATOR )? identifier )?
            {
                int alt769=2;
                switch ( LA(1) )
                {
                    case NODEGROUP_SYMBOL:
                    	{
                    		alt769=1;
                    	}
                        break;
                }

                switch (alt769)
                {
            	case 1:
            	    // MySQL.g:2375:3: NODEGROUP_SYMBOL ( EQUAL_OPERATOR )? identifier
            	    {
            	        NODEGROUP_SYMBOL2788 = (pANTLR3_COMMON_TOKEN) MATCHT(NODEGROUP_SYMBOL, &FOLLOW_NODEGROUP_SYMBOL_in_partition_definition13749);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        NODEGROUP_SYMBOL2788_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NODEGROUP_SYMBOL2788));
            	        ADAPTOR->addChild(ADAPTOR, root_0, NODEGROUP_SYMBOL2788_tree);
            	        }

            	        // MySQL.g:2375:20: ( EQUAL_OPERATOR )?
            	        {
            	            int alt768=2;
            	            switch ( LA(1) )
            	            {
            	                case EQUAL_OPERATOR:
            	                	{
            	                		alt768=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt768)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2375:20: EQUAL_OPERATOR
            	        	    {
            	        	        EQUAL_OPERATOR2789 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_partition_definition13751);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartition_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EQUAL_OPERATOR2789_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2789));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2789_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_identifier_in_partition_definition13754);
            	        identifier2790=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2790.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:2376:2: ( OPEN_PAR_SYMBOL subpartition_definition ( COMMA_SYMBOL subpartition_definition )* CLOSE_PAR_SYMBOL )?
            {
                int alt771=2;
                switch ( LA(1) )
                {
                    case OPEN_PAR_SYMBOL:
                    	{
                    		alt771=1;
                    	}
                        break;
                }

                switch (alt771)
                {
            	case 1:
            	    // MySQL.g:2376:3: OPEN_PAR_SYMBOL subpartition_definition ( COMMA_SYMBOL subpartition_definition )* CLOSE_PAR_SYMBOL
            	    {
            	        OPEN_PAR_SYMBOL2791 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_partition_definition13760);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPEN_PAR_SYMBOL2791_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2791));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2791_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_subpartition_definition_in_partition_definition13762);
            	        subpartition_definition2792=subpartition_definition(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, subpartition_definition2792.tree);

            	        // MySQL.g:2376:43: ( COMMA_SYMBOL subpartition_definition )*

            	        for (;;)
            	        {
            	            int alt770=2;
            	            switch ( LA(1) )
            	            {
            	            case COMMA_SYMBOL:
            	            	{
            	            		alt770=1;
            	            	}
            	                break;

            	            }

            	            switch (alt770)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2376:44: COMMA_SYMBOL subpartition_definition
            	        	    {
            	        	        COMMA_SYMBOL2793 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_partition_definition13765);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartition_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COMMA_SYMBOL2793_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2793));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2793_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_subpartition_definition_in_partition_definition13767);
            	        	        subpartition_definition2794=subpartition_definition(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartition_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, subpartition_definition2794.tree);

            	        	    }
            	        	    break;

            	        	default:
            	        	    goto loop770;	/* break out of the loop */
            	        	    break;
            	            }
            	        }
            	        loop770: ; /* Jump out to here if this rule does not match */


            	        CLOSE_PAR_SYMBOL2795 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_partition_definition13771);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CLOSE_PAR_SYMBOL2795_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2795));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2795_tree);
            	        }

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulepartition_definitionEx; /* Prevent compiler warnings */
    rulepartition_definitionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end partition_definition */

/**
 * $ANTLR start subpartition_definition
 * MySQL.g:2379:1: subpartition_definition : SUBPARTITION_SYMBOL identifier ( ( STORAGE_SYMBOL )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? IDENTIFIER )? ( COMMENT_SYMBOL ( EQUAL_OPERATOR )? string_literal )? ( DATA_SYMBOL DIRECTORY_SYMBOL ( EQUAL_OPERATOR )? string_literal )? ( INDEX_SYMBOL DIRECTORY_SYMBOL ( EQUAL_OPERATOR )? string_literal )? ( MAX_ROWS_SYMBOL ( EQUAL_OPERATOR )? INTEGER )? ( MIN_ROWS_SYMBOL ( EQUAL_OPERATOR )? INTEGER )? ( TABLESPACE_SYMBOL ( EQUAL_OPERATOR )? identifier )? ( NODEGROUP_SYMBOL ( EQUAL_OPERATOR )? identifier )? ;
 */
static MySQLParser_subpartition_definition_return
subpartition_definition(pMySQLParser ctx)
{
    MySQLParser_subpartition_definition_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    SUBPARTITION_SYMBOL2796;
    pANTLR3_COMMON_TOKEN    STORAGE_SYMBOL2798;
    pANTLR3_COMMON_TOKEN    ENGINE_SYMBOL2799;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2800;
    pANTLR3_COMMON_TOKEN    IDENTIFIER2801;
    pANTLR3_COMMON_TOKEN    COMMENT_SYMBOL2802;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2803;
    pANTLR3_COMMON_TOKEN    DATA_SYMBOL2805;
    pANTLR3_COMMON_TOKEN    DIRECTORY_SYMBOL2806;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2807;
    pANTLR3_COMMON_TOKEN    INDEX_SYMBOL2809;
    pANTLR3_COMMON_TOKEN    DIRECTORY_SYMBOL2810;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2811;
    pANTLR3_COMMON_TOKEN    MAX_ROWS_SYMBOL2813;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2814;
    pANTLR3_COMMON_TOKEN    INTEGER2815;
    pANTLR3_COMMON_TOKEN    MIN_ROWS_SYMBOL2816;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2817;
    pANTLR3_COMMON_TOKEN    INTEGER2818;
    pANTLR3_COMMON_TOKEN    TABLESPACE_SYMBOL2819;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2820;
    pANTLR3_COMMON_TOKEN    NODEGROUP_SYMBOL2822;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2823;
    MySQLParser_identifier_return identifier2797;
    #undef	RETURN_TYPE_identifier2797
    #define	RETURN_TYPE_identifier2797 MySQLParser_identifier_return

    MySQLParser_string_literal_return string_literal2804;
    #undef	RETURN_TYPE_string_literal2804
    #define	RETURN_TYPE_string_literal2804 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal2808;
    #undef	RETURN_TYPE_string_literal2808
    #define	RETURN_TYPE_string_literal2808 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal2812;
    #undef	RETURN_TYPE_string_literal2812
    #define	RETURN_TYPE_string_literal2812 MySQLParser_string_literal_return

    MySQLParser_identifier_return identifier2821;
    #undef	RETURN_TYPE_identifier2821
    #define	RETURN_TYPE_identifier2821 MySQLParser_identifier_return

    MySQLParser_identifier_return identifier2824;
    #undef	RETURN_TYPE_identifier2824
    #define	RETURN_TYPE_identifier2824 MySQLParser_identifier_return

    pANTLR3_BASE_TREE SUBPARTITION_SYMBOL2796_tree;
    pANTLR3_BASE_TREE STORAGE_SYMBOL2798_tree;
    pANTLR3_BASE_TREE ENGINE_SYMBOL2799_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2800_tree;
    pANTLR3_BASE_TREE IDENTIFIER2801_tree;
    pANTLR3_BASE_TREE COMMENT_SYMBOL2802_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2803_tree;
    pANTLR3_BASE_TREE DATA_SYMBOL2805_tree;
    pANTLR3_BASE_TREE DIRECTORY_SYMBOL2806_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2807_tree;
    pANTLR3_BASE_TREE INDEX_SYMBOL2809_tree;
    pANTLR3_BASE_TREE DIRECTORY_SYMBOL2810_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2811_tree;
    pANTLR3_BASE_TREE MAX_ROWS_SYMBOL2813_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2814_tree;
    pANTLR3_BASE_TREE INTEGER2815_tree;
    pANTLR3_BASE_TREE MIN_ROWS_SYMBOL2816_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2817_tree;
    pANTLR3_BASE_TREE INTEGER2818_tree;
    pANTLR3_BASE_TREE TABLESPACE_SYMBOL2819_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2820_tree;
    pANTLR3_BASE_TREE NODEGROUP_SYMBOL2822_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2823_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SUBPARTITION_SYMBOL2796       = NULL;
    STORAGE_SYMBOL2798       = NULL;
    ENGINE_SYMBOL2799       = NULL;
    EQUAL_OPERATOR2800       = NULL;
    IDENTIFIER2801       = NULL;
    COMMENT_SYMBOL2802       = NULL;
    EQUAL_OPERATOR2803       = NULL;
    DATA_SYMBOL2805       = NULL;
    DIRECTORY_SYMBOL2806       = NULL;
    EQUAL_OPERATOR2807       = NULL;
    INDEX_SYMBOL2809       = NULL;
    DIRECTORY_SYMBOL2810       = NULL;
    EQUAL_OPERATOR2811       = NULL;
    MAX_ROWS_SYMBOL2813       = NULL;
    EQUAL_OPERATOR2814       = NULL;
    INTEGER2815       = NULL;
    MIN_ROWS_SYMBOL2816       = NULL;
    EQUAL_OPERATOR2817       = NULL;
    INTEGER2818       = NULL;
    TABLESPACE_SYMBOL2819       = NULL;
    EQUAL_OPERATOR2820       = NULL;
    NODEGROUP_SYMBOL2822       = NULL;
    EQUAL_OPERATOR2823       = NULL;
    identifier2797.tree = NULL;

    string_literal2804.tree = NULL;

    string_literal2808.tree = NULL;

    string_literal2812.tree = NULL;

    identifier2821.tree = NULL;

    identifier2824.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SUBPARTITION_SYMBOL2796_tree   = NULL;
    STORAGE_SYMBOL2798_tree   = NULL;
    ENGINE_SYMBOL2799_tree   = NULL;
    EQUAL_OPERATOR2800_tree   = NULL;
    IDENTIFIER2801_tree   = NULL;
    COMMENT_SYMBOL2802_tree   = NULL;
    EQUAL_OPERATOR2803_tree   = NULL;
    DATA_SYMBOL2805_tree   = NULL;
    DIRECTORY_SYMBOL2806_tree   = NULL;
    EQUAL_OPERATOR2807_tree   = NULL;
    INDEX_SYMBOL2809_tree   = NULL;
    DIRECTORY_SYMBOL2810_tree   = NULL;
    EQUAL_OPERATOR2811_tree   = NULL;
    MAX_ROWS_SYMBOL2813_tree   = NULL;
    EQUAL_OPERATOR2814_tree   = NULL;
    INTEGER2815_tree   = NULL;
    MIN_ROWS_SYMBOL2816_tree   = NULL;
    EQUAL_OPERATOR2817_tree   = NULL;
    INTEGER2818_tree   = NULL;
    TABLESPACE_SYMBOL2819_tree   = NULL;
    EQUAL_OPERATOR2820_tree   = NULL;
    NODEGROUP_SYMBOL2822_tree   = NULL;
    EQUAL_OPERATOR2823_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2379:24: ( SUBPARTITION_SYMBOL identifier ( ( STORAGE_SYMBOL )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? IDENTIFIER )? ( COMMENT_SYMBOL ( EQUAL_OPERATOR )? string_literal )? ( DATA_SYMBOL DIRECTORY_SYMBOL ( EQUAL_OPERATOR )? string_literal )? ( INDEX_SYMBOL DIRECTORY_SYMBOL ( EQUAL_OPERATOR )? string_literal )? ( MAX_ROWS_SYMBOL ( EQUAL_OPERATOR )? INTEGER )? ( MIN_ROWS_SYMBOL ( EQUAL_OPERATOR )? INTEGER )? ( TABLESPACE_SYMBOL ( EQUAL_OPERATOR )? identifier )? ( NODEGROUP_SYMBOL ( EQUAL_OPERATOR )? identifier )? )
        // MySQL.g:2380:2: SUBPARTITION_SYMBOL identifier ( ( STORAGE_SYMBOL )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? IDENTIFIER )? ( COMMENT_SYMBOL ( EQUAL_OPERATOR )? string_literal )? ( DATA_SYMBOL DIRECTORY_SYMBOL ( EQUAL_OPERATOR )? string_literal )? ( INDEX_SYMBOL DIRECTORY_SYMBOL ( EQUAL_OPERATOR )? string_literal )? ( MAX_ROWS_SYMBOL ( EQUAL_OPERATOR )? INTEGER )? ( MIN_ROWS_SYMBOL ( EQUAL_OPERATOR )? INTEGER )? ( TABLESPACE_SYMBOL ( EQUAL_OPERATOR )? identifier )? ( NODEGROUP_SYMBOL ( EQUAL_OPERATOR )? identifier )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            SUBPARTITION_SYMBOL2796 = (pANTLR3_COMMON_TOKEN) MATCHT(SUBPARTITION_SYMBOL, &FOLLOW_SUBPARTITION_SYMBOL_in_subpartition_definition13782);
            if  (HASEXCEPTION())
            {
                goto rulesubpartition_definitionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SUBPARTITION_SYMBOL2796_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SUBPARTITION_SYMBOL2796));
            ADAPTOR->addChild(ADAPTOR, root_0, SUBPARTITION_SYMBOL2796_tree);
            }

            FOLLOWPUSH(FOLLOW_identifier_in_subpartition_definition13784);
            identifier2797=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulesubpartition_definitionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2797.tree);

            // MySQL.g:2381:3: ( ( STORAGE_SYMBOL )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? IDENTIFIER )?
            {
                int alt774=2;
                switch ( LA(1) )
                {
                    case ENGINE_SYMBOL:
                    case STORAGE_SYMBOL:
                    	{
                    		alt774=1;
                    	}
                        break;
                }

                switch (alt774)
                {
            	case 1:
            	    // MySQL.g:2381:4: ( STORAGE_SYMBOL )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? IDENTIFIER
            	    {
            	        // MySQL.g:2381:4: ( STORAGE_SYMBOL )?
            	        {
            	            int alt772=2;
            	            switch ( LA(1) )
            	            {
            	                case STORAGE_SYMBOL:
            	                	{
            	                		alt772=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt772)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2381:4: STORAGE_SYMBOL
            	        	    {
            	        	        STORAGE_SYMBOL2798 = (pANTLR3_COMMON_TOKEN) MATCHT(STORAGE_SYMBOL, &FOLLOW_STORAGE_SYMBOL_in_subpartition_definition13789);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulesubpartition_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        STORAGE_SYMBOL2798_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STORAGE_SYMBOL2798));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, STORAGE_SYMBOL2798_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        ENGINE_SYMBOL2799 = (pANTLR3_COMMON_TOKEN) MATCHT(ENGINE_SYMBOL, &FOLLOW_ENGINE_SYMBOL_in_subpartition_definition13792);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesubpartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ENGINE_SYMBOL2799_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ENGINE_SYMBOL2799));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ENGINE_SYMBOL2799_tree);
            	        }

            	        // MySQL.g:2381:34: ( EQUAL_OPERATOR )?
            	        {
            	            int alt773=2;
            	            switch ( LA(1) )
            	            {
            	                case EQUAL_OPERATOR:
            	                	{
            	                		alt773=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt773)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2381:34: EQUAL_OPERATOR
            	        	    {
            	        	        EQUAL_OPERATOR2800 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_subpartition_definition13794);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulesubpartition_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EQUAL_OPERATOR2800_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2800));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2800_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        IDENTIFIER2801 = (pANTLR3_COMMON_TOKEN) MATCHT(IDENTIFIER, &FOLLOW_IDENTIFIER_in_subpartition_definition13797);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesubpartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        IDENTIFIER2801_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IDENTIFIER2801));
            	        ADAPTOR->addChild(ADAPTOR, root_0, IDENTIFIER2801_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:2382:3: ( COMMENT_SYMBOL ( EQUAL_OPERATOR )? string_literal )?
            {
                int alt776=2;
                switch ( LA(1) )
                {
                    case COMMENT_SYMBOL:
                    	{
                    		alt776=1;
                    	}
                        break;
                }

                switch (alt776)
                {
            	case 1:
            	    // MySQL.g:2382:4: COMMENT_SYMBOL ( EQUAL_OPERATOR )? string_literal
            	    {
            	        COMMENT_SYMBOL2802 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMENT_SYMBOL, &FOLLOW_COMMENT_SYMBOL_in_subpartition_definition13804);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesubpartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMENT_SYMBOL2802_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMENT_SYMBOL2802));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMENT_SYMBOL2802_tree);
            	        }

            	        // MySQL.g:2382:19: ( EQUAL_OPERATOR )?
            	        {
            	            int alt775=2;
            	            switch ( LA(1) )
            	            {
            	                case EQUAL_OPERATOR:
            	                	{
            	                		alt775=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt775)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2382:19: EQUAL_OPERATOR
            	        	    {
            	        	        EQUAL_OPERATOR2803 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_subpartition_definition13806);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulesubpartition_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EQUAL_OPERATOR2803_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2803));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2803_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_string_literal_in_subpartition_definition13809);
            	        string_literal2804=string_literal(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesubpartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal2804.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:2383:3: ( DATA_SYMBOL DIRECTORY_SYMBOL ( EQUAL_OPERATOR )? string_literal )?
            {
                int alt778=2;
                switch ( LA(1) )
                {
                    case DATA_SYMBOL:
                    	{
                    		alt778=1;
                    	}
                        break;
                }

                switch (alt778)
                {
            	case 1:
            	    // MySQL.g:2383:4: DATA_SYMBOL DIRECTORY_SYMBOL ( EQUAL_OPERATOR )? string_literal
            	    {
            	        DATA_SYMBOL2805 = (pANTLR3_COMMON_TOKEN) MATCHT(DATA_SYMBOL, &FOLLOW_DATA_SYMBOL_in_subpartition_definition13816);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesubpartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DATA_SYMBOL2805_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATA_SYMBOL2805));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DATA_SYMBOL2805_tree);
            	        }

            	        DIRECTORY_SYMBOL2806 = (pANTLR3_COMMON_TOKEN) MATCHT(DIRECTORY_SYMBOL, &FOLLOW_DIRECTORY_SYMBOL_in_subpartition_definition13818);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesubpartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DIRECTORY_SYMBOL2806_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DIRECTORY_SYMBOL2806));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DIRECTORY_SYMBOL2806_tree);
            	        }

            	        // MySQL.g:2383:33: ( EQUAL_OPERATOR )?
            	        {
            	            int alt777=2;
            	            switch ( LA(1) )
            	            {
            	                case EQUAL_OPERATOR:
            	                	{
            	                		alt777=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt777)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2383:33: EQUAL_OPERATOR
            	        	    {
            	        	        EQUAL_OPERATOR2807 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_subpartition_definition13820);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulesubpartition_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EQUAL_OPERATOR2807_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2807));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2807_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_string_literal_in_subpartition_definition13823);
            	        string_literal2808=string_literal(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesubpartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal2808.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:2384:3: ( INDEX_SYMBOL DIRECTORY_SYMBOL ( EQUAL_OPERATOR )? string_literal )?
            {
                int alt780=2;
                switch ( LA(1) )
                {
                    case INDEX_SYMBOL:
                    	{
                    		alt780=1;
                    	}
                        break;
                }

                switch (alt780)
                {
            	case 1:
            	    // MySQL.g:2384:4: INDEX_SYMBOL DIRECTORY_SYMBOL ( EQUAL_OPERATOR )? string_literal
            	    {
            	        INDEX_SYMBOL2809 = (pANTLR3_COMMON_TOKEN) MATCHT(INDEX_SYMBOL, &FOLLOW_INDEX_SYMBOL_in_subpartition_definition13830);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesubpartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INDEX_SYMBOL2809_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INDEX_SYMBOL2809));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INDEX_SYMBOL2809_tree);
            	        }

            	        DIRECTORY_SYMBOL2810 = (pANTLR3_COMMON_TOKEN) MATCHT(DIRECTORY_SYMBOL, &FOLLOW_DIRECTORY_SYMBOL_in_subpartition_definition13832);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesubpartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DIRECTORY_SYMBOL2810_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DIRECTORY_SYMBOL2810));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DIRECTORY_SYMBOL2810_tree);
            	        }

            	        // MySQL.g:2384:34: ( EQUAL_OPERATOR )?
            	        {
            	            int alt779=2;
            	            switch ( LA(1) )
            	            {
            	                case EQUAL_OPERATOR:
            	                	{
            	                		alt779=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt779)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2384:34: EQUAL_OPERATOR
            	        	    {
            	        	        EQUAL_OPERATOR2811 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_subpartition_definition13834);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulesubpartition_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EQUAL_OPERATOR2811_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2811));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2811_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_string_literal_in_subpartition_definition13837);
            	        string_literal2812=string_literal(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesubpartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal2812.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:2385:3: ( MAX_ROWS_SYMBOL ( EQUAL_OPERATOR )? INTEGER )?
            {
                int alt782=2;
                switch ( LA(1) )
                {
                    case MAX_ROWS_SYMBOL:
                    	{
                    		alt782=1;
                    	}
                        break;
                }

                switch (alt782)
                {
            	case 1:
            	    // MySQL.g:2385:4: MAX_ROWS_SYMBOL ( EQUAL_OPERATOR )? INTEGER
            	    {
            	        MAX_ROWS_SYMBOL2813 = (pANTLR3_COMMON_TOKEN) MATCHT(MAX_ROWS_SYMBOL, &FOLLOW_MAX_ROWS_SYMBOL_in_subpartition_definition13844);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesubpartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        MAX_ROWS_SYMBOL2813_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAX_ROWS_SYMBOL2813));
            	        ADAPTOR->addChild(ADAPTOR, root_0, MAX_ROWS_SYMBOL2813_tree);
            	        }

            	        // MySQL.g:2385:20: ( EQUAL_OPERATOR )?
            	        {
            	            int alt781=2;
            	            switch ( LA(1) )
            	            {
            	                case EQUAL_OPERATOR:
            	                	{
            	                		alt781=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt781)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2385:20: EQUAL_OPERATOR
            	        	    {
            	        	        EQUAL_OPERATOR2814 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_subpartition_definition13846);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulesubpartition_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EQUAL_OPERATOR2814_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2814));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2814_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        INTEGER2815 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_subpartition_definition13849);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesubpartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INTEGER2815_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER2815));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER2815_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:2386:3: ( MIN_ROWS_SYMBOL ( EQUAL_OPERATOR )? INTEGER )?
            {
                int alt784=2;
                switch ( LA(1) )
                {
                    case MIN_ROWS_SYMBOL:
                    	{
                    		alt784=1;
                    	}
                        break;
                }

                switch (alt784)
                {
            	case 1:
            	    // MySQL.g:2386:4: MIN_ROWS_SYMBOL ( EQUAL_OPERATOR )? INTEGER
            	    {
            	        MIN_ROWS_SYMBOL2816 = (pANTLR3_COMMON_TOKEN) MATCHT(MIN_ROWS_SYMBOL, &FOLLOW_MIN_ROWS_SYMBOL_in_subpartition_definition13856);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesubpartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        MIN_ROWS_SYMBOL2816_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MIN_ROWS_SYMBOL2816));
            	        ADAPTOR->addChild(ADAPTOR, root_0, MIN_ROWS_SYMBOL2816_tree);
            	        }

            	        // MySQL.g:2386:20: ( EQUAL_OPERATOR )?
            	        {
            	            int alt783=2;
            	            switch ( LA(1) )
            	            {
            	                case EQUAL_OPERATOR:
            	                	{
            	                		alt783=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt783)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2386:20: EQUAL_OPERATOR
            	        	    {
            	        	        EQUAL_OPERATOR2817 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_subpartition_definition13858);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulesubpartition_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EQUAL_OPERATOR2817_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2817));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2817_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        INTEGER2818 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_subpartition_definition13861);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesubpartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INTEGER2818_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER2818));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER2818_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:2387:3: ( TABLESPACE_SYMBOL ( EQUAL_OPERATOR )? identifier )?
            {
                int alt786=2;
                switch ( LA(1) )
                {
                    case TABLESPACE_SYMBOL:
                    	{
                    		alt786=1;
                    	}
                        break;
                }

                switch (alt786)
                {
            	case 1:
            	    // MySQL.g:2387:4: TABLESPACE_SYMBOL ( EQUAL_OPERATOR )? identifier
            	    {
            	        TABLESPACE_SYMBOL2819 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLESPACE_SYMBOL, &FOLLOW_TABLESPACE_SYMBOL_in_subpartition_definition13868);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesubpartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TABLESPACE_SYMBOL2819_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLESPACE_SYMBOL2819));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TABLESPACE_SYMBOL2819_tree);
            	        }

            	        // MySQL.g:2387:22: ( EQUAL_OPERATOR )?
            	        {
            	            int alt785=2;
            	            switch ( LA(1) )
            	            {
            	                case EQUAL_OPERATOR:
            	                	{
            	                		alt785=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt785)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2387:22: EQUAL_OPERATOR
            	        	    {
            	        	        EQUAL_OPERATOR2820 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_subpartition_definition13870);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulesubpartition_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EQUAL_OPERATOR2820_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2820));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2820_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_identifier_in_subpartition_definition13873);
            	        identifier2821=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesubpartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2821.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:2388:3: ( NODEGROUP_SYMBOL ( EQUAL_OPERATOR )? identifier )?
            {
                int alt788=2;
                switch ( LA(1) )
                {
                    case NODEGROUP_SYMBOL:
                    	{
                    		alt788=1;
                    	}
                        break;
                }

                switch (alt788)
                {
            	case 1:
            	    // MySQL.g:2388:4: NODEGROUP_SYMBOL ( EQUAL_OPERATOR )? identifier
            	    {
            	        NODEGROUP_SYMBOL2822 = (pANTLR3_COMMON_TOKEN) MATCHT(NODEGROUP_SYMBOL, &FOLLOW_NODEGROUP_SYMBOL_in_subpartition_definition13880);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesubpartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        NODEGROUP_SYMBOL2822_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NODEGROUP_SYMBOL2822));
            	        ADAPTOR->addChild(ADAPTOR, root_0, NODEGROUP_SYMBOL2822_tree);
            	        }

            	        // MySQL.g:2388:21: ( EQUAL_OPERATOR )?
            	        {
            	            int alt787=2;
            	            switch ( LA(1) )
            	            {
            	                case EQUAL_OPERATOR:
            	                	{
            	                		alt787=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt787)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2388:21: EQUAL_OPERATOR
            	        	    {
            	        	        EQUAL_OPERATOR2823 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_subpartition_definition13882);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulesubpartition_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EQUAL_OPERATOR2823_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2823));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2823_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_identifier_in_subpartition_definition13885);
            	        identifier2824=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesubpartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2824.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulesubpartition_definitionEx; /* Prevent compiler warnings */
    rulesubpartition_definitionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end subpartition_definition */

/**
 * $ANTLR start partition_value_list
 * MySQL.g:2391:1: partition_value_list : OPEN_PAR_SYMBOL ( expression | MAXVALUE_SYMBOL ) ( COMMA_SYMBOL ( expression | MAXVALUE_SYMBOL ) )* CLOSE_PAR_SYMBOL ;
 */
static MySQLParser_partition_value_list_return
partition_value_list(pMySQLParser ctx)
{
    MySQLParser_partition_value_list_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2825;
    pANTLR3_COMMON_TOKEN    MAXVALUE_SYMBOL2827;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2828;
    pANTLR3_COMMON_TOKEN    MAXVALUE_SYMBOL2830;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2831;
    MySQLParser_expression_return expression2826;
    #undef	RETURN_TYPE_expression2826
    #define	RETURN_TYPE_expression2826 MySQLParser_expression_return

    MySQLParser_expression_return expression2829;
    #undef	RETURN_TYPE_expression2829
    #define	RETURN_TYPE_expression2829 MySQLParser_expression_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2825_tree;
    pANTLR3_BASE_TREE MAXVALUE_SYMBOL2827_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2828_tree;
    pANTLR3_BASE_TREE MAXVALUE_SYMBOL2830_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2831_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL2825       = NULL;
    MAXVALUE_SYMBOL2827       = NULL;
    COMMA_SYMBOL2828       = NULL;
    MAXVALUE_SYMBOL2830       = NULL;
    CLOSE_PAR_SYMBOL2831       = NULL;
    expression2826.tree = NULL;

    expression2829.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL2825_tree   = NULL;
    MAXVALUE_SYMBOL2827_tree   = NULL;
    COMMA_SYMBOL2828_tree   = NULL;
    MAXVALUE_SYMBOL2830_tree   = NULL;
    CLOSE_PAR_SYMBOL2831_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2391:21: ( OPEN_PAR_SYMBOL ( expression | MAXVALUE_SYMBOL ) ( COMMA_SYMBOL ( expression | MAXVALUE_SYMBOL ) )* CLOSE_PAR_SYMBOL )
        // MySQL.g:2392:2: OPEN_PAR_SYMBOL ( expression | MAXVALUE_SYMBOL ) ( COMMA_SYMBOL ( expression | MAXVALUE_SYMBOL ) )* CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPEN_PAR_SYMBOL2825 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_partition_value_list13896);
            if  (HASEXCEPTION())
            {
                goto rulepartition_value_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL2825_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2825));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2825_tree);
            }

            // MySQL.g:2392:18: ( expression | MAXVALUE_SYMBOL )
            {
                int alt789=2;
                {
                    int LA789_0 = LA(1);
                    if ( (LA789_0 == BITWISE_NOT_OPERATOR || LA789_0 == DATE_SYMBOL || LA789_0 == INTERVAL_SYMBOL || LA789_0 == LOGICAL_NOT_OPERATOR || LA789_0 == MINUS_OPERATOR || LA789_0 == NCHAR_TEXT || LA789_0 == NOT2_SYMBOL || LA789_0 == NOT_SYMBOL || LA789_0 == PLUS_OPERATOR || LA789_0 == SINGLE_QUOTED_TEXT || ((LA789_0 >= TIMESTAMP_SYMBOL) && (LA789_0 <= TIME_SYMBOL)) || LA789_0 == UNDERSCORE_CHARSET))
                    {
                        alt789=1;
                    }
                    else if ( ((((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)))||((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))) && (LA789_0 == DOUBLE_QUOTED_TEXT))
                    {
                        alt789=1;
                    }
                    else if ( (LA789_0 == FALSE_SYMBOL || LA789_0 == FLOAT || ((LA789_0 >= HEXNUMBER) && (LA789_0 <= HEXSTRING)) || LA789_0 == INTEGER || LA789_0 == TRUE_SYMBOL))
                    {
                        alt789=1;
                    }
                    else if ( ((SERVER_VERSION >= 50003)) && (((LA789_0 >= BITNUMBER) && (LA789_0 <= BITSTRING))))
                    {
                        alt789=1;
                    }
                    else if ( (((LA789_0 >= ACTION_SYMBOL) && (LA789_0 <= ADDDATE_SYMBOL)) || ((LA789_0 >= AFTER_SYMBOL) && (LA789_0 <= ALGORITHM_SYMBOL)) || LA789_0 == ANALYZE_SYMBOL || ((LA789_0 >= ANY_SYMBOL) && (LA789_0 <= ASCII_SYMBOL)) || ((LA789_0 >= AT_AT_SIGN_SYMBOL) && (LA789_0 <= BACKUP_SYMBOL)) || LA789_0 == BACK_TICK_QUOTED_ID || LA789_0 == BEGIN_SYMBOL || ((LA789_0 >= BINARY_SYMBOL) && (LA789_0 <= BINLOG_SYMBOL)) || ((LA789_0 >= BIT_AND_SYMBOL) && (LA789_0 <= BIT_XOR_SYMBOL)) || ((LA789_0 >= BLOCK_SYMBOL) && (LA789_0 <= BOOL_SYMBOL)) || ((LA789_0 >= BTREE_SYMBOL) && (LA789_0 <= BYTE_SYMBOL)) || LA789_0 == CACHE_SYMBOL || LA789_0 == CASCADED_SYMBOL || ((LA789_0 >= CASE_SYMBOL) && (LA789_0 <= CHANGED_SYMBOL)) || ((LA789_0 >= CHARSET_SYMBOL) && (LA789_0 <= CHECKSUM_SYMBOL)) || ((LA789_0 >= CIPHER_SYMBOL) && (LA789_0 <= CLIENT_SYMBOL)) || ((LA789_0 >= CLOSE_SYMBOL) && (LA789_0 <= CODE_SYMBOL)) || LA789_0 == COLLATION_SYMBOL || ((LA789_0 >= COLUMNS_SYMBOL) && (LA789_0 <= COLUMN_NAME_SYMBOL)) || ((LA789_0 >= COMMENT_SYMBOL) && (LA789_0 <= COMPRESSED_SYMBOL)) || LA789_0 == CONCURRENT_SYMBOL || ((LA789_0 >= CONNECTION_SYMBOL) && (LA789_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA789_0 >= CONTAINS_SYMBOL) && (LA789_0 <= CONTEXT_SYMBOL)) || ((LA789_0 >= CONTRIBUTORS_SYMBOL) && (LA789_0 <= CPU_SYMBOL)) || ((LA789_0 >= CUBE_SYMBOL) && (LA789_0 <= CURRENT_SYMBOL)) || ((LA789_0 >= CURRENT_USER_SYMBOL) && (LA789_0 <= CURSOR_NAME_SYMBOL)) || LA789_0 == CURTIME_SYMBOL || ((LA789_0 >= DATABASE_SYMBOL) && (LA789_0 <= DATETIME_SYMBOL)) || LA789_0 == DATE_ADD_SYMBOL || LA789_0 == DATE_SUB_SYMBOL || ((LA789_0 >= DAY_SYMBOL) && (LA789_0 <= DEALLOCATE_SYMBOL)) || LA789_0 == DEFAULT_AUTH_SYMBOL || LA789_0 == DEFINER_SYMBOL || LA789_0 == DELAY_KEY_WRITE_SYMBOL || LA789_0 == DES_KEY_FILE_SYMBOL || LA789_0 == DIAGNOSTICS_SYMBOL || ((LA789_0 >= DIRECTORY_SYMBOL) && (LA789_0 <= DISK_SYMBOL)) || LA789_0 == DOT_SYMBOL || LA789_0 == DO_SYMBOL || ((LA789_0 >= DUMPFILE_SYMBOL) && (LA789_0 <= DYNAMIC_SYMBOL)) || LA789_0 == ENABLE_SYMBOL || LA789_0 == ENDS_SYMBOL || ((LA789_0 >= END_SYMBOL) && (LA789_0 <= ENUM_SYMBOL)) || ((LA789_0 >= ERRORS_SYMBOL) && (LA789_0 <= ERROR_SYMBOL)) || ((LA789_0 >= ESCAPE_SYMBOL) && (LA789_0 <= EVERY_SYMBOL)) || ((LA789_0 >= EXECUTE_SYMBOL) && (LA789_0 <= EXISTS_SYMBOL)) || LA789_0 == EXPANSION_SYMBOL || LA789_0 == EXPORT_SYMBOL || ((LA789_0 >= EXTENDED_SYMBOL) && (LA789_0 <= EXTRACT_SYMBOL)) || ((LA789_0 >= FAST_SYMBOL) && (LA789_0 <= FAULTS_SYMBOL)) || ((LA789_0 >= FILE_SYMBOL) && (LA789_0 <= FIXED_SYMBOL)) || LA789_0 == FLUSH_SYMBOL || LA789_0 == FORMAT_SYMBOL || LA789_0 == FOUND_SYMBOL || LA789_0 == FULL_SYMBOL || ((LA789_0 >= FUNCTION_SYMBOL) && (LA789_0 <= GET_FORMAT_SYMBOL)) || ((LA789_0 >= GLOBAL_SYMBOL) && (LA789_0 <= GRANTS_SYMBOL)) || LA789_0 == GROUP_CONCAT_SYMBOL || ((LA789_0 >= HANDLER_SYMBOL) && (LA789_0 <= HASH_SYMBOL)) || LA789_0 == HELP_SYMBOL || ((LA789_0 >= HOSTS_SYMBOL) && (LA789_0 <= HOST_SYMBOL)) || ((LA789_0 >= HOUR_SYMBOL) && (LA789_0 <= IGNORE_SERVER_IDS_SYMBOL)) || ((LA789_0 >= IMPORT_SYMBOL) && (LA789_0 <= INDEXES_SYMBOL)) || LA789_0 == INITIAL_SIZE_SYMBOL || LA789_0 == INNODB_SYMBOL || ((LA789_0 >= INSERT_METHOD_SYMBOL) && (LA789_0 <= INSTALL_SYMBOL)) || LA789_0 == INVOKER_SYMBOL || LA789_0 == IO_SYMBOL || ((LA789_0 >= IPC_SYMBOL) && (LA789_0 <= ISSUER_SYMBOL)) || LA789_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA789_0 >= LANGUAGE_SYMBOL) && (LA789_0 <= LAST_SYMBOL)) || LA789_0 == LEAVES_SYMBOL || LA789_0 == LEFT_SYMBOL || LA789_0 == LESS_SYMBOL || LA789_0 == LEVEL_SYMBOL || LA789_0 == LINESTRING_SYMBOL || LA789_0 == LIST_SYMBOL || LA789_0 == LOCAL_SYMBOL || LA789_0 == LOCKS_SYMBOL || LA789_0 == LOGFILE_SYMBOL || LA789_0 == LOGS_SYMBOL || LA789_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA789_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA789_0 <= MASTER_SSL_SYMBOL)) || ((LA789_0 >= MASTER_SYMBOL) && (LA789_0 <= MATCH_SYMBOL)) || ((LA789_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA789_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA789_0 >= MEDIUM_SYMBOL) && (LA789_0 <= MICROSECOND_SYMBOL)) || LA789_0 == MIGRATE_SYMBOL || ((LA789_0 >= MINUTE_SYMBOL) && (LA789_0 <= MIN_SYMBOL)) || LA789_0 == MODE_SYMBOL || LA789_0 == MODIFY_SYMBOL || ((LA789_0 >= MOD_SYMBOL) && (LA789_0 <= MULTILINESTRING_SYMBOL)) || ((LA789_0 >= MULTIPOINT_SYMBOL) && (LA789_0 <= MULTIPOLYGON_SYMBOL)) || ((LA789_0 >= MUTEX_SYMBOL) && (LA789_0 <= NATIONAL_SYMBOL)) || LA789_0 == NCHAR_SYMBOL || LA789_0 == NDBCLUSTER_SYMBOL || ((LA789_0 >= NEW_SYMBOL) && (LA789_0 <= NONE_SYMBOL)) || ((LA789_0 >= NOW_SYMBOL) && (LA789_0 <= NO_WAIT_SYMBOL)) || LA789_0 == NULL2_SYMBOL || ((LA789_0 >= NULL_SYMBOL) && (LA789_0 <= NUMBER_SYMBOL)) || LA789_0 == NVARCHAR_SYMBOL || ((LA789_0 >= OFFSET_SYMBOL) && (LA789_0 <= ONE_SYMBOL)) || ((LA789_0 >= OPEN_PAR_SYMBOL) && (LA789_0 <= OPEN_SYMBOL)) || LA789_0 == OPTIONS_SYMBOL || ((LA789_0 >= OWNER_SYMBOL) && (LA789_0 <= PARAM_MARKER)) || ((LA789_0 >= PARSER_SYMBOL) && (LA789_0 <= PARTITION_SYMBOL)) || ((LA789_0 >= PASSWORD_SYMBOL) && (LA789_0 <= PLUGIN_SYMBOL)) || ((LA789_0 >= POINT_SYMBOL) && (LA789_0 <= POSITION_SYMBOL)) || ((LA789_0 >= PREPARE_SYMBOL) && (LA789_0 <= PREV_SYMBOL)) || LA789_0 == PRIVILEGES_SYMBOL || ((LA789_0 >= PROCESSLIST_SYMBOL) && (LA789_0 <= PROXY_SYMBOL)) || ((LA789_0 >= QUARTER_SYMBOL) && (LA789_0 <= QUICK_SYMBOL)) || LA789_0 == READ_ONLY_SYMBOL || ((LA789_0 >= REBUILD_SYMBOL) && (LA789_0 <= REDUNDANT_SYMBOL)) || ((LA789_0 >= RELAYLOG_SYMBOL) && (LA789_0 <= RELAY_THREAD_SYMBOL)) || ((LA789_0 >= RELOAD_SYMBOL) && (LA789_0 <= REMOVE_SYMBOL)) || ((LA789_0 >= REORGANIZE_SYMBOL) && (LA789_0 <= REPLICATION_SYMBOL)) || LA789_0 == RESET_SYMBOL || LA789_0 == RESTORE_SYMBOL || ((LA789_0 >= RESUME_SYMBOL) && (LA789_0 <= RETURNS_SYMBOL)) || LA789_0 == REVERSE_SYMBOL || LA789_0 == RIGHT_SYMBOL || ((LA789_0 >= ROLLBACK_SYMBOL) && (LA789_0 <= SCHEDULE_SYMBOL)) || LA789_0 == SCHEMA_NAME_SYMBOL || ((LA789_0 >= SECOND_SYMBOL) && (LA789_0 <= SECURITY_SYMBOL)) || ((LA789_0 >= SERIALIZABLE_SYMBOL) && (LA789_0 <= SERIAL_SYMBOL)) || ((LA789_0 >= SERVER_SYMBOL) && (LA789_0 <= SESSION_SYMBOL)) || LA789_0 == SHARE_SYMBOL || LA789_0 == SHUTDOWN_SYMBOL || ((LA789_0 >= SIGNED_SYMBOL) && (LA789_0 <= SIMPLE_SYMBOL)) || ((LA789_0 >= SLAVE_SYMBOL) && (LA789_0 <= SLOW_SYMBOL)) || ((LA789_0 >= SNAPSHOT_SYMBOL) && (LA789_0 <= SOURCE_SYMBOL)) || ((LA789_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA789_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA789_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA789_0 <= SQL_CACHE_SYMBOL)) || LA789_0 == SQL_NO_CACHE_SYMBOL || LA789_0 == SQL_THREAD_SYMBOL || ((LA789_0 >= STARTS_SYMBOL) && (LA789_0 <= STATUS_SYMBOL)) || LA789_0 == STDDEV_SAMP_SYMBOL || ((LA789_0 >= STD_SYMBOL) && (LA789_0 <= STORAGE_SYMBOL)) || ((LA789_0 >= STRING_SYMBOL) && (LA789_0 <= SUBPARTITION_SYMBOL)) || LA789_0 == SUBSTRING_SYMBOL || ((LA789_0 >= SUM_SYMBOL) && (LA789_0 <= SYSDATE_SYMBOL)) || ((LA789_0 >= TABLESPACE_SYMBOL) && (LA789_0 <= TABLE_NAME_SYMBOL)) || ((LA789_0 >= TEMPORARY_SYMBOL) && (LA789_0 <= TEMPTABLE_SYMBOL)) || ((LA789_0 >= TEXT_SYMBOL) && (LA789_0 <= THAN_SYMBOL)) || ((LA789_0 >= TIMESTAMP_ADD_SYMBOL) && (LA789_0 <= TIMESTAMP_DIFF_SYMBOL)) || ((LA789_0 >= TRANSACTION_SYMBOL) && (LA789_0 <= TRIGGERS_SYMBOL)) || LA789_0 == TRIM_SYMBOL || ((LA789_0 >= TRUNCATE_SYMBOL) && (LA789_0 <= UDF_RETURNS_SYMBOL)) || ((LA789_0 >= UNCOMMITTED_SYMBOL) && (LA789_0 <= UNDEFINED_SYMBOL)) || ((LA789_0 >= UNDOFILE_SYMBOL) && (LA789_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA789_0 >= UNICODE_SYMBOL) && (LA789_0 <= UNINSTALL_SYMBOL)) || LA789_0 == UNKNOWN_SYMBOL || LA789_0 == UNTIL_SYMBOL || LA789_0 == UPGRADE_SYMBOL || ((LA789_0 >= USER_RESOURCES_SYMBOL) && (LA789_0 <= USE_FRM_SYMBOL)) || ((LA789_0 >= UTC_DATE_SYMBOL) && (LA789_0 <= VALUE_SYMBOL)) || ((LA789_0 >= VARIABLES_SYMBOL) && (LA789_0 <= VARIANCE_SYMBOL)) || LA789_0 == VAR_SAMP_SYMBOL || ((LA789_0 >= VIEW_SYMBOL) && (LA789_0 <= WEIGHT_STRING_SYMBOL)) || ((LA789_0 >= WORK_SYMBOL) && (LA789_0 <= WRAPPER_SYMBOL)) || LA789_0 == X509_SYMBOL || ((LA789_0 >= XA_SYMBOL) && (LA789_0 <= XML_SYMBOL)) || LA789_0 == YEAR_SYMBOL || LA789_0 == 732))
                    {
                        alt789=1;
                    }
                    else if ( (LA789_0 == MAXVALUE_SYMBOL))
                    {
                        alt789=2;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 789;
                        EXCEPTION->state        = 0;


                        goto rulepartition_value_listEx;

                    }
                }
                switch (alt789)
                {
            	case 1:
            	    // MySQL.g:2392:19: expression
            	    {
            	        FOLLOWPUSH(FOLLOW_expression_in_partition_value_list13899);
            	        expression2826=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_value_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2826.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2392:32: MAXVALUE_SYMBOL
            	    {
            	        MAXVALUE_SYMBOL2827 = (pANTLR3_COMMON_TOKEN) MATCHT(MAXVALUE_SYMBOL, &FOLLOW_MAXVALUE_SYMBOL_in_partition_value_list13903);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_value_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        MAXVALUE_SYMBOL2827_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAXVALUE_SYMBOL2827));
            	        ADAPTOR->addChild(ADAPTOR, root_0, MAXVALUE_SYMBOL2827_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:2392:49: ( COMMA_SYMBOL ( expression | MAXVALUE_SYMBOL ) )*

            for (;;)
            {
                int alt791=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt791=1;
                	}
                    break;

                }

                switch (alt791)
                {
            	case 1:
            	    // MySQL.g:2392:50: COMMA_SYMBOL ( expression | MAXVALUE_SYMBOL )
            	    {
            	        COMMA_SYMBOL2828 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_partition_value_list13907);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_value_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL2828_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2828));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2828_tree);
            	        }

            	        // MySQL.g:2392:63: ( expression | MAXVALUE_SYMBOL )
            	        {
            	            int alt790=2;
            	            {
            	                int LA790_0 = LA(1);
            	                if ( (LA790_0 == BITWISE_NOT_OPERATOR || LA790_0 == DATE_SYMBOL || LA790_0 == INTERVAL_SYMBOL || LA790_0 == LOGICAL_NOT_OPERATOR || LA790_0 == MINUS_OPERATOR || LA790_0 == NCHAR_TEXT || LA790_0 == NOT2_SYMBOL || LA790_0 == NOT_SYMBOL || LA790_0 == PLUS_OPERATOR || LA790_0 == SINGLE_QUOTED_TEXT || ((LA790_0 >= TIMESTAMP_SYMBOL) && (LA790_0 <= TIME_SYMBOL)) || LA790_0 == UNDERSCORE_CHARSET))
            	                {
            	                    alt790=1;
            	                }
            	                else if ( ((((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)))||((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))) && (LA790_0 == DOUBLE_QUOTED_TEXT))
            	                {
            	                    alt790=1;
            	                }
            	                else if ( (LA790_0 == FALSE_SYMBOL || LA790_0 == FLOAT || ((LA790_0 >= HEXNUMBER) && (LA790_0 <= HEXSTRING)) || LA790_0 == INTEGER || LA790_0 == TRUE_SYMBOL))
            	                {
            	                    alt790=1;
            	                }
            	                else if ( ((SERVER_VERSION >= 50003)) && (((LA790_0 >= BITNUMBER) && (LA790_0 <= BITSTRING))))
            	                {
            	                    alt790=1;
            	                }
            	                else if ( (((LA790_0 >= ACTION_SYMBOL) && (LA790_0 <= ADDDATE_SYMBOL)) || ((LA790_0 >= AFTER_SYMBOL) && (LA790_0 <= ALGORITHM_SYMBOL)) || LA790_0 == ANALYZE_SYMBOL || ((LA790_0 >= ANY_SYMBOL) && (LA790_0 <= ASCII_SYMBOL)) || ((LA790_0 >= AT_AT_SIGN_SYMBOL) && (LA790_0 <= BACKUP_SYMBOL)) || LA790_0 == BACK_TICK_QUOTED_ID || LA790_0 == BEGIN_SYMBOL || ((LA790_0 >= BINARY_SYMBOL) && (LA790_0 <= BINLOG_SYMBOL)) || ((LA790_0 >= BIT_AND_SYMBOL) && (LA790_0 <= BIT_XOR_SYMBOL)) || ((LA790_0 >= BLOCK_SYMBOL) && (LA790_0 <= BOOL_SYMBOL)) || ((LA790_0 >= BTREE_SYMBOL) && (LA790_0 <= BYTE_SYMBOL)) || LA790_0 == CACHE_SYMBOL || LA790_0 == CASCADED_SYMBOL || ((LA790_0 >= CASE_SYMBOL) && (LA790_0 <= CHANGED_SYMBOL)) || ((LA790_0 >= CHARSET_SYMBOL) && (LA790_0 <= CHECKSUM_SYMBOL)) || ((LA790_0 >= CIPHER_SYMBOL) && (LA790_0 <= CLIENT_SYMBOL)) || ((LA790_0 >= CLOSE_SYMBOL) && (LA790_0 <= CODE_SYMBOL)) || LA790_0 == COLLATION_SYMBOL || ((LA790_0 >= COLUMNS_SYMBOL) && (LA790_0 <= COLUMN_NAME_SYMBOL)) || ((LA790_0 >= COMMENT_SYMBOL) && (LA790_0 <= COMPRESSED_SYMBOL)) || LA790_0 == CONCURRENT_SYMBOL || ((LA790_0 >= CONNECTION_SYMBOL) && (LA790_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA790_0 >= CONTAINS_SYMBOL) && (LA790_0 <= CONTEXT_SYMBOL)) || ((LA790_0 >= CONTRIBUTORS_SYMBOL) && (LA790_0 <= CPU_SYMBOL)) || ((LA790_0 >= CUBE_SYMBOL) && (LA790_0 <= CURRENT_SYMBOL)) || ((LA790_0 >= CURRENT_USER_SYMBOL) && (LA790_0 <= CURSOR_NAME_SYMBOL)) || LA790_0 == CURTIME_SYMBOL || ((LA790_0 >= DATABASE_SYMBOL) && (LA790_0 <= DATETIME_SYMBOL)) || LA790_0 == DATE_ADD_SYMBOL || LA790_0 == DATE_SUB_SYMBOL || ((LA790_0 >= DAY_SYMBOL) && (LA790_0 <= DEALLOCATE_SYMBOL)) || LA790_0 == DEFAULT_AUTH_SYMBOL || LA790_0 == DEFINER_SYMBOL || LA790_0 == DELAY_KEY_WRITE_SYMBOL || LA790_0 == DES_KEY_FILE_SYMBOL || LA790_0 == DIAGNOSTICS_SYMBOL || ((LA790_0 >= DIRECTORY_SYMBOL) && (LA790_0 <= DISK_SYMBOL)) || LA790_0 == DOT_SYMBOL || LA790_0 == DO_SYMBOL || ((LA790_0 >= DUMPFILE_SYMBOL) && (LA790_0 <= DYNAMIC_SYMBOL)) || LA790_0 == ENABLE_SYMBOL || LA790_0 == ENDS_SYMBOL || ((LA790_0 >= END_SYMBOL) && (LA790_0 <= ENUM_SYMBOL)) || ((LA790_0 >= ERRORS_SYMBOL) && (LA790_0 <= ERROR_SYMBOL)) || ((LA790_0 >= ESCAPE_SYMBOL) && (LA790_0 <= EVERY_SYMBOL)) || ((LA790_0 >= EXECUTE_SYMBOL) && (LA790_0 <= EXISTS_SYMBOL)) || LA790_0 == EXPANSION_SYMBOL || LA790_0 == EXPORT_SYMBOL || ((LA790_0 >= EXTENDED_SYMBOL) && (LA790_0 <= EXTRACT_SYMBOL)) || ((LA790_0 >= FAST_SYMBOL) && (LA790_0 <= FAULTS_SYMBOL)) || ((LA790_0 >= FILE_SYMBOL) && (LA790_0 <= FIXED_SYMBOL)) || LA790_0 == FLUSH_SYMBOL || LA790_0 == FORMAT_SYMBOL || LA790_0 == FOUND_SYMBOL || LA790_0 == FULL_SYMBOL || ((LA790_0 >= FUNCTION_SYMBOL) && (LA790_0 <= GET_FORMAT_SYMBOL)) || ((LA790_0 >= GLOBAL_SYMBOL) && (LA790_0 <= GRANTS_SYMBOL)) || LA790_0 == GROUP_CONCAT_SYMBOL || ((LA790_0 >= HANDLER_SYMBOL) && (LA790_0 <= HASH_SYMBOL)) || LA790_0 == HELP_SYMBOL || ((LA790_0 >= HOSTS_SYMBOL) && (LA790_0 <= HOST_SYMBOL)) || ((LA790_0 >= HOUR_SYMBOL) && (LA790_0 <= IGNORE_SERVER_IDS_SYMBOL)) || ((LA790_0 >= IMPORT_SYMBOL) && (LA790_0 <= INDEXES_SYMBOL)) || LA790_0 == INITIAL_SIZE_SYMBOL || LA790_0 == INNODB_SYMBOL || ((LA790_0 >= INSERT_METHOD_SYMBOL) && (LA790_0 <= INSTALL_SYMBOL)) || LA790_0 == INVOKER_SYMBOL || LA790_0 == IO_SYMBOL || ((LA790_0 >= IPC_SYMBOL) && (LA790_0 <= ISSUER_SYMBOL)) || LA790_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA790_0 >= LANGUAGE_SYMBOL) && (LA790_0 <= LAST_SYMBOL)) || LA790_0 == LEAVES_SYMBOL || LA790_0 == LEFT_SYMBOL || LA790_0 == LESS_SYMBOL || LA790_0 == LEVEL_SYMBOL || LA790_0 == LINESTRING_SYMBOL || LA790_0 == LIST_SYMBOL || LA790_0 == LOCAL_SYMBOL || LA790_0 == LOCKS_SYMBOL || LA790_0 == LOGFILE_SYMBOL || LA790_0 == LOGS_SYMBOL || LA790_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA790_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA790_0 <= MASTER_SSL_SYMBOL)) || ((LA790_0 >= MASTER_SYMBOL) && (LA790_0 <= MATCH_SYMBOL)) || ((LA790_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA790_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA790_0 >= MEDIUM_SYMBOL) && (LA790_0 <= MICROSECOND_SYMBOL)) || LA790_0 == MIGRATE_SYMBOL || ((LA790_0 >= MINUTE_SYMBOL) && (LA790_0 <= MIN_SYMBOL)) || LA790_0 == MODE_SYMBOL || LA790_0 == MODIFY_SYMBOL || ((LA790_0 >= MOD_SYMBOL) && (LA790_0 <= MULTILINESTRING_SYMBOL)) || ((LA790_0 >= MULTIPOINT_SYMBOL) && (LA790_0 <= MULTIPOLYGON_SYMBOL)) || ((LA790_0 >= MUTEX_SYMBOL) && (LA790_0 <= NATIONAL_SYMBOL)) || LA790_0 == NCHAR_SYMBOL || LA790_0 == NDBCLUSTER_SYMBOL || ((LA790_0 >= NEW_SYMBOL) && (LA790_0 <= NONE_SYMBOL)) || ((LA790_0 >= NOW_SYMBOL) && (LA790_0 <= NO_WAIT_SYMBOL)) || LA790_0 == NULL2_SYMBOL || ((LA790_0 >= NULL_SYMBOL) && (LA790_0 <= NUMBER_SYMBOL)) || LA790_0 == NVARCHAR_SYMBOL || ((LA790_0 >= OFFSET_SYMBOL) && (LA790_0 <= ONE_SYMBOL)) || ((LA790_0 >= OPEN_PAR_SYMBOL) && (LA790_0 <= OPEN_SYMBOL)) || LA790_0 == OPTIONS_SYMBOL || ((LA790_0 >= OWNER_SYMBOL) && (LA790_0 <= PARAM_MARKER)) || ((LA790_0 >= PARSER_SYMBOL) && (LA790_0 <= PARTITION_SYMBOL)) || ((LA790_0 >= PASSWORD_SYMBOL) && (LA790_0 <= PLUGIN_SYMBOL)) || ((LA790_0 >= POINT_SYMBOL) && (LA790_0 <= POSITION_SYMBOL)) || ((LA790_0 >= PREPARE_SYMBOL) && (LA790_0 <= PREV_SYMBOL)) || LA790_0 == PRIVILEGES_SYMBOL || ((LA790_0 >= PROCESSLIST_SYMBOL) && (LA790_0 <= PROXY_SYMBOL)) || ((LA790_0 >= QUARTER_SYMBOL) && (LA790_0 <= QUICK_SYMBOL)) || LA790_0 == READ_ONLY_SYMBOL || ((LA790_0 >= REBUILD_SYMBOL) && (LA790_0 <= REDUNDANT_SYMBOL)) || ((LA790_0 >= RELAYLOG_SYMBOL) && (LA790_0 <= RELAY_THREAD_SYMBOL)) || ((LA790_0 >= RELOAD_SYMBOL) && (LA790_0 <= REMOVE_SYMBOL)) || ((LA790_0 >= REORGANIZE_SYMBOL) && (LA790_0 <= REPLICATION_SYMBOL)) || LA790_0 == RESET_SYMBOL || LA790_0 == RESTORE_SYMBOL || ((LA790_0 >= RESUME_SYMBOL) && (LA790_0 <= RETURNS_SYMBOL)) || LA790_0 == REVERSE_SYMBOL || LA790_0 == RIGHT_SYMBOL || ((LA790_0 >= ROLLBACK_SYMBOL) && (LA790_0 <= SCHEDULE_SYMBOL)) || LA790_0 == SCHEMA_NAME_SYMBOL || ((LA790_0 >= SECOND_SYMBOL) && (LA790_0 <= SECURITY_SYMBOL)) || ((LA790_0 >= SERIALIZABLE_SYMBOL) && (LA790_0 <= SERIAL_SYMBOL)) || ((LA790_0 >= SERVER_SYMBOL) && (LA790_0 <= SESSION_SYMBOL)) || LA790_0 == SHARE_SYMBOL || LA790_0 == SHUTDOWN_SYMBOL || ((LA790_0 >= SIGNED_SYMBOL) && (LA790_0 <= SIMPLE_SYMBOL)) || ((LA790_0 >= SLAVE_SYMBOL) && (LA790_0 <= SLOW_SYMBOL)) || ((LA790_0 >= SNAPSHOT_SYMBOL) && (LA790_0 <= SOURCE_SYMBOL)) || ((LA790_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA790_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA790_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA790_0 <= SQL_CACHE_SYMBOL)) || LA790_0 == SQL_NO_CACHE_SYMBOL || LA790_0 == SQL_THREAD_SYMBOL || ((LA790_0 >= STARTS_SYMBOL) && (LA790_0 <= STATUS_SYMBOL)) || LA790_0 == STDDEV_SAMP_SYMBOL || ((LA790_0 >= STD_SYMBOL) && (LA790_0 <= STORAGE_SYMBOL)) || ((LA790_0 >= STRING_SYMBOL) && (LA790_0 <= SUBPARTITION_SYMBOL)) || LA790_0 == SUBSTRING_SYMBOL || ((LA790_0 >= SUM_SYMBOL) && (LA790_0 <= SYSDATE_SYMBOL)) || ((LA790_0 >= TABLESPACE_SYMBOL) && (LA790_0 <= TABLE_NAME_SYMBOL)) || ((LA790_0 >= TEMPORARY_SYMBOL) && (LA790_0 <= TEMPTABLE_SYMBOL)) || ((LA790_0 >= TEXT_SYMBOL) && (LA790_0 <= THAN_SYMBOL)) || ((LA790_0 >= TIMESTAMP_ADD_SYMBOL) && (LA790_0 <= TIMESTAMP_DIFF_SYMBOL)) || ((LA790_0 >= TRANSACTION_SYMBOL) && (LA790_0 <= TRIGGERS_SYMBOL)) || LA790_0 == TRIM_SYMBOL || ((LA790_0 >= TRUNCATE_SYMBOL) && (LA790_0 <= UDF_RETURNS_SYMBOL)) || ((LA790_0 >= UNCOMMITTED_SYMBOL) && (LA790_0 <= UNDEFINED_SYMBOL)) || ((LA790_0 >= UNDOFILE_SYMBOL) && (LA790_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA790_0 >= UNICODE_SYMBOL) && (LA790_0 <= UNINSTALL_SYMBOL)) || LA790_0 == UNKNOWN_SYMBOL || LA790_0 == UNTIL_SYMBOL || LA790_0 == UPGRADE_SYMBOL || ((LA790_0 >= USER_RESOURCES_SYMBOL) && (LA790_0 <= USE_FRM_SYMBOL)) || ((LA790_0 >= UTC_DATE_SYMBOL) && (LA790_0 <= VALUE_SYMBOL)) || ((LA790_0 >= VARIABLES_SYMBOL) && (LA790_0 <= VARIANCE_SYMBOL)) || LA790_0 == VAR_SAMP_SYMBOL || ((LA790_0 >= VIEW_SYMBOL) && (LA790_0 <= WEIGHT_STRING_SYMBOL)) || ((LA790_0 >= WORK_SYMBOL) && (LA790_0 <= WRAPPER_SYMBOL)) || LA790_0 == X509_SYMBOL || ((LA790_0 >= XA_SYMBOL) && (LA790_0 <= XML_SYMBOL)) || LA790_0 == YEAR_SYMBOL || LA790_0 == 732))
            	                {
            	                    alt790=1;
            	                }
            	                else if ( (LA790_0 == MAXVALUE_SYMBOL))
            	                {
            	                    alt790=2;
            	                }
            	                else
            	                {
            	                    if (BACKTRACKING>0)
            	                    {
            	                        FAILEDFLAG = ANTLR3_TRUE;
            	                        return retval;
            	                    }


            	                    CONSTRUCTEX();
            	                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    EXCEPTION->message      = (void *)"";
            	                    EXCEPTION->decisionNum  = 790;
            	                    EXCEPTION->state        = 0;


            	                    goto rulepartition_value_listEx;

            	                }
            	            }
            	            switch (alt790)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2392:64: expression
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_expression_in_partition_value_list13910);
            	        	        expression2829=expression(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartition_value_listEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2829.tree);

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:2392:77: MAXVALUE_SYMBOL
            	        	    {
            	        	        MAXVALUE_SYMBOL2830 = (pANTLR3_COMMON_TOKEN) MATCHT(MAXVALUE_SYMBOL, &FOLLOW_MAXVALUE_SYMBOL_in_partition_value_list13914);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartition_value_listEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        MAXVALUE_SYMBOL2830_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAXVALUE_SYMBOL2830));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, MAXVALUE_SYMBOL2830_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

            	default:
            	    goto loop791;	/* break out of the loop */
            	    break;
                }
            }
            loop791: ; /* Jump out to here if this rule does not match */


            CLOSE_PAR_SYMBOL2831 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_partition_value_list13919);
            if  (HASEXCEPTION())
            {
                goto rulepartition_value_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL2831_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2831));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2831_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulepartition_value_listEx; /* Prevent compiler warnings */
    rulepartition_value_listEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end partition_value_list */

/**
 * $ANTLR start definer_clause
 * MySQL.g:2395:1: definer_clause : DEFINER_SYMBOL EQUAL_OPERATOR user ;
 */
static MySQLParser_definer_clause_return
definer_clause(pMySQLParser ctx)
{
    MySQLParser_definer_clause_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    DEFINER_SYMBOL2832;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2833;
    MySQLParser_user_return user2834;
    #undef	RETURN_TYPE_user2834
    #define	RETURN_TYPE_user2834 MySQLParser_user_return

    pANTLR3_BASE_TREE DEFINER_SYMBOL2832_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2833_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DEFINER_SYMBOL2832       = NULL;
    EQUAL_OPERATOR2833       = NULL;
    user2834.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DEFINER_SYMBOL2832_tree   = NULL;
    EQUAL_OPERATOR2833_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2395:15: ( DEFINER_SYMBOL EQUAL_OPERATOR user )
        // MySQL.g:2396:2: DEFINER_SYMBOL EQUAL_OPERATOR user
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            DEFINER_SYMBOL2832 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFINER_SYMBOL, &FOLLOW_DEFINER_SYMBOL_in_definer_clause13928);
            if  (HASEXCEPTION())
            {
                goto ruledefiner_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DEFINER_SYMBOL2832_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFINER_SYMBOL2832));
            ADAPTOR->addChild(ADAPTOR, root_0, DEFINER_SYMBOL2832_tree);
            }

            EQUAL_OPERATOR2833 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_definer_clause13930);
            if  (HASEXCEPTION())
            {
                goto ruledefiner_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EQUAL_OPERATOR2833_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2833));
            ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2833_tree);
            }

            FOLLOWPUSH(FOLLOW_user_in_definer_clause13932);
            user2834=user(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruledefiner_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user2834.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto ruledefiner_clauseEx; /* Prevent compiler warnings */
    ruledefiner_clauseEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end definer_clause */

/**
 * $ANTLR start if_not_exists
 * MySQL.g:2399:1: if_not_exists : IF_SYMBOL NOT_SYMBOL EXISTS_SYMBOL ;
 */
static MySQLParser_if_not_exists_return
if_not_exists(pMySQLParser ctx)
{
    MySQLParser_if_not_exists_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    IF_SYMBOL2835;
    pANTLR3_COMMON_TOKEN    NOT_SYMBOL2836;
    pANTLR3_COMMON_TOKEN    EXISTS_SYMBOL2837;

    pANTLR3_BASE_TREE IF_SYMBOL2835_tree;
    pANTLR3_BASE_TREE NOT_SYMBOL2836_tree;
    pANTLR3_BASE_TREE EXISTS_SYMBOL2837_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    IF_SYMBOL2835       = NULL;
    NOT_SYMBOL2836       = NULL;
    EXISTS_SYMBOL2837       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    IF_SYMBOL2835_tree   = NULL;
    NOT_SYMBOL2836_tree   = NULL;
    EXISTS_SYMBOL2837_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2399:14: ( IF_SYMBOL NOT_SYMBOL EXISTS_SYMBOL )
        // MySQL.g:2400:2: IF_SYMBOL NOT_SYMBOL EXISTS_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            IF_SYMBOL2835 = (pANTLR3_COMMON_TOKEN) MATCHT(IF_SYMBOL, &FOLLOW_IF_SYMBOL_in_if_not_exists13941);
            if  (HASEXCEPTION())
            {
                goto ruleif_not_existsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            IF_SYMBOL2835_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IF_SYMBOL2835));
            ADAPTOR->addChild(ADAPTOR, root_0, IF_SYMBOL2835_tree);
            }

            NOT_SYMBOL2836 = (pANTLR3_COMMON_TOKEN) MATCHT(NOT_SYMBOL, &FOLLOW_NOT_SYMBOL_in_if_not_exists13943);
            if  (HASEXCEPTION())
            {
                goto ruleif_not_existsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            NOT_SYMBOL2836_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NOT_SYMBOL2836));
            ADAPTOR->addChild(ADAPTOR, root_0, NOT_SYMBOL2836_tree);
            }

            EXISTS_SYMBOL2837 = (pANTLR3_COMMON_TOKEN) MATCHT(EXISTS_SYMBOL, &FOLLOW_EXISTS_SYMBOL_in_if_not_exists13945);
            if  (HASEXCEPTION())
            {
                goto ruleif_not_existsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EXISTS_SYMBOL2837_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXISTS_SYMBOL2837));
            ADAPTOR->addChild(ADAPTOR, root_0, EXISTS_SYMBOL2837_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleif_not_existsEx; /* Prevent compiler warnings */
    ruleif_not_existsEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end if_not_exists */

/**
 * $ANTLR start procedure_parameter
 * MySQL.g:2403:1: procedure_parameter : ( IN_SYMBOL | OUT_SYMBOL | INOUT_SYMBOL )? identifier data_type ;
 */
static MySQLParser_procedure_parameter_return
procedure_parameter(pMySQLParser ctx)
{
    MySQLParser_procedure_parameter_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set2838;
    MySQLParser_identifier_return identifier2839;
    #undef	RETURN_TYPE_identifier2839
    #define	RETURN_TYPE_identifier2839 MySQLParser_identifier_return

    MySQLParser_data_type_return data_type2840;
    #undef	RETURN_TYPE_data_type2840
    #define	RETURN_TYPE_data_type2840 MySQLParser_data_type_return

    pANTLR3_BASE_TREE set2838_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2838       = NULL;
    identifier2839.tree = NULL;

    data_type2840.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2838_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2403:20: ( ( IN_SYMBOL | OUT_SYMBOL | INOUT_SYMBOL )? identifier data_type )
        // MySQL.g:2404:2: ( IN_SYMBOL | OUT_SYMBOL | INOUT_SYMBOL )? identifier data_type
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:2404:2: ( IN_SYMBOL | OUT_SYMBOL | INOUT_SYMBOL )?
            {
                int alt792=2;
                switch ( LA(1) )
                {
                    case INOUT_SYMBOL:
                    case IN_SYMBOL:
                    case OUT_SYMBOL:
                    	{
                    		alt792=1;
                    	}
                        break;
                }

                switch (alt792)
                {
            	case 1:
            	    // MySQL.g:
            	    {
            	        set2838=(pANTLR3_COMMON_TOKEN)LT(1);

            	        if ( LA(1) == INOUT_SYMBOL || LA(1) == IN_SYMBOL || LA(1) == OUT_SYMBOL )
            	        {
            	            CONSUME();
            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2838))
            	            );
            	            PERRORRECOVERY=ANTLR3_FALSE;
            	            FAILEDFLAG=ANTLR3_FALSE;

            	        }
            	        else
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	            CONSTRUCTEX();
            	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
            	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
            	            EXCEPTION->expectingSet = NULL;

            	            goto ruleprocedure_parameterEx;
            	        }


            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_identifier_in_procedure_parameter13967);
            identifier2839=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleprocedure_parameterEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2839.tree);

            FOLLOWPUSH(FOLLOW_data_type_in_procedure_parameter13969);
            data_type2840=data_type(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleprocedure_parameterEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, data_type2840.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleprocedure_parameterEx; /* Prevent compiler warnings */
    ruleprocedure_parameterEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end procedure_parameter */

/**
 * $ANTLR start function_parameter
 * MySQL.g:2407:1: function_parameter : identifier data_type ;
 */
static MySQLParser_function_parameter_return
function_parameter(pMySQLParser ctx)
{
    MySQLParser_function_parameter_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_identifier_return identifier2841;
    #undef	RETURN_TYPE_identifier2841
    #define	RETURN_TYPE_identifier2841 MySQLParser_identifier_return

    MySQLParser_data_type_return data_type2842;
    #undef	RETURN_TYPE_data_type2842
    #define	RETURN_TYPE_data_type2842 MySQLParser_data_type_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    identifier2841.tree = NULL;

    data_type2842.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:2407:19: ( identifier data_type )
        // MySQL.g:2408:2: identifier data_type
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_identifier_in_function_parameter13978);
            identifier2841=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulefunction_parameterEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2841.tree);

            FOLLOWPUSH(FOLLOW_data_type_in_function_parameter13980);
            data_type2842=data_type(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulefunction_parameterEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, data_type2842.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto rulefunction_parameterEx; /* Prevent compiler warnings */
    rulefunction_parameterEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end function_parameter */

/**
 * $ANTLR start qualified_identifier
 * MySQL.g:2411:1: qualified_identifier : identifier ( DOT_SYMBOL identifier )? ;
 */
static MySQLParser_qualified_identifier_return
qualified_identifier(pMySQLParser ctx)
{
    MySQLParser_qualified_identifier_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    DOT_SYMBOL2844;
    MySQLParser_identifier_return identifier2843;
    #undef	RETURN_TYPE_identifier2843
    #define	RETURN_TYPE_identifier2843 MySQLParser_identifier_return

    MySQLParser_identifier_return identifier2845;
    #undef	RETURN_TYPE_identifier2845
    #define	RETURN_TYPE_identifier2845 MySQLParser_identifier_return

    pANTLR3_BASE_TREE DOT_SYMBOL2844_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DOT_SYMBOL2844       = NULL;
    identifier2843.tree = NULL;

    identifier2845.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DOT_SYMBOL2844_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2411:21: ( identifier ( DOT_SYMBOL identifier )? )
        // MySQL.g:2412:2: identifier ( DOT_SYMBOL identifier )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_identifier_in_qualified_identifier13989);
            identifier2843=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulequalified_identifierEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2843.tree);

            // MySQL.g:2412:13: ( DOT_SYMBOL identifier )?
            {
                int alt793=2;
                switch ( LA(1) )
                {
                    case DOT_SYMBOL:
                    	{
                    		switch ( LA(2) )
                    		{
                    		    case ACTION_SYMBOL:
                    		    case ADDDATE_SYMBOL:
                    		    case AFTER_SYMBOL:
                    		    case AGAINST_SYMBOL:
                    		    case AGGREGATE_SYMBOL:
                    		    case ALGORITHM_SYMBOL:
                    		    case ANALYZE_SYMBOL:
                    		    case ANY_SYMBOL:
                    		    case ASCII_SYMBOL:
                    		    case AT_SYMBOL:
                    		    case AUTHORS_SYMBOL:
                    		    case AUTOEXTEND_SIZE_SYMBOL:
                    		    case AUTO_INCREMENT_SYMBOL:
                    		    case AVG_ROW_LENGTH_SYMBOL:
                    		    case AVG_SYMBOL:
                    		    case BACKUP_SYMBOL:
                    		    case BACK_TICK_QUOTED_ID:
                    		    case BEGIN_SYMBOL:
                    		    case BINLOG_SYMBOL:
                    		    case BIT_SYMBOL:
                    		    case BLOCK_SYMBOL:
                    		    case BOOLEAN_SYMBOL:
                    		    case BOOL_SYMBOL:
                    		    case BTREE_SYMBOL:
                    		    case BYTE_SYMBOL:
                    		    case CACHE_SYMBOL:
                    		    case CASCADED_SYMBOL:
                    		    case CATALOG_NAME_SYMBOL:
                    		    case CHAIN_SYMBOL:
                    		    case CHANGED_SYMBOL:
                    		    case CHARSET_SYMBOL:
                    		    case CHECKSUM_SYMBOL:
                    		    case CIPHER_SYMBOL:
                    		    case CLASS_ORIGIN_SYMBOL:
                    		    case CLIENT_SYMBOL:
                    		    case CLOSE_SYMBOL:
                    		    case COALESCE_SYMBOL:
                    		    case CODE_SYMBOL:
                    		    case COLLATION_SYMBOL:
                    		    case COLUMNS_SYMBOL:
                    		    case COLUMN_FORMAT_SYMBOL:
                    		    case COLUMN_NAME_SYMBOL:
                    		    case COMMENT_SYMBOL:
                    		    case COMMITTED_SYMBOL:
                    		    case COMMIT_SYMBOL:
                    		    case COMPACT_SYMBOL:
                    		    case COMPLETION_SYMBOL:
                    		    case COMPRESSED_SYMBOL:
                    		    case CONCURRENT_SYMBOL:
                    		    case CONNECTION_SYMBOL:
                    		    case CONSISTENT_SYMBOL:
                    		    case CONSTRAINT_CATALOG_SYMBOL:
                    		    case CONSTRAINT_NAME_SYMBOL:
                    		    case CONSTRAINT_SCHEMA_SYMBOL:
                    		    case CONTAINS_SYMBOL:
                    		    case CONTEXT_SYMBOL:
                    		    case CONTRIBUTORS_SYMBOL:
                    		    case CPU_SYMBOL:
                    		    case CUBE_SYMBOL:
                    		    case CURRENT_SYMBOL:
                    		    case CURSOR_NAME_SYMBOL:
                    		    case DATAFILE_SYMBOL:
                    		    case DATA_SYMBOL:
                    		    case DATETIME_SYMBOL:
                    		    case DATE_SYMBOL:
                    		    case DAY_SYMBOL:
                    		    case DEALLOCATE_SYMBOL:
                    		    case DEFAULT_AUTH_SYMBOL:
                    		    case DEFINER_SYMBOL:
                    		    case DELAY_KEY_WRITE_SYMBOL:
                    		    case DES_KEY_FILE_SYMBOL:
                    		    case DIAGNOSTICS_SYMBOL:
                    		    case DIRECTORY_SYMBOL:
                    		    case DISABLE_SYMBOL:
                    		    case DISCARD_SYMBOL:
                    		    case DISK_SYMBOL:
                    		    case DOUBLE_QUOTED_TEXT:
                    		    case DO_SYMBOL:
                    		    case DUMPFILE_SYMBOL:
                    		    case DUPLICATE_SYMBOL:
                    		    case DYNAMIC_SYMBOL:
                    		    case ENABLE_SYMBOL:
                    		    case ENDS_SYMBOL:
                    		    case END_SYMBOL:
                    		    case ENGINES_SYMBOL:
                    		    case ENGINE_SYMBOL:
                    		    case ENUM_SYMBOL:
                    		    case ERRORS_SYMBOL:
                    		    case ERROR_SYMBOL:
                    		    case ESCAPE_SYMBOL:
                    		    case EVENTS_SYMBOL:
                    		    case EVENT_SYMBOL:
                    		    case EVERY_SYMBOL:
                    		    case EXECUTE_SYMBOL:
                    		    case EXPANSION_SYMBOL:
                    		    case EXPORT_SYMBOL:
                    		    case EXTENDED_SYMBOL:
                    		    case EXTENT_SIZE_SYMBOL:
                    		    case FAST_SYMBOL:
                    		    case FAULTS_SYMBOL:
                    		    case FILE_SYMBOL:
                    		    case FIRST_SYMBOL:
                    		    case FIXED_SYMBOL:
                    		    case FLUSH_SYMBOL:
                    		    case FORMAT_SYMBOL:
                    		    case FOUND_SYMBOL:
                    		    case FULL_SYMBOL:
                    		    case FUNCTION_SYMBOL:
                    		    case GENERAL_SYMBOL:
                    		    case GEOMETRYCOLLECTION_SYMBOL:
                    		    case GEOMETRY_SYMBOL:
                    		    case GET_FORMAT_SYMBOL:
                    		    case GLOBAL_SYMBOL:
                    		    case GRANTS_SYMBOL:
                    		    case HANDLER_SYMBOL:
                    		    case HASH_SYMBOL:
                    		    case HELP_SYMBOL:
                    		    case HOSTS_SYMBOL:
                    		    case HOST_SYMBOL:
                    		    case HOUR_SYMBOL:
                    		    case IDENTIFIED_SYMBOL:
                    		    case IDENTIFIER:
                    		    case IGNORE_SERVER_IDS_SYMBOL:
                    		    case IMPORT_SYMBOL:
                    		    case INDEXES_SYMBOL:
                    		    case INITIAL_SIZE_SYMBOL:
                    		    case INNODB_SYMBOL:
                    		    case INSERT_METHOD_SYMBOL:
                    		    case INSTALL_SYMBOL:
                    		    case INVOKER_SYMBOL:
                    		    case IO_SYMBOL:
                    		    case IPC_SYMBOL:
                    		    case ISOLATION_SYMBOL:
                    		    case ISSUER_SYMBOL:
                    		    case KEY_BLOCK_SIZE_SYMBOL:
                    		    case LANGUAGE_SYMBOL:
                    		    case LAST_SYMBOL:
                    		    case LEAVES_SYMBOL:
                    		    case LESS_SYMBOL:
                    		    case LEVEL_SYMBOL:
                    		    case LINESTRING_SYMBOL:
                    		    case LIST_SYMBOL:
                    		    case LOCAL_SYMBOL:
                    		    case LOCKS_SYMBOL:
                    		    case LOGFILE_SYMBOL:
                    		    case LOGS_SYMBOL:
                    		    case MASTER_AUTO_POSITION_SYMBOL:
                    		    case MASTER_CONNECT_RETRY_SYMBOL:
                    		    case MASTER_DELAY_SYMBOL:
                    		    case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                    		    case MASTER_HOST_SYMBOL:
                    		    case MASTER_LOG_FILE_SYMBOL:
                    		    case MASTER_LOG_POS_SYMBOL:
                    		    case MASTER_PASSWORD_SYMBOL:
                    		    case MASTER_PORT_SYMBOL:
                    		    case MASTER_RETRY_COUNT_SYMBOL:
                    		    case MASTER_SERVER_ID_SYMBOL:
                    		    case MASTER_SSL_CAPATH_SYMBOL:
                    		    case MASTER_SSL_CA_SYMBOL:
                    		    case MASTER_SSL_CERT_SYMBOL:
                    		    case MASTER_SSL_CIPHER_SYMBOL:
                    		    case MASTER_SSL_CRLPATH_SYMBOL:
                    		    case MASTER_SSL_CRL_SYMBOL:
                    		    case MASTER_SSL_KEY_SYMBOL:
                    		    case MASTER_SSL_SYMBOL:
                    		    case MASTER_SYMBOL:
                    		    case MASTER_USER_SYMBOL:
                    		    case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                    		    case MAX_QUERIES_PER_HOUR_SYMBOL:
                    		    case MAX_ROWS_SYMBOL:
                    		    case MAX_SIZE_SYMBOL:
                    		    case MAX_UPDATES_PER_HOUR_SYMBOL:
                    		    case MAX_USER_CONNECTIONS_SYMBOL:
                    		    case MEDIUM_SYMBOL:
                    		    case MEMORY_SYMBOL:
                    		    case MERGE_SYMBOL:
                    		    case MESSAGE_TEXT_SYMBOL:
                    		    case MICROSECOND_SYMBOL:
                    		    case MIGRATE_SYMBOL:
                    		    case MINUTE_SYMBOL:
                    		    case MIN_ROWS_SYMBOL:
                    		    case MODE_SYMBOL:
                    		    case MODIFY_SYMBOL:
                    		    case MONTH_SYMBOL:
                    		    case MULTILINESTRING_SYMBOL:
                    		    case MULTIPOINT_SYMBOL:
                    		    case MULTIPOLYGON_SYMBOL:
                    		    case MUTEX_SYMBOL:
                    		    case MYSQL_ERRNO_SYMBOL:
                    		    case NAMES_SYMBOL:
                    		    case NAME_SYMBOL:
                    		    case NATIONAL_SYMBOL:
                    		    case NCHAR_SYMBOL:
                    		    case NDBCLUSTER_SYMBOL:
                    		    case NEW_SYMBOL:
                    		    case NEXT_SYMBOL:
                    		    case NODEGROUP_SYMBOL:
                    		    case NONE_SYMBOL:
                    		    case NO_SYMBOL:
                    		    case NO_WAIT_SYMBOL:
                    		    case NUMBER_SYMBOL:
                    		    case NVARCHAR_SYMBOL:
                    		    case OFFSET_SYMBOL:
                    		    case OLD_PASSWORD_SYMBOL:
                    		    case ONE_SHOT_SYMBOL:
                    		    case ONE_SYMBOL:
                    		    case OPEN_SYMBOL:
                    		    case OPTIONS_SYMBOL:
                    		    case OWNER_SYMBOL:
                    		    case PACK_KEYS_SYMBOL:
                    		    case PAGE_SYMBOL:
                    		    case PARSER_SYMBOL:
                    		    case PARTIAL_SYMBOL:
                    		    case PARTITIONING_SYMBOL:
                    		    case PARTITIONS_SYMBOL:
                    		    case PARTITION_SYMBOL:
                    		    case PASSWORD_SYMBOL:
                    		    case PHASE_SYMBOL:
                    		    case PLUGINS_SYMBOL:
                    		    case PLUGIN_DIR_SYMBOL:
                    		    case PLUGIN_SYMBOL:
                    		    case POINT_SYMBOL:
                    		    case POLYGON_SYMBOL:
                    		    case PORT_SYMBOL:
                    		    case PREPARE_SYMBOL:
                    		    case PRESERVE_SYMBOL:
                    		    case PREV_SYMBOL:
                    		    case PRIVILEGES_SYMBOL:
                    		    case PROCESSLIST_SYMBOL:
                    		    case PROCESS_SYMBOL:
                    		    case PROFILES_SYMBOL:
                    		    case PROFILE_SYMBOL:
                    		    case PROXY_SYMBOL:
                    		    case QUARTER_SYMBOL:
                    		    case QUERY_SYMBOL:
                    		    case QUICK_SYMBOL:
                    		    case READ_ONLY_SYMBOL:
                    		    case REBUILD_SYMBOL:
                    		    case RECOVER_SYMBOL:
                    		    case REDOFILE_SYMBOL:
                    		    case REDO_BUFFER_SIZE_SYMBOL:
                    		    case REDUNDANT_SYMBOL:
                    		    case RELAYLOG_SYMBOL:
                    		    case RELAY_LOG_FILE_SYMBOL:
                    		    case RELAY_LOG_POS_SYMBOL:
                    		    case RELAY_SYMBOL:
                    		    case RELAY_THREAD_SYMBOL:
                    		    case RELOAD_SYMBOL:
                    		    case REMOVE_SYMBOL:
                    		    case REORGANIZE_SYMBOL:
                    		    case REPAIR_SYMBOL:
                    		    case REPEATABLE_SYMBOL:
                    		    case REPLICATION_SYMBOL:
                    		    case RESET_SYMBOL:
                    		    case RESTORE_SYMBOL:
                    		    case RESUME_SYMBOL:
                    		    case RETURNED_SQLSTATE_SYMBOL:
                    		    case RETURNS_SYMBOL:
                    		    case REVERSE_SYMBOL:
                    		    case ROLLBACK_SYMBOL:
                    		    case ROLLUP_SYMBOL:
                    		    case ROUTINE_SYMBOL:
                    		    case ROWS_SYMBOL:
                    		    case ROW_COUNT_SYMBOL:
                    		    case ROW_FORMAT_SYMBOL:
                    		    case ROW_SYMBOL:
                    		    case RTREE_SYMBOL:
                    		    case SAVEPOINT_SYMBOL:
                    		    case SCHEDULE_SYMBOL:
                    		    case SCHEMA_NAME_SYMBOL:
                    		    case SECOND_SYMBOL:
                    		    case SECURITY_SYMBOL:
                    		    case SERIALIZABLE_SYMBOL:
                    		    case SERIAL_SYMBOL:
                    		    case SERVER_SYMBOL:
                    		    case SESSION_SYMBOL:
                    		    case SHARE_SYMBOL:
                    		    case SHUTDOWN_SYMBOL:
                    		    case SIGNED_SYMBOL:
                    		    case SIMPLE_SYMBOL:
                    		    case SLAVE_SYMBOL:
                    		    case SLOW_SYMBOL:
                    		    case SNAPSHOT_SYMBOL:
                    		    case SOCKET_SYMBOL:
                    		    case SONAME_SYMBOL:
                    		    case SOUNDS_SYMBOL:
                    		    case SOURCE_SYMBOL:
                    		    case SQL_AFTER_GTIDS_SYMBOL:
                    		    case SQL_AFTER_MTS_GAPS_SYMBOL:
                    		    case SQL_BEFORE_GTIDS_SYMBOL:
                    		    case SQL_BUFFER_RESULT_SYMBOL:
                    		    case SQL_CACHE_SYMBOL:
                    		    case SQL_NO_CACHE_SYMBOL:
                    		    case SQL_THREAD_SYMBOL:
                    		    case STARTS_SYMBOL:
                    		    case START_SYMBOL:
                    		    case STATS_AUTO_RECALC_SYMBOL:
                    		    case STATS_PERSISTENT_SYMBOL:
                    		    case STATS_SAMPLE_PAGES_SYMBOL:
                    		    case STATUS_SYMBOL:
                    		    case STOP_SYMBOL:
                    		    case STORAGE_SYMBOL:
                    		    case STRING_SYMBOL:
                    		    case SUBCLASS_ORIGIN_SYMBOL:
                    		    case SUBDATE_SYMBOL:
                    		    case SUBJECT_SYMBOL:
                    		    case SUBPARTITIONS_SYMBOL:
                    		    case SUBPARTITION_SYMBOL:
                    		    case SUPER_SYMBOL:
                    		    case SUSPEND_SYMBOL:
                    		    case SWAPS_SYMBOL:
                    		    case SWITCHES_SYMBOL:
                    		    case TABLESPACE_SYMBOL:
                    		    case TABLES_SYMBOL:
                    		    case TABLE_CHECKSUM_SYMBOL:
                    		    case TABLE_NAME_SYMBOL:
                    		    case TEMPORARY_SYMBOL:
                    		    case TEMPTABLE_SYMBOL:
                    		    case TEXT_SYMBOL:
                    		    case THAN_SYMBOL:
                    		    case TIMESTAMP_ADD_SYMBOL:
                    		    case TIMESTAMP_DIFF_SYMBOL:
                    		    case TIMESTAMP_SYMBOL:
                    		    case TIME_SYMBOL:
                    		    case TRANSACTION_SYMBOL:
                    		    case TRIGGERS_SYMBOL:
                    		    case TRUNCATE_SYMBOL:
                    		    case TYPES_SYMBOL:
                    		    case TYPE_SYMBOL:
                    		    case UDF_RETURNS_SYMBOL:
                    		    case UNCOMMITTED_SYMBOL:
                    		    case UNDEFINED_SYMBOL:
                    		    case UNDOFILE_SYMBOL:
                    		    case UNDO_BUFFER_SIZE_SYMBOL:
                    		    case UNICODE_SYMBOL:
                    		    case UNINSTALL_SYMBOL:
                    		    case UNKNOWN_SYMBOL:
                    		    case UNTIL_SYMBOL:
                    		    case UPGRADE_SYMBOL:
                    		    case USER_RESOURCES_SYMBOL:
                    		    case USER_SYMBOL:
                    		    case USE_FRM_SYMBOL:
                    		    case VALUE_SYMBOL:
                    		    case VARIABLES_SYMBOL:
                    		    case VIEW_SYMBOL:
                    		    case WAIT_SYMBOL:
                    		    case WARNINGS_SYMBOL:
                    		    case WEEK_SYMBOL:
                    		    case WEIGHT_STRING_SYMBOL:
                    		    case WORK_SYMBOL:
                    		    case WRAPPER_SYMBOL:
                    		    case X509_SYMBOL:
                    		    case XA_SYMBOL:
                    		    case XML_SYMBOL:
                    		    case YEAR_SYMBOL:
                    		    	{
                    		    		alt793=1;
                    		    	}
                    		        break;
                    		}

                    	}
                        break;
                }

                switch (alt793)
                {
            	case 1:
            	    // MySQL.g:2412:14: DOT_SYMBOL identifier
            	    {
            	        DOT_SYMBOL2844 = (pANTLR3_COMMON_TOKEN) MATCHT(DOT_SYMBOL, &FOLLOW_DOT_SYMBOL_in_qualified_identifier13992);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulequalified_identifierEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DOT_SYMBOL2844_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOT_SYMBOL2844));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DOT_SYMBOL2844_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_identifier_in_qualified_identifier13994);
            	        identifier2845=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulequalified_identifierEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2845.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulequalified_identifierEx; /* Prevent compiler warnings */
    rulequalified_identifierEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end qualified_identifier */

/**
 * $ANTLR start qualified_identifier_list
 * MySQL.g:2415:1: qualified_identifier_list : qualified_identifier ( COMMA_SYMBOL qualified_identifier )* ;
 */
static MySQLParser_qualified_identifier_list_return
qualified_identifier_list(pMySQLParser ctx)
{
    MySQLParser_qualified_identifier_list_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2847;
    MySQLParser_qualified_identifier_return qualified_identifier2846;
    #undef	RETURN_TYPE_qualified_identifier2846
    #define	RETURN_TYPE_qualified_identifier2846 MySQLParser_qualified_identifier_return

    MySQLParser_qualified_identifier_return qualified_identifier2848;
    #undef	RETURN_TYPE_qualified_identifier2848
    #define	RETURN_TYPE_qualified_identifier2848 MySQLParser_qualified_identifier_return

    pANTLR3_BASE_TREE COMMA_SYMBOL2847_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL2847       = NULL;
    qualified_identifier2846.tree = NULL;

    qualified_identifier2848.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL2847_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2415:26: ( qualified_identifier ( COMMA_SYMBOL qualified_identifier )* )
        // MySQL.g:2416:2: qualified_identifier ( COMMA_SYMBOL qualified_identifier )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_qualified_identifier_in_qualified_identifier_list14005);
            qualified_identifier2846=qualified_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulequalified_identifier_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, qualified_identifier2846.tree);

            // MySQL.g:2416:23: ( COMMA_SYMBOL qualified_identifier )*

            for (;;)
            {
                int alt794=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt794=1;
                	}
                    break;

                }

                switch (alt794)
                {
            	case 1:
            	    // MySQL.g:2416:24: COMMA_SYMBOL qualified_identifier
            	    {
            	        COMMA_SYMBOL2847 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_qualified_identifier_list14008);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulequalified_identifier_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL2847_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2847));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2847_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_qualified_identifier_in_qualified_identifier_list14010);
            	        qualified_identifier2848=qualified_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulequalified_identifier_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, qualified_identifier2848.tree);

            	    }
            	    break;

            	default:
            	    goto loop794;	/* break out of the loop */
            	    break;
                }
            }
            loop794: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto rulequalified_identifier_listEx; /* Prevent compiler warnings */
    rulequalified_identifier_listEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end qualified_identifier_list */

/**
 * $ANTLR start qualified_identifier_with_wildcard
 * MySQL.g:2419:1: qualified_identifier_with_wildcard : identifier DOT_SYMBOL ( identifier DOT_SYMBOL )? MULT_OPERATOR ;
 */
static MySQLParser_qualified_identifier_with_wildcard_return
qualified_identifier_with_wildcard(pMySQLParser ctx)
{
    MySQLParser_qualified_identifier_with_wildcard_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    DOT_SYMBOL2850;
    pANTLR3_COMMON_TOKEN    DOT_SYMBOL2852;
    pANTLR3_COMMON_TOKEN    MULT_OPERATOR2853;
    MySQLParser_identifier_return identifier2849;
    #undef	RETURN_TYPE_identifier2849
    #define	RETURN_TYPE_identifier2849 MySQLParser_identifier_return

    MySQLParser_identifier_return identifier2851;
    #undef	RETURN_TYPE_identifier2851
    #define	RETURN_TYPE_identifier2851 MySQLParser_identifier_return

    pANTLR3_BASE_TREE DOT_SYMBOL2850_tree;
    pANTLR3_BASE_TREE DOT_SYMBOL2852_tree;
    pANTLR3_BASE_TREE MULT_OPERATOR2853_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DOT_SYMBOL2850       = NULL;
    DOT_SYMBOL2852       = NULL;
    MULT_OPERATOR2853       = NULL;
    identifier2849.tree = NULL;

    identifier2851.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DOT_SYMBOL2850_tree   = NULL;
    DOT_SYMBOL2852_tree   = NULL;
    MULT_OPERATOR2853_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2419:35: ( identifier DOT_SYMBOL ( identifier DOT_SYMBOL )? MULT_OPERATOR )
        // MySQL.g:2420:2: identifier DOT_SYMBOL ( identifier DOT_SYMBOL )? MULT_OPERATOR
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_identifier_in_qualified_identifier_with_wildcard14028);
            identifier2849=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulequalified_identifier_with_wildcardEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2849.tree);

            DOT_SYMBOL2850 = (pANTLR3_COMMON_TOKEN) MATCHT(DOT_SYMBOL, &FOLLOW_DOT_SYMBOL_in_qualified_identifier_with_wildcard14030);
            if  (HASEXCEPTION())
            {
                goto rulequalified_identifier_with_wildcardEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DOT_SYMBOL2850_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOT_SYMBOL2850));
            ADAPTOR->addChild(ADAPTOR, root_0, DOT_SYMBOL2850_tree);
            }

            // MySQL.g:2420:24: ( identifier DOT_SYMBOL )?
            {
                int alt795=2;
                {
                    int LA795_0 = LA(1);
                    if ( (LA795_0 == BACK_TICK_QUOTED_ID || LA795_0 == IDENTIFIER))
                    {
                        alt795=1;
                    }
                    else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA795_0 == DOUBLE_QUOTED_TEXT))
                    {
                        alt795=1;
                    }
                    else if ( (((LA795_0 >= ACTION_SYMBOL) && (LA795_0 <= ADDDATE_SYMBOL)) || ((LA795_0 >= AFTER_SYMBOL) && (LA795_0 <= ALGORITHM_SYMBOL)) || LA795_0 == ANALYZE_SYMBOL || ((LA795_0 >= ANY_SYMBOL) && (LA795_0 <= ASCII_SYMBOL)) || ((LA795_0 >= AT_SYMBOL) && (LA795_0 <= BACKUP_SYMBOL)) || LA795_0 == BEGIN_SYMBOL || LA795_0 == BINLOG_SYMBOL || LA795_0 == BIT_SYMBOL || ((LA795_0 >= BLOCK_SYMBOL) && (LA795_0 <= BOOL_SYMBOL)) || ((LA795_0 >= BTREE_SYMBOL) && (LA795_0 <= BYTE_SYMBOL)) || LA795_0 == CACHE_SYMBOL || LA795_0 == CASCADED_SYMBOL || ((LA795_0 >= CATALOG_NAME_SYMBOL) && (LA795_0 <= CHANGED_SYMBOL)) || LA795_0 == CHARSET_SYMBOL || LA795_0 == CHECKSUM_SYMBOL || ((LA795_0 >= CIPHER_SYMBOL) && (LA795_0 <= CLIENT_SYMBOL)) || ((LA795_0 >= CLOSE_SYMBOL) && (LA795_0 <= CODE_SYMBOL)) || LA795_0 == COLLATION_SYMBOL || ((LA795_0 >= COLUMNS_SYMBOL) && (LA795_0 <= COLUMN_NAME_SYMBOL)) || ((LA795_0 >= COMMENT_SYMBOL) && (LA795_0 <= COMPRESSED_SYMBOL)) || LA795_0 == CONCURRENT_SYMBOL || ((LA795_0 >= CONNECTION_SYMBOL) && (LA795_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA795_0 >= CONTAINS_SYMBOL) && (LA795_0 <= CONTEXT_SYMBOL)) || LA795_0 == CONTRIBUTORS_SYMBOL || LA795_0 == CPU_SYMBOL || LA795_0 == CUBE_SYMBOL || LA795_0 == CURRENT_SYMBOL || LA795_0 == CURSOR_NAME_SYMBOL || ((LA795_0 >= DATAFILE_SYMBOL) && (LA795_0 <= DATETIME_SYMBOL)) || LA795_0 == DATE_SYMBOL || ((LA795_0 >= DAY_SYMBOL) && (LA795_0 <= DEALLOCATE_SYMBOL)) || LA795_0 == DEFAULT_AUTH_SYMBOL || LA795_0 == DEFINER_SYMBOL || LA795_0 == DELAY_KEY_WRITE_SYMBOL || LA795_0 == DES_KEY_FILE_SYMBOL || LA795_0 == DIAGNOSTICS_SYMBOL || ((LA795_0 >= DIRECTORY_SYMBOL) && (LA795_0 <= DISK_SYMBOL)) || LA795_0 == DO_SYMBOL || ((LA795_0 >= DUMPFILE_SYMBOL) && (LA795_0 <= DYNAMIC_SYMBOL)) || LA795_0 == ENABLE_SYMBOL || LA795_0 == ENDS_SYMBOL || ((LA795_0 >= END_SYMBOL) && (LA795_0 <= ENUM_SYMBOL)) || ((LA795_0 >= ERRORS_SYMBOL) && (LA795_0 <= ERROR_SYMBOL)) || ((LA795_0 >= ESCAPE_SYMBOL) && (LA795_0 <= EVERY_SYMBOL)) || LA795_0 == EXECUTE_SYMBOL || LA795_0 == EXPANSION_SYMBOL || LA795_0 == EXPORT_SYMBOL || ((LA795_0 >= EXTENDED_SYMBOL) && (LA795_0 <= EXTENT_SIZE_SYMBOL)) || ((LA795_0 >= FAST_SYMBOL) && (LA795_0 <= FAULTS_SYMBOL)) || ((LA795_0 >= FILE_SYMBOL) && (LA795_0 <= FIXED_SYMBOL)) || LA795_0 == FLUSH_SYMBOL || LA795_0 == FORMAT_SYMBOL || LA795_0 == FOUND_SYMBOL || LA795_0 == FULL_SYMBOL || ((LA795_0 >= FUNCTION_SYMBOL) && (LA795_0 <= GET_FORMAT_SYMBOL)) || ((LA795_0 >= GLOBAL_SYMBOL) && (LA795_0 <= GRANTS_SYMBOL)) || ((LA795_0 >= HANDLER_SYMBOL) && (LA795_0 <= HASH_SYMBOL)) || LA795_0 == HELP_SYMBOL || ((LA795_0 >= HOSTS_SYMBOL) && (LA795_0 <= HOST_SYMBOL)) || ((LA795_0 >= HOUR_SYMBOL) && (LA795_0 <= IDENTIFIED_SYMBOL)) || LA795_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA795_0 >= IMPORT_SYMBOL) && (LA795_0 <= INDEXES_SYMBOL)) || LA795_0 == INITIAL_SIZE_SYMBOL || LA795_0 == INNODB_SYMBOL || LA795_0 == INSERT_METHOD_SYMBOL || LA795_0 == INSTALL_SYMBOL || LA795_0 == INVOKER_SYMBOL || LA795_0 == IO_SYMBOL || ((LA795_0 >= IPC_SYMBOL) && (LA795_0 <= ISSUER_SYMBOL)) || LA795_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA795_0 >= LANGUAGE_SYMBOL) && (LA795_0 <= LAST_SYMBOL)) || LA795_0 == LEAVES_SYMBOL || LA795_0 == LESS_SYMBOL || LA795_0 == LEVEL_SYMBOL || LA795_0 == LINESTRING_SYMBOL || LA795_0 == LIST_SYMBOL || LA795_0 == LOCAL_SYMBOL || LA795_0 == LOCKS_SYMBOL || LA795_0 == LOGFILE_SYMBOL || LA795_0 == LOGS_SYMBOL || LA795_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA795_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA795_0 <= MASTER_SSL_SYMBOL)) || ((LA795_0 >= MASTER_SYMBOL) && (LA795_0 <= MASTER_USER_SYMBOL)) || ((LA795_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA795_0 <= MAX_SIZE_SYMBOL)) || ((LA795_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA795_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA795_0 >= MEDIUM_SYMBOL) && (LA795_0 <= MICROSECOND_SYMBOL)) || LA795_0 == MIGRATE_SYMBOL || ((LA795_0 >= MINUTE_SYMBOL) && (LA795_0 <= MIN_ROWS_SYMBOL)) || LA795_0 == MODE_SYMBOL || LA795_0 == MODIFY_SYMBOL || ((LA795_0 >= MONTH_SYMBOL) && (LA795_0 <= MULTILINESTRING_SYMBOL)) || ((LA795_0 >= MULTIPOINT_SYMBOL) && (LA795_0 <= MULTIPOLYGON_SYMBOL)) || ((LA795_0 >= MUTEX_SYMBOL) && (LA795_0 <= NATIONAL_SYMBOL)) || LA795_0 == NCHAR_SYMBOL || LA795_0 == NDBCLUSTER_SYMBOL || ((LA795_0 >= NEW_SYMBOL) && (LA795_0 <= NONE_SYMBOL)) || ((LA795_0 >= NO_SYMBOL) && (LA795_0 <= NO_WAIT_SYMBOL)) || LA795_0 == NUMBER_SYMBOL || LA795_0 == NVARCHAR_SYMBOL || ((LA795_0 >= OFFSET_SYMBOL) && (LA795_0 <= ONE_SYMBOL)) || LA795_0 == OPEN_SYMBOL || LA795_0 == OPTIONS_SYMBOL || ((LA795_0 >= OWNER_SYMBOL) && (LA795_0 <= PAGE_SYMBOL)) || ((LA795_0 >= PARSER_SYMBOL) && (LA795_0 <= PARTITION_SYMBOL)) || ((LA795_0 >= PASSWORD_SYMBOL) && (LA795_0 <= PLUGIN_SYMBOL)) || ((LA795_0 >= POINT_SYMBOL) && (LA795_0 <= PORT_SYMBOL)) || ((LA795_0 >= PREPARE_SYMBOL) && (LA795_0 <= PREV_SYMBOL)) || LA795_0 == PRIVILEGES_SYMBOL || ((LA795_0 >= PROCESSLIST_SYMBOL) && (LA795_0 <= PROXY_SYMBOL)) || ((LA795_0 >= QUARTER_SYMBOL) && (LA795_0 <= QUICK_SYMBOL)) || LA795_0 == READ_ONLY_SYMBOL || ((LA795_0 >= REBUILD_SYMBOL) && (LA795_0 <= REDUNDANT_SYMBOL)) || ((LA795_0 >= RELAYLOG_SYMBOL) && (LA795_0 <= RELAY_THREAD_SYMBOL)) || ((LA795_0 >= RELOAD_SYMBOL) && (LA795_0 <= REMOVE_SYMBOL)) || ((LA795_0 >= REORGANIZE_SYMBOL) && (LA795_0 <= REPEATABLE_SYMBOL)) || LA795_0 == REPLICATION_SYMBOL || LA795_0 == RESET_SYMBOL || LA795_0 == RESTORE_SYMBOL || ((LA795_0 >= RESUME_SYMBOL) && (LA795_0 <= RETURNS_SYMBOL)) || LA795_0 == REVERSE_SYMBOL || ((LA795_0 >= ROLLBACK_SYMBOL) && (LA795_0 <= SCHEDULE_SYMBOL)) || LA795_0 == SCHEMA_NAME_SYMBOL || ((LA795_0 >= SECOND_SYMBOL) && (LA795_0 <= SECURITY_SYMBOL)) || ((LA795_0 >= SERIALIZABLE_SYMBOL) && (LA795_0 <= SERIAL_SYMBOL)) || ((LA795_0 >= SERVER_SYMBOL) && (LA795_0 <= SESSION_SYMBOL)) || LA795_0 == SHARE_SYMBOL || LA795_0 == SHUTDOWN_SYMBOL || ((LA795_0 >= SIGNED_SYMBOL) && (LA795_0 <= SIMPLE_SYMBOL)) || ((LA795_0 >= SLAVE_SYMBOL) && (LA795_0 <= SLOW_SYMBOL)) || ((LA795_0 >= SNAPSHOT_SYMBOL) && (LA795_0 <= SOURCE_SYMBOL)) || ((LA795_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA795_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA795_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA795_0 <= SQL_CACHE_SYMBOL)) || LA795_0 == SQL_NO_CACHE_SYMBOL || LA795_0 == SQL_THREAD_SYMBOL || ((LA795_0 >= STARTS_SYMBOL) && (LA795_0 <= STATUS_SYMBOL)) || ((LA795_0 >= STOP_SYMBOL) && (LA795_0 <= STORAGE_SYMBOL)) || ((LA795_0 >= STRING_SYMBOL) && (LA795_0 <= SUBPARTITION_SYMBOL)) || ((LA795_0 >= SUPER_SYMBOL) && (LA795_0 <= SWITCHES_SYMBOL)) || ((LA795_0 >= TABLESPACE_SYMBOL) && (LA795_0 <= TABLE_NAME_SYMBOL)) || ((LA795_0 >= TEMPORARY_SYMBOL) && (LA795_0 <= TEMPTABLE_SYMBOL)) || ((LA795_0 >= TEXT_SYMBOL) && (LA795_0 <= THAN_SYMBOL)) || ((LA795_0 >= TIMESTAMP_ADD_SYMBOL) && (LA795_0 <= TIME_SYMBOL)) || ((LA795_0 >= TRANSACTION_SYMBOL) && (LA795_0 <= TRIGGERS_SYMBOL)) || ((LA795_0 >= TRUNCATE_SYMBOL) && (LA795_0 <= UDF_RETURNS_SYMBOL)) || ((LA795_0 >= UNCOMMITTED_SYMBOL) && (LA795_0 <= UNDEFINED_SYMBOL)) || ((LA795_0 >= UNDOFILE_SYMBOL) && (LA795_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA795_0 >= UNICODE_SYMBOL) && (LA795_0 <= UNINSTALL_SYMBOL)) || LA795_0 == UNKNOWN_SYMBOL || LA795_0 == UNTIL_SYMBOL || LA795_0 == UPGRADE_SYMBOL || ((LA795_0 >= USER_RESOURCES_SYMBOL) && (LA795_0 <= USE_FRM_SYMBOL)) || LA795_0 == VALUE_SYMBOL || LA795_0 == VARIABLES_SYMBOL || ((LA795_0 >= VIEW_SYMBOL) && (LA795_0 <= WEIGHT_STRING_SYMBOL)) || ((LA795_0 >= WORK_SYMBOL) && (LA795_0 <= WRAPPER_SYMBOL)) || LA795_0 == X509_SYMBOL || ((LA795_0 >= XA_SYMBOL) && (LA795_0 <= XML_SYMBOL)) || LA795_0 == YEAR_SYMBOL))
                    {
                        alt795=1;
                    }
                }
                switch (alt795)
                {
            	case 1:
            	    // MySQL.g:2420:25: identifier DOT_SYMBOL
            	    {
            	        FOLLOWPUSH(FOLLOW_identifier_in_qualified_identifier_with_wildcard14033);
            	        identifier2851=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulequalified_identifier_with_wildcardEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2851.tree);

            	        DOT_SYMBOL2852 = (pANTLR3_COMMON_TOKEN) MATCHT(DOT_SYMBOL, &FOLLOW_DOT_SYMBOL_in_qualified_identifier_with_wildcard14035);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulequalified_identifier_with_wildcardEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DOT_SYMBOL2852_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOT_SYMBOL2852));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DOT_SYMBOL2852_tree);
            	        }

            	    }
            	    break;

                }
            }

            MULT_OPERATOR2853 = (pANTLR3_COMMON_TOKEN) MATCHT(MULT_OPERATOR, &FOLLOW_MULT_OPERATOR_in_qualified_identifier_with_wildcard14039);
            if  (HASEXCEPTION())
            {
                goto rulequalified_identifier_with_wildcardEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            MULT_OPERATOR2853_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MULT_OPERATOR2853));
            ADAPTOR->addChild(ADAPTOR, root_0, MULT_OPERATOR2853_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulequalified_identifier_with_wildcardEx; /* Prevent compiler warnings */
    rulequalified_identifier_with_wildcardEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end qualified_identifier_with_wildcard */

/**
 * $ANTLR start target_table
 * MySQL.g:2423:1: target_table : qualified_identifier -> ^( TABLE_REF_ID qualified_identifier ) ;
 */
static MySQLParser_target_table_return
target_table(pMySQLParser ctx)
{
    MySQLParser_target_table_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_qualified_identifier_return qualified_identifier2854;
    #undef	RETURN_TYPE_qualified_identifier2854
    #define	RETURN_TYPE_qualified_identifier2854 MySQLParser_qualified_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_qualified_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    qualified_identifier2854.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;



    stream_qualified_identifier   = NULL;
    #define CREATE_stream_qualified_identifier  if (stream_qualified_identifier == NULL) {stream_qualified_identifier = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule qualified_identifier"); }

    retval.tree  = NULL;

    {
        // MySQL.g:2423:13: ( qualified_identifier -> ^( TABLE_REF_ID qualified_identifier ) )
        // MySQL.g:2424:2: qualified_identifier
        {
            FOLLOWPUSH(FOLLOW_qualified_identifier_in_target_table14055);
            qualified_identifier2854=qualified_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruletarget_tableEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_qualified_identifier; stream_qualified_identifier->add(stream_qualified_identifier, qualified_identifier2854.tree, NULL); }

            /* AST REWRITE
             * elements          : qualified_identifier
             * token labels      : 
             * rule labels       : retval
             * token list labels : 
             * rule list labels  : 
             */
            if ( BACKTRACKING==0 ) 

            {
            	pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_retval;

            	stream_retval=antlr3RewriteRuleSubtreeStreamNewAEE(ADAPTOR,  RECOGNIZER, (pANTLR3_UINT8)"token retval", retval.tree != NULL ? retval.tree : NULL);

            	root_0			    = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
            	retval.tree    = root_0;
            	// 2424:23: -> ^( TABLE_REF_ID qualified_identifier )
            	{
            	    // MySQL.g:2424:26: ^( TABLE_REF_ID qualified_identifier )
            	    {
            	        pANTLR3_BASE_TREE root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
            	        root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, 
            	        (pANTLR3_BASE_TREE)ADAPTOR->createTypeText(ADAPTOR, TABLE_REF_ID, (pANTLR3_UINT8)"TABLE_REF_ID")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_qualified_identifier == NULL ? NULL : stream_qualified_identifier->nextTree(stream_qualified_identifier));

            	        ADAPTOR->addChild(ADAPTOR, root_0, root_1);
            	    }

            	}


            	retval.tree = root_0; // set result root
            	if (stream_retval != NULL) stream_retval->free(stream_retval);


            }
        }

    }

    // This is where rules clean up and exit
    //
    goto ruletarget_tableEx; /* Prevent compiler warnings */
    ruletarget_tableEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
        if (stream_qualified_identifier != NULL) stream_qualified_identifier->free(stream_qualified_identifier);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end target_table */

/**
 * $ANTLR start column_assignment
 * MySQL.g:2427:1: column_assignment : field_name EQUAL_OPERATOR expression ;
 */
static MySQLParser_column_assignment_return
column_assignment(pMySQLParser ctx)
{
    MySQLParser_column_assignment_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2856;
    MySQLParser_field_name_return field_name2855;
    #undef	RETURN_TYPE_field_name2855
    #define	RETURN_TYPE_field_name2855 MySQLParser_field_name_return

    MySQLParser_expression_return expression2857;
    #undef	RETURN_TYPE_expression2857
    #define	RETURN_TYPE_expression2857 MySQLParser_expression_return

    pANTLR3_BASE_TREE EQUAL_OPERATOR2856_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    EQUAL_OPERATOR2856       = NULL;
    field_name2855.tree = NULL;

    expression2857.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    EQUAL_OPERATOR2856_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2427:18: ( field_name EQUAL_OPERATOR expression )
        // MySQL.g:2428:2: field_name EQUAL_OPERATOR expression
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_field_name_in_column_assignment14073);
            field_name2855=field_name(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecolumn_assignmentEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_name2855.tree);

            EQUAL_OPERATOR2856 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_column_assignment14075);
            if  (HASEXCEPTION())
            {
                goto rulecolumn_assignmentEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EQUAL_OPERATOR2856_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2856));
            ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2856_tree);
            }

            FOLLOWPUSH(FOLLOW_expression_in_column_assignment14077);
            expression2857=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecolumn_assignmentEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2857.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto rulecolumn_assignmentEx; /* Prevent compiler warnings */
    rulecolumn_assignmentEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end column_assignment */

/**
 * $ANTLR start field_name_list
 * MySQL.g:2431:1: field_name_list : field_name ( COMMA_SYMBOL field_name )* ;
 */
static MySQLParser_field_name_list_return
field_name_list(pMySQLParser ctx)
{
    MySQLParser_field_name_list_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2859;
    MySQLParser_field_name_return field_name2858;
    #undef	RETURN_TYPE_field_name2858
    #define	RETURN_TYPE_field_name2858 MySQLParser_field_name_return

    MySQLParser_field_name_return field_name2860;
    #undef	RETURN_TYPE_field_name2860
    #define	RETURN_TYPE_field_name2860 MySQLParser_field_name_return

    pANTLR3_BASE_TREE COMMA_SYMBOL2859_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL2859       = NULL;
    field_name2858.tree = NULL;

    field_name2860.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL2859_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2431:16: ( field_name ( COMMA_SYMBOL field_name )* )
        // MySQL.g:2432:2: field_name ( COMMA_SYMBOL field_name )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_field_name_in_field_name_list14086);
            field_name2858=field_name(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulefield_name_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_name2858.tree);

            // MySQL.g:2432:13: ( COMMA_SYMBOL field_name )*

            for (;;)
            {
                int alt796=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt796=1;
                	}
                    break;

                }

                switch (alt796)
                {
            	case 1:
            	    // MySQL.g:2432:14: COMMA_SYMBOL field_name
            	    {
            	        COMMA_SYMBOL2859 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_field_name_list14089);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefield_name_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL2859_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2859));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2859_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_field_name_in_field_name_list14091);
            	        field_name2860=field_name(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefield_name_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_name2860.tree);

            	    }
            	    break;

            	default:
            	    goto loop796;	/* break out of the loop */
            	    break;
                }
            }
            loop796: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto rulefield_name_listEx; /* Prevent compiler warnings */
    rulefield_name_listEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end field_name_list */

/**
 * $ANTLR start field_name
 * MySQL.g:2435:1: field_name : field_name2 -> ^( FIELD_REF_ID field_name2 ) ;
 */
static MySQLParser_field_name_return
field_name(pMySQLParser ctx)
{
    MySQLParser_field_name_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_field_name2_return field_name22861;
    #undef	RETURN_TYPE_field_name22861
    #define	RETURN_TYPE_field_name22861 MySQLParser_field_name2_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_field_name2;
    /* Initialize rule variables
     */

    root_0 = NULL;

    field_name22861.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;



    stream_field_name2   = NULL;
    #define CREATE_stream_field_name2  if (stream_field_name2 == NULL) {stream_field_name2 = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule field_name2"); }

    retval.tree  = NULL;

    {
        // MySQL.g:2435:11: ( field_name2 -> ^( FIELD_REF_ID field_name2 ) )
        // MySQL.g:2436:2: field_name2
        {
            FOLLOWPUSH(FOLLOW_field_name2_in_field_name14102);
            field_name22861=field_name2(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulefield_nameEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_field_name2; stream_field_name2->add(stream_field_name2, field_name22861.tree, NULL); }

            /* AST REWRITE
             * elements          : field_name2
             * token labels      : 
             * rule labels       : retval
             * token list labels : 
             * rule list labels  : 
             */
            if ( BACKTRACKING==0 ) 

            {
            	pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_retval;

            	stream_retval=antlr3RewriteRuleSubtreeStreamNewAEE(ADAPTOR,  RECOGNIZER, (pANTLR3_UINT8)"token retval", retval.tree != NULL ? retval.tree : NULL);

            	root_0			    = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
            	retval.tree    = root_0;
            	// 2436:14: -> ^( FIELD_REF_ID field_name2 )
            	{
            	    // MySQL.g:2436:17: ^( FIELD_REF_ID field_name2 )
            	    {
            	        pANTLR3_BASE_TREE root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
            	        root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, 
            	        (pANTLR3_BASE_TREE)ADAPTOR->createTypeText(ADAPTOR, FIELD_REF_ID, (pANTLR3_UINT8)"FIELD_REF_ID")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_field_name2 == NULL ? NULL : stream_field_name2->nextTree(stream_field_name2));

            	        ADAPTOR->addChild(ADAPTOR, root_0, root_1);
            	    }

            	}


            	retval.tree = root_0; // set result root
            	if (stream_retval != NULL) stream_retval->free(stream_retval);


            }
        }

    }

    // This is where rules clean up and exit
    //
    goto rulefield_nameEx; /* Prevent compiler warnings */
    rulefield_nameEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
        if (stream_field_name2 != NULL) stream_field_name2->free(stream_field_name2);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end field_name */

/**
 * $ANTLR start field_name2
 * MySQL.g:2440:1: field_name2 : ( ( identifier )? DOT_SYMBOL ( identifier DOT_SYMBOL )? )? identifier ;
 */
static MySQLParser_field_name2_return
field_name2(pMySQLParser ctx)
{
    MySQLParser_field_name2_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    DOT_SYMBOL2863;
    pANTLR3_COMMON_TOKEN    DOT_SYMBOL2865;
    MySQLParser_identifier_return identifier2862;
    #undef	RETURN_TYPE_identifier2862
    #define	RETURN_TYPE_identifier2862 MySQLParser_identifier_return

    MySQLParser_identifier_return identifier2864;
    #undef	RETURN_TYPE_identifier2864
    #define	RETURN_TYPE_identifier2864 MySQLParser_identifier_return

    MySQLParser_identifier_return identifier2866;
    #undef	RETURN_TYPE_identifier2866
    #define	RETURN_TYPE_identifier2866 MySQLParser_identifier_return

    pANTLR3_BASE_TREE DOT_SYMBOL2863_tree;
    pANTLR3_BASE_TREE DOT_SYMBOL2865_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DOT_SYMBOL2863       = NULL;
    DOT_SYMBOL2865       = NULL;
    identifier2862.tree = NULL;

    identifier2864.tree = NULL;

    identifier2866.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DOT_SYMBOL2863_tree   = NULL;
    DOT_SYMBOL2865_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2440:12: ( ( ( identifier )? DOT_SYMBOL ( identifier DOT_SYMBOL )? )? identifier )
        // MySQL.g:2441:2: ( ( identifier )? DOT_SYMBOL ( identifier DOT_SYMBOL )? )? identifier
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:2441:2: ( ( identifier )? DOT_SYMBOL ( identifier DOT_SYMBOL )? )?
            {
                int alt799=2;
                {
                    int LA799_0 = LA(1);
                    if ( (LA799_0 == IDENTIFIER))
                    {
                        switch ( LA(2) )
                        {
                            case DOT_SYMBOL:
                            	{
                            		alt799=1;
                            	}
                                break;
                        }

                    }
                    else if ( (LA799_0 == BACK_TICK_QUOTED_ID))
                    {
                        switch ( LA(2) )
                        {
                            case DOT_SYMBOL:
                            	{
                            		alt799=1;
                            	}
                                break;
                        }

                    }
                    else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA799_0 == DOUBLE_QUOTED_TEXT))
                    {
                        {
                            int LA799_3 = LA(2);
                            if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA799_3 == DOT_SYMBOL))
                            {
                                alt799=1;
                            }
                        }
                    }
                    else if ( (((LA799_0 >= ACTION_SYMBOL) && (LA799_0 <= ADDDATE_SYMBOL)) || ((LA799_0 >= AFTER_SYMBOL) && (LA799_0 <= ALGORITHM_SYMBOL)) || LA799_0 == ANALYZE_SYMBOL || LA799_0 == ANY_SYMBOL || ((LA799_0 >= AT_SYMBOL) && (LA799_0 <= AVG_SYMBOL)) || LA799_0 == BINLOG_SYMBOL || LA799_0 == BIT_SYMBOL || ((LA799_0 >= BLOCK_SYMBOL) && (LA799_0 <= BOOL_SYMBOL)) || LA799_0 == BTREE_SYMBOL || LA799_0 == CASCADED_SYMBOL || ((LA799_0 >= CATALOG_NAME_SYMBOL) && (LA799_0 <= CHANGED_SYMBOL)) || ((LA799_0 >= CIPHER_SYMBOL) && (LA799_0 <= CLIENT_SYMBOL)) || ((LA799_0 >= COALESCE_SYMBOL) && (LA799_0 <= CODE_SYMBOL)) || LA799_0 == COLLATION_SYMBOL || ((LA799_0 >= COLUMNS_SYMBOL) && (LA799_0 <= COLUMN_NAME_SYMBOL)) || LA799_0 == COMMITTED_SYMBOL || ((LA799_0 >= COMPACT_SYMBOL) && (LA799_0 <= COMPRESSED_SYMBOL)) || LA799_0 == CONCURRENT_SYMBOL || ((LA799_0 >= CONNECTION_SYMBOL) && (LA799_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || LA799_0 == CONTEXT_SYMBOL || LA799_0 == CONTRIBUTORS_SYMBOL || LA799_0 == CPU_SYMBOL || LA799_0 == CUBE_SYMBOL || LA799_0 == CURRENT_SYMBOL || LA799_0 == CURSOR_NAME_SYMBOL || ((LA799_0 >= DATAFILE_SYMBOL) && (LA799_0 <= DATETIME_SYMBOL)) || LA799_0 == DATE_SYMBOL || LA799_0 == DAY_SYMBOL || LA799_0 == DEFAULT_AUTH_SYMBOL || LA799_0 == DEFINER_SYMBOL || LA799_0 == DELAY_KEY_WRITE_SYMBOL || LA799_0 == DES_KEY_FILE_SYMBOL || LA799_0 == DIAGNOSTICS_SYMBOL || ((LA799_0 >= DIRECTORY_SYMBOL) && (LA799_0 <= DISK_SYMBOL)) || ((LA799_0 >= DUMPFILE_SYMBOL) && (LA799_0 <= DYNAMIC_SYMBOL)) || LA799_0 == ENABLE_SYMBOL || LA799_0 == ENDS_SYMBOL || ((LA799_0 >= ENGINES_SYMBOL) && (LA799_0 <= ENUM_SYMBOL)) || ((LA799_0 >= ERRORS_SYMBOL) && (LA799_0 <= ERROR_SYMBOL)) || ((LA799_0 >= ESCAPE_SYMBOL) && (LA799_0 <= EVERY_SYMBOL)) || LA799_0 == EXPANSION_SYMBOL || LA799_0 == EXPORT_SYMBOL || ((LA799_0 >= EXTENDED_SYMBOL) && (LA799_0 <= EXTENT_SIZE_SYMBOL)) || ((LA799_0 >= FAST_SYMBOL) && (LA799_0 <= FAULTS_SYMBOL)) || ((LA799_0 >= FILE_SYMBOL) && (LA799_0 <= FIXED_SYMBOL)) || LA799_0 == FOUND_SYMBOL || LA799_0 == FULL_SYMBOL || ((LA799_0 >= FUNCTION_SYMBOL) && (LA799_0 <= GET_FORMAT_SYMBOL)) || ((LA799_0 >= GLOBAL_SYMBOL) && (LA799_0 <= GRANTS_SYMBOL)) || LA799_0 == HASH_SYMBOL || LA799_0 == HOSTS_SYMBOL || ((LA799_0 >= HOUR_SYMBOL) && (LA799_0 <= IDENTIFIED_SYMBOL)) || LA799_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA799_0 >= IMPORT_SYMBOL) && (LA799_0 <= INDEXES_SYMBOL)) || LA799_0 == INITIAL_SIZE_SYMBOL || LA799_0 == INNODB_SYMBOL || LA799_0 == INSERT_METHOD_SYMBOL || LA799_0 == INVOKER_SYMBOL || LA799_0 == IO_SYMBOL || ((LA799_0 >= IPC_SYMBOL) && (LA799_0 <= ISSUER_SYMBOL)) || LA799_0 == KEY_BLOCK_SIZE_SYMBOL || LA799_0 == LAST_SYMBOL || LA799_0 == LEAVES_SYMBOL || LA799_0 == LESS_SYMBOL || LA799_0 == LEVEL_SYMBOL || LA799_0 == LINESTRING_SYMBOL || LA799_0 == LIST_SYMBOL || LA799_0 == LOCAL_SYMBOL || LA799_0 == LOCKS_SYMBOL || LA799_0 == LOGFILE_SYMBOL || LA799_0 == LOGS_SYMBOL || LA799_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA799_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA799_0 <= MASTER_SSL_SYMBOL)) || ((LA799_0 >= MASTER_SYMBOL) && (LA799_0 <= MASTER_USER_SYMBOL)) || ((LA799_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA799_0 <= MAX_SIZE_SYMBOL)) || ((LA799_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA799_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA799_0 >= MEDIUM_SYMBOL) && (LA799_0 <= MICROSECOND_SYMBOL)) || LA799_0 == MIGRATE_SYMBOL || ((LA799_0 >= MINUTE_SYMBOL) && (LA799_0 <= MIN_ROWS_SYMBOL)) || LA799_0 == MODE_SYMBOL || LA799_0 == MODIFY_SYMBOL || ((LA799_0 >= MONTH_SYMBOL) && (LA799_0 <= MULTILINESTRING_SYMBOL)) || ((LA799_0 >= MULTIPOINT_SYMBOL) && (LA799_0 <= MULTIPOLYGON_SYMBOL)) || ((LA799_0 >= MUTEX_SYMBOL) && (LA799_0 <= NATIONAL_SYMBOL)) || LA799_0 == NCHAR_SYMBOL || LA799_0 == NDBCLUSTER_SYMBOL || ((LA799_0 >= NEW_SYMBOL) && (LA799_0 <= NONE_SYMBOL)) || LA799_0 == NO_WAIT_SYMBOL || LA799_0 == NUMBER_SYMBOL || LA799_0 == NVARCHAR_SYMBOL || ((LA799_0 >= OFFSET_SYMBOL) && (LA799_0 <= ONE_SYMBOL)) || ((LA799_0 >= PACK_KEYS_SYMBOL) && (LA799_0 <= PAGE_SYMBOL)) || ((LA799_0 >= PARTIAL_SYMBOL) && (LA799_0 <= PARTITIONS_SYMBOL)) || ((LA799_0 >= PASSWORD_SYMBOL) && (LA799_0 <= PLUGIN_SYMBOL)) || ((LA799_0 >= POINT_SYMBOL) && (LA799_0 <= POLYGON_SYMBOL)) || ((LA799_0 >= PRESERVE_SYMBOL) && (LA799_0 <= PREV_SYMBOL)) || LA799_0 == PRIVILEGES_SYMBOL || ((LA799_0 >= PROCESSLIST_SYMBOL) && (LA799_0 <= PROXY_SYMBOL)) || ((LA799_0 >= QUARTER_SYMBOL) && (LA799_0 <= QUICK_SYMBOL)) || LA799_0 == READ_ONLY_SYMBOL || ((LA799_0 >= REBUILD_SYMBOL) && (LA799_0 <= REDUNDANT_SYMBOL)) || ((LA799_0 >= RELAYLOG_SYMBOL) && (LA799_0 <= RELAY_THREAD_SYMBOL)) || LA799_0 == RELOAD_SYMBOL || LA799_0 == REORGANIZE_SYMBOL || LA799_0 == REPEATABLE_SYMBOL || LA799_0 == REPLICATION_SYMBOL || ((LA799_0 >= RESUME_SYMBOL) && (LA799_0 <= RETURNS_SYMBOL)) || LA799_0 == REVERSE_SYMBOL || ((LA799_0 >= ROLLUP_SYMBOL) && (LA799_0 <= RTREE_SYMBOL)) || LA799_0 == SCHEDULE_SYMBOL || LA799_0 == SCHEMA_NAME_SYMBOL || LA799_0 == SECOND_SYMBOL || ((LA799_0 >= SERIALIZABLE_SYMBOL) && (LA799_0 <= SERIAL_SYMBOL)) || LA799_0 == SESSION_SYMBOL || LA799_0 == SHARE_SYMBOL || LA799_0 == SHUTDOWN_SYMBOL || LA799_0 == SIMPLE_SYMBOL || LA799_0 == SLOW_SYMBOL || LA799_0 == SNAPSHOT_SYMBOL || ((LA799_0 >= SOUNDS_SYMBOL) && (LA799_0 <= SOURCE_SYMBOL)) || ((LA799_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA799_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA799_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA799_0 <= SQL_CACHE_SYMBOL)) || LA799_0 == SQL_NO_CACHE_SYMBOL || LA799_0 == SQL_THREAD_SYMBOL || LA799_0 == STARTS_SYMBOL || ((LA799_0 >= STATS_AUTO_RECALC_SYMBOL) && (LA799_0 <= STATUS_SYMBOL)) || LA799_0 == STORAGE_SYMBOL || ((LA799_0 >= STRING_SYMBOL) && (LA799_0 <= SUBPARTITION_SYMBOL)) || ((LA799_0 >= SUPER_SYMBOL) && (LA799_0 <= SWITCHES_SYMBOL)) || ((LA799_0 >= TABLESPACE_SYMBOL) && (LA799_0 <= TABLE_NAME_SYMBOL)) || ((LA799_0 >= TEMPORARY_SYMBOL) && (LA799_0 <= TEMPTABLE_SYMBOL)) || ((LA799_0 >= TEXT_SYMBOL) && (LA799_0 <= THAN_SYMBOL)) || ((LA799_0 >= TIMESTAMP_ADD_SYMBOL) && (LA799_0 <= TIME_SYMBOL)) || ((LA799_0 >= TRANSACTION_SYMBOL) && (LA799_0 <= TRIGGERS_SYMBOL)) || ((LA799_0 >= TYPES_SYMBOL) && (LA799_0 <= UDF_RETURNS_SYMBOL)) || ((LA799_0 >= UNCOMMITTED_SYMBOL) && (LA799_0 <= UNDEFINED_SYMBOL)) || ((LA799_0 >= UNDOFILE_SYMBOL) && (LA799_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || LA799_0 == UNKNOWN_SYMBOL || LA799_0 == UNTIL_SYMBOL || ((LA799_0 >= USER_RESOURCES_SYMBOL) && (LA799_0 <= USE_FRM_SYMBOL)) || LA799_0 == VALUE_SYMBOL || LA799_0 == VARIABLES_SYMBOL || ((LA799_0 >= VIEW_SYMBOL) && (LA799_0 <= WEIGHT_STRING_SYMBOL)) || LA799_0 == WORK_SYMBOL || LA799_0 == X509_SYMBOL || LA799_0 == XML_SYMBOL || LA799_0 == YEAR_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                            case DOT_SYMBOL:
                            	{
                            		alt799=1;
                            	}
                                break;
                        }

                    }
                    else if ( (LA799_0 == ASCII_SYMBOL || LA799_0 == BACKUP_SYMBOL || LA799_0 == BEGIN_SYMBOL || LA799_0 == BYTE_SYMBOL || LA799_0 == CACHE_SYMBOL || LA799_0 == CHARSET_SYMBOL || LA799_0 == CHECKSUM_SYMBOL || LA799_0 == CLOSE_SYMBOL || LA799_0 == COMMENT_SYMBOL || LA799_0 == COMMIT_SYMBOL || LA799_0 == CONTAINS_SYMBOL || LA799_0 == DEALLOCATE_SYMBOL || LA799_0 == DO_SYMBOL || LA799_0 == END_SYMBOL || LA799_0 == EXECUTE_SYMBOL || LA799_0 == FLUSH_SYMBOL || LA799_0 == FORMAT_SYMBOL || LA799_0 == HANDLER_SYMBOL || LA799_0 == HELP_SYMBOL || LA799_0 == HOST_SYMBOL || LA799_0 == INSTALL_SYMBOL || LA799_0 == LANGUAGE_SYMBOL || LA799_0 == NO_SYMBOL || LA799_0 == OPEN_SYMBOL || LA799_0 == OPTIONS_SYMBOL || LA799_0 == OWNER_SYMBOL || LA799_0 == PARSER_SYMBOL || LA799_0 == PARTITION_SYMBOL || LA799_0 == PORT_SYMBOL || LA799_0 == PREPARE_SYMBOL || LA799_0 == REMOVE_SYMBOL || LA799_0 == REPAIR_SYMBOL || LA799_0 == RESET_SYMBOL || LA799_0 == RESTORE_SYMBOL || LA799_0 == ROLLBACK_SYMBOL || LA799_0 == SAVEPOINT_SYMBOL || LA799_0 == SECURITY_SYMBOL || LA799_0 == SERVER_SYMBOL || LA799_0 == SIGNED_SYMBOL || LA799_0 == SLAVE_SYMBOL || ((LA799_0 >= SOCKET_SYMBOL) && (LA799_0 <= SONAME_SYMBOL)) || LA799_0 == START_SYMBOL || LA799_0 == STOP_SYMBOL || LA799_0 == TRUNCATE_SYMBOL || ((LA799_0 >= UNICODE_SYMBOL) && (LA799_0 <= UNINSTALL_SYMBOL)) || LA799_0 == UPGRADE_SYMBOL || LA799_0 == WRAPPER_SYMBOL || LA799_0 == XA_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                            case DOT_SYMBOL:
                            	{
                            		alt799=1;
                            	}
                                break;
                        }

                    }
                    else if ( (LA799_0 == DOT_SYMBOL))
                    {
                        alt799=1;
                    }
                }
                switch (alt799)
                {
            	case 1:
            	    // MySQL.g:2441:3: ( identifier )? DOT_SYMBOL ( identifier DOT_SYMBOL )?
            	    {
            	        // MySQL.g:2441:3: ( identifier )?
            	        {
            	            int alt797=2;
            	            {
            	                int LA797_0 = LA(1);
            	                if ( (LA797_0 == BACK_TICK_QUOTED_ID || LA797_0 == IDENTIFIER))
            	                {
            	                    alt797=1;
            	                }
            	                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA797_0 == DOUBLE_QUOTED_TEXT))
            	                {
            	                    alt797=1;
            	                }
            	                else if ( (((LA797_0 >= ACTION_SYMBOL) && (LA797_0 <= ADDDATE_SYMBOL)) || ((LA797_0 >= AFTER_SYMBOL) && (LA797_0 <= ALGORITHM_SYMBOL)) || LA797_0 == ANALYZE_SYMBOL || ((LA797_0 >= ANY_SYMBOL) && (LA797_0 <= ASCII_SYMBOL)) || ((LA797_0 >= AT_SYMBOL) && (LA797_0 <= BACKUP_SYMBOL)) || LA797_0 == BEGIN_SYMBOL || LA797_0 == BINLOG_SYMBOL || LA797_0 == BIT_SYMBOL || ((LA797_0 >= BLOCK_SYMBOL) && (LA797_0 <= BOOL_SYMBOL)) || ((LA797_0 >= BTREE_SYMBOL) && (LA797_0 <= BYTE_SYMBOL)) || LA797_0 == CACHE_SYMBOL || LA797_0 == CASCADED_SYMBOL || ((LA797_0 >= CATALOG_NAME_SYMBOL) && (LA797_0 <= CHANGED_SYMBOL)) || LA797_0 == CHARSET_SYMBOL || LA797_0 == CHECKSUM_SYMBOL || ((LA797_0 >= CIPHER_SYMBOL) && (LA797_0 <= CLIENT_SYMBOL)) || ((LA797_0 >= CLOSE_SYMBOL) && (LA797_0 <= CODE_SYMBOL)) || LA797_0 == COLLATION_SYMBOL || ((LA797_0 >= COLUMNS_SYMBOL) && (LA797_0 <= COLUMN_NAME_SYMBOL)) || ((LA797_0 >= COMMENT_SYMBOL) && (LA797_0 <= COMPRESSED_SYMBOL)) || LA797_0 == CONCURRENT_SYMBOL || ((LA797_0 >= CONNECTION_SYMBOL) && (LA797_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA797_0 >= CONTAINS_SYMBOL) && (LA797_0 <= CONTEXT_SYMBOL)) || LA797_0 == CONTRIBUTORS_SYMBOL || LA797_0 == CPU_SYMBOL || LA797_0 == CUBE_SYMBOL || LA797_0 == CURRENT_SYMBOL || LA797_0 == CURSOR_NAME_SYMBOL || ((LA797_0 >= DATAFILE_SYMBOL) && (LA797_0 <= DATETIME_SYMBOL)) || LA797_0 == DATE_SYMBOL || ((LA797_0 >= DAY_SYMBOL) && (LA797_0 <= DEALLOCATE_SYMBOL)) || LA797_0 == DEFAULT_AUTH_SYMBOL || LA797_0 == DEFINER_SYMBOL || LA797_0 == DELAY_KEY_WRITE_SYMBOL || LA797_0 == DES_KEY_FILE_SYMBOL || LA797_0 == DIAGNOSTICS_SYMBOL || ((LA797_0 >= DIRECTORY_SYMBOL) && (LA797_0 <= DISK_SYMBOL)) || LA797_0 == DO_SYMBOL || ((LA797_0 >= DUMPFILE_SYMBOL) && (LA797_0 <= DYNAMIC_SYMBOL)) || LA797_0 == ENABLE_SYMBOL || LA797_0 == ENDS_SYMBOL || ((LA797_0 >= END_SYMBOL) && (LA797_0 <= ENUM_SYMBOL)) || ((LA797_0 >= ERRORS_SYMBOL) && (LA797_0 <= ERROR_SYMBOL)) || ((LA797_0 >= ESCAPE_SYMBOL) && (LA797_0 <= EVERY_SYMBOL)) || LA797_0 == EXECUTE_SYMBOL || LA797_0 == EXPANSION_SYMBOL || LA797_0 == EXPORT_SYMBOL || ((LA797_0 >= EXTENDED_SYMBOL) && (LA797_0 <= EXTENT_SIZE_SYMBOL)) || ((LA797_0 >= FAST_SYMBOL) && (LA797_0 <= FAULTS_SYMBOL)) || ((LA797_0 >= FILE_SYMBOL) && (LA797_0 <= FIXED_SYMBOL)) || LA797_0 == FLUSH_SYMBOL || LA797_0 == FORMAT_SYMBOL || LA797_0 == FOUND_SYMBOL || LA797_0 == FULL_SYMBOL || ((LA797_0 >= FUNCTION_SYMBOL) && (LA797_0 <= GET_FORMAT_SYMBOL)) || ((LA797_0 >= GLOBAL_SYMBOL) && (LA797_0 <= GRANTS_SYMBOL)) || ((LA797_0 >= HANDLER_SYMBOL) && (LA797_0 <= HASH_SYMBOL)) || LA797_0 == HELP_SYMBOL || ((LA797_0 >= HOSTS_SYMBOL) && (LA797_0 <= HOST_SYMBOL)) || ((LA797_0 >= HOUR_SYMBOL) && (LA797_0 <= IDENTIFIED_SYMBOL)) || LA797_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA797_0 >= IMPORT_SYMBOL) && (LA797_0 <= INDEXES_SYMBOL)) || LA797_0 == INITIAL_SIZE_SYMBOL || LA797_0 == INNODB_SYMBOL || LA797_0 == INSERT_METHOD_SYMBOL || LA797_0 == INSTALL_SYMBOL || LA797_0 == INVOKER_SYMBOL || LA797_0 == IO_SYMBOL || ((LA797_0 >= IPC_SYMBOL) && (LA797_0 <= ISSUER_SYMBOL)) || LA797_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA797_0 >= LANGUAGE_SYMBOL) && (LA797_0 <= LAST_SYMBOL)) || LA797_0 == LEAVES_SYMBOL || LA797_0 == LESS_SYMBOL || LA797_0 == LEVEL_SYMBOL || LA797_0 == LINESTRING_SYMBOL || LA797_0 == LIST_SYMBOL || LA797_0 == LOCAL_SYMBOL || LA797_0 == LOCKS_SYMBOL || LA797_0 == LOGFILE_SYMBOL || LA797_0 == LOGS_SYMBOL || LA797_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA797_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA797_0 <= MASTER_SSL_SYMBOL)) || ((LA797_0 >= MASTER_SYMBOL) && (LA797_0 <= MASTER_USER_SYMBOL)) || ((LA797_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA797_0 <= MAX_SIZE_SYMBOL)) || ((LA797_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA797_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA797_0 >= MEDIUM_SYMBOL) && (LA797_0 <= MICROSECOND_SYMBOL)) || LA797_0 == MIGRATE_SYMBOL || ((LA797_0 >= MINUTE_SYMBOL) && (LA797_0 <= MIN_ROWS_SYMBOL)) || LA797_0 == MODE_SYMBOL || LA797_0 == MODIFY_SYMBOL || ((LA797_0 >= MONTH_SYMBOL) && (LA797_0 <= MULTILINESTRING_SYMBOL)) || ((LA797_0 >= MULTIPOINT_SYMBOL) && (LA797_0 <= MULTIPOLYGON_SYMBOL)) || ((LA797_0 >= MUTEX_SYMBOL) && (LA797_0 <= NATIONAL_SYMBOL)) || LA797_0 == NCHAR_SYMBOL || LA797_0 == NDBCLUSTER_SYMBOL || ((LA797_0 >= NEW_SYMBOL) && (LA797_0 <= NONE_SYMBOL)) || ((LA797_0 >= NO_SYMBOL) && (LA797_0 <= NO_WAIT_SYMBOL)) || LA797_0 == NUMBER_SYMBOL || LA797_0 == NVARCHAR_SYMBOL || ((LA797_0 >= OFFSET_SYMBOL) && (LA797_0 <= ONE_SYMBOL)) || LA797_0 == OPEN_SYMBOL || LA797_0 == OPTIONS_SYMBOL || ((LA797_0 >= OWNER_SYMBOL) && (LA797_0 <= PAGE_SYMBOL)) || ((LA797_0 >= PARSER_SYMBOL) && (LA797_0 <= PARTITION_SYMBOL)) || ((LA797_0 >= PASSWORD_SYMBOL) && (LA797_0 <= PLUGIN_SYMBOL)) || ((LA797_0 >= POINT_SYMBOL) && (LA797_0 <= PORT_SYMBOL)) || ((LA797_0 >= PREPARE_SYMBOL) && (LA797_0 <= PREV_SYMBOL)) || LA797_0 == PRIVILEGES_SYMBOL || ((LA797_0 >= PROCESSLIST_SYMBOL) && (LA797_0 <= PROXY_SYMBOL)) || ((LA797_0 >= QUARTER_SYMBOL) && (LA797_0 <= QUICK_SYMBOL)) || LA797_0 == READ_ONLY_SYMBOL || ((LA797_0 >= REBUILD_SYMBOL) && (LA797_0 <= REDUNDANT_SYMBOL)) || ((LA797_0 >= RELAYLOG_SYMBOL) && (LA797_0 <= RELAY_THREAD_SYMBOL)) || ((LA797_0 >= RELOAD_SYMBOL) && (LA797_0 <= REMOVE_SYMBOL)) || ((LA797_0 >= REORGANIZE_SYMBOL) && (LA797_0 <= REPEATABLE_SYMBOL)) || LA797_0 == REPLICATION_SYMBOL || LA797_0 == RESET_SYMBOL || LA797_0 == RESTORE_SYMBOL || ((LA797_0 >= RESUME_SYMBOL) && (LA797_0 <= RETURNS_SYMBOL)) || LA797_0 == REVERSE_SYMBOL || ((LA797_0 >= ROLLBACK_SYMBOL) && (LA797_0 <= SCHEDULE_SYMBOL)) || LA797_0 == SCHEMA_NAME_SYMBOL || ((LA797_0 >= SECOND_SYMBOL) && (LA797_0 <= SECURITY_SYMBOL)) || ((LA797_0 >= SERIALIZABLE_SYMBOL) && (LA797_0 <= SERIAL_SYMBOL)) || ((LA797_0 >= SERVER_SYMBOL) && (LA797_0 <= SESSION_SYMBOL)) || LA797_0 == SHARE_SYMBOL || LA797_0 == SHUTDOWN_SYMBOL || ((LA797_0 >= SIGNED_SYMBOL) && (LA797_0 <= SIMPLE_SYMBOL)) || ((LA797_0 >= SLAVE_SYMBOL) && (LA797_0 <= SLOW_SYMBOL)) || ((LA797_0 >= SNAPSHOT_SYMBOL) && (LA797_0 <= SOURCE_SYMBOL)) || ((LA797_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA797_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA797_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA797_0 <= SQL_CACHE_SYMBOL)) || LA797_0 == SQL_NO_CACHE_SYMBOL || LA797_0 == SQL_THREAD_SYMBOL || ((LA797_0 >= STARTS_SYMBOL) && (LA797_0 <= STATUS_SYMBOL)) || ((LA797_0 >= STOP_SYMBOL) && (LA797_0 <= STORAGE_SYMBOL)) || ((LA797_0 >= STRING_SYMBOL) && (LA797_0 <= SUBPARTITION_SYMBOL)) || ((LA797_0 >= SUPER_SYMBOL) && (LA797_0 <= SWITCHES_SYMBOL)) || ((LA797_0 >= TABLESPACE_SYMBOL) && (LA797_0 <= TABLE_NAME_SYMBOL)) || ((LA797_0 >= TEMPORARY_SYMBOL) && (LA797_0 <= TEMPTABLE_SYMBOL)) || ((LA797_0 >= TEXT_SYMBOL) && (LA797_0 <= THAN_SYMBOL)) || ((LA797_0 >= TIMESTAMP_ADD_SYMBOL) && (LA797_0 <= TIME_SYMBOL)) || ((LA797_0 >= TRANSACTION_SYMBOL) && (LA797_0 <= TRIGGERS_SYMBOL)) || ((LA797_0 >= TRUNCATE_SYMBOL) && (LA797_0 <= UDF_RETURNS_SYMBOL)) || ((LA797_0 >= UNCOMMITTED_SYMBOL) && (LA797_0 <= UNDEFINED_SYMBOL)) || ((LA797_0 >= UNDOFILE_SYMBOL) && (LA797_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA797_0 >= UNICODE_SYMBOL) && (LA797_0 <= UNINSTALL_SYMBOL)) || LA797_0 == UNKNOWN_SYMBOL || LA797_0 == UNTIL_SYMBOL || LA797_0 == UPGRADE_SYMBOL || ((LA797_0 >= USER_RESOURCES_SYMBOL) && (LA797_0 <= USE_FRM_SYMBOL)) || LA797_0 == VALUE_SYMBOL || LA797_0 == VARIABLES_SYMBOL || ((LA797_0 >= VIEW_SYMBOL) && (LA797_0 <= WEIGHT_STRING_SYMBOL)) || ((LA797_0 >= WORK_SYMBOL) && (LA797_0 <= WRAPPER_SYMBOL)) || LA797_0 == X509_SYMBOL || ((LA797_0 >= XA_SYMBOL) && (LA797_0 <= XML_SYMBOL)) || LA797_0 == YEAR_SYMBOL))
            	                {
            	                    alt797=1;
            	                }
            	            }
            	            switch (alt797)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2441:3: identifier
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_identifier_in_field_name214121);
            	        	        identifier2862=identifier(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulefield_name2Ex;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2862.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        DOT_SYMBOL2863 = (pANTLR3_COMMON_TOKEN) MATCHT(DOT_SYMBOL, &FOLLOW_DOT_SYMBOL_in_field_name214124);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefield_name2Ex;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DOT_SYMBOL2863_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOT_SYMBOL2863));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DOT_SYMBOL2863_tree);
            	        }

            	        // MySQL.g:2441:26: ( identifier DOT_SYMBOL )?
            	        {
            	            int alt798=2;
            	            {
            	                int LA798_0 = LA(1);
            	                if ( (LA798_0 == IDENTIFIER))
            	                {
            	                    switch ( LA(2) )
            	                    {
            	                        case DOT_SYMBOL:
            	                        	{
            	                        		alt798=1;
            	                        	}
            	                            break;
            	                    }

            	                }
            	                else if ( (LA798_0 == BACK_TICK_QUOTED_ID))
            	                {
            	                    switch ( LA(2) )
            	                    {
            	                        case DOT_SYMBOL:
            	                        	{
            	                        		alt798=1;
            	                        	}
            	                            break;
            	                    }

            	                }
            	                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA798_0 == DOUBLE_QUOTED_TEXT))
            	                {
            	                    {
            	                        int LA798_3 = LA(2);
            	                        if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA798_3 == DOT_SYMBOL))
            	                        {
            	                            alt798=1;
            	                        }
            	                    }
            	                }
            	                else if ( (((LA798_0 >= ACTION_SYMBOL) && (LA798_0 <= ADDDATE_SYMBOL)) || ((LA798_0 >= AFTER_SYMBOL) && (LA798_0 <= ALGORITHM_SYMBOL)) || LA798_0 == ANALYZE_SYMBOL || LA798_0 == ANY_SYMBOL || ((LA798_0 >= AT_SYMBOL) && (LA798_0 <= AVG_SYMBOL)) || LA798_0 == BINLOG_SYMBOL || LA798_0 == BIT_SYMBOL || ((LA798_0 >= BLOCK_SYMBOL) && (LA798_0 <= BOOL_SYMBOL)) || LA798_0 == BTREE_SYMBOL || LA798_0 == CASCADED_SYMBOL || ((LA798_0 >= CATALOG_NAME_SYMBOL) && (LA798_0 <= CHANGED_SYMBOL)) || ((LA798_0 >= CIPHER_SYMBOL) && (LA798_0 <= CLIENT_SYMBOL)) || ((LA798_0 >= COALESCE_SYMBOL) && (LA798_0 <= CODE_SYMBOL)) || LA798_0 == COLLATION_SYMBOL || ((LA798_0 >= COLUMNS_SYMBOL) && (LA798_0 <= COLUMN_NAME_SYMBOL)) || LA798_0 == COMMITTED_SYMBOL || ((LA798_0 >= COMPACT_SYMBOL) && (LA798_0 <= COMPRESSED_SYMBOL)) || LA798_0 == CONCURRENT_SYMBOL || ((LA798_0 >= CONNECTION_SYMBOL) && (LA798_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || LA798_0 == CONTEXT_SYMBOL || LA798_0 == CONTRIBUTORS_SYMBOL || LA798_0 == CPU_SYMBOL || LA798_0 == CUBE_SYMBOL || LA798_0 == CURRENT_SYMBOL || LA798_0 == CURSOR_NAME_SYMBOL || ((LA798_0 >= DATAFILE_SYMBOL) && (LA798_0 <= DATETIME_SYMBOL)) || LA798_0 == DATE_SYMBOL || LA798_0 == DAY_SYMBOL || LA798_0 == DEFAULT_AUTH_SYMBOL || LA798_0 == DEFINER_SYMBOL || LA798_0 == DELAY_KEY_WRITE_SYMBOL || LA798_0 == DES_KEY_FILE_SYMBOL || LA798_0 == DIAGNOSTICS_SYMBOL || ((LA798_0 >= DIRECTORY_SYMBOL) && (LA798_0 <= DISK_SYMBOL)) || ((LA798_0 >= DUMPFILE_SYMBOL) && (LA798_0 <= DYNAMIC_SYMBOL)) || LA798_0 == ENABLE_SYMBOL || LA798_0 == ENDS_SYMBOL || ((LA798_0 >= ENGINES_SYMBOL) && (LA798_0 <= ENUM_SYMBOL)) || ((LA798_0 >= ERRORS_SYMBOL) && (LA798_0 <= ERROR_SYMBOL)) || ((LA798_0 >= ESCAPE_SYMBOL) && (LA798_0 <= EVERY_SYMBOL)) || LA798_0 == EXPANSION_SYMBOL || LA798_0 == EXPORT_SYMBOL || ((LA798_0 >= EXTENDED_SYMBOL) && (LA798_0 <= EXTENT_SIZE_SYMBOL)) || ((LA798_0 >= FAST_SYMBOL) && (LA798_0 <= FAULTS_SYMBOL)) || ((LA798_0 >= FILE_SYMBOL) && (LA798_0 <= FIXED_SYMBOL)) || LA798_0 == FOUND_SYMBOL || LA798_0 == FULL_SYMBOL || ((LA798_0 >= FUNCTION_SYMBOL) && (LA798_0 <= GET_FORMAT_SYMBOL)) || ((LA798_0 >= GLOBAL_SYMBOL) && (LA798_0 <= GRANTS_SYMBOL)) || LA798_0 == HASH_SYMBOL || LA798_0 == HOSTS_SYMBOL || ((LA798_0 >= HOUR_SYMBOL) && (LA798_0 <= IDENTIFIED_SYMBOL)) || LA798_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA798_0 >= IMPORT_SYMBOL) && (LA798_0 <= INDEXES_SYMBOL)) || LA798_0 == INITIAL_SIZE_SYMBOL || LA798_0 == INNODB_SYMBOL || LA798_0 == INSERT_METHOD_SYMBOL || LA798_0 == INVOKER_SYMBOL || LA798_0 == IO_SYMBOL || ((LA798_0 >= IPC_SYMBOL) && (LA798_0 <= ISSUER_SYMBOL)) || LA798_0 == KEY_BLOCK_SIZE_SYMBOL || LA798_0 == LAST_SYMBOL || LA798_0 == LEAVES_SYMBOL || LA798_0 == LESS_SYMBOL || LA798_0 == LEVEL_SYMBOL || LA798_0 == LINESTRING_SYMBOL || LA798_0 == LIST_SYMBOL || LA798_0 == LOCAL_SYMBOL || LA798_0 == LOCKS_SYMBOL || LA798_0 == LOGFILE_SYMBOL || LA798_0 == LOGS_SYMBOL || LA798_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA798_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA798_0 <= MASTER_SSL_SYMBOL)) || ((LA798_0 >= MASTER_SYMBOL) && (LA798_0 <= MASTER_USER_SYMBOL)) || ((LA798_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA798_0 <= MAX_SIZE_SYMBOL)) || ((LA798_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA798_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA798_0 >= MEDIUM_SYMBOL) && (LA798_0 <= MICROSECOND_SYMBOL)) || LA798_0 == MIGRATE_SYMBOL || ((LA798_0 >= MINUTE_SYMBOL) && (LA798_0 <= MIN_ROWS_SYMBOL)) || LA798_0 == MODE_SYMBOL || LA798_0 == MODIFY_SYMBOL || ((LA798_0 >= MONTH_SYMBOL) && (LA798_0 <= MULTILINESTRING_SYMBOL)) || ((LA798_0 >= MULTIPOINT_SYMBOL) && (LA798_0 <= MULTIPOLYGON_SYMBOL)) || ((LA798_0 >= MUTEX_SYMBOL) && (LA798_0 <= NATIONAL_SYMBOL)) || LA798_0 == NCHAR_SYMBOL || LA798_0 == NDBCLUSTER_SYMBOL || ((LA798_0 >= NEW_SYMBOL) && (LA798_0 <= NONE_SYMBOL)) || LA798_0 == NO_WAIT_SYMBOL || LA798_0 == NUMBER_SYMBOL || LA798_0 == NVARCHAR_SYMBOL || ((LA798_0 >= OFFSET_SYMBOL) && (LA798_0 <= ONE_SYMBOL)) || ((LA798_0 >= PACK_KEYS_SYMBOL) && (LA798_0 <= PAGE_SYMBOL)) || ((LA798_0 >= PARTIAL_SYMBOL) && (LA798_0 <= PARTITIONS_SYMBOL)) || ((LA798_0 >= PASSWORD_SYMBOL) && (LA798_0 <= PLUGIN_SYMBOL)) || ((LA798_0 >= POINT_SYMBOL) && (LA798_0 <= POLYGON_SYMBOL)) || ((LA798_0 >= PRESERVE_SYMBOL) && (LA798_0 <= PREV_SYMBOL)) || LA798_0 == PRIVILEGES_SYMBOL || ((LA798_0 >= PROCESSLIST_SYMBOL) && (LA798_0 <= PROXY_SYMBOL)) || ((LA798_0 >= QUARTER_SYMBOL) && (LA798_0 <= QUICK_SYMBOL)) || LA798_0 == READ_ONLY_SYMBOL || ((LA798_0 >= REBUILD_SYMBOL) && (LA798_0 <= REDUNDANT_SYMBOL)) || ((LA798_0 >= RELAYLOG_SYMBOL) && (LA798_0 <= RELAY_THREAD_SYMBOL)) || LA798_0 == RELOAD_SYMBOL || LA798_0 == REORGANIZE_SYMBOL || LA798_0 == REPEATABLE_SYMBOL || LA798_0 == REPLICATION_SYMBOL || ((LA798_0 >= RESUME_SYMBOL) && (LA798_0 <= RETURNS_SYMBOL)) || LA798_0 == REVERSE_SYMBOL || ((LA798_0 >= ROLLUP_SYMBOL) && (LA798_0 <= RTREE_SYMBOL)) || LA798_0 == SCHEDULE_SYMBOL || LA798_0 == SCHEMA_NAME_SYMBOL || LA798_0 == SECOND_SYMBOL || ((LA798_0 >= SERIALIZABLE_SYMBOL) && (LA798_0 <= SERIAL_SYMBOL)) || LA798_0 == SESSION_SYMBOL || LA798_0 == SHARE_SYMBOL || LA798_0 == SHUTDOWN_SYMBOL || LA798_0 == SIMPLE_SYMBOL || LA798_0 == SLOW_SYMBOL || LA798_0 == SNAPSHOT_SYMBOL || ((LA798_0 >= SOUNDS_SYMBOL) && (LA798_0 <= SOURCE_SYMBOL)) || ((LA798_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA798_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA798_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA798_0 <= SQL_CACHE_SYMBOL)) || LA798_0 == SQL_NO_CACHE_SYMBOL || LA798_0 == SQL_THREAD_SYMBOL || LA798_0 == STARTS_SYMBOL || ((LA798_0 >= STATS_AUTO_RECALC_SYMBOL) && (LA798_0 <= STATUS_SYMBOL)) || LA798_0 == STORAGE_SYMBOL || ((LA798_0 >= STRING_SYMBOL) && (LA798_0 <= SUBPARTITION_SYMBOL)) || ((LA798_0 >= SUPER_SYMBOL) && (LA798_0 <= SWITCHES_SYMBOL)) || ((LA798_0 >= TABLESPACE_SYMBOL) && (LA798_0 <= TABLE_NAME_SYMBOL)) || ((LA798_0 >= TEMPORARY_SYMBOL) && (LA798_0 <= TEMPTABLE_SYMBOL)) || ((LA798_0 >= TEXT_SYMBOL) && (LA798_0 <= THAN_SYMBOL)) || ((LA798_0 >= TIMESTAMP_ADD_SYMBOL) && (LA798_0 <= TIME_SYMBOL)) || ((LA798_0 >= TRANSACTION_SYMBOL) && (LA798_0 <= TRIGGERS_SYMBOL)) || ((LA798_0 >= TYPES_SYMBOL) && (LA798_0 <= UDF_RETURNS_SYMBOL)) || ((LA798_0 >= UNCOMMITTED_SYMBOL) && (LA798_0 <= UNDEFINED_SYMBOL)) || ((LA798_0 >= UNDOFILE_SYMBOL) && (LA798_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || LA798_0 == UNKNOWN_SYMBOL || LA798_0 == UNTIL_SYMBOL || ((LA798_0 >= USER_RESOURCES_SYMBOL) && (LA798_0 <= USE_FRM_SYMBOL)) || LA798_0 == VALUE_SYMBOL || LA798_0 == VARIABLES_SYMBOL || ((LA798_0 >= VIEW_SYMBOL) && (LA798_0 <= WEIGHT_STRING_SYMBOL)) || LA798_0 == WORK_SYMBOL || LA798_0 == X509_SYMBOL || LA798_0 == XML_SYMBOL || LA798_0 == YEAR_SYMBOL))
            	                {
            	                    switch ( LA(2) )
            	                    {
            	                        case DOT_SYMBOL:
            	                        	{
            	                        		alt798=1;
            	                        	}
            	                            break;
            	                    }

            	                }
            	                else if ( (LA798_0 == ASCII_SYMBOL || LA798_0 == BACKUP_SYMBOL || LA798_0 == BEGIN_SYMBOL || LA798_0 == BYTE_SYMBOL || LA798_0 == CACHE_SYMBOL || LA798_0 == CHARSET_SYMBOL || LA798_0 == CHECKSUM_SYMBOL || LA798_0 == CLOSE_SYMBOL || LA798_0 == COMMENT_SYMBOL || LA798_0 == COMMIT_SYMBOL || LA798_0 == CONTAINS_SYMBOL || LA798_0 == DEALLOCATE_SYMBOL || LA798_0 == DO_SYMBOL || LA798_0 == END_SYMBOL || LA798_0 == EXECUTE_SYMBOL || LA798_0 == FLUSH_SYMBOL || LA798_0 == FORMAT_SYMBOL || LA798_0 == HANDLER_SYMBOL || LA798_0 == HELP_SYMBOL || LA798_0 == HOST_SYMBOL || LA798_0 == INSTALL_SYMBOL || LA798_0 == LANGUAGE_SYMBOL || LA798_0 == NO_SYMBOL || LA798_0 == OPEN_SYMBOL || LA798_0 == OPTIONS_SYMBOL || LA798_0 == OWNER_SYMBOL || LA798_0 == PARSER_SYMBOL || LA798_0 == PARTITION_SYMBOL || LA798_0 == PORT_SYMBOL || LA798_0 == PREPARE_SYMBOL || LA798_0 == REMOVE_SYMBOL || LA798_0 == REPAIR_SYMBOL || LA798_0 == RESET_SYMBOL || LA798_0 == RESTORE_SYMBOL || LA798_0 == ROLLBACK_SYMBOL || LA798_0 == SAVEPOINT_SYMBOL || LA798_0 == SECURITY_SYMBOL || LA798_0 == SERVER_SYMBOL || LA798_0 == SIGNED_SYMBOL || LA798_0 == SLAVE_SYMBOL || ((LA798_0 >= SOCKET_SYMBOL) && (LA798_0 <= SONAME_SYMBOL)) || LA798_0 == START_SYMBOL || LA798_0 == STOP_SYMBOL || LA798_0 == TRUNCATE_SYMBOL || ((LA798_0 >= UNICODE_SYMBOL) && (LA798_0 <= UNINSTALL_SYMBOL)) || LA798_0 == UPGRADE_SYMBOL || LA798_0 == WRAPPER_SYMBOL || LA798_0 == XA_SYMBOL))
            	                {
            	                    switch ( LA(2) )
            	                    {
            	                        case DOT_SYMBOL:
            	                        	{
            	                        		alt798=1;
            	                        	}
            	                            break;
            	                    }

            	                }
            	            }
            	            switch (alt798)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2441:27: identifier DOT_SYMBOL
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_identifier_in_field_name214127);
            	        	        identifier2864=identifier(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulefield_name2Ex;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2864.tree);

            	        	        DOT_SYMBOL2865 = (pANTLR3_COMMON_TOKEN) MATCHT(DOT_SYMBOL, &FOLLOW_DOT_SYMBOL_in_field_name214129);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulefield_name2Ex;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        DOT_SYMBOL2865_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOT_SYMBOL2865));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, DOT_SYMBOL2865_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_identifier_in_field_name214135);
            identifier2866=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulefield_name2Ex;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2866.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto rulefield_name2Ex; /* Prevent compiler warnings */
    rulefield_name2Ex: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end field_name2 */

/**
 * $ANTLR start column_assignment_list_with_default
 * MySQL.g:2444:1: column_assignment_list_with_default : column_assignment_with_default ( COMMA_SYMBOL column_assignment_with_default )* ;
 */
static MySQLParser_column_assignment_list_with_default_return
column_assignment_list_with_default(pMySQLParser ctx)
{
    MySQLParser_column_assignment_list_with_default_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2868;
    MySQLParser_column_assignment_with_default_return column_assignment_with_default2867;
    #undef	RETURN_TYPE_column_assignment_with_default2867
    #define	RETURN_TYPE_column_assignment_with_default2867 MySQLParser_column_assignment_with_default_return

    MySQLParser_column_assignment_with_default_return column_assignment_with_default2869;
    #undef	RETURN_TYPE_column_assignment_with_default2869
    #define	RETURN_TYPE_column_assignment_with_default2869 MySQLParser_column_assignment_with_default_return

    pANTLR3_BASE_TREE COMMA_SYMBOL2868_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL2868       = NULL;
    column_assignment_with_default2867.tree = NULL;

    column_assignment_with_default2869.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL2868_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2444:36: ( column_assignment_with_default ( COMMA_SYMBOL column_assignment_with_default )* )
        // MySQL.g:2445:2: column_assignment_with_default ( COMMA_SYMBOL column_assignment_with_default )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_column_assignment_with_default_in_column_assignment_list_with_default14144);
            column_assignment_with_default2867=column_assignment_with_default(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecolumn_assignment_list_with_defaultEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, column_assignment_with_default2867.tree);

            // MySQL.g:2445:33: ( COMMA_SYMBOL column_assignment_with_default )*

            for (;;)
            {
                int alt800=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt800=1;
                	}
                    break;

                }

                switch (alt800)
                {
            	case 1:
            	    // MySQL.g:2445:34: COMMA_SYMBOL column_assignment_with_default
            	    {
            	        COMMA_SYMBOL2868 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_column_assignment_list_with_default14147);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecolumn_assignment_list_with_defaultEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL2868_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2868));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2868_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_column_assignment_with_default_in_column_assignment_list_with_default14149);
            	        column_assignment_with_default2869=column_assignment_with_default(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecolumn_assignment_list_with_defaultEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, column_assignment_with_default2869.tree);

            	    }
            	    break;

            	default:
            	    goto loop800;	/* break out of the loop */
            	    break;
                }
            }
            loop800: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto rulecolumn_assignment_list_with_defaultEx; /* Prevent compiler warnings */
    rulecolumn_assignment_list_with_defaultEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end column_assignment_list_with_default */

/**
 * $ANTLR start column_assignment_with_default
 * MySQL.g:2448:1: column_assignment_with_default : field_name EQUAL_OPERATOR ( expression | DEFAULT_SYMBOL ) ;
 */
static MySQLParser_column_assignment_with_default_return
column_assignment_with_default(pMySQLParser ctx)
{
    MySQLParser_column_assignment_with_default_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2871;
    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL2873;
    MySQLParser_field_name_return field_name2870;
    #undef	RETURN_TYPE_field_name2870
    #define	RETURN_TYPE_field_name2870 MySQLParser_field_name_return

    MySQLParser_expression_return expression2872;
    #undef	RETURN_TYPE_expression2872
    #define	RETURN_TYPE_expression2872 MySQLParser_expression_return

    pANTLR3_BASE_TREE EQUAL_OPERATOR2871_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL2873_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    EQUAL_OPERATOR2871       = NULL;
    DEFAULT_SYMBOL2873       = NULL;
    field_name2870.tree = NULL;

    expression2872.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    EQUAL_OPERATOR2871_tree   = NULL;
    DEFAULT_SYMBOL2873_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2448:31: ( field_name EQUAL_OPERATOR ( expression | DEFAULT_SYMBOL ) )
        // MySQL.g:2449:2: field_name EQUAL_OPERATOR ( expression | DEFAULT_SYMBOL )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_field_name_in_column_assignment_with_default14160);
            field_name2870=field_name(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecolumn_assignment_with_defaultEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_name2870.tree);

            EQUAL_OPERATOR2871 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_column_assignment_with_default14162);
            if  (HASEXCEPTION())
            {
                goto rulecolumn_assignment_with_defaultEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EQUAL_OPERATOR2871_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2871));
            ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2871_tree);
            }

            // MySQL.g:2449:28: ( expression | DEFAULT_SYMBOL )
            {
                int alt801=2;
                {
                    int LA801_0 = LA(1);
                    if ( (LA801_0 == BITWISE_NOT_OPERATOR || LA801_0 == DATE_SYMBOL || LA801_0 == INTERVAL_SYMBOL || LA801_0 == LOGICAL_NOT_OPERATOR || LA801_0 == MINUS_OPERATOR || LA801_0 == NCHAR_TEXT || LA801_0 == NOT2_SYMBOL || LA801_0 == NOT_SYMBOL || LA801_0 == PLUS_OPERATOR || LA801_0 == SINGLE_QUOTED_TEXT || ((LA801_0 >= TIMESTAMP_SYMBOL) && (LA801_0 <= TIME_SYMBOL)) || LA801_0 == UNDERSCORE_CHARSET))
                    {
                        alt801=1;
                    }
                    else if ( ((((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)))||((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))) && (LA801_0 == DOUBLE_QUOTED_TEXT))
                    {
                        alt801=1;
                    }
                    else if ( (LA801_0 == FALSE_SYMBOL || LA801_0 == FLOAT || ((LA801_0 >= HEXNUMBER) && (LA801_0 <= HEXSTRING)) || LA801_0 == INTEGER || LA801_0 == TRUE_SYMBOL))
                    {
                        alt801=1;
                    }
                    else if ( ((SERVER_VERSION >= 50003)) && (((LA801_0 >= BITNUMBER) && (LA801_0 <= BITSTRING))))
                    {
                        alt801=1;
                    }
                    else if ( (((LA801_0 >= ACTION_SYMBOL) && (LA801_0 <= ADDDATE_SYMBOL)) || ((LA801_0 >= AFTER_SYMBOL) && (LA801_0 <= ALGORITHM_SYMBOL)) || LA801_0 == ANALYZE_SYMBOL || ((LA801_0 >= ANY_SYMBOL) && (LA801_0 <= ASCII_SYMBOL)) || ((LA801_0 >= AT_AT_SIGN_SYMBOL) && (LA801_0 <= BACKUP_SYMBOL)) || LA801_0 == BACK_TICK_QUOTED_ID || LA801_0 == BEGIN_SYMBOL || ((LA801_0 >= BINARY_SYMBOL) && (LA801_0 <= BINLOG_SYMBOL)) || ((LA801_0 >= BIT_AND_SYMBOL) && (LA801_0 <= BIT_XOR_SYMBOL)) || ((LA801_0 >= BLOCK_SYMBOL) && (LA801_0 <= BOOL_SYMBOL)) || ((LA801_0 >= BTREE_SYMBOL) && (LA801_0 <= BYTE_SYMBOL)) || LA801_0 == CACHE_SYMBOL || LA801_0 == CASCADED_SYMBOL || ((LA801_0 >= CASE_SYMBOL) && (LA801_0 <= CHANGED_SYMBOL)) || ((LA801_0 >= CHARSET_SYMBOL) && (LA801_0 <= CHECKSUM_SYMBOL)) || ((LA801_0 >= CIPHER_SYMBOL) && (LA801_0 <= CLIENT_SYMBOL)) || ((LA801_0 >= CLOSE_SYMBOL) && (LA801_0 <= CODE_SYMBOL)) || LA801_0 == COLLATION_SYMBOL || ((LA801_0 >= COLUMNS_SYMBOL) && (LA801_0 <= COLUMN_NAME_SYMBOL)) || ((LA801_0 >= COMMENT_SYMBOL) && (LA801_0 <= COMPRESSED_SYMBOL)) || LA801_0 == CONCURRENT_SYMBOL || ((LA801_0 >= CONNECTION_SYMBOL) && (LA801_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA801_0 >= CONTAINS_SYMBOL) && (LA801_0 <= CONTEXT_SYMBOL)) || ((LA801_0 >= CONTRIBUTORS_SYMBOL) && (LA801_0 <= CPU_SYMBOL)) || ((LA801_0 >= CUBE_SYMBOL) && (LA801_0 <= CURRENT_SYMBOL)) || ((LA801_0 >= CURRENT_USER_SYMBOL) && (LA801_0 <= CURSOR_NAME_SYMBOL)) || LA801_0 == CURTIME_SYMBOL || ((LA801_0 >= DATABASE_SYMBOL) && (LA801_0 <= DATETIME_SYMBOL)) || LA801_0 == DATE_ADD_SYMBOL || LA801_0 == DATE_SUB_SYMBOL || ((LA801_0 >= DAY_SYMBOL) && (LA801_0 <= DEALLOCATE_SYMBOL)) || LA801_0 == DEFAULT_AUTH_SYMBOL || LA801_0 == DEFINER_SYMBOL || LA801_0 == DELAY_KEY_WRITE_SYMBOL || LA801_0 == DES_KEY_FILE_SYMBOL || LA801_0 == DIAGNOSTICS_SYMBOL || ((LA801_0 >= DIRECTORY_SYMBOL) && (LA801_0 <= DISK_SYMBOL)) || LA801_0 == DOT_SYMBOL || LA801_0 == DO_SYMBOL || ((LA801_0 >= DUMPFILE_SYMBOL) && (LA801_0 <= DYNAMIC_SYMBOL)) || LA801_0 == ENABLE_SYMBOL || LA801_0 == ENDS_SYMBOL || ((LA801_0 >= END_SYMBOL) && (LA801_0 <= ENUM_SYMBOL)) || ((LA801_0 >= ERRORS_SYMBOL) && (LA801_0 <= ERROR_SYMBOL)) || ((LA801_0 >= ESCAPE_SYMBOL) && (LA801_0 <= EVERY_SYMBOL)) || ((LA801_0 >= EXECUTE_SYMBOL) && (LA801_0 <= EXISTS_SYMBOL)) || LA801_0 == EXPANSION_SYMBOL || LA801_0 == EXPORT_SYMBOL || ((LA801_0 >= EXTENDED_SYMBOL) && (LA801_0 <= EXTRACT_SYMBOL)) || ((LA801_0 >= FAST_SYMBOL) && (LA801_0 <= FAULTS_SYMBOL)) || ((LA801_0 >= FILE_SYMBOL) && (LA801_0 <= FIXED_SYMBOL)) || LA801_0 == FLUSH_SYMBOL || LA801_0 == FORMAT_SYMBOL || LA801_0 == FOUND_SYMBOL || LA801_0 == FULL_SYMBOL || ((LA801_0 >= FUNCTION_SYMBOL) && (LA801_0 <= GET_FORMAT_SYMBOL)) || ((LA801_0 >= GLOBAL_SYMBOL) && (LA801_0 <= GRANTS_SYMBOL)) || LA801_0 == GROUP_CONCAT_SYMBOL || ((LA801_0 >= HANDLER_SYMBOL) && (LA801_0 <= HASH_SYMBOL)) || LA801_0 == HELP_SYMBOL || ((LA801_0 >= HOSTS_SYMBOL) && (LA801_0 <= HOST_SYMBOL)) || ((LA801_0 >= HOUR_SYMBOL) && (LA801_0 <= IGNORE_SERVER_IDS_SYMBOL)) || ((LA801_0 >= IMPORT_SYMBOL) && (LA801_0 <= INDEXES_SYMBOL)) || LA801_0 == INITIAL_SIZE_SYMBOL || LA801_0 == INNODB_SYMBOL || ((LA801_0 >= INSERT_METHOD_SYMBOL) && (LA801_0 <= INSTALL_SYMBOL)) || LA801_0 == INVOKER_SYMBOL || LA801_0 == IO_SYMBOL || ((LA801_0 >= IPC_SYMBOL) && (LA801_0 <= ISSUER_SYMBOL)) || LA801_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA801_0 >= LANGUAGE_SYMBOL) && (LA801_0 <= LAST_SYMBOL)) || LA801_0 == LEAVES_SYMBOL || LA801_0 == LEFT_SYMBOL || LA801_0 == LESS_SYMBOL || LA801_0 == LEVEL_SYMBOL || LA801_0 == LINESTRING_SYMBOL || LA801_0 == LIST_SYMBOL || LA801_0 == LOCAL_SYMBOL || LA801_0 == LOCKS_SYMBOL || LA801_0 == LOGFILE_SYMBOL || LA801_0 == LOGS_SYMBOL || LA801_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA801_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA801_0 <= MASTER_SSL_SYMBOL)) || ((LA801_0 >= MASTER_SYMBOL) && (LA801_0 <= MATCH_SYMBOL)) || ((LA801_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA801_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA801_0 >= MEDIUM_SYMBOL) && (LA801_0 <= MICROSECOND_SYMBOL)) || LA801_0 == MIGRATE_SYMBOL || ((LA801_0 >= MINUTE_SYMBOL) && (LA801_0 <= MIN_SYMBOL)) || LA801_0 == MODE_SYMBOL || LA801_0 == MODIFY_SYMBOL || ((LA801_0 >= MOD_SYMBOL) && (LA801_0 <= MULTILINESTRING_SYMBOL)) || ((LA801_0 >= MULTIPOINT_SYMBOL) && (LA801_0 <= MULTIPOLYGON_SYMBOL)) || ((LA801_0 >= MUTEX_SYMBOL) && (LA801_0 <= NATIONAL_SYMBOL)) || LA801_0 == NCHAR_SYMBOL || LA801_0 == NDBCLUSTER_SYMBOL || ((LA801_0 >= NEW_SYMBOL) && (LA801_0 <= NONE_SYMBOL)) || ((LA801_0 >= NOW_SYMBOL) && (LA801_0 <= NO_WAIT_SYMBOL)) || LA801_0 == NULL2_SYMBOL || ((LA801_0 >= NULL_SYMBOL) && (LA801_0 <= NUMBER_SYMBOL)) || LA801_0 == NVARCHAR_SYMBOL || ((LA801_0 >= OFFSET_SYMBOL) && (LA801_0 <= ONE_SYMBOL)) || ((LA801_0 >= OPEN_PAR_SYMBOL) && (LA801_0 <= OPEN_SYMBOL)) || LA801_0 == OPTIONS_SYMBOL || ((LA801_0 >= OWNER_SYMBOL) && (LA801_0 <= PARAM_MARKER)) || ((LA801_0 >= PARSER_SYMBOL) && (LA801_0 <= PARTITION_SYMBOL)) || ((LA801_0 >= PASSWORD_SYMBOL) && (LA801_0 <= PLUGIN_SYMBOL)) || ((LA801_0 >= POINT_SYMBOL) && (LA801_0 <= POSITION_SYMBOL)) || ((LA801_0 >= PREPARE_SYMBOL) && (LA801_0 <= PREV_SYMBOL)) || LA801_0 == PRIVILEGES_SYMBOL || ((LA801_0 >= PROCESSLIST_SYMBOL) && (LA801_0 <= PROXY_SYMBOL)) || ((LA801_0 >= QUARTER_SYMBOL) && (LA801_0 <= QUICK_SYMBOL)) || LA801_0 == READ_ONLY_SYMBOL || ((LA801_0 >= REBUILD_SYMBOL) && (LA801_0 <= REDUNDANT_SYMBOL)) || ((LA801_0 >= RELAYLOG_SYMBOL) && (LA801_0 <= RELAY_THREAD_SYMBOL)) || ((LA801_0 >= RELOAD_SYMBOL) && (LA801_0 <= REMOVE_SYMBOL)) || ((LA801_0 >= REORGANIZE_SYMBOL) && (LA801_0 <= REPLICATION_SYMBOL)) || LA801_0 == RESET_SYMBOL || LA801_0 == RESTORE_SYMBOL || ((LA801_0 >= RESUME_SYMBOL) && (LA801_0 <= RETURNS_SYMBOL)) || LA801_0 == REVERSE_SYMBOL || LA801_0 == RIGHT_SYMBOL || ((LA801_0 >= ROLLBACK_SYMBOL) && (LA801_0 <= SCHEDULE_SYMBOL)) || LA801_0 == SCHEMA_NAME_SYMBOL || ((LA801_0 >= SECOND_SYMBOL) && (LA801_0 <= SECURITY_SYMBOL)) || ((LA801_0 >= SERIALIZABLE_SYMBOL) && (LA801_0 <= SERIAL_SYMBOL)) || ((LA801_0 >= SERVER_SYMBOL) && (LA801_0 <= SESSION_SYMBOL)) || LA801_0 == SHARE_SYMBOL || LA801_0 == SHUTDOWN_SYMBOL || ((LA801_0 >= SIGNED_SYMBOL) && (LA801_0 <= SIMPLE_SYMBOL)) || ((LA801_0 >= SLAVE_SYMBOL) && (LA801_0 <= SLOW_SYMBOL)) || ((LA801_0 >= SNAPSHOT_SYMBOL) && (LA801_0 <= SOURCE_SYMBOL)) || ((LA801_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA801_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA801_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA801_0 <= SQL_CACHE_SYMBOL)) || LA801_0 == SQL_NO_CACHE_SYMBOL || LA801_0 == SQL_THREAD_SYMBOL || ((LA801_0 >= STARTS_SYMBOL) && (LA801_0 <= STATUS_SYMBOL)) || LA801_0 == STDDEV_SAMP_SYMBOL || ((LA801_0 >= STD_SYMBOL) && (LA801_0 <= STORAGE_SYMBOL)) || ((LA801_0 >= STRING_SYMBOL) && (LA801_0 <= SUBPARTITION_SYMBOL)) || LA801_0 == SUBSTRING_SYMBOL || ((LA801_0 >= SUM_SYMBOL) && (LA801_0 <= SYSDATE_SYMBOL)) || ((LA801_0 >= TABLESPACE_SYMBOL) && (LA801_0 <= TABLE_NAME_SYMBOL)) || ((LA801_0 >= TEMPORARY_SYMBOL) && (LA801_0 <= TEMPTABLE_SYMBOL)) || ((LA801_0 >= TEXT_SYMBOL) && (LA801_0 <= THAN_SYMBOL)) || ((LA801_0 >= TIMESTAMP_ADD_SYMBOL) && (LA801_0 <= TIMESTAMP_DIFF_SYMBOL)) || ((LA801_0 >= TRANSACTION_SYMBOL) && (LA801_0 <= TRIGGERS_SYMBOL)) || LA801_0 == TRIM_SYMBOL || ((LA801_0 >= TRUNCATE_SYMBOL) && (LA801_0 <= UDF_RETURNS_SYMBOL)) || ((LA801_0 >= UNCOMMITTED_SYMBOL) && (LA801_0 <= UNDEFINED_SYMBOL)) || ((LA801_0 >= UNDOFILE_SYMBOL) && (LA801_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA801_0 >= UNICODE_SYMBOL) && (LA801_0 <= UNINSTALL_SYMBOL)) || LA801_0 == UNKNOWN_SYMBOL || LA801_0 == UNTIL_SYMBOL || LA801_0 == UPGRADE_SYMBOL || ((LA801_0 >= USER_RESOURCES_SYMBOL) && (LA801_0 <= USE_FRM_SYMBOL)) || ((LA801_0 >= UTC_DATE_SYMBOL) && (LA801_0 <= VALUE_SYMBOL)) || ((LA801_0 >= VARIABLES_SYMBOL) && (LA801_0 <= VARIANCE_SYMBOL)) || LA801_0 == VAR_SAMP_SYMBOL || ((LA801_0 >= VIEW_SYMBOL) && (LA801_0 <= WEIGHT_STRING_SYMBOL)) || ((LA801_0 >= WORK_SYMBOL) && (LA801_0 <= WRAPPER_SYMBOL)) || LA801_0 == X509_SYMBOL || ((LA801_0 >= XA_SYMBOL) && (LA801_0 <= XML_SYMBOL)) || LA801_0 == YEAR_SYMBOL || LA801_0 == 732))
                    {
                        alt801=1;
                    }
                    else if ( (LA801_0 == DEFAULT_SYMBOL))
                    {
                        alt801=2;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 801;
                        EXCEPTION->state        = 0;


                        goto rulecolumn_assignment_with_defaultEx;

                    }
                }
                switch (alt801)
                {
            	case 1:
            	    // MySQL.g:2449:29: expression
            	    {
            	        FOLLOWPUSH(FOLLOW_expression_in_column_assignment_with_default14165);
            	        expression2872=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecolumn_assignment_with_defaultEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2872.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2449:42: DEFAULT_SYMBOL
            	    {
            	        DEFAULT_SYMBOL2873 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_column_assignment_with_default14169);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecolumn_assignment_with_defaultEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DEFAULT_SYMBOL2873_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL2873));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL2873_tree);
            	        }

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulecolumn_assignment_with_defaultEx; /* Prevent compiler warnings */
    rulecolumn_assignment_with_defaultEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end column_assignment_with_default */

/**
 * $ANTLR start charset_clause
 * MySQL.g:2452:1: charset_clause : charset ( text_or_identifier | DEFAULT_SYMBOL | BINARY_SYMBOL ) ;
 */
static MySQLParser_charset_clause_return
charset_clause(pMySQLParser ctx)
{
    MySQLParser_charset_clause_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL2876;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2877;
    MySQLParser_charset_return charset2874;
    #undef	RETURN_TYPE_charset2874
    #define	RETURN_TYPE_charset2874 MySQLParser_charset_return

    MySQLParser_text_or_identifier_return text_or_identifier2875;
    #undef	RETURN_TYPE_text_or_identifier2875
    #define	RETURN_TYPE_text_or_identifier2875 MySQLParser_text_or_identifier_return

    pANTLR3_BASE_TREE DEFAULT_SYMBOL2876_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2877_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DEFAULT_SYMBOL2876       = NULL;
    BINARY_SYMBOL2877       = NULL;
    charset2874.tree = NULL;

    text_or_identifier2875.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DEFAULT_SYMBOL2876_tree   = NULL;
    BINARY_SYMBOL2877_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2452:15: ( charset ( text_or_identifier | DEFAULT_SYMBOL | BINARY_SYMBOL ) )
        // MySQL.g:2453:2: charset ( text_or_identifier | DEFAULT_SYMBOL | BINARY_SYMBOL )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_charset_in_charset_clause14179);
            charset2874=charset(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecharset_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset2874.tree);

            // MySQL.g:2453:10: ( text_or_identifier | DEFAULT_SYMBOL | BINARY_SYMBOL )
            {
                int alt802=3;
                {
                    int LA802_0 = LA(1);
                    if ( (LA802_0 == NCHAR_TEXT || LA802_0 == SINGLE_QUOTED_TEXT || LA802_0 == UNDERSCORE_CHARSET))
                    {
                        alt802=1;
                    }
                    else if ( ((((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)))||((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))) && (LA802_0 == DOUBLE_QUOTED_TEXT))
                    {
                        alt802=1;
                    }
                    else if ( (((LA802_0 >= ACTION_SYMBOL) && (LA802_0 <= ADDDATE_SYMBOL)) || ((LA802_0 >= AFTER_SYMBOL) && (LA802_0 <= ALGORITHM_SYMBOL)) || LA802_0 == ANALYZE_SYMBOL || ((LA802_0 >= ANY_SYMBOL) && (LA802_0 <= ASCII_SYMBOL)) || ((LA802_0 >= AT_SYMBOL) && (LA802_0 <= BACKUP_SYMBOL)) || LA802_0 == BACK_TICK_QUOTED_ID || LA802_0 == BEGIN_SYMBOL || LA802_0 == BINLOG_SYMBOL || LA802_0 == BIT_SYMBOL || ((LA802_0 >= BLOCK_SYMBOL) && (LA802_0 <= BOOL_SYMBOL)) || ((LA802_0 >= BTREE_SYMBOL) && (LA802_0 <= BYTE_SYMBOL)) || LA802_0 == CACHE_SYMBOL || LA802_0 == CASCADED_SYMBOL || ((LA802_0 >= CATALOG_NAME_SYMBOL) && (LA802_0 <= CHANGED_SYMBOL)) || LA802_0 == CHARSET_SYMBOL || LA802_0 == CHECKSUM_SYMBOL || ((LA802_0 >= CIPHER_SYMBOL) && (LA802_0 <= CLIENT_SYMBOL)) || ((LA802_0 >= CLOSE_SYMBOL) && (LA802_0 <= CODE_SYMBOL)) || LA802_0 == COLLATION_SYMBOL || ((LA802_0 >= COLUMNS_SYMBOL) && (LA802_0 <= COLUMN_NAME_SYMBOL)) || ((LA802_0 >= COMMENT_SYMBOL) && (LA802_0 <= COMPRESSED_SYMBOL)) || LA802_0 == CONCURRENT_SYMBOL || ((LA802_0 >= CONNECTION_SYMBOL) && (LA802_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA802_0 >= CONTAINS_SYMBOL) && (LA802_0 <= CONTEXT_SYMBOL)) || LA802_0 == CONTRIBUTORS_SYMBOL || LA802_0 == CPU_SYMBOL || LA802_0 == CUBE_SYMBOL || LA802_0 == CURRENT_SYMBOL || LA802_0 == CURSOR_NAME_SYMBOL || ((LA802_0 >= DATAFILE_SYMBOL) && (LA802_0 <= DATETIME_SYMBOL)) || LA802_0 == DATE_SYMBOL || ((LA802_0 >= DAY_SYMBOL) && (LA802_0 <= DEALLOCATE_SYMBOL)) || LA802_0 == DEFAULT_AUTH_SYMBOL || LA802_0 == DEFINER_SYMBOL || LA802_0 == DELAY_KEY_WRITE_SYMBOL || LA802_0 == DES_KEY_FILE_SYMBOL || LA802_0 == DIAGNOSTICS_SYMBOL || ((LA802_0 >= DIRECTORY_SYMBOL) && (LA802_0 <= DISK_SYMBOL)) || LA802_0 == DO_SYMBOL || ((LA802_0 >= DUMPFILE_SYMBOL) && (LA802_0 <= DYNAMIC_SYMBOL)) || LA802_0 == ENABLE_SYMBOL || LA802_0 == ENDS_SYMBOL || ((LA802_0 >= END_SYMBOL) && (LA802_0 <= ENUM_SYMBOL)) || ((LA802_0 >= ERRORS_SYMBOL) && (LA802_0 <= ERROR_SYMBOL)) || ((LA802_0 >= ESCAPE_SYMBOL) && (LA802_0 <= EVERY_SYMBOL)) || LA802_0 == EXECUTE_SYMBOL || LA802_0 == EXPANSION_SYMBOL || LA802_0 == EXPORT_SYMBOL || ((LA802_0 >= EXTENDED_SYMBOL) && (LA802_0 <= EXTENT_SIZE_SYMBOL)) || ((LA802_0 >= FAST_SYMBOL) && (LA802_0 <= FAULTS_SYMBOL)) || ((LA802_0 >= FILE_SYMBOL) && (LA802_0 <= FIXED_SYMBOL)) || LA802_0 == FLUSH_SYMBOL || LA802_0 == FORMAT_SYMBOL || LA802_0 == FOUND_SYMBOL || LA802_0 == FULL_SYMBOL || ((LA802_0 >= FUNCTION_SYMBOL) && (LA802_0 <= GET_FORMAT_SYMBOL)) || ((LA802_0 >= GLOBAL_SYMBOL) && (LA802_0 <= GRANTS_SYMBOL)) || ((LA802_0 >= HANDLER_SYMBOL) && (LA802_0 <= HASH_SYMBOL)) || LA802_0 == HELP_SYMBOL || ((LA802_0 >= HOSTS_SYMBOL) && (LA802_0 <= HOST_SYMBOL)) || ((LA802_0 >= HOUR_SYMBOL) && (LA802_0 <= IDENTIFIER)) || LA802_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA802_0 >= IMPORT_SYMBOL) && (LA802_0 <= INDEXES_SYMBOL)) || LA802_0 == INITIAL_SIZE_SYMBOL || LA802_0 == INNODB_SYMBOL || LA802_0 == INSERT_METHOD_SYMBOL || LA802_0 == INSTALL_SYMBOL || LA802_0 == INVOKER_SYMBOL || LA802_0 == IO_SYMBOL || ((LA802_0 >= IPC_SYMBOL) && (LA802_0 <= ISSUER_SYMBOL)) || LA802_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA802_0 >= LANGUAGE_SYMBOL) && (LA802_0 <= LAST_SYMBOL)) || LA802_0 == LEAVES_SYMBOL || LA802_0 == LESS_SYMBOL || LA802_0 == LEVEL_SYMBOL || LA802_0 == LINESTRING_SYMBOL || LA802_0 == LIST_SYMBOL || LA802_0 == LOCAL_SYMBOL || LA802_0 == LOCKS_SYMBOL || LA802_0 == LOGFILE_SYMBOL || LA802_0 == LOGS_SYMBOL || LA802_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA802_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA802_0 <= MASTER_SSL_SYMBOL)) || ((LA802_0 >= MASTER_SYMBOL) && (LA802_0 <= MASTER_USER_SYMBOL)) || ((LA802_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA802_0 <= MAX_SIZE_SYMBOL)) || ((LA802_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA802_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA802_0 >= MEDIUM_SYMBOL) && (LA802_0 <= MICROSECOND_SYMBOL)) || LA802_0 == MIGRATE_SYMBOL || ((LA802_0 >= MINUTE_SYMBOL) && (LA802_0 <= MIN_ROWS_SYMBOL)) || LA802_0 == MODE_SYMBOL || LA802_0 == MODIFY_SYMBOL || ((LA802_0 >= MONTH_SYMBOL) && (LA802_0 <= MULTILINESTRING_SYMBOL)) || ((LA802_0 >= MULTIPOINT_SYMBOL) && (LA802_0 <= MULTIPOLYGON_SYMBOL)) || ((LA802_0 >= MUTEX_SYMBOL) && (LA802_0 <= NATIONAL_SYMBOL)) || LA802_0 == NCHAR_SYMBOL || LA802_0 == NDBCLUSTER_SYMBOL || ((LA802_0 >= NEW_SYMBOL) && (LA802_0 <= NONE_SYMBOL)) || ((LA802_0 >= NO_SYMBOL) && (LA802_0 <= NO_WAIT_SYMBOL)) || LA802_0 == NUMBER_SYMBOL || LA802_0 == NVARCHAR_SYMBOL || ((LA802_0 >= OFFSET_SYMBOL) && (LA802_0 <= ONE_SYMBOL)) || LA802_0 == OPEN_SYMBOL || LA802_0 == OPTIONS_SYMBOL || ((LA802_0 >= OWNER_SYMBOL) && (LA802_0 <= PAGE_SYMBOL)) || ((LA802_0 >= PARSER_SYMBOL) && (LA802_0 <= PARTITION_SYMBOL)) || ((LA802_0 >= PASSWORD_SYMBOL) && (LA802_0 <= PLUGIN_SYMBOL)) || ((LA802_0 >= POINT_SYMBOL) && (LA802_0 <= PORT_SYMBOL)) || ((LA802_0 >= PREPARE_SYMBOL) && (LA802_0 <= PREV_SYMBOL)) || LA802_0 == PRIVILEGES_SYMBOL || ((LA802_0 >= PROCESSLIST_SYMBOL) && (LA802_0 <= PROXY_SYMBOL)) || ((LA802_0 >= QUARTER_SYMBOL) && (LA802_0 <= QUICK_SYMBOL)) || LA802_0 == READ_ONLY_SYMBOL || ((LA802_0 >= REBUILD_SYMBOL) && (LA802_0 <= REDUNDANT_SYMBOL)) || ((LA802_0 >= RELAYLOG_SYMBOL) && (LA802_0 <= RELAY_THREAD_SYMBOL)) || ((LA802_0 >= RELOAD_SYMBOL) && (LA802_0 <= REMOVE_SYMBOL)) || ((LA802_0 >= REORGANIZE_SYMBOL) && (LA802_0 <= REPEATABLE_SYMBOL)) || LA802_0 == REPLICATION_SYMBOL || LA802_0 == RESET_SYMBOL || LA802_0 == RESTORE_SYMBOL || ((LA802_0 >= RESUME_SYMBOL) && (LA802_0 <= RETURNS_SYMBOL)) || LA802_0 == REVERSE_SYMBOL || ((LA802_0 >= ROLLBACK_SYMBOL) && (LA802_0 <= SCHEDULE_SYMBOL)) || LA802_0 == SCHEMA_NAME_SYMBOL || ((LA802_0 >= SECOND_SYMBOL) && (LA802_0 <= SECURITY_SYMBOL)) || ((LA802_0 >= SERIALIZABLE_SYMBOL) && (LA802_0 <= SERIAL_SYMBOL)) || ((LA802_0 >= SERVER_SYMBOL) && (LA802_0 <= SESSION_SYMBOL)) || LA802_0 == SHARE_SYMBOL || LA802_0 == SHUTDOWN_SYMBOL || ((LA802_0 >= SIGNED_SYMBOL) && (LA802_0 <= SIMPLE_SYMBOL)) || ((LA802_0 >= SLAVE_SYMBOL) && (LA802_0 <= SLOW_SYMBOL)) || ((LA802_0 >= SNAPSHOT_SYMBOL) && (LA802_0 <= SOURCE_SYMBOL)) || ((LA802_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA802_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA802_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA802_0 <= SQL_CACHE_SYMBOL)) || LA802_0 == SQL_NO_CACHE_SYMBOL || LA802_0 == SQL_THREAD_SYMBOL || ((LA802_0 >= STARTS_SYMBOL) && (LA802_0 <= STATUS_SYMBOL)) || ((LA802_0 >= STOP_SYMBOL) && (LA802_0 <= STORAGE_SYMBOL)) || ((LA802_0 >= STRING_SYMBOL) && (LA802_0 <= SUBPARTITION_SYMBOL)) || ((LA802_0 >= SUPER_SYMBOL) && (LA802_0 <= SWITCHES_SYMBOL)) || ((LA802_0 >= TABLESPACE_SYMBOL) && (LA802_0 <= TABLE_NAME_SYMBOL)) || ((LA802_0 >= TEMPORARY_SYMBOL) && (LA802_0 <= TEMPTABLE_SYMBOL)) || ((LA802_0 >= TEXT_SYMBOL) && (LA802_0 <= THAN_SYMBOL)) || ((LA802_0 >= TIMESTAMP_ADD_SYMBOL) && (LA802_0 <= TIME_SYMBOL)) || ((LA802_0 >= TRANSACTION_SYMBOL) && (LA802_0 <= TRIGGERS_SYMBOL)) || ((LA802_0 >= TRUNCATE_SYMBOL) && (LA802_0 <= UDF_RETURNS_SYMBOL)) || ((LA802_0 >= UNCOMMITTED_SYMBOL) && (LA802_0 <= UNDEFINED_SYMBOL)) || ((LA802_0 >= UNDOFILE_SYMBOL) && (LA802_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA802_0 >= UNICODE_SYMBOL) && (LA802_0 <= UNINSTALL_SYMBOL)) || LA802_0 == UNKNOWN_SYMBOL || LA802_0 == UNTIL_SYMBOL || LA802_0 == UPGRADE_SYMBOL || ((LA802_0 >= USER_RESOURCES_SYMBOL) && (LA802_0 <= USE_FRM_SYMBOL)) || LA802_0 == VALUE_SYMBOL || LA802_0 == VARIABLES_SYMBOL || ((LA802_0 >= VIEW_SYMBOL) && (LA802_0 <= WEIGHT_STRING_SYMBOL)) || ((LA802_0 >= WORK_SYMBOL) && (LA802_0 <= WRAPPER_SYMBOL)) || LA802_0 == X509_SYMBOL || ((LA802_0 >= XA_SYMBOL) && (LA802_0 <= XML_SYMBOL)) || LA802_0 == YEAR_SYMBOL))
                    {
                        alt802=1;
                    }
                    else if ( (LA802_0 == DEFAULT_SYMBOL))
                    {
                        alt802=2;
                    }
                    else if ( (LA802_0 == BINARY_SYMBOL))
                    {
                        alt802=3;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 802;
                        EXCEPTION->state        = 0;


                        goto rulecharset_clauseEx;

                    }
                }
                switch (alt802)
                {
            	case 1:
            	    // MySQL.g:2453:11: text_or_identifier
            	    {
            	        FOLLOWPUSH(FOLLOW_text_or_identifier_in_charset_clause14182);
            	        text_or_identifier2875=text_or_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecharset_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_identifier2875.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2453:32: DEFAULT_SYMBOL
            	    {
            	        DEFAULT_SYMBOL2876 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_charset_clause14186);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecharset_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DEFAULT_SYMBOL2876_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL2876));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL2876_tree);
            	        }

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:2453:49: BINARY_SYMBOL
            	    {
            	        BINARY_SYMBOL2877 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_charset_clause14190);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecharset_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        BINARY_SYMBOL2877_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2877));
            	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2877_tree);
            	        }

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulecharset_clauseEx; /* Prevent compiler warnings */
    rulecharset_clauseEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end charset_clause */

/**
 * $ANTLR start fields_clause
 * MySQL.g:2456:1: fields_clause : COLUMNS_SYMBOL ( field_term )+ ;
 */
static MySQLParser_fields_clause_return
fields_clause(pMySQLParser ctx)
{
    MySQLParser_fields_clause_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COLUMNS_SYMBOL2878;
    MySQLParser_field_term_return field_term2879;
    #undef	RETURN_TYPE_field_term2879
    #define	RETURN_TYPE_field_term2879 MySQLParser_field_term_return

    pANTLR3_BASE_TREE COLUMNS_SYMBOL2878_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COLUMNS_SYMBOL2878       = NULL;
    field_term2879.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COLUMNS_SYMBOL2878_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2456:14: ( COLUMNS_SYMBOL ( field_term )+ )
        // MySQL.g:2457:2: COLUMNS_SYMBOL ( field_term )+
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            COLUMNS_SYMBOL2878 = (pANTLR3_COMMON_TOKEN) MATCHT(COLUMNS_SYMBOL, &FOLLOW_COLUMNS_SYMBOL_in_fields_clause14200);
            if  (HASEXCEPTION())
            {
                goto rulefields_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            COLUMNS_SYMBOL2878_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLUMNS_SYMBOL2878));
            ADAPTOR->addChild(ADAPTOR, root_0, COLUMNS_SYMBOL2878_tree);
            }

            // MySQL.g:2457:17: ( field_term )+
            {
                int cnt803=0;

                for (;;)
                {
                    int alt803=2;
            	switch ( LA(1) )
            	{
            	case ENCLOSED_SYMBOL:
            	case ESCAPED_SYMBOL:
            	case OPTIONALLY_SYMBOL:
            	case TERMINATED_SYMBOL:
            		{
            			alt803=1;
            		}
            	    break;

            	}

            	switch (alt803)
            	{
            	    case 1:
            	        // MySQL.g:2457:17: field_term
            	        {
            	            FOLLOWPUSH(FOLLOW_field_term_in_fields_clause14202);
            	            field_term2879=field_term(ctx);

            	            FOLLOWPOP();
            	            if  (HASEXCEPTION())
            	            {
            	                goto rulefields_clauseEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_term2879.tree);

            	        }
            	        break;

            	    default:

            		if ( cnt803 >= 1 )
            		{
            		    goto loop803;
            		}
            		if (BACKTRACKING>0)
            		{
            		    FAILEDFLAG = ANTLR3_TRUE;
            		    return retval;
            		}

            		/* mismatchedSetEx()
            		 */
            		CONSTRUCTEX();
            		EXCEPTION->type = ANTLR3_EARLY_EXIT_EXCEPTION;
            		EXCEPTION->name = (void *)ANTLR3_EARLY_EXIT_NAME;


            		goto rulefields_clauseEx;
            	}
            	cnt803++;
                }
                loop803: ;	/* Jump to here if this rule does not match */
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulefields_clauseEx; /* Prevent compiler warnings */
    rulefields_clauseEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end fields_clause */

/**
 * $ANTLR start field_term
 * MySQL.g:2460:1: field_term : ( TERMINATED_SYMBOL BY_SYMBOL string_literal | ( OPTIONALLY_SYMBOL )? ENCLOSED_SYMBOL BY_SYMBOL string_literal | ESCAPED_SYMBOL BY_SYMBOL string_literal );
 */
static MySQLParser_field_term_return
field_term(pMySQLParser ctx)
{
    MySQLParser_field_term_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    TERMINATED_SYMBOL2880;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL2881;
    pANTLR3_COMMON_TOKEN    OPTIONALLY_SYMBOL2883;
    pANTLR3_COMMON_TOKEN    ENCLOSED_SYMBOL2884;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL2885;
    pANTLR3_COMMON_TOKEN    ESCAPED_SYMBOL2887;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL2888;
    MySQLParser_string_literal_return string_literal2882;
    #undef	RETURN_TYPE_string_literal2882
    #define	RETURN_TYPE_string_literal2882 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal2886;
    #undef	RETURN_TYPE_string_literal2886
    #define	RETURN_TYPE_string_literal2886 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal2889;
    #undef	RETURN_TYPE_string_literal2889
    #define	RETURN_TYPE_string_literal2889 MySQLParser_string_literal_return

    pANTLR3_BASE_TREE TERMINATED_SYMBOL2880_tree;
    pANTLR3_BASE_TREE BY_SYMBOL2881_tree;
    pANTLR3_BASE_TREE OPTIONALLY_SYMBOL2883_tree;
    pANTLR3_BASE_TREE ENCLOSED_SYMBOL2884_tree;
    pANTLR3_BASE_TREE BY_SYMBOL2885_tree;
    pANTLR3_BASE_TREE ESCAPED_SYMBOL2887_tree;
    pANTLR3_BASE_TREE BY_SYMBOL2888_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    TERMINATED_SYMBOL2880       = NULL;
    BY_SYMBOL2881       = NULL;
    OPTIONALLY_SYMBOL2883       = NULL;
    ENCLOSED_SYMBOL2884       = NULL;
    BY_SYMBOL2885       = NULL;
    ESCAPED_SYMBOL2887       = NULL;
    BY_SYMBOL2888       = NULL;
    string_literal2882.tree = NULL;

    string_literal2886.tree = NULL;

    string_literal2889.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    TERMINATED_SYMBOL2880_tree   = NULL;
    BY_SYMBOL2881_tree   = NULL;
    OPTIONALLY_SYMBOL2883_tree   = NULL;
    ENCLOSED_SYMBOL2884_tree   = NULL;
    BY_SYMBOL2885_tree   = NULL;
    ESCAPED_SYMBOL2887_tree   = NULL;
    BY_SYMBOL2888_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2460:11: ( TERMINATED_SYMBOL BY_SYMBOL string_literal | ( OPTIONALLY_SYMBOL )? ENCLOSED_SYMBOL BY_SYMBOL string_literal | ESCAPED_SYMBOL BY_SYMBOL string_literal )

            ANTLR3_UINT32 alt805;

            alt805=3;

            switch ( LA(1) )
            {
            case TERMINATED_SYMBOL:
            	{
            		alt805=1;
            	}
                break;
            case ENCLOSED_SYMBOL:
            case OPTIONALLY_SYMBOL:
            	{
            		alt805=2;
            	}
                break;
            case ESCAPED_SYMBOL:
            	{
            		alt805=3;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 805;
                EXCEPTION->state        = 0;


                goto rulefield_termEx;

            }

            switch (alt805)
            {
        	case 1:
        	    // MySQL.g:2461:2: TERMINATED_SYMBOL BY_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TERMINATED_SYMBOL2880 = (pANTLR3_COMMON_TOKEN) MATCHT(TERMINATED_SYMBOL, &FOLLOW_TERMINATED_SYMBOL_in_field_term14212);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefield_termEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TERMINATED_SYMBOL2880_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TERMINATED_SYMBOL2880));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TERMINATED_SYMBOL2880_tree);
        	        }

        	        BY_SYMBOL2881 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_field_term14214);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefield_termEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BY_SYMBOL2881_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BY_SYMBOL2881));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BY_SYMBOL2881_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_field_term14216);
        	        string_literal2882=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefield_termEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal2882.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2462:4: ( OPTIONALLY_SYMBOL )? ENCLOSED_SYMBOL BY_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:2462:4: ( OPTIONALLY_SYMBOL )?
        	        {
        	            int alt804=2;
        	            switch ( LA(1) )
        	            {
        	                case OPTIONALLY_SYMBOL:
        	                	{
        	                		alt804=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt804)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2462:4: OPTIONALLY_SYMBOL
        	        	    {
        	        	        OPTIONALLY_SYMBOL2883 = (pANTLR3_COMMON_TOKEN) MATCHT(OPTIONALLY_SYMBOL, &FOLLOW_OPTIONALLY_SYMBOL_in_field_term14221);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefield_termEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        OPTIONALLY_SYMBOL2883_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPTIONALLY_SYMBOL2883));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, OPTIONALLY_SYMBOL2883_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        ENCLOSED_SYMBOL2884 = (pANTLR3_COMMON_TOKEN) MATCHT(ENCLOSED_SYMBOL, &FOLLOW_ENCLOSED_SYMBOL_in_field_term14224);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefield_termEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ENCLOSED_SYMBOL2884_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ENCLOSED_SYMBOL2884));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ENCLOSED_SYMBOL2884_tree);
        	        }

        	        BY_SYMBOL2885 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_field_term14226);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefield_termEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BY_SYMBOL2885_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BY_SYMBOL2885));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BY_SYMBOL2885_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_field_term14228);
        	        string_literal2886=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefield_termEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal2886.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2463:4: ESCAPED_SYMBOL BY_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ESCAPED_SYMBOL2887 = (pANTLR3_COMMON_TOKEN) MATCHT(ESCAPED_SYMBOL, &FOLLOW_ESCAPED_SYMBOL_in_field_term14233);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefield_termEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ESCAPED_SYMBOL2887_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ESCAPED_SYMBOL2887));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ESCAPED_SYMBOL2887_tree);
        	        }

        	        BY_SYMBOL2888 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_field_term14235);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefield_termEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BY_SYMBOL2888_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BY_SYMBOL2888));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BY_SYMBOL2888_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_field_term14237);
        	        string_literal2889=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefield_termEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal2889.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulefield_termEx; /* Prevent compiler warnings */
    rulefield_termEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end field_term */

/**
 * $ANTLR start lines_clause
 * MySQL.g:2466:1: lines_clause : LINES_SYMBOL ( line_term )+ ;
 */
static MySQLParser_lines_clause_return
lines_clause(pMySQLParser ctx)
{
    MySQLParser_lines_clause_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    LINES_SYMBOL2890;
    MySQLParser_line_term_return line_term2891;
    #undef	RETURN_TYPE_line_term2891
    #define	RETURN_TYPE_line_term2891 MySQLParser_line_term_return

    pANTLR3_BASE_TREE LINES_SYMBOL2890_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    LINES_SYMBOL2890       = NULL;
    line_term2891.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    LINES_SYMBOL2890_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2466:13: ( LINES_SYMBOL ( line_term )+ )
        // MySQL.g:2467:2: LINES_SYMBOL ( line_term )+
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            LINES_SYMBOL2890 = (pANTLR3_COMMON_TOKEN) MATCHT(LINES_SYMBOL, &FOLLOW_LINES_SYMBOL_in_lines_clause14246);
            if  (HASEXCEPTION())
            {
                goto rulelines_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            LINES_SYMBOL2890_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LINES_SYMBOL2890));
            ADAPTOR->addChild(ADAPTOR, root_0, LINES_SYMBOL2890_tree);
            }

            // MySQL.g:2467:15: ( line_term )+
            {
                int cnt806=0;

                for (;;)
                {
                    int alt806=2;
            	switch ( LA(1) )
            	{
            	case STARTING_SYMBOL:
            	case TERMINATED_SYMBOL:
            		{
            			alt806=1;
            		}
            	    break;

            	}

            	switch (alt806)
            	{
            	    case 1:
            	        // MySQL.g:2467:15: line_term
            	        {
            	            FOLLOWPUSH(FOLLOW_line_term_in_lines_clause14248);
            	            line_term2891=line_term(ctx);

            	            FOLLOWPOP();
            	            if  (HASEXCEPTION())
            	            {
            	                goto rulelines_clauseEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, line_term2891.tree);

            	        }
            	        break;

            	    default:

            		if ( cnt806 >= 1 )
            		{
            		    goto loop806;
            		}
            		if (BACKTRACKING>0)
            		{
            		    FAILEDFLAG = ANTLR3_TRUE;
            		    return retval;
            		}

            		/* mismatchedSetEx()
            		 */
            		CONSTRUCTEX();
            		EXCEPTION->type = ANTLR3_EARLY_EXIT_EXCEPTION;
            		EXCEPTION->name = (void *)ANTLR3_EARLY_EXIT_NAME;


            		goto rulelines_clauseEx;
            	}
            	cnt806++;
                }
                loop806: ;	/* Jump to here if this rule does not match */
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulelines_clauseEx; /* Prevent compiler warnings */
    rulelines_clauseEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end lines_clause */

/**
 * $ANTLR start line_term
 * MySQL.g:2470:1: line_term : ( TERMINATED_SYMBOL | STARTING_SYMBOL ) BY_SYMBOL string_literal ;
 */
static MySQLParser_line_term_return
line_term(pMySQLParser ctx)
{
    MySQLParser_line_term_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set2892;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL2893;
    MySQLParser_string_literal_return string_literal2894;
    #undef	RETURN_TYPE_string_literal2894
    #define	RETURN_TYPE_string_literal2894 MySQLParser_string_literal_return

    pANTLR3_BASE_TREE set2892_tree;
    pANTLR3_BASE_TREE BY_SYMBOL2893_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2892       = NULL;
    BY_SYMBOL2893       = NULL;
    string_literal2894.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2892_tree   = NULL;
    BY_SYMBOL2893_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2470:10: ( ( TERMINATED_SYMBOL | STARTING_SYMBOL ) BY_SYMBOL string_literal )
        // MySQL.g:2471:2: ( TERMINATED_SYMBOL | STARTING_SYMBOL ) BY_SYMBOL string_literal
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set2892=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == STARTING_SYMBOL || LA(1) == TERMINATED_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2892))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto ruleline_termEx;
            }


            BY_SYMBOL2893 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_line_term14266);
            if  (HASEXCEPTION())
            {
                goto ruleline_termEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            BY_SYMBOL2893_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BY_SYMBOL2893));
            ADAPTOR->addChild(ADAPTOR, root_0, BY_SYMBOL2893_tree);
            }

            FOLLOWPUSH(FOLLOW_string_literal_in_line_term14268);
            string_literal2894=string_literal(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleline_termEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal2894.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleline_termEx; /* Prevent compiler warnings */
    ruleline_termEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end line_term */

/**
 * $ANTLR start user_list
 * MySQL.g:2474:1: user_list : user ( COMMA_SYMBOL user )* ;
 */
static MySQLParser_user_list_return
user_list(pMySQLParser ctx)
{
    MySQLParser_user_list_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2896;
    MySQLParser_user_return user2895;
    #undef	RETURN_TYPE_user2895
    #define	RETURN_TYPE_user2895 MySQLParser_user_return

    MySQLParser_user_return user2897;
    #undef	RETURN_TYPE_user2897
    #define	RETURN_TYPE_user2897 MySQLParser_user_return

    pANTLR3_BASE_TREE COMMA_SYMBOL2896_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL2896       = NULL;
    user2895.tree = NULL;

    user2897.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL2896_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2474:10: ( user ( COMMA_SYMBOL user )* )
        // MySQL.g:2475:2: user ( COMMA_SYMBOL user )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_user_in_user_list14277);
            user2895=user(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleuser_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user2895.tree);

            // MySQL.g:2475:7: ( COMMA_SYMBOL user )*

            for (;;)
            {
                int alt807=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt807=1;
                	}
                    break;

                }

                switch (alt807)
                {
            	case 1:
            	    // MySQL.g:2475:8: COMMA_SYMBOL user
            	    {
            	        COMMA_SYMBOL2896 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_user_list14280);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleuser_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL2896_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2896));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2896_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_user_in_user_list14282);
            	        user2897=user(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleuser_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user2897.tree);

            	    }
            	    break;

            	default:
            	    goto loop807;	/* break out of the loop */
            	    break;
                }
            }
            loop807: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto ruleuser_listEx; /* Prevent compiler warnings */
    ruleuser_listEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end user_list */

/**
 * $ANTLR start user_specification
 * MySQL.g:2478:1: user_specification : user ( IDENTIFIED_SYMBOL ( BY_SYMBOL ( PASSWORD_SYMBOL )? string_literal | WITH_SYMBOL pure_identifier ( AS_SYMBOL string_literal )? ) )? ;
 */
static MySQLParser_user_specification_return
user_specification(pMySQLParser ctx)
{
    MySQLParser_user_specification_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    IDENTIFIED_SYMBOL2899;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL2900;
    pANTLR3_COMMON_TOKEN    PASSWORD_SYMBOL2901;
    pANTLR3_COMMON_TOKEN    WITH_SYMBOL2903;
    pANTLR3_COMMON_TOKEN    AS_SYMBOL2905;
    MySQLParser_user_return user2898;
    #undef	RETURN_TYPE_user2898
    #define	RETURN_TYPE_user2898 MySQLParser_user_return

    MySQLParser_string_literal_return string_literal2902;
    #undef	RETURN_TYPE_string_literal2902
    #define	RETURN_TYPE_string_literal2902 MySQLParser_string_literal_return

    MySQLParser_pure_identifier_return pure_identifier2904;
    #undef	RETURN_TYPE_pure_identifier2904
    #define	RETURN_TYPE_pure_identifier2904 MySQLParser_pure_identifier_return

    MySQLParser_string_literal_return string_literal2906;
    #undef	RETURN_TYPE_string_literal2906
    #define	RETURN_TYPE_string_literal2906 MySQLParser_string_literal_return

    pANTLR3_BASE_TREE IDENTIFIED_SYMBOL2899_tree;
    pANTLR3_BASE_TREE BY_SYMBOL2900_tree;
    pANTLR3_BASE_TREE PASSWORD_SYMBOL2901_tree;
    pANTLR3_BASE_TREE WITH_SYMBOL2903_tree;
    pANTLR3_BASE_TREE AS_SYMBOL2905_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    IDENTIFIED_SYMBOL2899       = NULL;
    BY_SYMBOL2900       = NULL;
    PASSWORD_SYMBOL2901       = NULL;
    WITH_SYMBOL2903       = NULL;
    AS_SYMBOL2905       = NULL;
    user2898.tree = NULL;

    string_literal2902.tree = NULL;

    pure_identifier2904.tree = NULL;

    string_literal2906.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    IDENTIFIED_SYMBOL2899_tree   = NULL;
    BY_SYMBOL2900_tree   = NULL;
    PASSWORD_SYMBOL2901_tree   = NULL;
    WITH_SYMBOL2903_tree   = NULL;
    AS_SYMBOL2905_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2478:19: ( user ( IDENTIFIED_SYMBOL ( BY_SYMBOL ( PASSWORD_SYMBOL )? string_literal | WITH_SYMBOL pure_identifier ( AS_SYMBOL string_literal )? ) )? )
        // MySQL.g:2479:2: user ( IDENTIFIED_SYMBOL ( BY_SYMBOL ( PASSWORD_SYMBOL )? string_literal | WITH_SYMBOL pure_identifier ( AS_SYMBOL string_literal )? ) )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_user_in_user_specification14293);
            user2898=user(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleuser_specificationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user2898.tree);

            // MySQL.g:2480:2: ( IDENTIFIED_SYMBOL ( BY_SYMBOL ( PASSWORD_SYMBOL )? string_literal | WITH_SYMBOL pure_identifier ( AS_SYMBOL string_literal )? ) )?
            {
                int alt811=2;
                switch ( LA(1) )
                {
                    case IDENTIFIED_SYMBOL:
                    	{
                    		alt811=1;
                    	}
                        break;
                }

                switch (alt811)
                {
            	case 1:
            	    // MySQL.g:2481:3: IDENTIFIED_SYMBOL ( BY_SYMBOL ( PASSWORD_SYMBOL )? string_literal | WITH_SYMBOL pure_identifier ( AS_SYMBOL string_literal )? )
            	    {
            	        IDENTIFIED_SYMBOL2899 = (pANTLR3_COMMON_TOKEN) MATCHT(IDENTIFIED_SYMBOL, &FOLLOW_IDENTIFIED_SYMBOL_in_user_specification14300);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleuser_specificationEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        IDENTIFIED_SYMBOL2899_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IDENTIFIED_SYMBOL2899));
            	        ADAPTOR->addChild(ADAPTOR, root_0, IDENTIFIED_SYMBOL2899_tree);
            	        }

            	        // MySQL.g:2482:3: ( BY_SYMBOL ( PASSWORD_SYMBOL )? string_literal | WITH_SYMBOL pure_identifier ( AS_SYMBOL string_literal )? )
            	        {
            	            int alt810=2;
            	            switch ( LA(1) )
            	            {
            	            case BY_SYMBOL:
            	            	{
            	            		alt810=1;
            	            	}
            	                break;
            	            case WITH_SYMBOL:
            	            	{
            	            		alt810=2;
            	            	}
            	                break;

            	            default:
            	                if (BACKTRACKING>0)
            	                {
            	                    FAILEDFLAG = ANTLR3_TRUE;
            	                    return retval;
            	                }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                EXCEPTION->message      = (void *)"";
            	                EXCEPTION->decisionNum  = 810;
            	                EXCEPTION->state        = 0;


            	                goto ruleuser_specificationEx;

            	            }

            	            switch (alt810)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2483:4: BY_SYMBOL ( PASSWORD_SYMBOL )? string_literal
            	        	    {
            	        	        BY_SYMBOL2900 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_user_specification14309);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleuser_specificationEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        BY_SYMBOL2900_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BY_SYMBOL2900));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, BY_SYMBOL2900_tree);
            	        	        }

            	        	        // MySQL.g:2483:14: ( PASSWORD_SYMBOL )?
            	        	        {
            	        	            int alt808=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case PASSWORD_SYMBOL:
            	        	                	{
            	        	                		alt808=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt808)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:2483:14: PASSWORD_SYMBOL
            	        	        	    {
            	        	        	        PASSWORD_SYMBOL2901 = (pANTLR3_COMMON_TOKEN) MATCHT(PASSWORD_SYMBOL, &FOLLOW_PASSWORD_SYMBOL_in_user_specification14311);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruleuser_specificationEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        PASSWORD_SYMBOL2901_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PASSWORD_SYMBOL2901));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, PASSWORD_SYMBOL2901_tree);
            	        	        	        }

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_string_literal_in_user_specification14314);
            	        	        string_literal2902=string_literal(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleuser_specificationEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal2902.tree);

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:2484:6: WITH_SYMBOL pure_identifier ( AS_SYMBOL string_literal )?
            	        	    {
            	        	        WITH_SYMBOL2903 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_user_specification14321);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleuser_specificationEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        WITH_SYMBOL2903_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WITH_SYMBOL2903));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, WITH_SYMBOL2903_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_pure_identifier_in_user_specification14323);
            	        	        pure_identifier2904=pure_identifier(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleuser_specificationEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier2904.tree);

            	        	        // MySQL.g:2484:34: ( AS_SYMBOL string_literal )?
            	        	        {
            	        	            int alt809=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case AS_SYMBOL:
            	        	                	{
            	        	                		alt809=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt809)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:2484:35: AS_SYMBOL string_literal
            	        	        	    {
            	        	        	        AS_SYMBOL2905 = (pANTLR3_COMMON_TOKEN) MATCHT(AS_SYMBOL, &FOLLOW_AS_SYMBOL_in_user_specification14326);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruleuser_specificationEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        AS_SYMBOL2905_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AS_SYMBOL2905));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, AS_SYMBOL2905_tree);
            	        	        	        }

            	        	        	        FOLLOWPUSH(FOLLOW_string_literal_in_user_specification14328);
            	        	        	        string_literal2906=string_literal(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruleuser_specificationEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal2906.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleuser_specificationEx; /* Prevent compiler warnings */
    ruleuser_specificationEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end user_specification */

/**
 * $ANTLR start user
 * MySQL.g:2489:1: user : ( text_or_identifier ( AT_SIGN_SYMBOL text_or_identifier )? | CURRENT_USER_SYMBOL ( parentheses )? );
 */
static MySQLParser_user_return
user(pMySQLParser ctx)
{
    MySQLParser_user_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    AT_SIGN_SYMBOL2908;
    pANTLR3_COMMON_TOKEN    CURRENT_USER_SYMBOL2910;
    MySQLParser_text_or_identifier_return text_or_identifier2907;
    #undef	RETURN_TYPE_text_or_identifier2907
    #define	RETURN_TYPE_text_or_identifier2907 MySQLParser_text_or_identifier_return

    MySQLParser_text_or_identifier_return text_or_identifier2909;
    #undef	RETURN_TYPE_text_or_identifier2909
    #define	RETURN_TYPE_text_or_identifier2909 MySQLParser_text_or_identifier_return

    MySQLParser_parentheses_return parentheses2911;
    #undef	RETURN_TYPE_parentheses2911
    #define	RETURN_TYPE_parentheses2911 MySQLParser_parentheses_return

    pANTLR3_BASE_TREE AT_SIGN_SYMBOL2908_tree;
    pANTLR3_BASE_TREE CURRENT_USER_SYMBOL2910_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    AT_SIGN_SYMBOL2908       = NULL;
    CURRENT_USER_SYMBOL2910       = NULL;
    text_or_identifier2907.tree = NULL;

    text_or_identifier2909.tree = NULL;

    parentheses2911.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    AT_SIGN_SYMBOL2908_tree   = NULL;
    CURRENT_USER_SYMBOL2910_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2489:5: ( text_or_identifier ( AT_SIGN_SYMBOL text_or_identifier )? | CURRENT_USER_SYMBOL ( parentheses )? )

            ANTLR3_UINT32 alt814;

            alt814=2;

            {
                int LA814_0 = LA(1);
                if ( (LA814_0 == NCHAR_TEXT || LA814_0 == SINGLE_QUOTED_TEXT || LA814_0 == UNDERSCORE_CHARSET))
                {
                    alt814=1;
                }
                else if ( ((((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)))||((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))) && (LA814_0 == DOUBLE_QUOTED_TEXT))
                {
                    alt814=1;
                }
                else if ( (((LA814_0 >= ACTION_SYMBOL) && (LA814_0 <= ADDDATE_SYMBOL)) || ((LA814_0 >= AFTER_SYMBOL) && (LA814_0 <= ALGORITHM_SYMBOL)) || LA814_0 == ANALYZE_SYMBOL || ((LA814_0 >= ANY_SYMBOL) && (LA814_0 <= ASCII_SYMBOL)) || ((LA814_0 >= AT_SYMBOL) && (LA814_0 <= BACKUP_SYMBOL)) || LA814_0 == BACK_TICK_QUOTED_ID || LA814_0 == BEGIN_SYMBOL || LA814_0 == BINLOG_SYMBOL || LA814_0 == BIT_SYMBOL || ((LA814_0 >= BLOCK_SYMBOL) && (LA814_0 <= BOOL_SYMBOL)) || ((LA814_0 >= BTREE_SYMBOL) && (LA814_0 <= BYTE_SYMBOL)) || LA814_0 == CACHE_SYMBOL || LA814_0 == CASCADED_SYMBOL || ((LA814_0 >= CATALOG_NAME_SYMBOL) && (LA814_0 <= CHANGED_SYMBOL)) || LA814_0 == CHARSET_SYMBOL || LA814_0 == CHECKSUM_SYMBOL || ((LA814_0 >= CIPHER_SYMBOL) && (LA814_0 <= CLIENT_SYMBOL)) || ((LA814_0 >= CLOSE_SYMBOL) && (LA814_0 <= CODE_SYMBOL)) || LA814_0 == COLLATION_SYMBOL || ((LA814_0 >= COLUMNS_SYMBOL) && (LA814_0 <= COLUMN_NAME_SYMBOL)) || ((LA814_0 >= COMMENT_SYMBOL) && (LA814_0 <= COMPRESSED_SYMBOL)) || LA814_0 == CONCURRENT_SYMBOL || ((LA814_0 >= CONNECTION_SYMBOL) && (LA814_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA814_0 >= CONTAINS_SYMBOL) && (LA814_0 <= CONTEXT_SYMBOL)) || LA814_0 == CONTRIBUTORS_SYMBOL || LA814_0 == CPU_SYMBOL || LA814_0 == CUBE_SYMBOL || LA814_0 == CURRENT_SYMBOL || LA814_0 == CURSOR_NAME_SYMBOL || ((LA814_0 >= DATAFILE_SYMBOL) && (LA814_0 <= DATETIME_SYMBOL)) || LA814_0 == DATE_SYMBOL || ((LA814_0 >= DAY_SYMBOL) && (LA814_0 <= DEALLOCATE_SYMBOL)) || LA814_0 == DEFAULT_AUTH_SYMBOL || LA814_0 == DEFINER_SYMBOL || LA814_0 == DELAY_KEY_WRITE_SYMBOL || LA814_0 == DES_KEY_FILE_SYMBOL || LA814_0 == DIAGNOSTICS_SYMBOL || ((LA814_0 >= DIRECTORY_SYMBOL) && (LA814_0 <= DISK_SYMBOL)) || LA814_0 == DO_SYMBOL || ((LA814_0 >= DUMPFILE_SYMBOL) && (LA814_0 <= DYNAMIC_SYMBOL)) || LA814_0 == ENABLE_SYMBOL || LA814_0 == ENDS_SYMBOL || ((LA814_0 >= END_SYMBOL) && (LA814_0 <= ENUM_SYMBOL)) || ((LA814_0 >= ERRORS_SYMBOL) && (LA814_0 <= ERROR_SYMBOL)) || ((LA814_0 >= ESCAPE_SYMBOL) && (LA814_0 <= EVERY_SYMBOL)) || LA814_0 == EXECUTE_SYMBOL || LA814_0 == EXPANSION_SYMBOL || LA814_0 == EXPORT_SYMBOL || ((LA814_0 >= EXTENDED_SYMBOL) && (LA814_0 <= EXTENT_SIZE_SYMBOL)) || ((LA814_0 >= FAST_SYMBOL) && (LA814_0 <= FAULTS_SYMBOL)) || ((LA814_0 >= FILE_SYMBOL) && (LA814_0 <= FIXED_SYMBOL)) || LA814_0 == FLUSH_SYMBOL || LA814_0 == FORMAT_SYMBOL || LA814_0 == FOUND_SYMBOL || LA814_0 == FULL_SYMBOL || ((LA814_0 >= FUNCTION_SYMBOL) && (LA814_0 <= GET_FORMAT_SYMBOL)) || ((LA814_0 >= GLOBAL_SYMBOL) && (LA814_0 <= GRANTS_SYMBOL)) || ((LA814_0 >= HANDLER_SYMBOL) && (LA814_0 <= HASH_SYMBOL)) || LA814_0 == HELP_SYMBOL || ((LA814_0 >= HOSTS_SYMBOL) && (LA814_0 <= HOST_SYMBOL)) || ((LA814_0 >= HOUR_SYMBOL) && (LA814_0 <= IDENTIFIER)) || LA814_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA814_0 >= IMPORT_SYMBOL) && (LA814_0 <= INDEXES_SYMBOL)) || LA814_0 == INITIAL_SIZE_SYMBOL || LA814_0 == INNODB_SYMBOL || LA814_0 == INSERT_METHOD_SYMBOL || LA814_0 == INSTALL_SYMBOL || LA814_0 == INVOKER_SYMBOL || LA814_0 == IO_SYMBOL || ((LA814_0 >= IPC_SYMBOL) && (LA814_0 <= ISSUER_SYMBOL)) || LA814_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA814_0 >= LANGUAGE_SYMBOL) && (LA814_0 <= LAST_SYMBOL)) || LA814_0 == LEAVES_SYMBOL || LA814_0 == LESS_SYMBOL || LA814_0 == LEVEL_SYMBOL || LA814_0 == LINESTRING_SYMBOL || LA814_0 == LIST_SYMBOL || LA814_0 == LOCAL_SYMBOL || LA814_0 == LOCKS_SYMBOL || LA814_0 == LOGFILE_SYMBOL || LA814_0 == LOGS_SYMBOL || LA814_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA814_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA814_0 <= MASTER_SSL_SYMBOL)) || ((LA814_0 >= MASTER_SYMBOL) && (LA814_0 <= MASTER_USER_SYMBOL)) || ((LA814_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA814_0 <= MAX_SIZE_SYMBOL)) || ((LA814_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA814_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA814_0 >= MEDIUM_SYMBOL) && (LA814_0 <= MICROSECOND_SYMBOL)) || LA814_0 == MIGRATE_SYMBOL || ((LA814_0 >= MINUTE_SYMBOL) && (LA814_0 <= MIN_ROWS_SYMBOL)) || LA814_0 == MODE_SYMBOL || LA814_0 == MODIFY_SYMBOL || ((LA814_0 >= MONTH_SYMBOL) && (LA814_0 <= MULTILINESTRING_SYMBOL)) || ((LA814_0 >= MULTIPOINT_SYMBOL) && (LA814_0 <= MULTIPOLYGON_SYMBOL)) || ((LA814_0 >= MUTEX_SYMBOL) && (LA814_0 <= NATIONAL_SYMBOL)) || LA814_0 == NCHAR_SYMBOL || LA814_0 == NDBCLUSTER_SYMBOL || ((LA814_0 >= NEW_SYMBOL) && (LA814_0 <= NONE_SYMBOL)) || ((LA814_0 >= NO_SYMBOL) && (LA814_0 <= NO_WAIT_SYMBOL)) || LA814_0 == NUMBER_SYMBOL || LA814_0 == NVARCHAR_SYMBOL || ((LA814_0 >= OFFSET_SYMBOL) && (LA814_0 <= ONE_SYMBOL)) || LA814_0 == OPEN_SYMBOL || LA814_0 == OPTIONS_SYMBOL || ((LA814_0 >= OWNER_SYMBOL) && (LA814_0 <= PAGE_SYMBOL)) || ((LA814_0 >= PARSER_SYMBOL) && (LA814_0 <= PARTITION_SYMBOL)) || ((LA814_0 >= PASSWORD_SYMBOL) && (LA814_0 <= PLUGIN_SYMBOL)) || ((LA814_0 >= POINT_SYMBOL) && (LA814_0 <= PORT_SYMBOL)) || ((LA814_0 >= PREPARE_SYMBOL) && (LA814_0 <= PREV_SYMBOL)) || LA814_0 == PRIVILEGES_SYMBOL || ((LA814_0 >= PROCESSLIST_SYMBOL) && (LA814_0 <= PROXY_SYMBOL)) || ((LA814_0 >= QUARTER_SYMBOL) && (LA814_0 <= QUICK_SYMBOL)) || LA814_0 == READ_ONLY_SYMBOL || ((LA814_0 >= REBUILD_SYMBOL) && (LA814_0 <= REDUNDANT_SYMBOL)) || ((LA814_0 >= RELAYLOG_SYMBOL) && (LA814_0 <= RELAY_THREAD_SYMBOL)) || ((LA814_0 >= RELOAD_SYMBOL) && (LA814_0 <= REMOVE_SYMBOL)) || ((LA814_0 >= REORGANIZE_SYMBOL) && (LA814_0 <= REPEATABLE_SYMBOL)) || LA814_0 == REPLICATION_SYMBOL || LA814_0 == RESET_SYMBOL || LA814_0 == RESTORE_SYMBOL || ((LA814_0 >= RESUME_SYMBOL) && (LA814_0 <= RETURNS_SYMBOL)) || LA814_0 == REVERSE_SYMBOL || ((LA814_0 >= ROLLBACK_SYMBOL) && (LA814_0 <= SCHEDULE_SYMBOL)) || LA814_0 == SCHEMA_NAME_SYMBOL || ((LA814_0 >= SECOND_SYMBOL) && (LA814_0 <= SECURITY_SYMBOL)) || ((LA814_0 >= SERIALIZABLE_SYMBOL) && (LA814_0 <= SERIAL_SYMBOL)) || ((LA814_0 >= SERVER_SYMBOL) && (LA814_0 <= SESSION_SYMBOL)) || LA814_0 == SHARE_SYMBOL || LA814_0 == SHUTDOWN_SYMBOL || ((LA814_0 >= SIGNED_SYMBOL) && (LA814_0 <= SIMPLE_SYMBOL)) || ((LA814_0 >= SLAVE_SYMBOL) && (LA814_0 <= SLOW_SYMBOL)) || ((LA814_0 >= SNAPSHOT_SYMBOL) && (LA814_0 <= SOURCE_SYMBOL)) || ((LA814_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA814_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA814_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA814_0 <= SQL_CACHE_SYMBOL)) || LA814_0 == SQL_NO_CACHE_SYMBOL || LA814_0 == SQL_THREAD_SYMBOL || ((LA814_0 >= STARTS_SYMBOL) && (LA814_0 <= STATUS_SYMBOL)) || ((LA814_0 >= STOP_SYMBOL) && (LA814_0 <= STORAGE_SYMBOL)) || ((LA814_0 >= STRING_SYMBOL) && (LA814_0 <= SUBPARTITION_SYMBOL)) || ((LA814_0 >= SUPER_SYMBOL) && (LA814_0 <= SWITCHES_SYMBOL)) || ((LA814_0 >= TABLESPACE_SYMBOL) && (LA814_0 <= TABLE_NAME_SYMBOL)) || ((LA814_0 >= TEMPORARY_SYMBOL) && (LA814_0 <= TEMPTABLE_SYMBOL)) || ((LA814_0 >= TEXT_SYMBOL) && (LA814_0 <= THAN_SYMBOL)) || ((LA814_0 >= TIMESTAMP_ADD_SYMBOL) && (LA814_0 <= TIME_SYMBOL)) || ((LA814_0 >= TRANSACTION_SYMBOL) && (LA814_0 <= TRIGGERS_SYMBOL)) || ((LA814_0 >= TRUNCATE_SYMBOL) && (LA814_0 <= UDF_RETURNS_SYMBOL)) || ((LA814_0 >= UNCOMMITTED_SYMBOL) && (LA814_0 <= UNDEFINED_SYMBOL)) || ((LA814_0 >= UNDOFILE_SYMBOL) && (LA814_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA814_0 >= UNICODE_SYMBOL) && (LA814_0 <= UNINSTALL_SYMBOL)) || LA814_0 == UNKNOWN_SYMBOL || LA814_0 == UNTIL_SYMBOL || LA814_0 == UPGRADE_SYMBOL || ((LA814_0 >= USER_RESOURCES_SYMBOL) && (LA814_0 <= USE_FRM_SYMBOL)) || LA814_0 == VALUE_SYMBOL || LA814_0 == VARIABLES_SYMBOL || ((LA814_0 >= VIEW_SYMBOL) && (LA814_0 <= WEIGHT_STRING_SYMBOL)) || ((LA814_0 >= WORK_SYMBOL) && (LA814_0 <= WRAPPER_SYMBOL)) || LA814_0 == X509_SYMBOL || ((LA814_0 >= XA_SYMBOL) && (LA814_0 <= XML_SYMBOL)) || LA814_0 == YEAR_SYMBOL))
                {
                    alt814=1;
                }
                else if ( (LA814_0 == CURRENT_USER_SYMBOL))
                {
                    alt814=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 814;
                    EXCEPTION->state        = 0;


                    goto ruleuserEx;

                }
            }
            switch (alt814)
            {
        	case 1:
        	    // MySQL.g:2490:2: text_or_identifier ( AT_SIGN_SYMBOL text_or_identifier )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_text_or_identifier_in_user14347);
        	        text_or_identifier2907=text_or_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleuserEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_identifier2907.tree);

        	        // MySQL.g:2490:21: ( AT_SIGN_SYMBOL text_or_identifier )?
        	        {
        	            int alt812=2;
        	            switch ( LA(1) )
        	            {
        	                case AT_SIGN_SYMBOL:
        	                	{
        	                		alt812=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt812)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2490:22: AT_SIGN_SYMBOL text_or_identifier
        	        	    {
        	        	        AT_SIGN_SYMBOL2908 = (pANTLR3_COMMON_TOKEN) MATCHT(AT_SIGN_SYMBOL, &FOLLOW_AT_SIGN_SYMBOL_in_user14350);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleuserEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        AT_SIGN_SYMBOL2908_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AT_SIGN_SYMBOL2908));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, AT_SIGN_SYMBOL2908_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_text_or_identifier_in_user14352);
        	        	        text_or_identifier2909=text_or_identifier(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleuserEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_identifier2909.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2491:4: CURRENT_USER_SYMBOL ( parentheses )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CURRENT_USER_SYMBOL2910 = (pANTLR3_COMMON_TOKEN) MATCHT(CURRENT_USER_SYMBOL, &FOLLOW_CURRENT_USER_SYMBOL_in_user14359);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleuserEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CURRENT_USER_SYMBOL2910_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CURRENT_USER_SYMBOL2910));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CURRENT_USER_SYMBOL2910_tree);
        	        }

        	        // MySQL.g:2491:24: ( parentheses )?
        	        {
        	            int alt813=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt813=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt813)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2491:24: parentheses
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_parentheses_in_user14361);
        	        	        parentheses2911=parentheses(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleuserEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, parentheses2911.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleuserEx; /* Prevent compiler warnings */
    ruleuserEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end user */

/**
 * $ANTLR start like_clause
 * MySQL.g:2494:1: like_clause : LIKE_SYMBOL text_or_param_marker ;
 */
static MySQLParser_like_clause_return
like_clause(pMySQLParser ctx)
{
    MySQLParser_like_clause_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    LIKE_SYMBOL2912;
    MySQLParser_text_or_param_marker_return text_or_param_marker2913;
    #undef	RETURN_TYPE_text_or_param_marker2913
    #define	RETURN_TYPE_text_or_param_marker2913 MySQLParser_text_or_param_marker_return

    pANTLR3_BASE_TREE LIKE_SYMBOL2912_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    LIKE_SYMBOL2912       = NULL;
    text_or_param_marker2913.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    LIKE_SYMBOL2912_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2494:12: ( LIKE_SYMBOL text_or_param_marker )
        // MySQL.g:2495:2: LIKE_SYMBOL text_or_param_marker
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            LIKE_SYMBOL2912 = (pANTLR3_COMMON_TOKEN) MATCHT(LIKE_SYMBOL, &FOLLOW_LIKE_SYMBOL_in_like_clause14371);
            if  (HASEXCEPTION())
            {
                goto rulelike_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            LIKE_SYMBOL2912_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LIKE_SYMBOL2912));
            ADAPTOR->addChild(ADAPTOR, root_0, LIKE_SYMBOL2912_tree);
            }

            FOLLOWPUSH(FOLLOW_text_or_param_marker_in_like_clause14373);
            text_or_param_marker2913=text_or_param_marker(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulelike_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_param_marker2913.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto rulelike_clauseEx; /* Prevent compiler warnings */
    rulelike_clauseEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end like_clause */

/**
 * $ANTLR start like_or_where
 * MySQL.g:2498:1: like_or_where : ( like_clause | where_clause );
 */
static MySQLParser_like_or_where_return
like_or_where(pMySQLParser ctx)
{
    MySQLParser_like_or_where_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_like_clause_return like_clause2914;
    #undef	RETURN_TYPE_like_clause2914
    #define	RETURN_TYPE_like_clause2914 MySQLParser_like_clause_return

    MySQLParser_where_clause_return where_clause2915;
    #undef	RETURN_TYPE_where_clause2915
    #define	RETURN_TYPE_where_clause2915 MySQLParser_where_clause_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    like_clause2914.tree = NULL;

    where_clause2915.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2498:14: ( like_clause | where_clause )

            ANTLR3_UINT32 alt815;

            alt815=2;

            switch ( LA(1) )
            {
            case LIKE_SYMBOL:
            	{
            		alt815=1;
            	}
                break;
            case WHERE_SYMBOL:
            	{
            		alt815=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 815;
                EXCEPTION->state        = 0;


                goto rulelike_or_whereEx;

            }

            switch (alt815)
            {
        	case 1:
        	    // MySQL.g:2499:2: like_clause
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_like_clause_in_like_or_where14382);
        	        like_clause2914=like_clause(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelike_or_whereEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, like_clause2914.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2499:16: where_clause
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_where_clause_in_like_or_where14386);
        	        where_clause2915=where_clause(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelike_or_whereEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, where_clause2915.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulelike_or_whereEx; /* Prevent compiler warnings */
    rulelike_or_whereEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end like_or_where */

/**
 * $ANTLR start online_option
 * MySQL.g:2502:1: online_option :{...}? => ( ONLINE_SYMBOL | OFFLINE_SYMBOL ) ;
 */
static MySQLParser_online_option_return
online_option(pMySQLParser ctx)
{
    MySQLParser_online_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set2916;

    pANTLR3_BASE_TREE set2916_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2916       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2916_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2502:14: ({...}? => ( ONLINE_SYMBOL | OFFLINE_SYMBOL ) )
        // MySQL.g:2503:2: {...}? => ( ONLINE_SYMBOL | OFFLINE_SYMBOL )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            if ( !((SERVER_VERSION < 50600)) )
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
                    EXCEPTION->message      = (void *)"SERVER_VERSION < 50600";
                    EXCEPTION->ruleName	 = (void *)"online_option";


            }

            set2916=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == OFFLINE_SYMBOL || LA(1) == ONLINE_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2916))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto ruleonline_optionEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto ruleonline_optionEx; /* Prevent compiler warnings */
    ruleonline_optionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end online_option */

/**
 * $ANTLR start no_write_to_bin_log
 * MySQL.g:2506:1: no_write_to_bin_log : ( NO_WRITE_TO_BINLOG_SYMBOL |{...}? LOCAL_SYMBOL );
 */
static MySQLParser_no_write_to_bin_log_return
no_write_to_bin_log(pMySQLParser ctx)
{
    MySQLParser_no_write_to_bin_log_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    NO_WRITE_TO_BINLOG_SYMBOL2917;
    pANTLR3_COMMON_TOKEN    LOCAL_SYMBOL2918;

    pANTLR3_BASE_TREE NO_WRITE_TO_BINLOG_SYMBOL2917_tree;
    pANTLR3_BASE_TREE LOCAL_SYMBOL2918_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    NO_WRITE_TO_BINLOG_SYMBOL2917       = NULL;
    LOCAL_SYMBOL2918       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    NO_WRITE_TO_BINLOG_SYMBOL2917_tree   = NULL;
    LOCAL_SYMBOL2918_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2506:20: ( NO_WRITE_TO_BINLOG_SYMBOL |{...}? LOCAL_SYMBOL )

            ANTLR3_UINT32 alt816;

            alt816=2;

            switch ( LA(1) )
            {
            case NO_WRITE_TO_BINLOG_SYMBOL:
            	{
            		alt816=1;
            	}
                break;
            case LOCAL_SYMBOL:
            	{
            		alt816=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 816;
                EXCEPTION->state        = 0;


                goto ruleno_write_to_bin_logEx;

            }

            switch (alt816)
            {
        	case 1:
        	    // MySQL.g:2507:2: NO_WRITE_TO_BINLOG_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NO_WRITE_TO_BINLOG_SYMBOL2917 = (pANTLR3_COMMON_TOKEN) MATCHT(NO_WRITE_TO_BINLOG_SYMBOL, &FOLLOW_NO_WRITE_TO_BINLOG_SYMBOL_in_no_write_to_bin_log14414);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleno_write_to_bin_logEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NO_WRITE_TO_BINLOG_SYMBOL2917_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NO_WRITE_TO_BINLOG_SYMBOL2917));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NO_WRITE_TO_BINLOG_SYMBOL2917_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2508:4: {...}? LOCAL_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((LA(1) == LOCAL_SYMBOL)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"LA(1) == LOCAL_SYMBOL";
        	                EXCEPTION->ruleName	 = (void *)"no_write_to_bin_log";


        	        }

        	        LOCAL_SYMBOL2918 = (pANTLR3_COMMON_TOKEN) MATCHT(LOCAL_SYMBOL, &FOLLOW_LOCAL_SYMBOL_in_no_write_to_bin_log14421);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleno_write_to_bin_logEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LOCAL_SYMBOL2918_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOCAL_SYMBOL2918));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LOCAL_SYMBOL2918_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleno_write_to_bin_logEx; /* Prevent compiler warnings */
    ruleno_write_to_bin_logEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end no_write_to_bin_log */

/**
 * $ANTLR start pure_identifier
 * MySQL.g:2514:1: pure_identifier : ( IDENTIFIER | BACK_TICK_QUOTED_ID |{...}? => DOUBLE_QUOTED_TEXT );
 */
static MySQLParser_pure_identifier_return
pure_identifier(pMySQLParser ctx)
{
    MySQLParser_pure_identifier_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    IDENTIFIER2919;
    pANTLR3_COMMON_TOKEN    BACK_TICK_QUOTED_ID2920;
    pANTLR3_COMMON_TOKEN    DOUBLE_QUOTED_TEXT2921;

    pANTLR3_BASE_TREE IDENTIFIER2919_tree;
    pANTLR3_BASE_TREE BACK_TICK_QUOTED_ID2920_tree;
    pANTLR3_BASE_TREE DOUBLE_QUOTED_TEXT2921_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    IDENTIFIER2919       = NULL;
    BACK_TICK_QUOTED_ID2920       = NULL;
    DOUBLE_QUOTED_TEXT2921       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    IDENTIFIER2919_tree   = NULL;
    BACK_TICK_QUOTED_ID2920_tree   = NULL;
    DOUBLE_QUOTED_TEXT2921_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2514:16: ( IDENTIFIER | BACK_TICK_QUOTED_ID |{...}? => DOUBLE_QUOTED_TEXT )

            ANTLR3_UINT32 alt817;

            alt817=3;

            {
                int LA817_0 = LA(1);
                if ( (LA817_0 == IDENTIFIER))
                {
                    alt817=1;
                }
                else if ( (LA817_0 == BACK_TICK_QUOTED_ID))
                {
                    alt817=2;
                }
                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA817_0 == DOUBLE_QUOTED_TEXT))
                {
                    alt817=3;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 817;
                    EXCEPTION->state        = 0;


                    goto rulepure_identifierEx;

                }
            }
            switch (alt817)
            {
        	case 1:
        	    // MySQL.g:2515:2: IDENTIFIER
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        IDENTIFIER2919 = (pANTLR3_COMMON_TOKEN) MATCHT(IDENTIFIER, &FOLLOW_IDENTIFIER_in_pure_identifier14434);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulepure_identifierEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        IDENTIFIER2919_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IDENTIFIER2919));
        	        ADAPTOR->addChild(ADAPTOR, root_0, IDENTIFIER2919_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2516:4: BACK_TICK_QUOTED_ID
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BACK_TICK_QUOTED_ID2920 = (pANTLR3_COMMON_TOKEN) MATCHT(BACK_TICK_QUOTED_ID, &FOLLOW_BACK_TICK_QUOTED_ID_in_pure_identifier14439);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulepure_identifierEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BACK_TICK_QUOTED_ID2920_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BACK_TICK_QUOTED_ID2920));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BACK_TICK_QUOTED_ID2920_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2517:4: {...}? => DOUBLE_QUOTED_TEXT
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)";
        	                EXCEPTION->ruleName	 = (void *)"pure_identifier";


        	        }

        	        DOUBLE_QUOTED_TEXT2921 = (pANTLR3_COMMON_TOKEN) MATCHT(DOUBLE_QUOTED_TEXT, &FOLLOW_DOUBLE_QUOTED_TEXT_in_pure_identifier14448);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulepure_identifierEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DOUBLE_QUOTED_TEXT2921_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOUBLE_QUOTED_TEXT2921));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DOUBLE_QUOTED_TEXT2921_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulepure_identifierEx; /* Prevent compiler warnings */
    rulepure_identifierEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end pure_identifier */

/**
 * $ANTLR start identifier
 * MySQL.g:2521:1: identifier : ( pure_identifier | keyword );
 */
static MySQLParser_identifier_return
identifier(pMySQLParser ctx)
{
    MySQLParser_identifier_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_pure_identifier_return pure_identifier2922;
    #undef	RETURN_TYPE_pure_identifier2922
    #define	RETURN_TYPE_pure_identifier2922 MySQLParser_pure_identifier_return

    MySQLParser_keyword_return keyword2923;
    #undef	RETURN_TYPE_keyword2923
    #define	RETURN_TYPE_keyword2923 MySQLParser_keyword_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    pure_identifier2922.tree = NULL;

    keyword2923.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2521:11: ( pure_identifier | keyword )

            ANTLR3_UINT32 alt818;

            alt818=2;

            {
                int LA818_0 = LA(1);
                if ( (LA818_0 == BACK_TICK_QUOTED_ID || LA818_0 == IDENTIFIER))
                {
                    alt818=1;
                }
                else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA818_0 == DOUBLE_QUOTED_TEXT))
                {
                    alt818=1;
                }
                else if ( (((LA818_0 >= ACTION_SYMBOL) && (LA818_0 <= ADDDATE_SYMBOL)) || ((LA818_0 >= AFTER_SYMBOL) && (LA818_0 <= ALGORITHM_SYMBOL)) || LA818_0 == ANALYZE_SYMBOL || ((LA818_0 >= ANY_SYMBOL) && (LA818_0 <= ASCII_SYMBOL)) || ((LA818_0 >= AT_SYMBOL) && (LA818_0 <= BACKUP_SYMBOL)) || LA818_0 == BEGIN_SYMBOL || LA818_0 == BINLOG_SYMBOL || LA818_0 == BIT_SYMBOL || ((LA818_0 >= BLOCK_SYMBOL) && (LA818_0 <= BOOL_SYMBOL)) || ((LA818_0 >= BTREE_SYMBOL) && (LA818_0 <= BYTE_SYMBOL)) || LA818_0 == CACHE_SYMBOL || LA818_0 == CASCADED_SYMBOL || ((LA818_0 >= CATALOG_NAME_SYMBOL) && (LA818_0 <= CHANGED_SYMBOL)) || LA818_0 == CHARSET_SYMBOL || LA818_0 == CHECKSUM_SYMBOL || ((LA818_0 >= CIPHER_SYMBOL) && (LA818_0 <= CLIENT_SYMBOL)) || ((LA818_0 >= CLOSE_SYMBOL) && (LA818_0 <= CODE_SYMBOL)) || LA818_0 == COLLATION_SYMBOL || ((LA818_0 >= COLUMNS_SYMBOL) && (LA818_0 <= COLUMN_NAME_SYMBOL)) || ((LA818_0 >= COMMENT_SYMBOL) && (LA818_0 <= COMPRESSED_SYMBOL)) || LA818_0 == CONCURRENT_SYMBOL || ((LA818_0 >= CONNECTION_SYMBOL) && (LA818_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA818_0 >= CONTAINS_SYMBOL) && (LA818_0 <= CONTEXT_SYMBOL)) || LA818_0 == CONTRIBUTORS_SYMBOL || LA818_0 == CPU_SYMBOL || LA818_0 == CUBE_SYMBOL || LA818_0 == CURRENT_SYMBOL || LA818_0 == CURSOR_NAME_SYMBOL || ((LA818_0 >= DATAFILE_SYMBOL) && (LA818_0 <= DATETIME_SYMBOL)) || LA818_0 == DATE_SYMBOL || ((LA818_0 >= DAY_SYMBOL) && (LA818_0 <= DEALLOCATE_SYMBOL)) || LA818_0 == DEFAULT_AUTH_SYMBOL || LA818_0 == DEFINER_SYMBOL || LA818_0 == DELAY_KEY_WRITE_SYMBOL || LA818_0 == DES_KEY_FILE_SYMBOL || LA818_0 == DIAGNOSTICS_SYMBOL || ((LA818_0 >= DIRECTORY_SYMBOL) && (LA818_0 <= DISK_SYMBOL)) || LA818_0 == DO_SYMBOL || ((LA818_0 >= DUMPFILE_SYMBOL) && (LA818_0 <= DYNAMIC_SYMBOL)) || LA818_0 == ENABLE_SYMBOL || LA818_0 == ENDS_SYMBOL || ((LA818_0 >= END_SYMBOL) && (LA818_0 <= ENUM_SYMBOL)) || ((LA818_0 >= ERRORS_SYMBOL) && (LA818_0 <= ERROR_SYMBOL)) || ((LA818_0 >= ESCAPE_SYMBOL) && (LA818_0 <= EVERY_SYMBOL)) || LA818_0 == EXECUTE_SYMBOL || LA818_0 == EXPANSION_SYMBOL || LA818_0 == EXPORT_SYMBOL || ((LA818_0 >= EXTENDED_SYMBOL) && (LA818_0 <= EXTENT_SIZE_SYMBOL)) || ((LA818_0 >= FAST_SYMBOL) && (LA818_0 <= FAULTS_SYMBOL)) || ((LA818_0 >= FILE_SYMBOL) && (LA818_0 <= FIXED_SYMBOL)) || LA818_0 == FLUSH_SYMBOL || LA818_0 == FORMAT_SYMBOL || LA818_0 == FOUND_SYMBOL || LA818_0 == FULL_SYMBOL || ((LA818_0 >= FUNCTION_SYMBOL) && (LA818_0 <= GET_FORMAT_SYMBOL)) || ((LA818_0 >= GLOBAL_SYMBOL) && (LA818_0 <= GRANTS_SYMBOL)) || ((LA818_0 >= HANDLER_SYMBOL) && (LA818_0 <= HASH_SYMBOL)) || LA818_0 == HELP_SYMBOL || ((LA818_0 >= HOSTS_SYMBOL) && (LA818_0 <= HOST_SYMBOL)) || ((LA818_0 >= HOUR_SYMBOL) && (LA818_0 <= IDENTIFIED_SYMBOL)) || LA818_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA818_0 >= IMPORT_SYMBOL) && (LA818_0 <= INDEXES_SYMBOL)) || LA818_0 == INITIAL_SIZE_SYMBOL || LA818_0 == INNODB_SYMBOL || LA818_0 == INSERT_METHOD_SYMBOL || LA818_0 == INSTALL_SYMBOL || LA818_0 == INVOKER_SYMBOL || LA818_0 == IO_SYMBOL || ((LA818_0 >= IPC_SYMBOL) && (LA818_0 <= ISSUER_SYMBOL)) || LA818_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA818_0 >= LANGUAGE_SYMBOL) && (LA818_0 <= LAST_SYMBOL)) || LA818_0 == LEAVES_SYMBOL || LA818_0 == LESS_SYMBOL || LA818_0 == LEVEL_SYMBOL || LA818_0 == LINESTRING_SYMBOL || LA818_0 == LIST_SYMBOL || LA818_0 == LOCAL_SYMBOL || LA818_0 == LOCKS_SYMBOL || LA818_0 == LOGFILE_SYMBOL || LA818_0 == LOGS_SYMBOL || LA818_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA818_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA818_0 <= MASTER_SSL_SYMBOL)) || ((LA818_0 >= MASTER_SYMBOL) && (LA818_0 <= MASTER_USER_SYMBOL)) || ((LA818_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA818_0 <= MAX_SIZE_SYMBOL)) || ((LA818_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA818_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA818_0 >= MEDIUM_SYMBOL) && (LA818_0 <= MICROSECOND_SYMBOL)) || LA818_0 == MIGRATE_SYMBOL || ((LA818_0 >= MINUTE_SYMBOL) && (LA818_0 <= MIN_ROWS_SYMBOL)) || LA818_0 == MODE_SYMBOL || LA818_0 == MODIFY_SYMBOL || ((LA818_0 >= MONTH_SYMBOL) && (LA818_0 <= MULTILINESTRING_SYMBOL)) || ((LA818_0 >= MULTIPOINT_SYMBOL) && (LA818_0 <= MULTIPOLYGON_SYMBOL)) || ((LA818_0 >= MUTEX_SYMBOL) && (LA818_0 <= NATIONAL_SYMBOL)) || LA818_0 == NCHAR_SYMBOL || LA818_0 == NDBCLUSTER_SYMBOL || ((LA818_0 >= NEW_SYMBOL) && (LA818_0 <= NONE_SYMBOL)) || ((LA818_0 >= NO_SYMBOL) && (LA818_0 <= NO_WAIT_SYMBOL)) || LA818_0 == NUMBER_SYMBOL || LA818_0 == NVARCHAR_SYMBOL || ((LA818_0 >= OFFSET_SYMBOL) && (LA818_0 <= ONE_SYMBOL)) || LA818_0 == OPEN_SYMBOL || LA818_0 == OPTIONS_SYMBOL || ((LA818_0 >= OWNER_SYMBOL) && (LA818_0 <= PAGE_SYMBOL)) || ((LA818_0 >= PARSER_SYMBOL) && (LA818_0 <= PARTITION_SYMBOL)) || ((LA818_0 >= PASSWORD_SYMBOL) && (LA818_0 <= PLUGIN_SYMBOL)) || ((LA818_0 >= POINT_SYMBOL) && (LA818_0 <= PORT_SYMBOL)) || ((LA818_0 >= PREPARE_SYMBOL) && (LA818_0 <= PREV_SYMBOL)) || LA818_0 == PRIVILEGES_SYMBOL || ((LA818_0 >= PROCESSLIST_SYMBOL) && (LA818_0 <= PROXY_SYMBOL)) || ((LA818_0 >= QUARTER_SYMBOL) && (LA818_0 <= QUICK_SYMBOL)) || LA818_0 == READ_ONLY_SYMBOL || ((LA818_0 >= REBUILD_SYMBOL) && (LA818_0 <= REDUNDANT_SYMBOL)) || ((LA818_0 >= RELAYLOG_SYMBOL) && (LA818_0 <= RELAY_THREAD_SYMBOL)) || ((LA818_0 >= RELOAD_SYMBOL) && (LA818_0 <= REMOVE_SYMBOL)) || ((LA818_0 >= REORGANIZE_SYMBOL) && (LA818_0 <= REPEATABLE_SYMBOL)) || LA818_0 == REPLICATION_SYMBOL || LA818_0 == RESET_SYMBOL || LA818_0 == RESTORE_SYMBOL || ((LA818_0 >= RESUME_SYMBOL) && (LA818_0 <= RETURNS_SYMBOL)) || LA818_0 == REVERSE_SYMBOL || ((LA818_0 >= ROLLBACK_SYMBOL) && (LA818_0 <= SCHEDULE_SYMBOL)) || LA818_0 == SCHEMA_NAME_SYMBOL || ((LA818_0 >= SECOND_SYMBOL) && (LA818_0 <= SECURITY_SYMBOL)) || ((LA818_0 >= SERIALIZABLE_SYMBOL) && (LA818_0 <= SERIAL_SYMBOL)) || ((LA818_0 >= SERVER_SYMBOL) && (LA818_0 <= SESSION_SYMBOL)) || LA818_0 == SHARE_SYMBOL || LA818_0 == SHUTDOWN_SYMBOL || ((LA818_0 >= SIGNED_SYMBOL) && (LA818_0 <= SIMPLE_SYMBOL)) || ((LA818_0 >= SLAVE_SYMBOL) && (LA818_0 <= SLOW_SYMBOL)) || ((LA818_0 >= SNAPSHOT_SYMBOL) && (LA818_0 <= SOURCE_SYMBOL)) || ((LA818_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA818_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA818_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA818_0 <= SQL_CACHE_SYMBOL)) || LA818_0 == SQL_NO_CACHE_SYMBOL || LA818_0 == SQL_THREAD_SYMBOL || ((LA818_0 >= STARTS_SYMBOL) && (LA818_0 <= STATUS_SYMBOL)) || ((LA818_0 >= STOP_SYMBOL) && (LA818_0 <= STORAGE_SYMBOL)) || ((LA818_0 >= STRING_SYMBOL) && (LA818_0 <= SUBPARTITION_SYMBOL)) || ((LA818_0 >= SUPER_SYMBOL) && (LA818_0 <= SWITCHES_SYMBOL)) || ((LA818_0 >= TABLESPACE_SYMBOL) && (LA818_0 <= TABLE_NAME_SYMBOL)) || ((LA818_0 >= TEMPORARY_SYMBOL) && (LA818_0 <= TEMPTABLE_SYMBOL)) || ((LA818_0 >= TEXT_SYMBOL) && (LA818_0 <= THAN_SYMBOL)) || ((LA818_0 >= TIMESTAMP_ADD_SYMBOL) && (LA818_0 <= TIME_SYMBOL)) || ((LA818_0 >= TRANSACTION_SYMBOL) && (LA818_0 <= TRIGGERS_SYMBOL)) || ((LA818_0 >= TRUNCATE_SYMBOL) && (LA818_0 <= UDF_RETURNS_SYMBOL)) || ((LA818_0 >= UNCOMMITTED_SYMBOL) && (LA818_0 <= UNDEFINED_SYMBOL)) || ((LA818_0 >= UNDOFILE_SYMBOL) && (LA818_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA818_0 >= UNICODE_SYMBOL) && (LA818_0 <= UNINSTALL_SYMBOL)) || LA818_0 == UNKNOWN_SYMBOL || LA818_0 == UNTIL_SYMBOL || LA818_0 == UPGRADE_SYMBOL || ((LA818_0 >= USER_RESOURCES_SYMBOL) && (LA818_0 <= USE_FRM_SYMBOL)) || LA818_0 == VALUE_SYMBOL || LA818_0 == VARIABLES_SYMBOL || ((LA818_0 >= VIEW_SYMBOL) && (LA818_0 <= WEIGHT_STRING_SYMBOL)) || ((LA818_0 >= WORK_SYMBOL) && (LA818_0 <= WRAPPER_SYMBOL)) || LA818_0 == X509_SYMBOL || ((LA818_0 >= XA_SYMBOL) && (LA818_0 <= XML_SYMBOL)) || LA818_0 == YEAR_SYMBOL))
                {
                    alt818=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 818;
                    EXCEPTION->state        = 0;


                    goto ruleidentifierEx;

                }
            }
            switch (alt818)
            {
        	case 1:
        	    // MySQL.g:2522:2: pure_identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_pure_identifier_in_identifier14458);
        	        pure_identifier2922=pure_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleidentifierEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier2922.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2523:4: keyword
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_keyword_in_identifier14463);
        	        keyword2923=keyword(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleidentifierEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, keyword2923.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleidentifierEx; /* Prevent compiler warnings */
    ruleidentifierEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end identifier */

/**
 * $ANTLR start identifier_list
 * MySQL.g:2526:1: identifier_list : identifier ( options {greedy=true; } : COMMA_SYMBOL identifier )* ;
 */
static MySQLParser_identifier_list_return
identifier_list(pMySQLParser ctx)
{
    MySQLParser_identifier_list_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2925;
    MySQLParser_identifier_return identifier2924;
    #undef	RETURN_TYPE_identifier2924
    #define	RETURN_TYPE_identifier2924 MySQLParser_identifier_return

    MySQLParser_identifier_return identifier2926;
    #undef	RETURN_TYPE_identifier2926
    #define	RETURN_TYPE_identifier2926 MySQLParser_identifier_return

    pANTLR3_BASE_TREE COMMA_SYMBOL2925_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL2925       = NULL;
    identifier2924.tree = NULL;

    identifier2926.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL2925_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2526:16: ( identifier ( options {greedy=true; } : COMMA_SYMBOL identifier )* )
        // MySQL.g:2527:2: identifier ( options {greedy=true; } : COMMA_SYMBOL identifier )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_identifier_in_identifier_list14472);
            identifier2924=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleidentifier_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2924.tree);

            // MySQL.g:2527:13: ( options {greedy=true; } : COMMA_SYMBOL identifier )*

            for (;;)
            {
                int alt819=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		switch ( LA(2) )
                		{
                		case DES_KEY_FILE_SYMBOL:
                			{
                				alt819=1;
                			}
                		    break;
                		case HOSTS_SYMBOL:
                			{
                				alt819=1;
                			}
                		    break;
                		case ENGINE_SYMBOL:
                		case ERROR_SYMBOL:
                		case GENERAL_SYMBOL:
                		case RELAY_SYMBOL:
                		case SLOW_SYMBOL:
                			{
                				alt819=1;
                			}
                		    break;
                		case LOGS_SYMBOL:
                			{
                				alt819=1;
                			}
                		    break;
                		case PRIVILEGES_SYMBOL:
                			{
                				alt819=1;
                			}
                		    break;
                		case QUERY_SYMBOL:
                			{
                				alt819=1;
                			}
                		    break;
                		case STATUS_SYMBOL:
                			{
                				alt819=1;
                			}
                		    break;
                		case TABLES_SYMBOL:
                			{
                				alt819=1;
                			}
                		    break;
                		case ACTION_SYMBOL:
                		case ADDDATE_SYMBOL:
                		case AFTER_SYMBOL:
                		case AGAINST_SYMBOL:
                		case AGGREGATE_SYMBOL:
                		case ALGORITHM_SYMBOL:
                		case ANALYZE_SYMBOL:
                		case ANY_SYMBOL:
                		case ASCII_SYMBOL:
                		case AT_SYMBOL:
                		case AUTHORS_SYMBOL:
                		case AUTOEXTEND_SIZE_SYMBOL:
                		case AUTO_INCREMENT_SYMBOL:
                		case AVG_ROW_LENGTH_SYMBOL:
                		case AVG_SYMBOL:
                		case BACKUP_SYMBOL:
                		case BACK_TICK_QUOTED_ID:
                		case BEGIN_SYMBOL:
                		case BINLOG_SYMBOL:
                		case BIT_SYMBOL:
                		case BLOCK_SYMBOL:
                		case BOOLEAN_SYMBOL:
                		case BOOL_SYMBOL:
                		case BTREE_SYMBOL:
                		case BYTE_SYMBOL:
                		case CACHE_SYMBOL:
                		case CASCADED_SYMBOL:
                		case CATALOG_NAME_SYMBOL:
                		case CHAIN_SYMBOL:
                		case CHANGED_SYMBOL:
                		case CHARSET_SYMBOL:
                		case CHECKSUM_SYMBOL:
                		case CIPHER_SYMBOL:
                		case CLASS_ORIGIN_SYMBOL:
                		case CLIENT_SYMBOL:
                		case CLOSE_SYMBOL:
                		case COALESCE_SYMBOL:
                		case CODE_SYMBOL:
                		case COLLATION_SYMBOL:
                		case COLUMNS_SYMBOL:
                		case COLUMN_FORMAT_SYMBOL:
                		case COLUMN_NAME_SYMBOL:
                		case COMMENT_SYMBOL:
                		case COMMITTED_SYMBOL:
                		case COMMIT_SYMBOL:
                		case COMPACT_SYMBOL:
                		case COMPLETION_SYMBOL:
                		case COMPRESSED_SYMBOL:
                		case CONCURRENT_SYMBOL:
                		case CONNECTION_SYMBOL:
                		case CONSISTENT_SYMBOL:
                		case CONSTRAINT_CATALOG_SYMBOL:
                		case CONSTRAINT_NAME_SYMBOL:
                		case CONSTRAINT_SCHEMA_SYMBOL:
                		case CONTAINS_SYMBOL:
                		case CONTEXT_SYMBOL:
                		case CONTRIBUTORS_SYMBOL:
                		case CPU_SYMBOL:
                		case CUBE_SYMBOL:
                		case CURRENT_SYMBOL:
                		case CURSOR_NAME_SYMBOL:
                		case DATAFILE_SYMBOL:
                		case DATA_SYMBOL:
                		case DATETIME_SYMBOL:
                		case DATE_SYMBOL:
                		case DAY_SYMBOL:
                		case DEALLOCATE_SYMBOL:
                		case DEFAULT_AUTH_SYMBOL:
                		case DEFINER_SYMBOL:
                		case DELAY_KEY_WRITE_SYMBOL:
                		case DIAGNOSTICS_SYMBOL:
                		case DIRECTORY_SYMBOL:
                		case DISABLE_SYMBOL:
                		case DISCARD_SYMBOL:
                		case DISK_SYMBOL:
                		case DOUBLE_QUOTED_TEXT:
                		case DO_SYMBOL:
                		case DUMPFILE_SYMBOL:
                		case DUPLICATE_SYMBOL:
                		case DYNAMIC_SYMBOL:
                		case ENABLE_SYMBOL:
                		case ENDS_SYMBOL:
                		case END_SYMBOL:
                		case ENGINES_SYMBOL:
                		case ENUM_SYMBOL:
                		case ERRORS_SYMBOL:
                		case ESCAPE_SYMBOL:
                		case EVENTS_SYMBOL:
                		case EVENT_SYMBOL:
                		case EVERY_SYMBOL:
                		case EXECUTE_SYMBOL:
                		case EXPANSION_SYMBOL:
                		case EXPORT_SYMBOL:
                		case EXTENDED_SYMBOL:
                		case EXTENT_SIZE_SYMBOL:
                		case FAST_SYMBOL:
                		case FAULTS_SYMBOL:
                		case FILE_SYMBOL:
                		case FIRST_SYMBOL:
                		case FIXED_SYMBOL:
                		case FLUSH_SYMBOL:
                		case FORMAT_SYMBOL:
                		case FOUND_SYMBOL:
                		case FULL_SYMBOL:
                		case FUNCTION_SYMBOL:
                		case GEOMETRYCOLLECTION_SYMBOL:
                		case GEOMETRY_SYMBOL:
                		case GET_FORMAT_SYMBOL:
                		case GLOBAL_SYMBOL:
                		case GRANTS_SYMBOL:
                		case HANDLER_SYMBOL:
                		case HASH_SYMBOL:
                		case HELP_SYMBOL:
                		case HOST_SYMBOL:
                		case HOUR_SYMBOL:
                		case IDENTIFIED_SYMBOL:
                		case IDENTIFIER:
                		case IGNORE_SERVER_IDS_SYMBOL:
                		case IMPORT_SYMBOL:
                		case INDEXES_SYMBOL:
                		case INITIAL_SIZE_SYMBOL:
                		case INNODB_SYMBOL:
                		case INSERT_METHOD_SYMBOL:
                		case INSTALL_SYMBOL:
                		case INVOKER_SYMBOL:
                		case IO_SYMBOL:
                		case IPC_SYMBOL:
                		case ISOLATION_SYMBOL:
                		case ISSUER_SYMBOL:
                		case KEY_BLOCK_SIZE_SYMBOL:
                		case LANGUAGE_SYMBOL:
                		case LAST_SYMBOL:
                		case LEAVES_SYMBOL:
                		case LESS_SYMBOL:
                		case LEVEL_SYMBOL:
                		case LINESTRING_SYMBOL:
                		case LIST_SYMBOL:
                		case LOCAL_SYMBOL:
                		case LOCKS_SYMBOL:
                		case LOGFILE_SYMBOL:
                		case MASTER_AUTO_POSITION_SYMBOL:
                		case MASTER_CONNECT_RETRY_SYMBOL:
                		case MASTER_DELAY_SYMBOL:
                		case MASTER_HEARTBEAT_PERIOD_SYMBOL:
                		case MASTER_HOST_SYMBOL:
                		case MASTER_LOG_FILE_SYMBOL:
                		case MASTER_LOG_POS_SYMBOL:
                		case MASTER_PASSWORD_SYMBOL:
                		case MASTER_PORT_SYMBOL:
                		case MASTER_RETRY_COUNT_SYMBOL:
                		case MASTER_SERVER_ID_SYMBOL:
                		case MASTER_SSL_CAPATH_SYMBOL:
                		case MASTER_SSL_CA_SYMBOL:
                		case MASTER_SSL_CERT_SYMBOL:
                		case MASTER_SSL_CIPHER_SYMBOL:
                		case MASTER_SSL_CRLPATH_SYMBOL:
                		case MASTER_SSL_CRL_SYMBOL:
                		case MASTER_SSL_KEY_SYMBOL:
                		case MASTER_SSL_SYMBOL:
                		case MASTER_SYMBOL:
                		case MASTER_USER_SYMBOL:
                		case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
                		case MAX_QUERIES_PER_HOUR_SYMBOL:
                		case MAX_ROWS_SYMBOL:
                		case MAX_SIZE_SYMBOL:
                		case MAX_UPDATES_PER_HOUR_SYMBOL:
                		case MAX_USER_CONNECTIONS_SYMBOL:
                		case MEDIUM_SYMBOL:
                		case MEMORY_SYMBOL:
                		case MERGE_SYMBOL:
                		case MESSAGE_TEXT_SYMBOL:
                		case MICROSECOND_SYMBOL:
                		case MIGRATE_SYMBOL:
                		case MINUTE_SYMBOL:
                		case MIN_ROWS_SYMBOL:
                		case MODE_SYMBOL:
                		case MODIFY_SYMBOL:
                		case MONTH_SYMBOL:
                		case MULTILINESTRING_SYMBOL:
                		case MULTIPOINT_SYMBOL:
                		case MULTIPOLYGON_SYMBOL:
                		case MUTEX_SYMBOL:
                		case MYSQL_ERRNO_SYMBOL:
                		case NAMES_SYMBOL:
                		case NAME_SYMBOL:
                		case NATIONAL_SYMBOL:
                		case NCHAR_SYMBOL:
                		case NDBCLUSTER_SYMBOL:
                		case NEW_SYMBOL:
                		case NEXT_SYMBOL:
                		case NODEGROUP_SYMBOL:
                		case NONE_SYMBOL:
                		case NO_SYMBOL:
                		case NO_WAIT_SYMBOL:
                		case NUMBER_SYMBOL:
                		case NVARCHAR_SYMBOL:
                		case OFFSET_SYMBOL:
                		case OLD_PASSWORD_SYMBOL:
                		case ONE_SHOT_SYMBOL:
                		case ONE_SYMBOL:
                		case OPEN_SYMBOL:
                		case OPTIONS_SYMBOL:
                		case OWNER_SYMBOL:
                		case PACK_KEYS_SYMBOL:
                		case PAGE_SYMBOL:
                		case PARSER_SYMBOL:
                		case PARTIAL_SYMBOL:
                		case PARTITIONING_SYMBOL:
                		case PARTITIONS_SYMBOL:
                		case PARTITION_SYMBOL:
                		case PASSWORD_SYMBOL:
                		case PHASE_SYMBOL:
                		case PLUGINS_SYMBOL:
                		case PLUGIN_DIR_SYMBOL:
                		case PLUGIN_SYMBOL:
                		case POINT_SYMBOL:
                		case POLYGON_SYMBOL:
                		case PORT_SYMBOL:
                		case PREPARE_SYMBOL:
                		case PRESERVE_SYMBOL:
                		case PREV_SYMBOL:
                		case PROCESSLIST_SYMBOL:
                		case PROCESS_SYMBOL:
                		case PROFILES_SYMBOL:
                		case PROFILE_SYMBOL:
                		case PROXY_SYMBOL:
                		case QUARTER_SYMBOL:
                		case QUICK_SYMBOL:
                		case READ_ONLY_SYMBOL:
                		case REBUILD_SYMBOL:
                		case RECOVER_SYMBOL:
                		case REDOFILE_SYMBOL:
                		case REDO_BUFFER_SIZE_SYMBOL:
                		case REDUNDANT_SYMBOL:
                		case RELAYLOG_SYMBOL:
                		case RELAY_LOG_FILE_SYMBOL:
                		case RELAY_LOG_POS_SYMBOL:
                		case RELAY_THREAD_SYMBOL:
                		case RELOAD_SYMBOL:
                		case REMOVE_SYMBOL:
                		case REORGANIZE_SYMBOL:
                		case REPAIR_SYMBOL:
                		case REPEATABLE_SYMBOL:
                		case REPLICATION_SYMBOL:
                		case RESET_SYMBOL:
                		case RESTORE_SYMBOL:
                		case RESUME_SYMBOL:
                		case RETURNED_SQLSTATE_SYMBOL:
                		case RETURNS_SYMBOL:
                		case REVERSE_SYMBOL:
                		case ROLLBACK_SYMBOL:
                		case ROLLUP_SYMBOL:
                		case ROUTINE_SYMBOL:
                		case ROWS_SYMBOL:
                		case ROW_COUNT_SYMBOL:
                		case ROW_FORMAT_SYMBOL:
                		case ROW_SYMBOL:
                		case RTREE_SYMBOL:
                		case SAVEPOINT_SYMBOL:
                		case SCHEDULE_SYMBOL:
                		case SCHEMA_NAME_SYMBOL:
                		case SECOND_SYMBOL:
                		case SECURITY_SYMBOL:
                		case SERIALIZABLE_SYMBOL:
                		case SERIAL_SYMBOL:
                		case SERVER_SYMBOL:
                		case SESSION_SYMBOL:
                		case SHARE_SYMBOL:
                		case SHUTDOWN_SYMBOL:
                		case SIGNED_SYMBOL:
                		case SIMPLE_SYMBOL:
                		case SLAVE_SYMBOL:
                		case SNAPSHOT_SYMBOL:
                		case SOCKET_SYMBOL:
                		case SONAME_SYMBOL:
                		case SOUNDS_SYMBOL:
                		case SOURCE_SYMBOL:
                		case SQL_AFTER_GTIDS_SYMBOL:
                		case SQL_AFTER_MTS_GAPS_SYMBOL:
                		case SQL_BEFORE_GTIDS_SYMBOL:
                		case SQL_BUFFER_RESULT_SYMBOL:
                		case SQL_CACHE_SYMBOL:
                		case SQL_NO_CACHE_SYMBOL:
                		case SQL_THREAD_SYMBOL:
                		case STARTS_SYMBOL:
                		case START_SYMBOL:
                		case STATS_AUTO_RECALC_SYMBOL:
                		case STATS_PERSISTENT_SYMBOL:
                		case STATS_SAMPLE_PAGES_SYMBOL:
                		case STOP_SYMBOL:
                		case STORAGE_SYMBOL:
                		case STRING_SYMBOL:
                		case SUBCLASS_ORIGIN_SYMBOL:
                		case SUBDATE_SYMBOL:
                		case SUBJECT_SYMBOL:
                		case SUBPARTITIONS_SYMBOL:
                		case SUBPARTITION_SYMBOL:
                		case SUPER_SYMBOL:
                		case SUSPEND_SYMBOL:
                		case SWAPS_SYMBOL:
                		case SWITCHES_SYMBOL:
                		case TABLESPACE_SYMBOL:
                		case TABLE_CHECKSUM_SYMBOL:
                		case TABLE_NAME_SYMBOL:
                		case TEMPORARY_SYMBOL:
                		case TEMPTABLE_SYMBOL:
                		case TEXT_SYMBOL:
                		case THAN_SYMBOL:
                		case TIMESTAMP_ADD_SYMBOL:
                		case TIMESTAMP_DIFF_SYMBOL:
                		case TIMESTAMP_SYMBOL:
                		case TIME_SYMBOL:
                		case TRANSACTION_SYMBOL:
                		case TRIGGERS_SYMBOL:
                		case TRUNCATE_SYMBOL:
                		case TYPES_SYMBOL:
                		case TYPE_SYMBOL:
                		case UDF_RETURNS_SYMBOL:
                		case UNCOMMITTED_SYMBOL:
                		case UNDEFINED_SYMBOL:
                		case UNDOFILE_SYMBOL:
                		case UNDO_BUFFER_SIZE_SYMBOL:
                		case UNICODE_SYMBOL:
                		case UNINSTALL_SYMBOL:
                		case UNKNOWN_SYMBOL:
                		case UNTIL_SYMBOL:
                		case UPGRADE_SYMBOL:
                		case USER_RESOURCES_SYMBOL:
                		case USER_SYMBOL:
                		case USE_FRM_SYMBOL:
                		case VALUE_SYMBOL:
                		case VARIABLES_SYMBOL:
                		case VIEW_SYMBOL:
                		case WAIT_SYMBOL:
                		case WARNINGS_SYMBOL:
                		case WEEK_SYMBOL:
                		case WEIGHT_STRING_SYMBOL:
                		case WORK_SYMBOL:
                		case WRAPPER_SYMBOL:
                		case X509_SYMBOL:
                		case XA_SYMBOL:
                		case XML_SYMBOL:
                		case YEAR_SYMBOL:
                			{
                				alt819=1;
                			}
                		    break;

                		}

                	}
                    break;

                }

                switch (alt819)
                {
            	case 1:
            	    // MySQL.g:2527:43: COMMA_SYMBOL identifier
            	    {
            	        COMMA_SYMBOL2925 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_identifier_list14488);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleidentifier_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL2925_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2925));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2925_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_identifier_in_identifier_list14490);
            	        identifier2926=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleidentifier_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2926.tree);

            	    }
            	    break;

            	default:
            	    goto loop819;	/* break out of the loop */
            	    break;
                }
            }
            loop819: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto ruleidentifier_listEx; /* Prevent compiler warnings */
    ruleidentifier_listEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end identifier_list */

/**
 * $ANTLR start identifier_list_with_parentheses
 * MySQL.g:2529:1: identifier_list_with_parentheses : OPEN_PAR_SYMBOL identifier_list CLOSE_PAR_SYMBOL ;
 */
static MySQLParser_identifier_list_with_parentheses_return
identifier_list_with_parentheses(pMySQLParser ctx)
{
    MySQLParser_identifier_list_with_parentheses_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2927;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2929;
    MySQLParser_identifier_list_return identifier_list2928;
    #undef	RETURN_TYPE_identifier_list2928
    #define	RETURN_TYPE_identifier_list2928 MySQLParser_identifier_list_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2927_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2929_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL2927       = NULL;
    CLOSE_PAR_SYMBOL2929       = NULL;
    identifier_list2928.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL2927_tree   = NULL;
    CLOSE_PAR_SYMBOL2929_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2529:33: ( OPEN_PAR_SYMBOL identifier_list CLOSE_PAR_SYMBOL )
        // MySQL.g:2530:2: OPEN_PAR_SYMBOL identifier_list CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPEN_PAR_SYMBOL2927 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_identifier_list_with_parentheses14500);
            if  (HASEXCEPTION())
            {
                goto ruleidentifier_list_with_parenthesesEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL2927_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2927));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2927_tree);
            }

            FOLLOWPUSH(FOLLOW_identifier_list_in_identifier_list_with_parentheses14502);
            identifier_list2928=identifier_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleidentifier_list_with_parenthesesEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list2928.tree);

            CLOSE_PAR_SYMBOL2929 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_identifier_list_with_parentheses14504);
            if  (HASEXCEPTION())
            {
                goto ruleidentifier_list_with_parenthesesEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL2929_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2929));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2929_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleidentifier_list_with_parenthesesEx; /* Prevent compiler warnings */
    ruleidentifier_list_with_parenthesesEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end identifier_list_with_parentheses */

/**
 * $ANTLR start at_variable_identifier
 * MySQL.g:2533:1: at_variable_identifier : ( string_literal | identifier );
 */
static MySQLParser_at_variable_identifier_return
at_variable_identifier(pMySQLParser ctx)
{
    MySQLParser_at_variable_identifier_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_string_literal_return string_literal2930;
    #undef	RETURN_TYPE_string_literal2930
    #define	RETURN_TYPE_string_literal2930 MySQLParser_string_literal_return

    MySQLParser_identifier_return identifier2931;
    #undef	RETURN_TYPE_identifier2931
    #define	RETURN_TYPE_identifier2931 MySQLParser_identifier_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    string_literal2930.tree = NULL;

    identifier2931.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2533:23: ( string_literal | identifier )

            ANTLR3_UINT32 alt820;

            alt820=2;

            {
                int LA820_0 = LA(1);
                if ( (LA820_0 == NCHAR_TEXT || LA820_0 == SINGLE_QUOTED_TEXT || LA820_0 == UNDERSCORE_CHARSET))
                {
                    alt820=1;
                }
                else if ( ((((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)))||((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))) && (LA820_0 == DOUBLE_QUOTED_TEXT))
                {
                    {
                        int LA820_4 = LA(2);
                        if ( ((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))
                        {
                            alt820=1;
                        }
                        else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))
                        {
                            alt820=2;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 820;
                            EXCEPTION->state        = 4;


                            goto ruleat_variable_identifierEx;

                        }
                    }
                }
                else if ( (((LA820_0 >= ACTION_SYMBOL) && (LA820_0 <= ADDDATE_SYMBOL)) || ((LA820_0 >= AFTER_SYMBOL) && (LA820_0 <= ALGORITHM_SYMBOL)) || LA820_0 == ANALYZE_SYMBOL || ((LA820_0 >= ANY_SYMBOL) && (LA820_0 <= ASCII_SYMBOL)) || ((LA820_0 >= AT_SYMBOL) && (LA820_0 <= BACKUP_SYMBOL)) || LA820_0 == BACK_TICK_QUOTED_ID || LA820_0 == BEGIN_SYMBOL || LA820_0 == BINLOG_SYMBOL || LA820_0 == BIT_SYMBOL || ((LA820_0 >= BLOCK_SYMBOL) && (LA820_0 <= BOOL_SYMBOL)) || ((LA820_0 >= BTREE_SYMBOL) && (LA820_0 <= BYTE_SYMBOL)) || LA820_0 == CACHE_SYMBOL || LA820_0 == CASCADED_SYMBOL || ((LA820_0 >= CATALOG_NAME_SYMBOL) && (LA820_0 <= CHANGED_SYMBOL)) || LA820_0 == CHARSET_SYMBOL || LA820_0 == CHECKSUM_SYMBOL || ((LA820_0 >= CIPHER_SYMBOL) && (LA820_0 <= CLIENT_SYMBOL)) || ((LA820_0 >= CLOSE_SYMBOL) && (LA820_0 <= CODE_SYMBOL)) || LA820_0 == COLLATION_SYMBOL || ((LA820_0 >= COLUMNS_SYMBOL) && (LA820_0 <= COLUMN_NAME_SYMBOL)) || ((LA820_0 >= COMMENT_SYMBOL) && (LA820_0 <= COMPRESSED_SYMBOL)) || LA820_0 == CONCURRENT_SYMBOL || ((LA820_0 >= CONNECTION_SYMBOL) && (LA820_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA820_0 >= CONTAINS_SYMBOL) && (LA820_0 <= CONTEXT_SYMBOL)) || LA820_0 == CONTRIBUTORS_SYMBOL || LA820_0 == CPU_SYMBOL || LA820_0 == CUBE_SYMBOL || LA820_0 == CURRENT_SYMBOL || LA820_0 == CURSOR_NAME_SYMBOL || ((LA820_0 >= DATAFILE_SYMBOL) && (LA820_0 <= DATETIME_SYMBOL)) || LA820_0 == DATE_SYMBOL || ((LA820_0 >= DAY_SYMBOL) && (LA820_0 <= DEALLOCATE_SYMBOL)) || LA820_0 == DEFAULT_AUTH_SYMBOL || LA820_0 == DEFINER_SYMBOL || LA820_0 == DELAY_KEY_WRITE_SYMBOL || LA820_0 == DES_KEY_FILE_SYMBOL || LA820_0 == DIAGNOSTICS_SYMBOL || ((LA820_0 >= DIRECTORY_SYMBOL) && (LA820_0 <= DISK_SYMBOL)) || LA820_0 == DO_SYMBOL || ((LA820_0 >= DUMPFILE_SYMBOL) && (LA820_0 <= DYNAMIC_SYMBOL)) || LA820_0 == ENABLE_SYMBOL || LA820_0 == ENDS_SYMBOL || ((LA820_0 >= END_SYMBOL) && (LA820_0 <= ENUM_SYMBOL)) || ((LA820_0 >= ERRORS_SYMBOL) && (LA820_0 <= ERROR_SYMBOL)) || ((LA820_0 >= ESCAPE_SYMBOL) && (LA820_0 <= EVERY_SYMBOL)) || LA820_0 == EXECUTE_SYMBOL || LA820_0 == EXPANSION_SYMBOL || LA820_0 == EXPORT_SYMBOL || ((LA820_0 >= EXTENDED_SYMBOL) && (LA820_0 <= EXTENT_SIZE_SYMBOL)) || ((LA820_0 >= FAST_SYMBOL) && (LA820_0 <= FAULTS_SYMBOL)) || ((LA820_0 >= FILE_SYMBOL) && (LA820_0 <= FIXED_SYMBOL)) || LA820_0 == FLUSH_SYMBOL || LA820_0 == FORMAT_SYMBOL || LA820_0 == FOUND_SYMBOL || LA820_0 == FULL_SYMBOL || ((LA820_0 >= FUNCTION_SYMBOL) && (LA820_0 <= GET_FORMAT_SYMBOL)) || ((LA820_0 >= GLOBAL_SYMBOL) && (LA820_0 <= GRANTS_SYMBOL)) || ((LA820_0 >= HANDLER_SYMBOL) && (LA820_0 <= HASH_SYMBOL)) || LA820_0 == HELP_SYMBOL || ((LA820_0 >= HOSTS_SYMBOL) && (LA820_0 <= HOST_SYMBOL)) || ((LA820_0 >= HOUR_SYMBOL) && (LA820_0 <= IDENTIFIER)) || LA820_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA820_0 >= IMPORT_SYMBOL) && (LA820_0 <= INDEXES_SYMBOL)) || LA820_0 == INITIAL_SIZE_SYMBOL || LA820_0 == INNODB_SYMBOL || LA820_0 == INSERT_METHOD_SYMBOL || LA820_0 == INSTALL_SYMBOL || LA820_0 == INVOKER_SYMBOL || LA820_0 == IO_SYMBOL || ((LA820_0 >= IPC_SYMBOL) && (LA820_0 <= ISSUER_SYMBOL)) || LA820_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA820_0 >= LANGUAGE_SYMBOL) && (LA820_0 <= LAST_SYMBOL)) || LA820_0 == LEAVES_SYMBOL || LA820_0 == LESS_SYMBOL || LA820_0 == LEVEL_SYMBOL || LA820_0 == LINESTRING_SYMBOL || LA820_0 == LIST_SYMBOL || LA820_0 == LOCAL_SYMBOL || LA820_0 == LOCKS_SYMBOL || LA820_0 == LOGFILE_SYMBOL || LA820_0 == LOGS_SYMBOL || LA820_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA820_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA820_0 <= MASTER_SSL_SYMBOL)) || ((LA820_0 >= MASTER_SYMBOL) && (LA820_0 <= MASTER_USER_SYMBOL)) || ((LA820_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA820_0 <= MAX_SIZE_SYMBOL)) || ((LA820_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA820_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA820_0 >= MEDIUM_SYMBOL) && (LA820_0 <= MICROSECOND_SYMBOL)) || LA820_0 == MIGRATE_SYMBOL || ((LA820_0 >= MINUTE_SYMBOL) && (LA820_0 <= MIN_ROWS_SYMBOL)) || LA820_0 == MODE_SYMBOL || LA820_0 == MODIFY_SYMBOL || ((LA820_0 >= MONTH_SYMBOL) && (LA820_0 <= MULTILINESTRING_SYMBOL)) || ((LA820_0 >= MULTIPOINT_SYMBOL) && (LA820_0 <= MULTIPOLYGON_SYMBOL)) || ((LA820_0 >= MUTEX_SYMBOL) && (LA820_0 <= NATIONAL_SYMBOL)) || LA820_0 == NCHAR_SYMBOL || LA820_0 == NDBCLUSTER_SYMBOL || ((LA820_0 >= NEW_SYMBOL) && (LA820_0 <= NONE_SYMBOL)) || ((LA820_0 >= NO_SYMBOL) && (LA820_0 <= NO_WAIT_SYMBOL)) || LA820_0 == NUMBER_SYMBOL || LA820_0 == NVARCHAR_SYMBOL || ((LA820_0 >= OFFSET_SYMBOL) && (LA820_0 <= ONE_SYMBOL)) || LA820_0 == OPEN_SYMBOL || LA820_0 == OPTIONS_SYMBOL || ((LA820_0 >= OWNER_SYMBOL) && (LA820_0 <= PAGE_SYMBOL)) || ((LA820_0 >= PARSER_SYMBOL) && (LA820_0 <= PARTITION_SYMBOL)) || ((LA820_0 >= PASSWORD_SYMBOL) && (LA820_0 <= PLUGIN_SYMBOL)) || ((LA820_0 >= POINT_SYMBOL) && (LA820_0 <= PORT_SYMBOL)) || ((LA820_0 >= PREPARE_SYMBOL) && (LA820_0 <= PREV_SYMBOL)) || LA820_0 == PRIVILEGES_SYMBOL || ((LA820_0 >= PROCESSLIST_SYMBOL) && (LA820_0 <= PROXY_SYMBOL)) || ((LA820_0 >= QUARTER_SYMBOL) && (LA820_0 <= QUICK_SYMBOL)) || LA820_0 == READ_ONLY_SYMBOL || ((LA820_0 >= REBUILD_SYMBOL) && (LA820_0 <= REDUNDANT_SYMBOL)) || ((LA820_0 >= RELAYLOG_SYMBOL) && (LA820_0 <= RELAY_THREAD_SYMBOL)) || ((LA820_0 >= RELOAD_SYMBOL) && (LA820_0 <= REMOVE_SYMBOL)) || ((LA820_0 >= REORGANIZE_SYMBOL) && (LA820_0 <= REPEATABLE_SYMBOL)) || LA820_0 == REPLICATION_SYMBOL || LA820_0 == RESET_SYMBOL || LA820_0 == RESTORE_SYMBOL || ((LA820_0 >= RESUME_SYMBOL) && (LA820_0 <= RETURNS_SYMBOL)) || LA820_0 == REVERSE_SYMBOL || ((LA820_0 >= ROLLBACK_SYMBOL) && (LA820_0 <= SCHEDULE_SYMBOL)) || LA820_0 == SCHEMA_NAME_SYMBOL || ((LA820_0 >= SECOND_SYMBOL) && (LA820_0 <= SECURITY_SYMBOL)) || ((LA820_0 >= SERIALIZABLE_SYMBOL) && (LA820_0 <= SERIAL_SYMBOL)) || ((LA820_0 >= SERVER_SYMBOL) && (LA820_0 <= SESSION_SYMBOL)) || LA820_0 == SHARE_SYMBOL || LA820_0 == SHUTDOWN_SYMBOL || ((LA820_0 >= SIGNED_SYMBOL) && (LA820_0 <= SIMPLE_SYMBOL)) || ((LA820_0 >= SLAVE_SYMBOL) && (LA820_0 <= SLOW_SYMBOL)) || ((LA820_0 >= SNAPSHOT_SYMBOL) && (LA820_0 <= SOURCE_SYMBOL)) || ((LA820_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA820_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA820_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA820_0 <= SQL_CACHE_SYMBOL)) || LA820_0 == SQL_NO_CACHE_SYMBOL || LA820_0 == SQL_THREAD_SYMBOL || ((LA820_0 >= STARTS_SYMBOL) && (LA820_0 <= STATUS_SYMBOL)) || ((LA820_0 >= STOP_SYMBOL) && (LA820_0 <= STORAGE_SYMBOL)) || ((LA820_0 >= STRING_SYMBOL) && (LA820_0 <= SUBPARTITION_SYMBOL)) || ((LA820_0 >= SUPER_SYMBOL) && (LA820_0 <= SWITCHES_SYMBOL)) || ((LA820_0 >= TABLESPACE_SYMBOL) && (LA820_0 <= TABLE_NAME_SYMBOL)) || ((LA820_0 >= TEMPORARY_SYMBOL) && (LA820_0 <= TEMPTABLE_SYMBOL)) || ((LA820_0 >= TEXT_SYMBOL) && (LA820_0 <= THAN_SYMBOL)) || ((LA820_0 >= TIMESTAMP_ADD_SYMBOL) && (LA820_0 <= TIME_SYMBOL)) || ((LA820_0 >= TRANSACTION_SYMBOL) && (LA820_0 <= TRIGGERS_SYMBOL)) || ((LA820_0 >= TRUNCATE_SYMBOL) && (LA820_0 <= UDF_RETURNS_SYMBOL)) || ((LA820_0 >= UNCOMMITTED_SYMBOL) && (LA820_0 <= UNDEFINED_SYMBOL)) || ((LA820_0 >= UNDOFILE_SYMBOL) && (LA820_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA820_0 >= UNICODE_SYMBOL) && (LA820_0 <= UNINSTALL_SYMBOL)) || LA820_0 == UNKNOWN_SYMBOL || LA820_0 == UNTIL_SYMBOL || LA820_0 == UPGRADE_SYMBOL || ((LA820_0 >= USER_RESOURCES_SYMBOL) && (LA820_0 <= USE_FRM_SYMBOL)) || LA820_0 == VALUE_SYMBOL || LA820_0 == VARIABLES_SYMBOL || ((LA820_0 >= VIEW_SYMBOL) && (LA820_0 <= WEIGHT_STRING_SYMBOL)) || ((LA820_0 >= WORK_SYMBOL) && (LA820_0 <= WRAPPER_SYMBOL)) || LA820_0 == X509_SYMBOL || ((LA820_0 >= XA_SYMBOL) && (LA820_0 <= XML_SYMBOL)) || LA820_0 == YEAR_SYMBOL))
                {
                    alt820=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 820;
                    EXCEPTION->state        = 0;


                    goto ruleat_variable_identifierEx;

                }
            }
            switch (alt820)
            {
        	case 1:
        	    // MySQL.g:2534:2: string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_string_literal_in_at_variable_identifier14513);
        	        string_literal2930=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleat_variable_identifierEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal2930.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2535:4: identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_identifier_in_at_variable_identifier14518);
        	        identifier2931=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleat_variable_identifierEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2931.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleat_variable_identifierEx; /* Prevent compiler warnings */
    ruleat_variable_identifierEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end at_variable_identifier */

/**
 * $ANTLR start string_list
 * MySQL.g:2538:1: string_list : OPEN_PAR_SYMBOL string_literal ( COMMA_SYMBOL string_literal )* CLOSE_PAR_SYMBOL ;
 */
static MySQLParser_string_list_return
string_list(pMySQLParser ctx)
{
    MySQLParser_string_list_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2932;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2934;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2936;
    MySQLParser_string_literal_return string_literal2933;
    #undef	RETURN_TYPE_string_literal2933
    #define	RETURN_TYPE_string_literal2933 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal2935;
    #undef	RETURN_TYPE_string_literal2935
    #define	RETURN_TYPE_string_literal2935 MySQLParser_string_literal_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2932_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2934_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2936_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL2932       = NULL;
    COMMA_SYMBOL2934       = NULL;
    CLOSE_PAR_SYMBOL2936       = NULL;
    string_literal2933.tree = NULL;

    string_literal2935.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL2932_tree   = NULL;
    COMMA_SYMBOL2934_tree   = NULL;
    CLOSE_PAR_SYMBOL2936_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2538:12: ( OPEN_PAR_SYMBOL string_literal ( COMMA_SYMBOL string_literal )* CLOSE_PAR_SYMBOL )
        // MySQL.g:2539:2: OPEN_PAR_SYMBOL string_literal ( COMMA_SYMBOL string_literal )* CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPEN_PAR_SYMBOL2932 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_string_list14527);
            if  (HASEXCEPTION())
            {
                goto rulestring_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL2932_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2932));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2932_tree);
            }

            FOLLOWPUSH(FOLLOW_string_literal_in_string_list14529);
            string_literal2933=string_literal(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulestring_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal2933.tree);

            // MySQL.g:2539:33: ( COMMA_SYMBOL string_literal )*

            for (;;)
            {
                int alt821=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt821=1;
                	}
                    break;

                }

                switch (alt821)
                {
            	case 1:
            	    // MySQL.g:2539:34: COMMA_SYMBOL string_literal
            	    {
            	        COMMA_SYMBOL2934 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_string_list14532);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulestring_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL2934_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2934));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2934_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_string_literal_in_string_list14534);
            	        string_literal2935=string_literal(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulestring_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal2935.tree);

            	    }
            	    break;

            	default:
            	    goto loop821;	/* break out of the loop */
            	    break;
                }
            }
            loop821: ; /* Jump out to here if this rule does not match */


            CLOSE_PAR_SYMBOL2936 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_string_list14538);
            if  (HASEXCEPTION())
            {
                goto rulestring_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL2936_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2936));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2936_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulestring_listEx; /* Prevent compiler warnings */
    rulestring_listEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end string_list */

/**
 * $ANTLR start literal
 * MySQL.g:2542:1: literal : ( string_literal | number_literal | hex_literal | bool_literal |{...}? => bit_literal | null_literal );
 */
static MySQLParser_literal_return
literal(pMySQLParser ctx)
{
    MySQLParser_literal_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_string_literal_return string_literal2937;
    #undef	RETURN_TYPE_string_literal2937
    #define	RETURN_TYPE_string_literal2937 MySQLParser_string_literal_return

    MySQLParser_number_literal_return number_literal2938;
    #undef	RETURN_TYPE_number_literal2938
    #define	RETURN_TYPE_number_literal2938 MySQLParser_number_literal_return

    MySQLParser_hex_literal_return hex_literal2939;
    #undef	RETURN_TYPE_hex_literal2939
    #define	RETURN_TYPE_hex_literal2939 MySQLParser_hex_literal_return

    MySQLParser_bool_literal_return bool_literal2940;
    #undef	RETURN_TYPE_bool_literal2940
    #define	RETURN_TYPE_bool_literal2940 MySQLParser_bool_literal_return

    MySQLParser_bit_literal_return bit_literal2941;
    #undef	RETURN_TYPE_bit_literal2941
    #define	RETURN_TYPE_bit_literal2941 MySQLParser_bit_literal_return

    MySQLParser_null_literal_return null_literal2942;
    #undef	RETURN_TYPE_null_literal2942
    #define	RETURN_TYPE_null_literal2942 MySQLParser_null_literal_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    string_literal2937.tree = NULL;

    number_literal2938.tree = NULL;

    hex_literal2939.tree = NULL;

    bool_literal2940.tree = NULL;

    bit_literal2941.tree = NULL;

    null_literal2942.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2542:8: ( string_literal | number_literal | hex_literal | bool_literal |{...}? => bit_literal | null_literal )

            ANTLR3_UINT32 alt822;

            alt822=6;

            {
                int LA822_0 = LA(1);
                if ( (LA822_0 == NCHAR_TEXT || LA822_0 == SINGLE_QUOTED_TEXT))
                {
                    alt822=1;
                }
                else if ( (LA822_0 == UNDERSCORE_CHARSET))
                {
                    {
                        int LA822_2 = LA(2);
                        if ( (LA822_2 == DOUBLE_QUOTED_TEXT || LA822_2 == SINGLE_QUOTED_TEXT))
                        {
                            alt822=1;
                        }
                        else if ( (((LA822_2 >= HEXNUMBER) && (LA822_2 <= HEXSTRING))))
                        {
                            alt822=3;
                        }
                        else if ( ((SERVER_VERSION >= 50003)) && (((LA822_2 >= BITNUMBER) && (LA822_2 <= BITSTRING))))
                        {
                            alt822=5;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 822;
                            EXCEPTION->state        = 2;


                            goto ruleliteralEx;

                        }
                    }
                }
                else if ( ((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA822_0 == DOUBLE_QUOTED_TEXT))
                {
                    alt822=1;
                }
                else if ( (LA822_0 == FLOAT || LA822_0 == INTEGER))
                {
                    alt822=2;
                }
                else if ( (((LA822_0 >= HEXNUMBER) && (LA822_0 <= HEXSTRING))))
                {
                    alt822=3;
                }
                else if ( (LA822_0 == FALSE_SYMBOL || LA822_0 == TRUE_SYMBOL))
                {
                    alt822=4;
                }
                else if ( ((SERVER_VERSION >= 50003)) && (((LA822_0 >= BITNUMBER) && (LA822_0 <= BITSTRING))))
                {
                    alt822=5;
                }
                else if ( (LA822_0 == NULL2_SYMBOL || LA822_0 == NULL_SYMBOL))
                {
                    alt822=6;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 822;
                    EXCEPTION->state        = 0;


                    goto ruleliteralEx;

                }
            }
            switch (alt822)
            {
        	case 1:
        	    // MySQL.g:2543:2: string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_string_literal_in_literal14547);
        	        string_literal2937=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleliteralEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal2937.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2544:4: number_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_number_literal_in_literal14552);
        	        number_literal2938=number_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleliteralEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, number_literal2938.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2545:4: hex_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_hex_literal_in_literal14557);
        	        hex_literal2939=hex_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleliteralEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, hex_literal2939.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:2546:4: bool_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_bool_literal_in_literal14562);
        	        bool_literal2940=bool_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleliteralEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, bool_literal2940.tree);

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:2547:4: {...}? => bit_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((SERVER_VERSION >= 50003)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50003";
        	                EXCEPTION->ruleName	 = (void *)"literal";


        	        }

        	        FOLLOWPUSH(FOLLOW_bit_literal_in_literal14571);
        	        bit_literal2941=bit_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleliteralEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, bit_literal2941.tree);

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:2548:4: null_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_null_literal_in_literal14576);
        	        null_literal2942=null_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleliteralEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, null_literal2942.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleliteralEx; /* Prevent compiler warnings */
    ruleliteralEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end literal */

/**
 * $ANTLR start string_literal
 * MySQL.g:2554:1: string_literal : string -> ^( STRING string ) ;
 */
static MySQLParser_string_literal_return
string_literal(pMySQLParser ctx)
{
    MySQLParser_string_literal_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_string_return string2943;
    #undef	RETURN_TYPE_string2943
    #define	RETURN_TYPE_string2943 MySQLParser_string_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_string;
    /* Initialize rule variables
     */

    root_0 = NULL;

    string2943.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;



    stream_string   = NULL;
    #define CREATE_stream_string  if (stream_string == NULL) {stream_string = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule string"); }

    retval.tree  = NULL;

    {
        // MySQL.g:2554:15: ( string -> ^( STRING string ) )
        // MySQL.g:2555:2: string
        {
            FOLLOWPUSH(FOLLOW_string_in_string_literal14589);
            string2943=string(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulestring_literalEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_string; stream_string->add(stream_string, string2943.tree, NULL); }

            /* AST REWRITE
             * elements          : string
             * token labels      : 
             * rule labels       : retval
             * token list labels : 
             * rule list labels  : 
             */
            if ( BACKTRACKING==0 ) 

            {
            	pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_retval;

            	stream_retval=antlr3RewriteRuleSubtreeStreamNewAEE(ADAPTOR,  RECOGNIZER, (pANTLR3_UINT8)"token retval", retval.tree != NULL ? retval.tree : NULL);

            	root_0			    = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
            	retval.tree    = root_0;
            	// 2555:9: -> ^( STRING string )
            	{
            	    // MySQL.g:2555:12: ^( STRING string )
            	    {
            	        pANTLR3_BASE_TREE root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
            	        root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, 
            	        (pANTLR3_BASE_TREE)ADAPTOR->createTypeText(ADAPTOR, STRING, (pANTLR3_UINT8)"STRING")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_string == NULL ? NULL : stream_string->nextTree(stream_string));

            	        ADAPTOR->addChild(ADAPTOR, root_0, root_1);
            	    }

            	}


            	retval.tree = root_0; // set result root
            	if (stream_retval != NULL) stream_retval->free(stream_retval);


            }
        }

    }

    // This is where rules clean up and exit
    //
    goto rulestring_literalEx; /* Prevent compiler warnings */
    rulestring_literalEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
        if (stream_string != NULL) stream_string->free(stream_string);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end string_literal */

/**
 * $ANTLR start string
 * MySQL.g:2558:1: string : ( NCHAR_TEXT | ( UNDERSCORE_CHARSET )? ( options {greedy=true; } : SINGLE_QUOTED_TEXT |{...}? => DOUBLE_QUOTED_TEXT )+ );
 */
static MySQLParser_string_return
string(pMySQLParser ctx)
{
    MySQLParser_string_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    NCHAR_TEXT2944;
    pANTLR3_COMMON_TOKEN    UNDERSCORE_CHARSET2945;
    pANTLR3_COMMON_TOKEN    SINGLE_QUOTED_TEXT2946;
    pANTLR3_COMMON_TOKEN    DOUBLE_QUOTED_TEXT2947;

    pANTLR3_BASE_TREE NCHAR_TEXT2944_tree;
    pANTLR3_BASE_TREE UNDERSCORE_CHARSET2945_tree;
    pANTLR3_BASE_TREE SINGLE_QUOTED_TEXT2946_tree;
    pANTLR3_BASE_TREE DOUBLE_QUOTED_TEXT2947_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    NCHAR_TEXT2944       = NULL;
    UNDERSCORE_CHARSET2945       = NULL;
    SINGLE_QUOTED_TEXT2946       = NULL;
    DOUBLE_QUOTED_TEXT2947       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    NCHAR_TEXT2944_tree   = NULL;
    UNDERSCORE_CHARSET2945_tree   = NULL;
    SINGLE_QUOTED_TEXT2946_tree   = NULL;
    DOUBLE_QUOTED_TEXT2947_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2558:7: ( NCHAR_TEXT | ( UNDERSCORE_CHARSET )? ( options {greedy=true; } : SINGLE_QUOTED_TEXT |{...}? => DOUBLE_QUOTED_TEXT )+ )

            ANTLR3_UINT32 alt825;

            alt825=2;

            {
                int LA825_0 = LA(1);
                if ( (LA825_0 == NCHAR_TEXT))
                {
                    alt825=1;
                }
                else if ( (LA825_0 == SINGLE_QUOTED_TEXT || LA825_0 == UNDERSCORE_CHARSET))
                {
                    alt825=2;
                }
                else if ( ((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA825_0 == DOUBLE_QUOTED_TEXT))
                {
                    alt825=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 825;
                    EXCEPTION->state        = 0;


                    goto rulestringEx;

                }
            }
            switch (alt825)
            {
        	case 1:
        	    // MySQL.g:2559:2: NCHAR_TEXT
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NCHAR_TEXT2944 = (pANTLR3_COMMON_TOKEN) MATCHT(NCHAR_TEXT, &FOLLOW_NCHAR_TEXT_in_string14606);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestringEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NCHAR_TEXT2944_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NCHAR_TEXT2944));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NCHAR_TEXT2944_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2560:4: ( UNDERSCORE_CHARSET )? ( options {greedy=true; } : SINGLE_QUOTED_TEXT |{...}? => DOUBLE_QUOTED_TEXT )+
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:2560:4: ( UNDERSCORE_CHARSET )?
        	        {
        	            int alt823=2;
        	            switch ( LA(1) )
        	            {
        	                case UNDERSCORE_CHARSET:
        	                	{
        	                		alt823=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt823)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2560:4: UNDERSCORE_CHARSET
        	        	    {
        	        	        UNDERSCORE_CHARSET2945 = (pANTLR3_COMMON_TOKEN) MATCHT(UNDERSCORE_CHARSET, &FOLLOW_UNDERSCORE_CHARSET_in_string14611);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulestringEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        UNDERSCORE_CHARSET2945_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNDERSCORE_CHARSET2945));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, UNDERSCORE_CHARSET2945_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:2560:24: ( options {greedy=true; } : SINGLE_QUOTED_TEXT |{...}? => DOUBLE_QUOTED_TEXT )+
        	        {
        	            int cnt824=0;

        	            for (;;)
        	            {
        	                int alt824=3;
        	        	{
        	        	   /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
        	        	    */
        	        	    int LA824_0 = LA(1);
        	        	    if ( ((((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)))||((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))) && (LA824_0 == DOUBLE_QUOTED_TEXT))
        	        	    {
        	        	        {
        	        	           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
        	        	            */
        	        	            int LA824_67 = LA(2);
        	        	            if ( ((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))
        	        	            {
        	        	                alt824=2;
        	        	            }

        	        	        }
        	        	    }
        	        	    else if ( (LA824_0 == SINGLE_QUOTED_TEXT))
        	        	    {
        	        	        alt824=1;
        	        	    }

        	        	}
        	        	switch (alt824)
        	        	{
        	        	    case 1:
        	        	        // MySQL.g:2560:54: SINGLE_QUOTED_TEXT
        	        	        {
        	        	            SINGLE_QUOTED_TEXT2946 = (pANTLR3_COMMON_TOKEN) MATCHT(SINGLE_QUOTED_TEXT, &FOLLOW_SINGLE_QUOTED_TEXT_in_string14628);
        	        	            if  (HASEXCEPTION())
        	        	            {
        	        	                goto rulestringEx;
        	        	            }
        	        	            if (HASFAILED())
        	        	            {
        	        	                return retval;
        	        	            }

        	        	            if ( BACKTRACKING==0 ) {
        	        	            SINGLE_QUOTED_TEXT2946_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SINGLE_QUOTED_TEXT2946));
        	        	            ADAPTOR->addChild(ADAPTOR, root_0, SINGLE_QUOTED_TEXT2946_tree);
        	        	            }

        	        	        }
        	        	        break;
        	        	    case 2:
        	        	        // MySQL.g:2560:75: {...}? => DOUBLE_QUOTED_TEXT
        	        	        {
        	        	            if ( !((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) )
        	        	            {
        	        	                if (BACKTRACKING>0)
        	        	                {
        	        	                    FAILEDFLAG = ANTLR3_TRUE;
        	        	                    return retval;
        	        	                }

        	        	                    CONSTRUCTEX();
        	        	                    EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	        	                    EXCEPTION->message      = (void *)"!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)";
        	        	                    EXCEPTION->ruleName	 = (void *)"string";


        	        	            }

        	        	            DOUBLE_QUOTED_TEXT2947 = (pANTLR3_COMMON_TOKEN) MATCHT(DOUBLE_QUOTED_TEXT, &FOLLOW_DOUBLE_QUOTED_TEXT_in_string14636);
        	        	            if  (HASEXCEPTION())
        	        	            {
        	        	                goto rulestringEx;
        	        	            }
        	        	            if (HASFAILED())
        	        	            {
        	        	                return retval;
        	        	            }

        	        	            if ( BACKTRACKING==0 ) {
        	        	            DOUBLE_QUOTED_TEXT2947_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOUBLE_QUOTED_TEXT2947));
        	        	            ADAPTOR->addChild(ADAPTOR, root_0, DOUBLE_QUOTED_TEXT2947_tree);
        	        	            }

        	        	        }
        	        	        break;

        	        	    default:

        	        		if ( cnt824 >= 1 )
        	        		{
        	        		    goto loop824;
        	        		}
        	        		if (BACKTRACKING>0)
        	        		{
        	        		    FAILEDFLAG = ANTLR3_TRUE;
        	        		    return retval;
        	        		}

        	        		/* mismatchedSetEx()
        	        		 */
        	        		CONSTRUCTEX();
        	        		EXCEPTION->type = ANTLR3_EARLY_EXIT_EXCEPTION;
        	        		EXCEPTION->name = (void *)ANTLR3_EARLY_EXIT_NAME;


        	        		goto rulestringEx;
        	        	}
        	        	cnt824++;
        	            }
        	            loop824: ;	/* Jump to here if this rule does not match */
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulestringEx; /* Prevent compiler warnings */
    rulestringEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end string */

/**
 * $ANTLR start number_literal
 * MySQL.g:2563:1: number_literal : ( INTEGER | FLOAT );
 */
static MySQLParser_number_literal_return
number_literal(pMySQLParser ctx)
{
    MySQLParser_number_literal_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set2948;

    pANTLR3_BASE_TREE set2948_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2948       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2948_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2563:15: ( INTEGER | FLOAT )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set2948=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == FLOAT || LA(1) == INTEGER )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2948))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto rulenumber_literalEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto rulenumber_literalEx; /* Prevent compiler warnings */
    rulenumber_literalEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end number_literal */

/**
 * $ANTLR start hex_literal
 * MySQL.g:2568:1: hex_literal : ( UNDERSCORE_CHARSET )? ( HEXNUMBER | HEXSTRING ) ;
 */
static MySQLParser_hex_literal_return
hex_literal(pMySQLParser ctx)
{
    MySQLParser_hex_literal_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    UNDERSCORE_CHARSET2949;
    pANTLR3_COMMON_TOKEN    set2950;

    pANTLR3_BASE_TREE UNDERSCORE_CHARSET2949_tree;
    pANTLR3_BASE_TREE set2950_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    UNDERSCORE_CHARSET2949       = NULL;
    set2950       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    UNDERSCORE_CHARSET2949_tree   = NULL;
    set2950_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2568:12: ( ( UNDERSCORE_CHARSET )? ( HEXNUMBER | HEXSTRING ) )
        // MySQL.g:2569:2: ( UNDERSCORE_CHARSET )? ( HEXNUMBER | HEXSTRING )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:2569:2: ( UNDERSCORE_CHARSET )?
            {
                int alt826=2;
                switch ( LA(1) )
                {
                    case UNDERSCORE_CHARSET:
                    	{
                    		alt826=1;
                    	}
                        break;
                }

                switch (alt826)
                {
            	case 1:
            	    // MySQL.g:2569:2: UNDERSCORE_CHARSET
            	    {
            	        UNDERSCORE_CHARSET2949 = (pANTLR3_COMMON_TOKEN) MATCHT(UNDERSCORE_CHARSET, &FOLLOW_UNDERSCORE_CHARSET_in_hex_literal14661);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulehex_literalEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        UNDERSCORE_CHARSET2949_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNDERSCORE_CHARSET2949));
            	        ADAPTOR->addChild(ADAPTOR, root_0, UNDERSCORE_CHARSET2949_tree);
            	        }

            	    }
            	    break;

                }
            }

            set2950=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( ((LA(1) >= HEXNUMBER) && (LA(1) <= HEXSTRING)) )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2950))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto rulehex_literalEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto rulehex_literalEx; /* Prevent compiler warnings */
    rulehex_literalEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end hex_literal */

/**
 * $ANTLR start bool_literal
 * MySQL.g:2572:1: bool_literal : ( TRUE_SYMBOL | FALSE_SYMBOL );
 */
static MySQLParser_bool_literal_return
bool_literal(pMySQLParser ctx)
{
    MySQLParser_bool_literal_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set2951;

    pANTLR3_BASE_TREE set2951_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2951       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2951_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2572:13: ( TRUE_SYMBOL | FALSE_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set2951=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == FALSE_SYMBOL || LA(1) == TRUE_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2951))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto rulebool_literalEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto rulebool_literalEx; /* Prevent compiler warnings */
    rulebool_literalEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end bool_literal */

/**
 * $ANTLR start bit_literal
 * MySQL.g:2577:1: bit_literal : ( UNDERSCORE_CHARSET )? ( BITNUMBER | BITSTRING ) ;
 */
static MySQLParser_bit_literal_return
bit_literal(pMySQLParser ctx)
{
    MySQLParser_bit_literal_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    UNDERSCORE_CHARSET2952;
    pANTLR3_COMMON_TOKEN    set2953;

    pANTLR3_BASE_TREE UNDERSCORE_CHARSET2952_tree;
    pANTLR3_BASE_TREE set2953_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    UNDERSCORE_CHARSET2952       = NULL;
    set2953       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    UNDERSCORE_CHARSET2952_tree   = NULL;
    set2953_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2577:12: ( ( UNDERSCORE_CHARSET )? ( BITNUMBER | BITSTRING ) )
        // MySQL.g:2578:2: ( UNDERSCORE_CHARSET )? ( BITNUMBER | BITSTRING )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:2578:2: ( UNDERSCORE_CHARSET )?
            {
                int alt827=2;
                switch ( LA(1) )
                {
                    case UNDERSCORE_CHARSET:
                    	{
                    		alt827=1;
                    	}
                        break;
                }

                switch (alt827)
                {
            	case 1:
            	    // MySQL.g:2578:2: UNDERSCORE_CHARSET
            	    {
            	        UNDERSCORE_CHARSET2952 = (pANTLR3_COMMON_TOKEN) MATCHT(UNDERSCORE_CHARSET, &FOLLOW_UNDERSCORE_CHARSET_in_bit_literal14693);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulebit_literalEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        UNDERSCORE_CHARSET2952_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNDERSCORE_CHARSET2952));
            	        ADAPTOR->addChild(ADAPTOR, root_0, UNDERSCORE_CHARSET2952_tree);
            	        }

            	    }
            	    break;

                }
            }

            set2953=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( ((LA(1) >= BITNUMBER) && (LA(1) <= BITSTRING)) )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2953))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto rulebit_literalEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto rulebit_literalEx; /* Prevent compiler warnings */
    rulebit_literalEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end bit_literal */

/**
 * $ANTLR start null_literal
 * MySQL.g:2581:1: null_literal : ( NULL_SYMBOL | NULL2_SYMBOL );
 */
static MySQLParser_null_literal_return
null_literal(pMySQLParser ctx)
{
    MySQLParser_null_literal_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set2954;

    pANTLR3_BASE_TREE set2954_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2954       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2954_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2581:13: ( NULL_SYMBOL | NULL2_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set2954=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == NULL2_SYMBOL || LA(1) == NULL_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2954))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto rulenull_literalEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto rulenull_literalEx; /* Prevent compiler warnings */
    rulenull_literalEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end null_literal */

/**
 * $ANTLR start temporal_literal
 * MySQL.g:2586:1: temporal_literal : ( DATE_SYMBOL string_literal | TIME_SYMBOL string_literal | TIMESTAMP_SYMBOL string_literal );
 */
static MySQLParser_temporal_literal_return
temporal_literal(pMySQLParser ctx)
{
    MySQLParser_temporal_literal_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    DATE_SYMBOL2955;
    pANTLR3_COMMON_TOKEN    TIME_SYMBOL2957;
    pANTLR3_COMMON_TOKEN    TIMESTAMP_SYMBOL2959;
    MySQLParser_string_literal_return string_literal2956;
    #undef	RETURN_TYPE_string_literal2956
    #define	RETURN_TYPE_string_literal2956 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal2958;
    #undef	RETURN_TYPE_string_literal2958
    #define	RETURN_TYPE_string_literal2958 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal2960;
    #undef	RETURN_TYPE_string_literal2960
    #define	RETURN_TYPE_string_literal2960 MySQLParser_string_literal_return

    pANTLR3_BASE_TREE DATE_SYMBOL2955_tree;
    pANTLR3_BASE_TREE TIME_SYMBOL2957_tree;
    pANTLR3_BASE_TREE TIMESTAMP_SYMBOL2959_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DATE_SYMBOL2955       = NULL;
    TIME_SYMBOL2957       = NULL;
    TIMESTAMP_SYMBOL2959       = NULL;
    string_literal2956.tree = NULL;

    string_literal2958.tree = NULL;

    string_literal2960.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DATE_SYMBOL2955_tree   = NULL;
    TIME_SYMBOL2957_tree   = NULL;
    TIMESTAMP_SYMBOL2959_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2586:17: ( DATE_SYMBOL string_literal | TIME_SYMBOL string_literal | TIMESTAMP_SYMBOL string_literal )

            ANTLR3_UINT32 alt828;

            alt828=3;

            switch ( LA(1) )
            {
            case DATE_SYMBOL:
            	{
            		alt828=1;
            	}
                break;
            case TIME_SYMBOL:
            	{
            		alt828=2;
            	}
                break;
            case TIMESTAMP_SYMBOL:
            	{
            		alt828=3;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 828;
                EXCEPTION->state        = 0;


                goto ruletemporal_literalEx;

            }

            switch (alt828)
            {
        	case 1:
        	    // MySQL.g:2587:2: DATE_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DATE_SYMBOL2955 = (pANTLR3_COMMON_TOKEN) MATCHT(DATE_SYMBOL, &FOLLOW_DATE_SYMBOL_in_temporal_literal14725);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletemporal_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DATE_SYMBOL2955_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATE_SYMBOL2955));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DATE_SYMBOL2955_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_temporal_literal14727);
        	        string_literal2956=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletemporal_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal2956.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2588:4: TIME_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TIME_SYMBOL2957 = (pANTLR3_COMMON_TOKEN) MATCHT(TIME_SYMBOL, &FOLLOW_TIME_SYMBOL_in_temporal_literal14732);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletemporal_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TIME_SYMBOL2957_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TIME_SYMBOL2957));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TIME_SYMBOL2957_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_temporal_literal14734);
        	        string_literal2958=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletemporal_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal2958.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2589:4: TIMESTAMP_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TIMESTAMP_SYMBOL2959 = (pANTLR3_COMMON_TOKEN) MATCHT(TIMESTAMP_SYMBOL, &FOLLOW_TIMESTAMP_SYMBOL_in_temporal_literal14739);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletemporal_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TIMESTAMP_SYMBOL2959_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TIMESTAMP_SYMBOL2959));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TIMESTAMP_SYMBOL2959_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_temporal_literal14741);
        	        string_literal2960=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletemporal_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal2960.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruletemporal_literalEx; /* Prevent compiler warnings */
    ruletemporal_literalEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end temporal_literal */

/**
 * $ANTLR start integer_type
 * MySQL.g:2594:1: integer_type : ( INTEGER_SYMBOL | INT_SYMBOL | TINYINT_SYMBOL | SMALLINT_SYMBOL | MEDIUMINT_SYMBOL | BIGINT_SYMBOL );
 */
static MySQLParser_integer_type_return
integer_type(pMySQLParser ctx)
{
    MySQLParser_integer_type_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set2961;

    pANTLR3_BASE_TREE set2961_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2961       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2961_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2594:13: ( INTEGER_SYMBOL | INT_SYMBOL | TINYINT_SYMBOL | SMALLINT_SYMBOL | MEDIUMINT_SYMBOL | BIGINT_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set2961=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == BIGINT_SYMBOL || LA(1) == INTEGER_SYMBOL || LA(1) == INT_SYMBOL || LA(1) == MEDIUMINT_SYMBOL || LA(1) == SMALLINT_SYMBOL || LA(1) == TINYINT_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2961))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto ruleinteger_typeEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto ruleinteger_typeEx; /* Prevent compiler warnings */
    ruleinteger_typeEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end integer_type */

/**
 * $ANTLR start real_literal
 * MySQL.g:2603:1: real_literal : ( REAL_SYMBOL | DOUBLE_SYMBOL ( PRECISION_SYMBOL )? );
 */
static MySQLParser_real_literal_return
real_literal(pMySQLParser ctx)
{
    MySQLParser_real_literal_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    REAL_SYMBOL2962;
    pANTLR3_COMMON_TOKEN    DOUBLE_SYMBOL2963;
    pANTLR3_COMMON_TOKEN    PRECISION_SYMBOL2964;

    pANTLR3_BASE_TREE REAL_SYMBOL2962_tree;
    pANTLR3_BASE_TREE DOUBLE_SYMBOL2963_tree;
    pANTLR3_BASE_TREE PRECISION_SYMBOL2964_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    REAL_SYMBOL2962       = NULL;
    DOUBLE_SYMBOL2963       = NULL;
    PRECISION_SYMBOL2964       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    REAL_SYMBOL2962_tree   = NULL;
    DOUBLE_SYMBOL2963_tree   = NULL;
    PRECISION_SYMBOL2964_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2603:13: ( REAL_SYMBOL | DOUBLE_SYMBOL ( PRECISION_SYMBOL )? )

            ANTLR3_UINT32 alt830;

            alt830=2;

            switch ( LA(1) )
            {
            case REAL_SYMBOL:
            	{
            		alt830=1;
            	}
                break;
            case DOUBLE_SYMBOL:
            	{
            		alt830=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 830;
                EXCEPTION->state        = 0;


                goto rulereal_literalEx;

            }

            switch (alt830)
            {
        	case 1:
        	    // MySQL.g:2604:2: REAL_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        REAL_SYMBOL2962 = (pANTLR3_COMMON_TOKEN) MATCHT(REAL_SYMBOL, &FOLLOW_REAL_SYMBOL_in_real_literal14786);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereal_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REAL_SYMBOL2962_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REAL_SYMBOL2962));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REAL_SYMBOL2962_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2604:16: DOUBLE_SYMBOL ( PRECISION_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DOUBLE_SYMBOL2963 = (pANTLR3_COMMON_TOKEN) MATCHT(DOUBLE_SYMBOL, &FOLLOW_DOUBLE_SYMBOL_in_real_literal14790);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereal_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DOUBLE_SYMBOL2963_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOUBLE_SYMBOL2963));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DOUBLE_SYMBOL2963_tree);
        	        }

        	        // MySQL.g:2604:30: ( PRECISION_SYMBOL )?
        	        {
        	            int alt829=2;
        	            switch ( LA(1) )
        	            {
        	                case PRECISION_SYMBOL:
        	                	{
        	                		alt829=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt829)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2604:30: PRECISION_SYMBOL
        	        	    {
        	        	        PRECISION_SYMBOL2964 = (pANTLR3_COMMON_TOKEN) MATCHT(PRECISION_SYMBOL, &FOLLOW_PRECISION_SYMBOL_in_real_literal14792);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulereal_literalEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        PRECISION_SYMBOL2964_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PRECISION_SYMBOL2964));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, PRECISION_SYMBOL2964_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulereal_literalEx; /* Prevent compiler warnings */
    rulereal_literalEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end real_literal */

/**
 * $ANTLR start float_options
 * MySQL.g:2607:1: float_options : OPEN_PAR_SYMBOL INTEGER ( COMMA_SYMBOL INTEGER )? CLOSE_PAR_SYMBOL ;
 */
static MySQLParser_float_options_return
float_options(pMySQLParser ctx)
{
    MySQLParser_float_options_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2965;
    pANTLR3_COMMON_TOKEN    INTEGER2966;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2967;
    pANTLR3_COMMON_TOKEN    INTEGER2968;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2969;

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2965_tree;
    pANTLR3_BASE_TREE INTEGER2966_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2967_tree;
    pANTLR3_BASE_TREE INTEGER2968_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2969_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL2965       = NULL;
    INTEGER2966       = NULL;
    COMMA_SYMBOL2967       = NULL;
    INTEGER2968       = NULL;
    CLOSE_PAR_SYMBOL2969       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL2965_tree   = NULL;
    INTEGER2966_tree   = NULL;
    COMMA_SYMBOL2967_tree   = NULL;
    INTEGER2968_tree   = NULL;
    CLOSE_PAR_SYMBOL2969_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2607:14: ( OPEN_PAR_SYMBOL INTEGER ( COMMA_SYMBOL INTEGER )? CLOSE_PAR_SYMBOL )
        // MySQL.g:2609:2: OPEN_PAR_SYMBOL INTEGER ( COMMA_SYMBOL INTEGER )? CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPEN_PAR_SYMBOL2965 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_float_options14804);
            if  (HASEXCEPTION())
            {
                goto rulefloat_optionsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL2965_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2965));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2965_tree);
            }

            INTEGER2966 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_float_options14806);
            if  (HASEXCEPTION())
            {
                goto rulefloat_optionsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            INTEGER2966_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER2966));
            ADAPTOR->addChild(ADAPTOR, root_0, INTEGER2966_tree);
            }

            // MySQL.g:2609:26: ( COMMA_SYMBOL INTEGER )?
            {
                int alt831=2;
                switch ( LA(1) )
                {
                    case COMMA_SYMBOL:
                    	{
                    		alt831=1;
                    	}
                        break;
                }

                switch (alt831)
                {
            	case 1:
            	    // MySQL.g:2609:27: COMMA_SYMBOL INTEGER
            	    {
            	        COMMA_SYMBOL2967 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_float_options14809);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefloat_optionsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL2967_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2967));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2967_tree);
            	        }

            	        INTEGER2968 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_float_options14811);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefloat_optionsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INTEGER2968_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER2968));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INTEGER2968_tree);
            	        }

            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL2969 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_float_options14815);
            if  (HASEXCEPTION())
            {
                goto rulefloat_optionsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL2969_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2969));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2969_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulefloat_optionsEx; /* Prevent compiler warnings */
    rulefloat_optionsEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end float_options */

/**
 * $ANTLR start precision
 * MySQL.g:2612:1: precision : OPEN_PAR_SYMBOL INTEGER COMMA_SYMBOL INTEGER CLOSE_PAR_SYMBOL ;
 */
static MySQLParser_precision_return
precision(pMySQLParser ctx)
{
    MySQLParser_precision_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2970;
    pANTLR3_COMMON_TOKEN    INTEGER2971;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2972;
    pANTLR3_COMMON_TOKEN    INTEGER2973;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2974;

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2970_tree;
    pANTLR3_BASE_TREE INTEGER2971_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2972_tree;
    pANTLR3_BASE_TREE INTEGER2973_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2974_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL2970       = NULL;
    INTEGER2971       = NULL;
    COMMA_SYMBOL2972       = NULL;
    INTEGER2973       = NULL;
    CLOSE_PAR_SYMBOL2974       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL2970_tree   = NULL;
    INTEGER2971_tree   = NULL;
    COMMA_SYMBOL2972_tree   = NULL;
    INTEGER2973_tree   = NULL;
    CLOSE_PAR_SYMBOL2974_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2612:10: ( OPEN_PAR_SYMBOL INTEGER COMMA_SYMBOL INTEGER CLOSE_PAR_SYMBOL )
        // MySQL.g:2613:2: OPEN_PAR_SYMBOL INTEGER COMMA_SYMBOL INTEGER CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPEN_PAR_SYMBOL2970 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_precision14824);
            if  (HASEXCEPTION())
            {
                goto ruleprecisionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL2970_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2970));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2970_tree);
            }

            INTEGER2971 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_precision14826);
            if  (HASEXCEPTION())
            {
                goto ruleprecisionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            INTEGER2971_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER2971));
            ADAPTOR->addChild(ADAPTOR, root_0, INTEGER2971_tree);
            }

            COMMA_SYMBOL2972 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_precision14828);
            if  (HASEXCEPTION())
            {
                goto ruleprecisionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            COMMA_SYMBOL2972_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2972));
            ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2972_tree);
            }

            INTEGER2973 = (pANTLR3_COMMON_TOKEN) MATCHT(INTEGER, &FOLLOW_INTEGER_in_precision14830);
            if  (HASEXCEPTION())
            {
                goto ruleprecisionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            INTEGER2973_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTEGER2973));
            ADAPTOR->addChild(ADAPTOR, root_0, INTEGER2973_tree);
            }

            CLOSE_PAR_SYMBOL2974 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_precision14832);
            if  (HASEXCEPTION())
            {
                goto ruleprecisionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL2974_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2974));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2974_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleprecisionEx; /* Prevent compiler warnings */
    ruleprecisionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end precision */

/**
 * $ANTLR start nchar_literal
 * MySQL.g:2616:1: nchar_literal : ( CHAR_SYMBOL |{...}? NATIONAL_SYMBOL CHAR_SYMBOL );
 */
static MySQLParser_nchar_literal_return
nchar_literal(pMySQLParser ctx)
{
    MySQLParser_nchar_literal_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    CHAR_SYMBOL2975;
    pANTLR3_COMMON_TOKEN    NATIONAL_SYMBOL2976;
    pANTLR3_COMMON_TOKEN    CHAR_SYMBOL2977;

    pANTLR3_BASE_TREE CHAR_SYMBOL2975_tree;
    pANTLR3_BASE_TREE NATIONAL_SYMBOL2976_tree;
    pANTLR3_BASE_TREE CHAR_SYMBOL2977_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CHAR_SYMBOL2975       = NULL;
    NATIONAL_SYMBOL2976       = NULL;
    CHAR_SYMBOL2977       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CHAR_SYMBOL2975_tree   = NULL;
    NATIONAL_SYMBOL2976_tree   = NULL;
    CHAR_SYMBOL2977_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2616:14: ( CHAR_SYMBOL |{...}? NATIONAL_SYMBOL CHAR_SYMBOL )

            ANTLR3_UINT32 alt832;

            alt832=2;

            switch ( LA(1) )
            {
            case CHAR_SYMBOL:
            	{
            		alt832=1;
            	}
                break;
            case NATIONAL_SYMBOL:
            	{
            		alt832=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 832;
                EXCEPTION->state        = 0;


                goto rulenchar_literalEx;

            }

            switch (alt832)
            {
        	case 1:
        	    // MySQL.g:2617:2: CHAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CHAR_SYMBOL2975 = (pANTLR3_COMMON_TOKEN) MATCHT(CHAR_SYMBOL, &FOLLOW_CHAR_SYMBOL_in_nchar_literal14841);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CHAR_SYMBOL2975_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHAR_SYMBOL2975));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CHAR_SYMBOL2975_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2618:4: {...}? NATIONAL_SYMBOL CHAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((LA(3) != VARYING_SYMBOL)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"LA(3) != VARYING_SYMBOL";
        	                EXCEPTION->ruleName	 = (void *)"nchar_literal";


        	        }

        	        NATIONAL_SYMBOL2976 = (pANTLR3_COMMON_TOKEN) MATCHT(NATIONAL_SYMBOL, &FOLLOW_NATIONAL_SYMBOL_in_nchar_literal14848);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NATIONAL_SYMBOL2976_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NATIONAL_SYMBOL2976));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NATIONAL_SYMBOL2976_tree);
        	        }

        	        CHAR_SYMBOL2977 = (pANTLR3_COMMON_TOKEN) MATCHT(CHAR_SYMBOL, &FOLLOW_CHAR_SYMBOL_in_nchar_literal14850);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CHAR_SYMBOL2977_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHAR_SYMBOL2977));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CHAR_SYMBOL2977_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulenchar_literalEx; /* Prevent compiler warnings */
    rulenchar_literalEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end nchar_literal */

/**
 * $ANTLR start varchar_literal
 * MySQL.g:2621:1: varchar_literal : ( CHAR_SYMBOL VARYING_SYMBOL | VARCHAR_SYMBOL );
 */
static MySQLParser_varchar_literal_return
varchar_literal(pMySQLParser ctx)
{
    MySQLParser_varchar_literal_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    CHAR_SYMBOL2978;
    pANTLR3_COMMON_TOKEN    VARYING_SYMBOL2979;
    pANTLR3_COMMON_TOKEN    VARCHAR_SYMBOL2980;

    pANTLR3_BASE_TREE CHAR_SYMBOL2978_tree;
    pANTLR3_BASE_TREE VARYING_SYMBOL2979_tree;
    pANTLR3_BASE_TREE VARCHAR_SYMBOL2980_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CHAR_SYMBOL2978       = NULL;
    VARYING_SYMBOL2979       = NULL;
    VARCHAR_SYMBOL2980       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CHAR_SYMBOL2978_tree   = NULL;
    VARYING_SYMBOL2979_tree   = NULL;
    VARCHAR_SYMBOL2980_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2621:16: ( CHAR_SYMBOL VARYING_SYMBOL | VARCHAR_SYMBOL )

            ANTLR3_UINT32 alt833;

            alt833=2;

            switch ( LA(1) )
            {
            case CHAR_SYMBOL:
            	{
            		alt833=1;
            	}
                break;
            case VARCHAR_SYMBOL:
            	{
            		alt833=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 833;
                EXCEPTION->state        = 0;


                goto rulevarchar_literalEx;

            }

            switch (alt833)
            {
        	case 1:
        	    // MySQL.g:2622:2: CHAR_SYMBOL VARYING_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CHAR_SYMBOL2978 = (pANTLR3_COMMON_TOKEN) MATCHT(CHAR_SYMBOL, &FOLLOW_CHAR_SYMBOL_in_varchar_literal14860);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulevarchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CHAR_SYMBOL2978_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHAR_SYMBOL2978));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CHAR_SYMBOL2978_tree);
        	        }

        	        VARYING_SYMBOL2979 = (pANTLR3_COMMON_TOKEN) MATCHT(VARYING_SYMBOL, &FOLLOW_VARYING_SYMBOL_in_varchar_literal14862);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulevarchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        VARYING_SYMBOL2979_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VARYING_SYMBOL2979));
        	        ADAPTOR->addChild(ADAPTOR, root_0, VARYING_SYMBOL2979_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2623:4: VARCHAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        VARCHAR_SYMBOL2980 = (pANTLR3_COMMON_TOKEN) MATCHT(VARCHAR_SYMBOL, &FOLLOW_VARCHAR_SYMBOL_in_varchar_literal14867);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulevarchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        VARCHAR_SYMBOL2980_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VARCHAR_SYMBOL2980));
        	        ADAPTOR->addChild(ADAPTOR, root_0, VARCHAR_SYMBOL2980_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulevarchar_literalEx; /* Prevent compiler warnings */
    rulevarchar_literalEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end varchar_literal */

/**
 * $ANTLR start nvarchar_literal
 * MySQL.g:2626:1: nvarchar_literal : ( NATIONAL_SYMBOL VARCHAR_SYMBOL | NVARCHAR_SYMBOL | NCHAR_SYMBOL VARCHAR_SYMBOL | NATIONAL_SYMBOL CHAR_SYMBOL VARYING_SYMBOL | NCHAR_SYMBOL VARYING_SYMBOL );
 */
static MySQLParser_nvarchar_literal_return
nvarchar_literal(pMySQLParser ctx)
{
    MySQLParser_nvarchar_literal_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    NATIONAL_SYMBOL2981;
    pANTLR3_COMMON_TOKEN    VARCHAR_SYMBOL2982;
    pANTLR3_COMMON_TOKEN    NVARCHAR_SYMBOL2983;
    pANTLR3_COMMON_TOKEN    NCHAR_SYMBOL2984;
    pANTLR3_COMMON_TOKEN    VARCHAR_SYMBOL2985;
    pANTLR3_COMMON_TOKEN    NATIONAL_SYMBOL2986;
    pANTLR3_COMMON_TOKEN    CHAR_SYMBOL2987;
    pANTLR3_COMMON_TOKEN    VARYING_SYMBOL2988;
    pANTLR3_COMMON_TOKEN    NCHAR_SYMBOL2989;
    pANTLR3_COMMON_TOKEN    VARYING_SYMBOL2990;

    pANTLR3_BASE_TREE NATIONAL_SYMBOL2981_tree;
    pANTLR3_BASE_TREE VARCHAR_SYMBOL2982_tree;
    pANTLR3_BASE_TREE NVARCHAR_SYMBOL2983_tree;
    pANTLR3_BASE_TREE NCHAR_SYMBOL2984_tree;
    pANTLR3_BASE_TREE VARCHAR_SYMBOL2985_tree;
    pANTLR3_BASE_TREE NATIONAL_SYMBOL2986_tree;
    pANTLR3_BASE_TREE CHAR_SYMBOL2987_tree;
    pANTLR3_BASE_TREE VARYING_SYMBOL2988_tree;
    pANTLR3_BASE_TREE NCHAR_SYMBOL2989_tree;
    pANTLR3_BASE_TREE VARYING_SYMBOL2990_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    NATIONAL_SYMBOL2981       = NULL;
    VARCHAR_SYMBOL2982       = NULL;
    NVARCHAR_SYMBOL2983       = NULL;
    NCHAR_SYMBOL2984       = NULL;
    VARCHAR_SYMBOL2985       = NULL;
    NATIONAL_SYMBOL2986       = NULL;
    CHAR_SYMBOL2987       = NULL;
    VARYING_SYMBOL2988       = NULL;
    NCHAR_SYMBOL2989       = NULL;
    VARYING_SYMBOL2990       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    NATIONAL_SYMBOL2981_tree   = NULL;
    VARCHAR_SYMBOL2982_tree   = NULL;
    NVARCHAR_SYMBOL2983_tree   = NULL;
    NCHAR_SYMBOL2984_tree   = NULL;
    VARCHAR_SYMBOL2985_tree   = NULL;
    NATIONAL_SYMBOL2986_tree   = NULL;
    CHAR_SYMBOL2987_tree   = NULL;
    VARYING_SYMBOL2988_tree   = NULL;
    NCHAR_SYMBOL2989_tree   = NULL;
    VARYING_SYMBOL2990_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2626:17: ( NATIONAL_SYMBOL VARCHAR_SYMBOL | NVARCHAR_SYMBOL | NCHAR_SYMBOL VARCHAR_SYMBOL | NATIONAL_SYMBOL CHAR_SYMBOL VARYING_SYMBOL | NCHAR_SYMBOL VARYING_SYMBOL )

            ANTLR3_UINT32 alt834;

            alt834=5;

            switch ( LA(1) )
            {
            case NATIONAL_SYMBOL:
            	{
            		switch ( LA(2) )
            		{
            		case VARCHAR_SYMBOL:
            			{
            				alt834=1;
            			}
            		    break;
            		case CHAR_SYMBOL:
            			{
            				alt834=4;
            			}
            		    break;

            		default:
            		    if (BACKTRACKING>0)
            		    {
            		        FAILEDFLAG = ANTLR3_TRUE;
            		        return retval;
            		    }

            		    CONSTRUCTEX();
            		    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            		    EXCEPTION->message      = (void *)"";
            		    EXCEPTION->decisionNum  = 834;
            		    EXCEPTION->state        = 1;


            		    goto rulenvarchar_literalEx;

            		}

            	}
                break;
            case NVARCHAR_SYMBOL:
            	{
            		alt834=2;
            	}
                break;
            case NCHAR_SYMBOL:
            	{
            		switch ( LA(2) )
            		{
            		case VARCHAR_SYMBOL:
            			{
            				alt834=3;
            			}
            		    break;
            		case VARYING_SYMBOL:
            			{
            				alt834=5;
            			}
            		    break;

            		default:
            		    if (BACKTRACKING>0)
            		    {
            		        FAILEDFLAG = ANTLR3_TRUE;
            		        return retval;
            		    }

            		    CONSTRUCTEX();
            		    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            		    EXCEPTION->message      = (void *)"";
            		    EXCEPTION->decisionNum  = 834;
            		    EXCEPTION->state        = 3;


            		    goto rulenvarchar_literalEx;

            		}

            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 834;
                EXCEPTION->state        = 0;


                goto rulenvarchar_literalEx;

            }

            switch (alt834)
            {
        	case 1:
        	    // MySQL.g:2627:2: NATIONAL_SYMBOL VARCHAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NATIONAL_SYMBOL2981 = (pANTLR3_COMMON_TOKEN) MATCHT(NATIONAL_SYMBOL, &FOLLOW_NATIONAL_SYMBOL_in_nvarchar_literal14876);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenvarchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NATIONAL_SYMBOL2981_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NATIONAL_SYMBOL2981));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NATIONAL_SYMBOL2981_tree);
        	        }

        	        VARCHAR_SYMBOL2982 = (pANTLR3_COMMON_TOKEN) MATCHT(VARCHAR_SYMBOL, &FOLLOW_VARCHAR_SYMBOL_in_nvarchar_literal14878);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenvarchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        VARCHAR_SYMBOL2982_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VARCHAR_SYMBOL2982));
        	        ADAPTOR->addChild(ADAPTOR, root_0, VARCHAR_SYMBOL2982_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2628:4: NVARCHAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NVARCHAR_SYMBOL2983 = (pANTLR3_COMMON_TOKEN) MATCHT(NVARCHAR_SYMBOL, &FOLLOW_NVARCHAR_SYMBOL_in_nvarchar_literal14883);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenvarchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NVARCHAR_SYMBOL2983_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NVARCHAR_SYMBOL2983));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NVARCHAR_SYMBOL2983_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2629:4: NCHAR_SYMBOL VARCHAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NCHAR_SYMBOL2984 = (pANTLR3_COMMON_TOKEN) MATCHT(NCHAR_SYMBOL, &FOLLOW_NCHAR_SYMBOL_in_nvarchar_literal14888);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenvarchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NCHAR_SYMBOL2984_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NCHAR_SYMBOL2984));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NCHAR_SYMBOL2984_tree);
        	        }

        	        VARCHAR_SYMBOL2985 = (pANTLR3_COMMON_TOKEN) MATCHT(VARCHAR_SYMBOL, &FOLLOW_VARCHAR_SYMBOL_in_nvarchar_literal14890);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenvarchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        VARCHAR_SYMBOL2985_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VARCHAR_SYMBOL2985));
        	        ADAPTOR->addChild(ADAPTOR, root_0, VARCHAR_SYMBOL2985_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:2630:4: NATIONAL_SYMBOL CHAR_SYMBOL VARYING_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NATIONAL_SYMBOL2986 = (pANTLR3_COMMON_TOKEN) MATCHT(NATIONAL_SYMBOL, &FOLLOW_NATIONAL_SYMBOL_in_nvarchar_literal14895);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenvarchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NATIONAL_SYMBOL2986_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NATIONAL_SYMBOL2986));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NATIONAL_SYMBOL2986_tree);
        	        }

        	        CHAR_SYMBOL2987 = (pANTLR3_COMMON_TOKEN) MATCHT(CHAR_SYMBOL, &FOLLOW_CHAR_SYMBOL_in_nvarchar_literal14897);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenvarchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CHAR_SYMBOL2987_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHAR_SYMBOL2987));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CHAR_SYMBOL2987_tree);
        	        }

        	        VARYING_SYMBOL2988 = (pANTLR3_COMMON_TOKEN) MATCHT(VARYING_SYMBOL, &FOLLOW_VARYING_SYMBOL_in_nvarchar_literal14899);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenvarchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        VARYING_SYMBOL2988_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VARYING_SYMBOL2988));
        	        ADAPTOR->addChild(ADAPTOR, root_0, VARYING_SYMBOL2988_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:2631:4: NCHAR_SYMBOL VARYING_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NCHAR_SYMBOL2989 = (pANTLR3_COMMON_TOKEN) MATCHT(NCHAR_SYMBOL, &FOLLOW_NCHAR_SYMBOL_in_nvarchar_literal14904);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenvarchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NCHAR_SYMBOL2989_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NCHAR_SYMBOL2989));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NCHAR_SYMBOL2989_tree);
        	        }

        	        VARYING_SYMBOL2990 = (pANTLR3_COMMON_TOKEN) MATCHT(VARYING_SYMBOL, &FOLLOW_VARYING_SYMBOL_in_nvarchar_literal14906);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenvarchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        VARYING_SYMBOL2990_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VARYING_SYMBOL2990));
        	        ADAPTOR->addChild(ADAPTOR, root_0, VARYING_SYMBOL2990_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulenvarchar_literalEx; /* Prevent compiler warnings */
    rulenvarchar_literalEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end nvarchar_literal */

/**
 * $ANTLR start int_or_param_marker
 * MySQL.g:2634:1: int_or_param_marker : ( INTEGER | PARAM_MARKER );
 */
static MySQLParser_int_or_param_marker_return
int_or_param_marker(pMySQLParser ctx)
{
    MySQLParser_int_or_param_marker_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set2991;

    pANTLR3_BASE_TREE set2991_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2991       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2991_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2634:20: ( INTEGER | PARAM_MARKER )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set2991=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == INTEGER || LA(1) == PARAM_MARKER )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2991))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto ruleint_or_param_markerEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto ruleint_or_param_markerEx; /* Prevent compiler warnings */
    ruleint_or_param_markerEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end int_or_param_marker */

/**
 * $ANTLR start text_or_param_marker
 * MySQL.g:2638:1: text_or_param_marker : ( string_literal | PARAM_MARKER );
 */
static MySQLParser_text_or_param_marker_return
text_or_param_marker(pMySQLParser ctx)
{
    MySQLParser_text_or_param_marker_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    PARAM_MARKER2993;
    MySQLParser_string_literal_return string_literal2992;
    #undef	RETURN_TYPE_string_literal2992
    #define	RETURN_TYPE_string_literal2992 MySQLParser_string_literal_return

    pANTLR3_BASE_TREE PARAM_MARKER2993_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PARAM_MARKER2993       = NULL;
    string_literal2992.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PARAM_MARKER2993_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2638:21: ( string_literal | PARAM_MARKER )

            ANTLR3_UINT32 alt835;

            alt835=2;

            {
                int LA835_0 = LA(1);
                if ( (LA835_0 == NCHAR_TEXT || LA835_0 == SINGLE_QUOTED_TEXT || LA835_0 == UNDERSCORE_CHARSET))
                {
                    alt835=1;
                }
                else if ( ((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && (LA835_0 == DOUBLE_QUOTED_TEXT))
                {
                    alt835=1;
                }
                else if ( (LA835_0 == PARAM_MARKER))
                {
                    alt835=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 835;
                    EXCEPTION->state        = 0;


                    goto ruletext_or_param_markerEx;

                }
            }
            switch (alt835)
            {
        	case 1:
        	    // MySQL.g:2639:2: string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_string_literal_in_text_or_param_marker14928);
        	        string_literal2992=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletext_or_param_markerEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal2992.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2639:19: PARAM_MARKER
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PARAM_MARKER2993 = (pANTLR3_COMMON_TOKEN) MATCHT(PARAM_MARKER, &FOLLOW_PARAM_MARKER_in_text_or_param_marker14932);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletext_or_param_markerEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PARAM_MARKER2993_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARAM_MARKER2993));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PARAM_MARKER2993_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruletext_or_param_markerEx; /* Prevent compiler warnings */
    ruletext_or_param_markerEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end text_or_param_marker */

/**
 * $ANTLR start text_or_identifier
 * MySQL.g:2642:1: text_or_identifier : ( string_literal | identifier );
 */
static MySQLParser_text_or_identifier_return
text_or_identifier(pMySQLParser ctx)
{
    MySQLParser_text_or_identifier_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_string_literal_return string_literal2994;
    #undef	RETURN_TYPE_string_literal2994
    #define	RETURN_TYPE_string_literal2994 MySQLParser_string_literal_return

    MySQLParser_identifier_return identifier2995;
    #undef	RETURN_TYPE_identifier2995
    #define	RETURN_TYPE_identifier2995 MySQLParser_identifier_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    string_literal2994.tree = NULL;

    identifier2995.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2642:19: ( string_literal | identifier )

            ANTLR3_UINT32 alt836;

            alt836=2;

            {
                int LA836_0 = LA(1);
                if ( (LA836_0 == NCHAR_TEXT || LA836_0 == SINGLE_QUOTED_TEXT || LA836_0 == UNDERSCORE_CHARSET))
                {
                    alt836=1;
                }
                else if ( ((((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)))||((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))) && (LA836_0 == DOUBLE_QUOTED_TEXT))
                {
                    {
                        int LA836_4 = LA(2);
                        if ( ((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))
                        {
                            alt836=1;
                        }
                        else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))
                        {
                            alt836=2;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 836;
                            EXCEPTION->state        = 4;


                            goto ruletext_or_identifierEx;

                        }
                    }
                }
                else if ( (((LA836_0 >= ACTION_SYMBOL) && (LA836_0 <= ADDDATE_SYMBOL)) || ((LA836_0 >= AFTER_SYMBOL) && (LA836_0 <= ALGORITHM_SYMBOL)) || LA836_0 == ANALYZE_SYMBOL || ((LA836_0 >= ANY_SYMBOL) && (LA836_0 <= ASCII_SYMBOL)) || ((LA836_0 >= AT_SYMBOL) && (LA836_0 <= BACKUP_SYMBOL)) || LA836_0 == BACK_TICK_QUOTED_ID || LA836_0 == BEGIN_SYMBOL || LA836_0 == BINLOG_SYMBOL || LA836_0 == BIT_SYMBOL || ((LA836_0 >= BLOCK_SYMBOL) && (LA836_0 <= BOOL_SYMBOL)) || ((LA836_0 >= BTREE_SYMBOL) && (LA836_0 <= BYTE_SYMBOL)) || LA836_0 == CACHE_SYMBOL || LA836_0 == CASCADED_SYMBOL || ((LA836_0 >= CATALOG_NAME_SYMBOL) && (LA836_0 <= CHANGED_SYMBOL)) || LA836_0 == CHARSET_SYMBOL || LA836_0 == CHECKSUM_SYMBOL || ((LA836_0 >= CIPHER_SYMBOL) && (LA836_0 <= CLIENT_SYMBOL)) || ((LA836_0 >= CLOSE_SYMBOL) && (LA836_0 <= CODE_SYMBOL)) || LA836_0 == COLLATION_SYMBOL || ((LA836_0 >= COLUMNS_SYMBOL) && (LA836_0 <= COLUMN_NAME_SYMBOL)) || ((LA836_0 >= COMMENT_SYMBOL) && (LA836_0 <= COMPRESSED_SYMBOL)) || LA836_0 == CONCURRENT_SYMBOL || ((LA836_0 >= CONNECTION_SYMBOL) && (LA836_0 <= CONSTRAINT_SCHEMA_SYMBOL)) || ((LA836_0 >= CONTAINS_SYMBOL) && (LA836_0 <= CONTEXT_SYMBOL)) || LA836_0 == CONTRIBUTORS_SYMBOL || LA836_0 == CPU_SYMBOL || LA836_0 == CUBE_SYMBOL || LA836_0 == CURRENT_SYMBOL || LA836_0 == CURSOR_NAME_SYMBOL || ((LA836_0 >= DATAFILE_SYMBOL) && (LA836_0 <= DATETIME_SYMBOL)) || LA836_0 == DATE_SYMBOL || ((LA836_0 >= DAY_SYMBOL) && (LA836_0 <= DEALLOCATE_SYMBOL)) || LA836_0 == DEFAULT_AUTH_SYMBOL || LA836_0 == DEFINER_SYMBOL || LA836_0 == DELAY_KEY_WRITE_SYMBOL || LA836_0 == DES_KEY_FILE_SYMBOL || LA836_0 == DIAGNOSTICS_SYMBOL || ((LA836_0 >= DIRECTORY_SYMBOL) && (LA836_0 <= DISK_SYMBOL)) || LA836_0 == DO_SYMBOL || ((LA836_0 >= DUMPFILE_SYMBOL) && (LA836_0 <= DYNAMIC_SYMBOL)) || LA836_0 == ENABLE_SYMBOL || LA836_0 == ENDS_SYMBOL || ((LA836_0 >= END_SYMBOL) && (LA836_0 <= ENUM_SYMBOL)) || ((LA836_0 >= ERRORS_SYMBOL) && (LA836_0 <= ERROR_SYMBOL)) || ((LA836_0 >= ESCAPE_SYMBOL) && (LA836_0 <= EVERY_SYMBOL)) || LA836_0 == EXECUTE_SYMBOL || LA836_0 == EXPANSION_SYMBOL || LA836_0 == EXPORT_SYMBOL || ((LA836_0 >= EXTENDED_SYMBOL) && (LA836_0 <= EXTENT_SIZE_SYMBOL)) || ((LA836_0 >= FAST_SYMBOL) && (LA836_0 <= FAULTS_SYMBOL)) || ((LA836_0 >= FILE_SYMBOL) && (LA836_0 <= FIXED_SYMBOL)) || LA836_0 == FLUSH_SYMBOL || LA836_0 == FORMAT_SYMBOL || LA836_0 == FOUND_SYMBOL || LA836_0 == FULL_SYMBOL || ((LA836_0 >= FUNCTION_SYMBOL) && (LA836_0 <= GET_FORMAT_SYMBOL)) || ((LA836_0 >= GLOBAL_SYMBOL) && (LA836_0 <= GRANTS_SYMBOL)) || ((LA836_0 >= HANDLER_SYMBOL) && (LA836_0 <= HASH_SYMBOL)) || LA836_0 == HELP_SYMBOL || ((LA836_0 >= HOSTS_SYMBOL) && (LA836_0 <= HOST_SYMBOL)) || ((LA836_0 >= HOUR_SYMBOL) && (LA836_0 <= IDENTIFIER)) || LA836_0 == IGNORE_SERVER_IDS_SYMBOL || ((LA836_0 >= IMPORT_SYMBOL) && (LA836_0 <= INDEXES_SYMBOL)) || LA836_0 == INITIAL_SIZE_SYMBOL || LA836_0 == INNODB_SYMBOL || LA836_0 == INSERT_METHOD_SYMBOL || LA836_0 == INSTALL_SYMBOL || LA836_0 == INVOKER_SYMBOL || LA836_0 == IO_SYMBOL || ((LA836_0 >= IPC_SYMBOL) && (LA836_0 <= ISSUER_SYMBOL)) || LA836_0 == KEY_BLOCK_SIZE_SYMBOL || ((LA836_0 >= LANGUAGE_SYMBOL) && (LA836_0 <= LAST_SYMBOL)) || LA836_0 == LEAVES_SYMBOL || LA836_0 == LESS_SYMBOL || LA836_0 == LEVEL_SYMBOL || LA836_0 == LINESTRING_SYMBOL || LA836_0 == LIST_SYMBOL || LA836_0 == LOCAL_SYMBOL || LA836_0 == LOCKS_SYMBOL || LA836_0 == LOGFILE_SYMBOL || LA836_0 == LOGS_SYMBOL || LA836_0 == MASTER_AUTO_POSITION_SYMBOL || ((LA836_0 >= MASTER_CONNECT_RETRY_SYMBOL) && (LA836_0 <= MASTER_SSL_SYMBOL)) || ((LA836_0 >= MASTER_SYMBOL) && (LA836_0 <= MASTER_USER_SYMBOL)) || ((LA836_0 >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA836_0 <= MAX_SIZE_SYMBOL)) || ((LA836_0 >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA836_0 <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA836_0 >= MEDIUM_SYMBOL) && (LA836_0 <= MICROSECOND_SYMBOL)) || LA836_0 == MIGRATE_SYMBOL || ((LA836_0 >= MINUTE_SYMBOL) && (LA836_0 <= MIN_ROWS_SYMBOL)) || LA836_0 == MODE_SYMBOL || LA836_0 == MODIFY_SYMBOL || ((LA836_0 >= MONTH_SYMBOL) && (LA836_0 <= MULTILINESTRING_SYMBOL)) || ((LA836_0 >= MULTIPOINT_SYMBOL) && (LA836_0 <= MULTIPOLYGON_SYMBOL)) || ((LA836_0 >= MUTEX_SYMBOL) && (LA836_0 <= NATIONAL_SYMBOL)) || LA836_0 == NCHAR_SYMBOL || LA836_0 == NDBCLUSTER_SYMBOL || ((LA836_0 >= NEW_SYMBOL) && (LA836_0 <= NONE_SYMBOL)) || ((LA836_0 >= NO_SYMBOL) && (LA836_0 <= NO_WAIT_SYMBOL)) || LA836_0 == NUMBER_SYMBOL || LA836_0 == NVARCHAR_SYMBOL || ((LA836_0 >= OFFSET_SYMBOL) && (LA836_0 <= ONE_SYMBOL)) || LA836_0 == OPEN_SYMBOL || LA836_0 == OPTIONS_SYMBOL || ((LA836_0 >= OWNER_SYMBOL) && (LA836_0 <= PAGE_SYMBOL)) || ((LA836_0 >= PARSER_SYMBOL) && (LA836_0 <= PARTITION_SYMBOL)) || ((LA836_0 >= PASSWORD_SYMBOL) && (LA836_0 <= PLUGIN_SYMBOL)) || ((LA836_0 >= POINT_SYMBOL) && (LA836_0 <= PORT_SYMBOL)) || ((LA836_0 >= PREPARE_SYMBOL) && (LA836_0 <= PREV_SYMBOL)) || LA836_0 == PRIVILEGES_SYMBOL || ((LA836_0 >= PROCESSLIST_SYMBOL) && (LA836_0 <= PROXY_SYMBOL)) || ((LA836_0 >= QUARTER_SYMBOL) && (LA836_0 <= QUICK_SYMBOL)) || LA836_0 == READ_ONLY_SYMBOL || ((LA836_0 >= REBUILD_SYMBOL) && (LA836_0 <= REDUNDANT_SYMBOL)) || ((LA836_0 >= RELAYLOG_SYMBOL) && (LA836_0 <= RELAY_THREAD_SYMBOL)) || ((LA836_0 >= RELOAD_SYMBOL) && (LA836_0 <= REMOVE_SYMBOL)) || ((LA836_0 >= REORGANIZE_SYMBOL) && (LA836_0 <= REPEATABLE_SYMBOL)) || LA836_0 == REPLICATION_SYMBOL || LA836_0 == RESET_SYMBOL || LA836_0 == RESTORE_SYMBOL || ((LA836_0 >= RESUME_SYMBOL) && (LA836_0 <= RETURNS_SYMBOL)) || LA836_0 == REVERSE_SYMBOL || ((LA836_0 >= ROLLBACK_SYMBOL) && (LA836_0 <= SCHEDULE_SYMBOL)) || LA836_0 == SCHEMA_NAME_SYMBOL || ((LA836_0 >= SECOND_SYMBOL) && (LA836_0 <= SECURITY_SYMBOL)) || ((LA836_0 >= SERIALIZABLE_SYMBOL) && (LA836_0 <= SERIAL_SYMBOL)) || ((LA836_0 >= SERVER_SYMBOL) && (LA836_0 <= SESSION_SYMBOL)) || LA836_0 == SHARE_SYMBOL || LA836_0 == SHUTDOWN_SYMBOL || ((LA836_0 >= SIGNED_SYMBOL) && (LA836_0 <= SIMPLE_SYMBOL)) || ((LA836_0 >= SLAVE_SYMBOL) && (LA836_0 <= SLOW_SYMBOL)) || ((LA836_0 >= SNAPSHOT_SYMBOL) && (LA836_0 <= SOURCE_SYMBOL)) || ((LA836_0 >= SQL_AFTER_GTIDS_SYMBOL) && (LA836_0 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA836_0 >= SQL_BUFFER_RESULT_SYMBOL) && (LA836_0 <= SQL_CACHE_SYMBOL)) || LA836_0 == SQL_NO_CACHE_SYMBOL || LA836_0 == SQL_THREAD_SYMBOL || ((LA836_0 >= STARTS_SYMBOL) && (LA836_0 <= STATUS_SYMBOL)) || ((LA836_0 >= STOP_SYMBOL) && (LA836_0 <= STORAGE_SYMBOL)) || ((LA836_0 >= STRING_SYMBOL) && (LA836_0 <= SUBPARTITION_SYMBOL)) || ((LA836_0 >= SUPER_SYMBOL) && (LA836_0 <= SWITCHES_SYMBOL)) || ((LA836_0 >= TABLESPACE_SYMBOL) && (LA836_0 <= TABLE_NAME_SYMBOL)) || ((LA836_0 >= TEMPORARY_SYMBOL) && (LA836_0 <= TEMPTABLE_SYMBOL)) || ((LA836_0 >= TEXT_SYMBOL) && (LA836_0 <= THAN_SYMBOL)) || ((LA836_0 >= TIMESTAMP_ADD_SYMBOL) && (LA836_0 <= TIME_SYMBOL)) || ((LA836_0 >= TRANSACTION_SYMBOL) && (LA836_0 <= TRIGGERS_SYMBOL)) || ((LA836_0 >= TRUNCATE_SYMBOL) && (LA836_0 <= UDF_RETURNS_SYMBOL)) || ((LA836_0 >= UNCOMMITTED_SYMBOL) && (LA836_0 <= UNDEFINED_SYMBOL)) || ((LA836_0 >= UNDOFILE_SYMBOL) && (LA836_0 <= UNDO_BUFFER_SIZE_SYMBOL)) || ((LA836_0 >= UNICODE_SYMBOL) && (LA836_0 <= UNINSTALL_SYMBOL)) || LA836_0 == UNKNOWN_SYMBOL || LA836_0 == UNTIL_SYMBOL || LA836_0 == UPGRADE_SYMBOL || ((LA836_0 >= USER_RESOURCES_SYMBOL) && (LA836_0 <= USE_FRM_SYMBOL)) || LA836_0 == VALUE_SYMBOL || LA836_0 == VARIABLES_SYMBOL || ((LA836_0 >= VIEW_SYMBOL) && (LA836_0 <= WEIGHT_STRING_SYMBOL)) || ((LA836_0 >= WORK_SYMBOL) && (LA836_0 <= WRAPPER_SYMBOL)) || LA836_0 == X509_SYMBOL || ((LA836_0 >= XA_SYMBOL) && (LA836_0 <= XML_SYMBOL)) || LA836_0 == YEAR_SYMBOL))
                {
                    alt836=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 836;
                    EXCEPTION->state        = 0;


                    goto ruletext_or_identifierEx;

                }
            }
            switch (alt836)
            {
        	case 1:
        	    // MySQL.g:2643:2: string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_string_literal_in_text_or_identifier14941);
        	        string_literal2994=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletext_or_identifierEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal2994.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2643:19: identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_identifier_in_text_or_identifier14945);
        	        identifier2995=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletext_or_identifierEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2995.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruletext_or_identifierEx; /* Prevent compiler warnings */
    ruletext_or_identifierEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end text_or_identifier */

/**
 * $ANTLR start float_or_param
 * MySQL.g:2646:1: float_or_param : ( FLOAT | PARAM_MARKER );
 */
static MySQLParser_float_or_param_return
float_or_param(pMySQLParser ctx)
{
    MySQLParser_float_or_param_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set2996;

    pANTLR3_BASE_TREE set2996_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2996       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2996_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2646:15: ( FLOAT | PARAM_MARKER )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set2996=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == FLOAT || LA(1) == PARAM_MARKER )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2996))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto rulefloat_or_paramEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto rulefloat_or_paramEx; /* Prevent compiler warnings */
    rulefloat_or_paramEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end float_or_param */

/**
 * $ANTLR start parentheses
 * MySQL.g:2650:1: parentheses : OPEN_PAR_SYMBOL CLOSE_PAR_SYMBOL ;
 */
static MySQLParser_parentheses_return
parentheses(pMySQLParser ctx)
{
    MySQLParser_parentheses_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2997;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2998;

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2997_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2998_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL2997       = NULL;
    CLOSE_PAR_SYMBOL2998       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL2997_tree   = NULL;
    CLOSE_PAR_SYMBOL2998_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2650:12: ( OPEN_PAR_SYMBOL CLOSE_PAR_SYMBOL )
        // MySQL.g:2651:2: OPEN_PAR_SYMBOL CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPEN_PAR_SYMBOL2997 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_parentheses14967);
            if  (HASEXCEPTION())
            {
                goto ruleparenthesesEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL2997_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2997));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2997_tree);
            }

            CLOSE_PAR_SYMBOL2998 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_parentheses14969);
            if  (HASEXCEPTION())
            {
                goto ruleparenthesesEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL2998_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2998));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2998_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleparenthesesEx; /* Prevent compiler warnings */
    ruleparenthesesEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end parentheses */

/**
 * $ANTLR start equal
 * MySQL.g:2654:1: equal : ( EQUAL_OPERATOR | ASSIGN_OPERATOR );
 */
static MySQLParser_equal_return
equal(pMySQLParser ctx)
{
    MySQLParser_equal_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set2999;

    pANTLR3_BASE_TREE set2999_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2999       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2999_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2654:6: ( EQUAL_OPERATOR | ASSIGN_OPERATOR )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set2999=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == ASSIGN_OPERATOR || LA(1) == EQUAL_OPERATOR )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2999))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto ruleequalEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto ruleequalEx; /* Prevent compiler warnings */
    ruleequalEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end equal */

/**
 * $ANTLR start option_type
 * MySQL.g:2658:1: option_type : ( GLOBAL_SYMBOL | LOCAL_SYMBOL | SESSION_SYMBOL );
 */
static MySQLParser_option_type_return
option_type(pMySQLParser ctx)
{
    MySQLParser_option_type_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set3000;

    pANTLR3_BASE_TREE set3000_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set3000       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set3000_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2658:12: ( GLOBAL_SYMBOL | LOCAL_SYMBOL | SESSION_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set3000=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == GLOBAL_SYMBOL || LA(1) == LOCAL_SYMBOL || LA(1) == SESSION_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set3000))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto ruleoption_typeEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto ruleoption_typeEx; /* Prevent compiler warnings */
    ruleoption_typeEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end option_type */

/**
 * $ANTLR start keyword
 * MySQL.g:2663:1: keyword : ( keyword_sp | ( ASCII_SYMBOL | BACKUP_SYMBOL | BEGIN_SYMBOL | BYTE_SYMBOL | CACHE_SYMBOL | CHARSET_SYMBOL | CHECKSUM_SYMBOL | CLOSE_SYMBOL | COMMENT_SYMBOL | COMMIT_SYMBOL | CONTAINS_SYMBOL | DEALLOCATE_SYMBOL | DO_SYMBOL | END_SYMBOL | EXECUTE_SYMBOL | FLUSH_SYMBOL | FORMAT_SYMBOL | HANDLER_SYMBOL | HELP_SYMBOL | HOST_SYMBOL | INSTALL_SYMBOL | LANGUAGE_SYMBOL | NO_SYMBOL | OPEN_SYMBOL | OPTIONS_SYMBOL | OWNER_SYMBOL | PARSER_SYMBOL | PARTITION_SYMBOL | PORT_SYMBOL | PREPARE_SYMBOL | REMOVE_SYMBOL | REPAIR_SYMBOL | RESET_SYMBOL | RESTORE_SYMBOL | ROLLBACK_SYMBOL | SAVEPOINT_SYMBOL | SECURITY_SYMBOL | SERVER_SYMBOL | SIGNED_SYMBOL | SOCKET_SYMBOL | SLAVE_SYMBOL | SONAME_SYMBOL | START_SYMBOL | STOP_SYMBOL | TRUNCATE_SYMBOL | UNICODE_SYMBOL | UNINSTALL_SYMBOL | WRAPPER_SYMBOL | XA_SYMBOL | UPGRADE_SYMBOL ) );
 */
static MySQLParser_keyword_return
keyword(pMySQLParser ctx)
{
    MySQLParser_keyword_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set3002;
    MySQLParser_keyword_sp_return keyword_sp3001;
    #undef	RETURN_TYPE_keyword_sp3001
    #define	RETURN_TYPE_keyword_sp3001 MySQLParser_keyword_sp_return

    pANTLR3_BASE_TREE set3002_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set3002       = NULL;
    keyword_sp3001.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set3002_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2663:8: ( keyword_sp | ( ASCII_SYMBOL | BACKUP_SYMBOL | BEGIN_SYMBOL | BYTE_SYMBOL | CACHE_SYMBOL | CHARSET_SYMBOL | CHECKSUM_SYMBOL | CLOSE_SYMBOL | COMMENT_SYMBOL | COMMIT_SYMBOL | CONTAINS_SYMBOL | DEALLOCATE_SYMBOL | DO_SYMBOL | END_SYMBOL | EXECUTE_SYMBOL | FLUSH_SYMBOL | FORMAT_SYMBOL | HANDLER_SYMBOL | HELP_SYMBOL | HOST_SYMBOL | INSTALL_SYMBOL | LANGUAGE_SYMBOL | NO_SYMBOL | OPEN_SYMBOL | OPTIONS_SYMBOL | OWNER_SYMBOL | PARSER_SYMBOL | PARTITION_SYMBOL | PORT_SYMBOL | PREPARE_SYMBOL | REMOVE_SYMBOL | REPAIR_SYMBOL | RESET_SYMBOL | RESTORE_SYMBOL | ROLLBACK_SYMBOL | SAVEPOINT_SYMBOL | SECURITY_SYMBOL | SERVER_SYMBOL | SIGNED_SYMBOL | SOCKET_SYMBOL | SLAVE_SYMBOL | SONAME_SYMBOL | START_SYMBOL | STOP_SYMBOL | TRUNCATE_SYMBOL | UNICODE_SYMBOL | UNINSTALL_SYMBOL | WRAPPER_SYMBOL | XA_SYMBOL | UPGRADE_SYMBOL ) )

            ANTLR3_UINT32 alt837;

            alt837=2;

            switch ( LA(1) )
            {
            case ACTION_SYMBOL:
            case ADDDATE_SYMBOL:
            case AFTER_SYMBOL:
            case AGAINST_SYMBOL:
            case AGGREGATE_SYMBOL:
            case ALGORITHM_SYMBOL:
            case ANALYZE_SYMBOL:
            case ANY_SYMBOL:
            case AT_SYMBOL:
            case AUTHORS_SYMBOL:
            case AUTOEXTEND_SIZE_SYMBOL:
            case AUTO_INCREMENT_SYMBOL:
            case AVG_ROW_LENGTH_SYMBOL:
            case AVG_SYMBOL:
            case BINLOG_SYMBOL:
            case BIT_SYMBOL:
            case BLOCK_SYMBOL:
            case BOOLEAN_SYMBOL:
            case BOOL_SYMBOL:
            case BTREE_SYMBOL:
            case CASCADED_SYMBOL:
            case CATALOG_NAME_SYMBOL:
            case CHAIN_SYMBOL:
            case CHANGED_SYMBOL:
            case CIPHER_SYMBOL:
            case CLASS_ORIGIN_SYMBOL:
            case CLIENT_SYMBOL:
            case COALESCE_SYMBOL:
            case CODE_SYMBOL:
            case COLLATION_SYMBOL:
            case COLUMNS_SYMBOL:
            case COLUMN_FORMAT_SYMBOL:
            case COLUMN_NAME_SYMBOL:
            case COMMITTED_SYMBOL:
            case COMPACT_SYMBOL:
            case COMPLETION_SYMBOL:
            case COMPRESSED_SYMBOL:
            case CONCURRENT_SYMBOL:
            case CONNECTION_SYMBOL:
            case CONSISTENT_SYMBOL:
            case CONSTRAINT_CATALOG_SYMBOL:
            case CONSTRAINT_NAME_SYMBOL:
            case CONSTRAINT_SCHEMA_SYMBOL:
            case CONTEXT_SYMBOL:
            case CONTRIBUTORS_SYMBOL:
            case CPU_SYMBOL:
            case CUBE_SYMBOL:
            case CURRENT_SYMBOL:
            case CURSOR_NAME_SYMBOL:
            case DATAFILE_SYMBOL:
            case DATA_SYMBOL:
            case DATETIME_SYMBOL:
            case DATE_SYMBOL:
            case DAY_SYMBOL:
            case DEFAULT_AUTH_SYMBOL:
            case DEFINER_SYMBOL:
            case DELAY_KEY_WRITE_SYMBOL:
            case DES_KEY_FILE_SYMBOL:
            case DIAGNOSTICS_SYMBOL:
            case DIRECTORY_SYMBOL:
            case DISABLE_SYMBOL:
            case DISCARD_SYMBOL:
            case DISK_SYMBOL:
            case DUMPFILE_SYMBOL:
            case DUPLICATE_SYMBOL:
            case DYNAMIC_SYMBOL:
            case ENABLE_SYMBOL:
            case ENDS_SYMBOL:
            case ENGINES_SYMBOL:
            case ENGINE_SYMBOL:
            case ENUM_SYMBOL:
            case ERRORS_SYMBOL:
            case ERROR_SYMBOL:
            case ESCAPE_SYMBOL:
            case EVENTS_SYMBOL:
            case EVENT_SYMBOL:
            case EVERY_SYMBOL:
            case EXPANSION_SYMBOL:
            case EXPORT_SYMBOL:
            case EXTENDED_SYMBOL:
            case EXTENT_SIZE_SYMBOL:
            case FAST_SYMBOL:
            case FAULTS_SYMBOL:
            case FILE_SYMBOL:
            case FIRST_SYMBOL:
            case FIXED_SYMBOL:
            case FOUND_SYMBOL:
            case FULL_SYMBOL:
            case FUNCTION_SYMBOL:
            case GENERAL_SYMBOL:
            case GEOMETRYCOLLECTION_SYMBOL:
            case GEOMETRY_SYMBOL:
            case GET_FORMAT_SYMBOL:
            case GLOBAL_SYMBOL:
            case GRANTS_SYMBOL:
            case HASH_SYMBOL:
            case HOSTS_SYMBOL:
            case HOUR_SYMBOL:
            case IDENTIFIED_SYMBOL:
            case IGNORE_SERVER_IDS_SYMBOL:
            case IMPORT_SYMBOL:
            case INDEXES_SYMBOL:
            case INITIAL_SIZE_SYMBOL:
            case INNODB_SYMBOL:
            case INSERT_METHOD_SYMBOL:
            case INVOKER_SYMBOL:
            case IO_SYMBOL:
            case IPC_SYMBOL:
            case ISOLATION_SYMBOL:
            case ISSUER_SYMBOL:
            case KEY_BLOCK_SIZE_SYMBOL:
            case LAST_SYMBOL:
            case LEAVES_SYMBOL:
            case LESS_SYMBOL:
            case LEVEL_SYMBOL:
            case LINESTRING_SYMBOL:
            case LIST_SYMBOL:
            case LOCAL_SYMBOL:
            case LOCKS_SYMBOL:
            case LOGFILE_SYMBOL:
            case LOGS_SYMBOL:
            case MASTER_AUTO_POSITION_SYMBOL:
            case MASTER_CONNECT_RETRY_SYMBOL:
            case MASTER_DELAY_SYMBOL:
            case MASTER_HEARTBEAT_PERIOD_SYMBOL:
            case MASTER_HOST_SYMBOL:
            case MASTER_LOG_FILE_SYMBOL:
            case MASTER_LOG_POS_SYMBOL:
            case MASTER_PASSWORD_SYMBOL:
            case MASTER_PORT_SYMBOL:
            case MASTER_RETRY_COUNT_SYMBOL:
            case MASTER_SERVER_ID_SYMBOL:
            case MASTER_SSL_CAPATH_SYMBOL:
            case MASTER_SSL_CA_SYMBOL:
            case MASTER_SSL_CERT_SYMBOL:
            case MASTER_SSL_CIPHER_SYMBOL:
            case MASTER_SSL_CRLPATH_SYMBOL:
            case MASTER_SSL_CRL_SYMBOL:
            case MASTER_SSL_KEY_SYMBOL:
            case MASTER_SSL_SYMBOL:
            case MASTER_SYMBOL:
            case MASTER_USER_SYMBOL:
            case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
            case MAX_QUERIES_PER_HOUR_SYMBOL:
            case MAX_ROWS_SYMBOL:
            case MAX_SIZE_SYMBOL:
            case MAX_UPDATES_PER_HOUR_SYMBOL:
            case MAX_USER_CONNECTIONS_SYMBOL:
            case MEDIUM_SYMBOL:
            case MEMORY_SYMBOL:
            case MERGE_SYMBOL:
            case MESSAGE_TEXT_SYMBOL:
            case MICROSECOND_SYMBOL:
            case MIGRATE_SYMBOL:
            case MINUTE_SYMBOL:
            case MIN_ROWS_SYMBOL:
            case MODE_SYMBOL:
            case MODIFY_SYMBOL:
            case MONTH_SYMBOL:
            case MULTILINESTRING_SYMBOL:
            case MULTIPOINT_SYMBOL:
            case MULTIPOLYGON_SYMBOL:
            case MUTEX_SYMBOL:
            case MYSQL_ERRNO_SYMBOL:
            case NAMES_SYMBOL:
            case NAME_SYMBOL:
            case NATIONAL_SYMBOL:
            case NCHAR_SYMBOL:
            case NDBCLUSTER_SYMBOL:
            case NEW_SYMBOL:
            case NEXT_SYMBOL:
            case NODEGROUP_SYMBOL:
            case NONE_SYMBOL:
            case NO_WAIT_SYMBOL:
            case NUMBER_SYMBOL:
            case NVARCHAR_SYMBOL:
            case OFFSET_SYMBOL:
            case OLD_PASSWORD_SYMBOL:
            case ONE_SHOT_SYMBOL:
            case ONE_SYMBOL:
            case PACK_KEYS_SYMBOL:
            case PAGE_SYMBOL:
            case PARTIAL_SYMBOL:
            case PARTITIONING_SYMBOL:
            case PARTITIONS_SYMBOL:
            case PASSWORD_SYMBOL:
            case PHASE_SYMBOL:
            case PLUGINS_SYMBOL:
            case PLUGIN_DIR_SYMBOL:
            case PLUGIN_SYMBOL:
            case POINT_SYMBOL:
            case POLYGON_SYMBOL:
            case PRESERVE_SYMBOL:
            case PREV_SYMBOL:
            case PRIVILEGES_SYMBOL:
            case PROCESSLIST_SYMBOL:
            case PROCESS_SYMBOL:
            case PROFILES_SYMBOL:
            case PROFILE_SYMBOL:
            case PROXY_SYMBOL:
            case QUARTER_SYMBOL:
            case QUERY_SYMBOL:
            case QUICK_SYMBOL:
            case READ_ONLY_SYMBOL:
            case REBUILD_SYMBOL:
            case RECOVER_SYMBOL:
            case REDOFILE_SYMBOL:
            case REDO_BUFFER_SIZE_SYMBOL:
            case REDUNDANT_SYMBOL:
            case RELAYLOG_SYMBOL:
            case RELAY_LOG_FILE_SYMBOL:
            case RELAY_LOG_POS_SYMBOL:
            case RELAY_SYMBOL:
            case RELAY_THREAD_SYMBOL:
            case RELOAD_SYMBOL:
            case REORGANIZE_SYMBOL:
            case REPEATABLE_SYMBOL:
            case REPLICATION_SYMBOL:
            case RESUME_SYMBOL:
            case RETURNED_SQLSTATE_SYMBOL:
            case RETURNS_SYMBOL:
            case REVERSE_SYMBOL:
            case ROLLUP_SYMBOL:
            case ROUTINE_SYMBOL:
            case ROWS_SYMBOL:
            case ROW_COUNT_SYMBOL:
            case ROW_FORMAT_SYMBOL:
            case ROW_SYMBOL:
            case RTREE_SYMBOL:
            case SCHEDULE_SYMBOL:
            case SCHEMA_NAME_SYMBOL:
            case SECOND_SYMBOL:
            case SERIALIZABLE_SYMBOL:
            case SERIAL_SYMBOL:
            case SESSION_SYMBOL:
            case SHARE_SYMBOL:
            case SHUTDOWN_SYMBOL:
            case SIMPLE_SYMBOL:
            case SLOW_SYMBOL:
            case SNAPSHOT_SYMBOL:
            case SOUNDS_SYMBOL:
            case SOURCE_SYMBOL:
            case SQL_AFTER_GTIDS_SYMBOL:
            case SQL_AFTER_MTS_GAPS_SYMBOL:
            case SQL_BEFORE_GTIDS_SYMBOL:
            case SQL_BUFFER_RESULT_SYMBOL:
            case SQL_CACHE_SYMBOL:
            case SQL_NO_CACHE_SYMBOL:
            case SQL_THREAD_SYMBOL:
            case STARTS_SYMBOL:
            case STATS_AUTO_RECALC_SYMBOL:
            case STATS_PERSISTENT_SYMBOL:
            case STATS_SAMPLE_PAGES_SYMBOL:
            case STATUS_SYMBOL:
            case STORAGE_SYMBOL:
            case STRING_SYMBOL:
            case SUBCLASS_ORIGIN_SYMBOL:
            case SUBDATE_SYMBOL:
            case SUBJECT_SYMBOL:
            case SUBPARTITIONS_SYMBOL:
            case SUBPARTITION_SYMBOL:
            case SUPER_SYMBOL:
            case SUSPEND_SYMBOL:
            case SWAPS_SYMBOL:
            case SWITCHES_SYMBOL:
            case TABLESPACE_SYMBOL:
            case TABLES_SYMBOL:
            case TABLE_CHECKSUM_SYMBOL:
            case TABLE_NAME_SYMBOL:
            case TEMPORARY_SYMBOL:
            case TEMPTABLE_SYMBOL:
            case TEXT_SYMBOL:
            case THAN_SYMBOL:
            case TIMESTAMP_ADD_SYMBOL:
            case TIMESTAMP_DIFF_SYMBOL:
            case TIMESTAMP_SYMBOL:
            case TIME_SYMBOL:
            case TRANSACTION_SYMBOL:
            case TRIGGERS_SYMBOL:
            case TYPES_SYMBOL:
            case TYPE_SYMBOL:
            case UDF_RETURNS_SYMBOL:
            case UNCOMMITTED_SYMBOL:
            case UNDEFINED_SYMBOL:
            case UNDOFILE_SYMBOL:
            case UNDO_BUFFER_SIZE_SYMBOL:
            case UNKNOWN_SYMBOL:
            case UNTIL_SYMBOL:
            case USER_RESOURCES_SYMBOL:
            case USER_SYMBOL:
            case USE_FRM_SYMBOL:
            case VALUE_SYMBOL:
            case VARIABLES_SYMBOL:
            case VIEW_SYMBOL:
            case WAIT_SYMBOL:
            case WARNINGS_SYMBOL:
            case WEEK_SYMBOL:
            case WEIGHT_STRING_SYMBOL:
            case WORK_SYMBOL:
            case X509_SYMBOL:
            case XML_SYMBOL:
            case YEAR_SYMBOL:
            	{
            		alt837=1;
            	}
                break;
            case ASCII_SYMBOL:
            case BACKUP_SYMBOL:
            case BEGIN_SYMBOL:
            case BYTE_SYMBOL:
            case CACHE_SYMBOL:
            case CHARSET_SYMBOL:
            case CHECKSUM_SYMBOL:
            case CLOSE_SYMBOL:
            case COMMENT_SYMBOL:
            case COMMIT_SYMBOL:
            case CONTAINS_SYMBOL:
            case DEALLOCATE_SYMBOL:
            case DO_SYMBOL:
            case END_SYMBOL:
            case EXECUTE_SYMBOL:
            case FLUSH_SYMBOL:
            case FORMAT_SYMBOL:
            case HANDLER_SYMBOL:
            case HELP_SYMBOL:
            case HOST_SYMBOL:
            case INSTALL_SYMBOL:
            case LANGUAGE_SYMBOL:
            case NO_SYMBOL:
            case OPEN_SYMBOL:
            case OPTIONS_SYMBOL:
            case OWNER_SYMBOL:
            case PARSER_SYMBOL:
            case PARTITION_SYMBOL:
            case PORT_SYMBOL:
            case PREPARE_SYMBOL:
            case REMOVE_SYMBOL:
            case REPAIR_SYMBOL:
            case RESET_SYMBOL:
            case RESTORE_SYMBOL:
            case ROLLBACK_SYMBOL:
            case SAVEPOINT_SYMBOL:
            case SECURITY_SYMBOL:
            case SERVER_SYMBOL:
            case SIGNED_SYMBOL:
            case SLAVE_SYMBOL:
            case SOCKET_SYMBOL:
            case SONAME_SYMBOL:
            case START_SYMBOL:
            case STOP_SYMBOL:
            case TRUNCATE_SYMBOL:
            case UNICODE_SYMBOL:
            case UNINSTALL_SYMBOL:
            case UPGRADE_SYMBOL:
            case WRAPPER_SYMBOL:
            case XA_SYMBOL:
            	{
            		alt837=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 837;
                EXCEPTION->state        = 0;


                goto rulekeywordEx;

            }

            switch (alt837)
            {
        	case 1:
        	    // MySQL.g:2664:2: keyword_sp
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_keyword_sp_in_keyword15009);
        	        keyword_sp3001=keyword_sp(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulekeywordEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, keyword_sp3001.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2666:2: ( ASCII_SYMBOL | BACKUP_SYMBOL | BEGIN_SYMBOL | BYTE_SYMBOL | CACHE_SYMBOL | CHARSET_SYMBOL | CHECKSUM_SYMBOL | CLOSE_SYMBOL | COMMENT_SYMBOL | COMMIT_SYMBOL | CONTAINS_SYMBOL | DEALLOCATE_SYMBOL | DO_SYMBOL | END_SYMBOL | EXECUTE_SYMBOL | FLUSH_SYMBOL | FORMAT_SYMBOL | HANDLER_SYMBOL | HELP_SYMBOL | HOST_SYMBOL | INSTALL_SYMBOL | LANGUAGE_SYMBOL | NO_SYMBOL | OPEN_SYMBOL | OPTIONS_SYMBOL | OWNER_SYMBOL | PARSER_SYMBOL | PARTITION_SYMBOL | PORT_SYMBOL | PREPARE_SYMBOL | REMOVE_SYMBOL | REPAIR_SYMBOL | RESET_SYMBOL | RESTORE_SYMBOL | ROLLBACK_SYMBOL | SAVEPOINT_SYMBOL | SECURITY_SYMBOL | SERVER_SYMBOL | SIGNED_SYMBOL | SOCKET_SYMBOL | SLAVE_SYMBOL | SONAME_SYMBOL | START_SYMBOL | STOP_SYMBOL | TRUNCATE_SYMBOL | UNICODE_SYMBOL | UNINSTALL_SYMBOL | WRAPPER_SYMBOL | XA_SYMBOL | UPGRADE_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set3002=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == ASCII_SYMBOL || LA(1) == BACKUP_SYMBOL || LA(1) == BEGIN_SYMBOL || LA(1) == BYTE_SYMBOL || LA(1) == CACHE_SYMBOL || LA(1) == CHARSET_SYMBOL || LA(1) == CHECKSUM_SYMBOL || LA(1) == CLOSE_SYMBOL || LA(1) == COMMENT_SYMBOL || LA(1) == COMMIT_SYMBOL || LA(1) == CONTAINS_SYMBOL || LA(1) == DEALLOCATE_SYMBOL || LA(1) == DO_SYMBOL || LA(1) == END_SYMBOL || LA(1) == EXECUTE_SYMBOL || LA(1) == FLUSH_SYMBOL || LA(1) == FORMAT_SYMBOL || LA(1) == HANDLER_SYMBOL || LA(1) == HELP_SYMBOL || LA(1) == HOST_SYMBOL || LA(1) == INSTALL_SYMBOL || LA(1) == LANGUAGE_SYMBOL || LA(1) == NO_SYMBOL || LA(1) == OPEN_SYMBOL || LA(1) == OPTIONS_SYMBOL || LA(1) == OWNER_SYMBOL || LA(1) == PARSER_SYMBOL || LA(1) == PARTITION_SYMBOL || LA(1) == PORT_SYMBOL || LA(1) == PREPARE_SYMBOL || LA(1) == REMOVE_SYMBOL || LA(1) == REPAIR_SYMBOL || LA(1) == RESET_SYMBOL || LA(1) == RESTORE_SYMBOL || LA(1) == ROLLBACK_SYMBOL || LA(1) == SAVEPOINT_SYMBOL || LA(1) == SECURITY_SYMBOL || LA(1) == SERVER_SYMBOL || LA(1) == SIGNED_SYMBOL || LA(1) == SLAVE_SYMBOL || ((LA(1) >= SOCKET_SYMBOL) && (LA(1) <= SONAME_SYMBOL)) || LA(1) == START_SYMBOL || LA(1) == STOP_SYMBOL || LA(1) == TRUNCATE_SYMBOL || ((LA(1) >= UNICODE_SYMBOL) && (LA(1) <= UNINSTALL_SYMBOL)) || LA(1) == UPGRADE_SYMBOL || LA(1) == WRAPPER_SYMBOL || LA(1) == XA_SYMBOL )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set3002))
        	            );
        	            PERRORRECOVERY=ANTLR3_FALSE;
        	            FAILEDFLAG=ANTLR3_FALSE;

        	        }
        	        else
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	            CONSTRUCTEX();
        	            EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
        	            EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
        	            EXCEPTION->expectingSet = NULL;

        	            goto rulekeywordEx;
        	        }


        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulekeywordEx; /* Prevent compiler warnings */
    rulekeywordEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    {

        	// This part is quite ugly but there are limitations in the C target generator which prevent us
        	// from using the target neutral constructs to change the token type.
        	retval.start->setType(retval.start, IDENTIFIER);

    }

    return retval;
}
/* $ANTLR end keyword */

/**
 * $ANTLR start keyword_sp
 * MySQL.g:2732:1: keyword_sp : ( ACTION_SYMBOL | ADDDATE_SYMBOL | AFTER_SYMBOL | AGAINST_SYMBOL | AGGREGATE_SYMBOL | ALGORITHM_SYMBOL | ANALYZE_SYMBOL | ANY_SYMBOL | AT_SYMBOL | AUTHORS_SYMBOL | AUTO_INCREMENT_SYMBOL | AUTOEXTEND_SIZE_SYMBOL | AVG_ROW_LENGTH_SYMBOL | AVG_SYMBOL | BINLOG_SYMBOL | BIT_SYMBOL | BLOCK_SYMBOL | BOOL_SYMBOL | BOOLEAN_SYMBOL | BTREE_SYMBOL | CASCADED_SYMBOL | CATALOG_NAME_SYMBOL | CHAIN_SYMBOL | CHANGED_SYMBOL | CIPHER_SYMBOL | CLIENT_SYMBOL | CLASS_ORIGIN_SYMBOL | COALESCE_SYMBOL | CODE_SYMBOL | COLLATION_SYMBOL | COLUMN_NAME_SYMBOL | COLUMN_FORMAT_SYMBOL | COLUMNS_SYMBOL | COMMITTED_SYMBOL | COMPACT_SYMBOL | COMPLETION_SYMBOL | COMPRESSED_SYMBOL | CONCURRENT_SYMBOL | CONNECTION_SYMBOL | CONSISTENT_SYMBOL | CONSTRAINT_CATALOG_SYMBOL | CONSTRAINT_SCHEMA_SYMBOL | CONSTRAINT_NAME_SYMBOL | CONTEXT_SYMBOL | CONTRIBUTORS_SYMBOL | CPU_SYMBOL | CUBE_SYMBOL | CURRENT_SYMBOL | CURSOR_NAME_SYMBOL | DATA_SYMBOL | DATAFILE_SYMBOL | DATETIME_SYMBOL | DATE_SYMBOL | DAY_SYMBOL | DEFAULT_AUTH_SYMBOL | DEFINER_SYMBOL | DELAY_KEY_WRITE_SYMBOL | DES_KEY_FILE_SYMBOL | DIAGNOSTICS_SYMBOL | DIRECTORY_SYMBOL | DISABLE_SYMBOL | DISCARD_SYMBOL | DISK_SYMBOL | DUMPFILE_SYMBOL | DUPLICATE_SYMBOL | DYNAMIC_SYMBOL | ENDS_SYMBOL | ENUM_SYMBOL | ENGINE_SYMBOL | ENGINES_SYMBOL | ERROR_SYMBOL | ERRORS_SYMBOL | ESCAPE_SYMBOL | EVENT_SYMBOL | EVENTS_SYMBOL | EVERY_SYMBOL | EXPANSION_SYMBOL | EXPORT_SYMBOL | EXTENDED_SYMBOL | EXTENT_SIZE_SYMBOL | FAULTS_SYMBOL | FAST_SYMBOL | FOUND_SYMBOL | ENABLE_SYMBOL | FULL_SYMBOL | FILE_SYMBOL | FIRST_SYMBOL | FIXED_SYMBOL | GENERAL_SYMBOL | GEOMETRY_SYMBOL | GEOMETRYCOLLECTION_SYMBOL | GET_FORMAT_SYMBOL | GRANTS_SYMBOL | GLOBAL_SYMBOL | HASH_SYMBOL | HOSTS_SYMBOL | HOUR_SYMBOL | IDENTIFIED_SYMBOL | IGNORE_SERVER_IDS_SYMBOL | INVOKER_SYMBOL | IMPORT_SYMBOL | INDEXES_SYMBOL | INITIAL_SIZE_SYMBOL | IO_SYMBOL | IPC_SYMBOL | ISOLATION_SYMBOL | ISSUER_SYMBOL | INSERT_METHOD_SYMBOL | KEY_BLOCK_SIZE_SYMBOL | LAST_SYMBOL | LEAVES_SYMBOL | LESS_SYMBOL | LEVEL_SYMBOL | LINESTRING_SYMBOL | LIST_SYMBOL | LOCAL_SYMBOL | LOCKS_SYMBOL | LOGFILE_SYMBOL | LOGS_SYMBOL | MAX_ROWS_SYMBOL | MASTER_SYMBOL | MASTER_HEARTBEAT_PERIOD_SYMBOL | MASTER_HOST_SYMBOL | MASTER_PORT_SYMBOL | MASTER_LOG_FILE_SYMBOL | MASTER_LOG_POS_SYMBOL | MASTER_USER_SYMBOL | MASTER_PASSWORD_SYMBOL | MASTER_SERVER_ID_SYMBOL | MASTER_CONNECT_RETRY_SYMBOL | MASTER_RETRY_COUNT_SYMBOL | MASTER_DELAY_SYMBOL | MASTER_SSL_SYMBOL | MASTER_SSL_CA_SYMBOL | MASTER_SSL_CAPATH_SYMBOL | MASTER_SSL_CERT_SYMBOL | MASTER_SSL_CIPHER_SYMBOL | MASTER_SSL_CRL_SYMBOL | MASTER_SSL_CRLPATH_SYMBOL | MASTER_SSL_KEY_SYMBOL | MASTER_AUTO_POSITION_SYMBOL | MAX_CONNECTIONS_PER_HOUR_SYMBOL | MAX_QUERIES_PER_HOUR_SYMBOL | MAX_SIZE_SYMBOL | MAX_UPDATES_PER_HOUR_SYMBOL | MAX_USER_CONNECTIONS_SYMBOL | MEDIUM_SYMBOL | MEMORY_SYMBOL | MERGE_SYMBOL | MESSAGE_TEXT_SYMBOL | MICROSECOND_SYMBOL | MIGRATE_SYMBOL | MINUTE_SYMBOL | MIN_ROWS_SYMBOL | MODIFY_SYMBOL | MODE_SYMBOL | MONTH_SYMBOL | MULTILINESTRING_SYMBOL | MULTIPOINT_SYMBOL | MULTIPOLYGON_SYMBOL | MUTEX_SYMBOL | MYSQL_ERRNO_SYMBOL | NAME_SYMBOL | NAMES_SYMBOL | NATIONAL_SYMBOL | NCHAR_SYMBOL | NDBCLUSTER_SYMBOL | NEXT_SYMBOL | NEW_SYMBOL | NO_WAIT_SYMBOL | NODEGROUP_SYMBOL | NONE_SYMBOL | NUMBER_SYMBOL | NVARCHAR_SYMBOL | OFFSET_SYMBOL | OLD_PASSWORD_SYMBOL | ONE_SHOT_SYMBOL | ONE_SYMBOL | PACK_KEYS_SYMBOL | PAGE_SYMBOL | PARTIAL_SYMBOL | PARTITIONING_SYMBOL | PARTITIONS_SYMBOL | PASSWORD_SYMBOL | PHASE_SYMBOL | PLUGIN_DIR_SYMBOL | PLUGIN_SYMBOL | PLUGINS_SYMBOL | POINT_SYMBOL | POLYGON_SYMBOL | PRESERVE_SYMBOL | PREV_SYMBOL | PRIVILEGES_SYMBOL | PROCESS_SYMBOL | PROCESSLIST_SYMBOL | PROFILE_SYMBOL | PROFILES_SYMBOL | PROXY_SYMBOL | QUARTER_SYMBOL | QUERY_SYMBOL | QUICK_SYMBOL | READ_ONLY_SYMBOL | REBUILD_SYMBOL | RECOVER_SYMBOL | REDO_BUFFER_SIZE_SYMBOL | REDOFILE_SYMBOL | REDUNDANT_SYMBOL | RELAY_SYMBOL | RELAYLOG_SYMBOL | RELAY_LOG_FILE_SYMBOL | RELAY_LOG_POS_SYMBOL | RELAY_THREAD_SYMBOL | RELOAD_SYMBOL | REORGANIZE_SYMBOL | REPEATABLE_SYMBOL | REPLICATION_SYMBOL | RESUME_SYMBOL | RETURNED_SQLSTATE_SYMBOL | RETURNS_SYMBOL | REVERSE_SYMBOL | ROLLUP_SYMBOL | ROUTINE_SYMBOL | ROWS_SYMBOL | ROW_COUNT_SYMBOL | ROW_FORMAT_SYMBOL | ROW_SYMBOL | RTREE_SYMBOL | SCHEDULE_SYMBOL | SCHEMA_NAME_SYMBOL | SECOND_SYMBOL | SERIAL_SYMBOL | SERIALIZABLE_SYMBOL | SESSION_SYMBOL | SIMPLE_SYMBOL | SHARE_SYMBOL | SHUTDOWN_SYMBOL | SLOW_SYMBOL | SNAPSHOT_SYMBOL | SOUNDS_SYMBOL | SOURCE_SYMBOL | SQL_AFTER_GTIDS_SYMBOL | SQL_AFTER_MTS_GAPS_SYMBOL | SQL_BEFORE_GTIDS_SYMBOL | SQL_CACHE_SYMBOL | SQL_BUFFER_RESULT_SYMBOL | SQL_NO_CACHE_SYMBOL | SQL_THREAD_SYMBOL | STARTS_SYMBOL | STATS_AUTO_RECALC_SYMBOL | STATS_PERSISTENT_SYMBOL | STATS_SAMPLE_PAGES_SYMBOL | STATUS_SYMBOL | STORAGE_SYMBOL | STRING_SYMBOL | SUBCLASS_ORIGIN_SYMBOL | SUBDATE_SYMBOL | SUBJECT_SYMBOL | SUBPARTITION_SYMBOL | SUBPARTITIONS_SYMBOL | SUPER_SYMBOL | SUSPEND_SYMBOL | SWAPS_SYMBOL | SWITCHES_SYMBOL | TABLE_NAME_SYMBOL | TABLES_SYMBOL | TABLE_CHECKSUM_SYMBOL | TABLESPACE_SYMBOL | TEMPORARY_SYMBOL | TEMPTABLE_SYMBOL | TEXT_SYMBOL | THAN_SYMBOL | TRANSACTION_SYMBOL | TRIGGERS_SYMBOL | TIMESTAMP_SYMBOL | TIMESTAMP_ADD_SYMBOL | TIMESTAMP_DIFF_SYMBOL | TIME_SYMBOL | TYPES_SYMBOL | TYPE_SYMBOL | UDF_RETURNS_SYMBOL | FUNCTION_SYMBOL | UNCOMMITTED_SYMBOL | UNDEFINED_SYMBOL | UNDO_BUFFER_SIZE_SYMBOL | UNDOFILE_SYMBOL | UNKNOWN_SYMBOL | UNTIL_SYMBOL | USER_RESOURCES_SYMBOL | USER_SYMBOL | USE_FRM_SYMBOL | VARIABLES_SYMBOL | VIEW_SYMBOL | VALUE_SYMBOL | WARNINGS_SYMBOL | WAIT_SYMBOL | WEEK_SYMBOL | WORK_SYMBOL | WEIGHT_STRING_SYMBOL | X509_SYMBOL | XML_SYMBOL | YEAR_SYMBOL | INNODB_SYMBOL );
 */
static MySQLParser_keyword_sp_return
keyword_sp(pMySQLParser ctx)
{
    MySQLParser_keyword_sp_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set3003;

    pANTLR3_BASE_TREE set3003_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set3003       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set3003_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2732:11: ( ACTION_SYMBOL | ADDDATE_SYMBOL | AFTER_SYMBOL | AGAINST_SYMBOL | AGGREGATE_SYMBOL | ALGORITHM_SYMBOL | ANALYZE_SYMBOL | ANY_SYMBOL | AT_SYMBOL | AUTHORS_SYMBOL | AUTO_INCREMENT_SYMBOL | AUTOEXTEND_SIZE_SYMBOL | AVG_ROW_LENGTH_SYMBOL | AVG_SYMBOL | BINLOG_SYMBOL | BIT_SYMBOL | BLOCK_SYMBOL | BOOL_SYMBOL | BOOLEAN_SYMBOL | BTREE_SYMBOL | CASCADED_SYMBOL | CATALOG_NAME_SYMBOL | CHAIN_SYMBOL | CHANGED_SYMBOL | CIPHER_SYMBOL | CLIENT_SYMBOL | CLASS_ORIGIN_SYMBOL | COALESCE_SYMBOL | CODE_SYMBOL | COLLATION_SYMBOL | COLUMN_NAME_SYMBOL | COLUMN_FORMAT_SYMBOL | COLUMNS_SYMBOL | COMMITTED_SYMBOL | COMPACT_SYMBOL | COMPLETION_SYMBOL | COMPRESSED_SYMBOL | CONCURRENT_SYMBOL | CONNECTION_SYMBOL | CONSISTENT_SYMBOL | CONSTRAINT_CATALOG_SYMBOL | CONSTRAINT_SCHEMA_SYMBOL | CONSTRAINT_NAME_SYMBOL | CONTEXT_SYMBOL | CONTRIBUTORS_SYMBOL | CPU_SYMBOL | CUBE_SYMBOL | CURRENT_SYMBOL | CURSOR_NAME_SYMBOL | DATA_SYMBOL | DATAFILE_SYMBOL | DATETIME_SYMBOL | DATE_SYMBOL | DAY_SYMBOL | DEFAULT_AUTH_SYMBOL | DEFINER_SYMBOL | DELAY_KEY_WRITE_SYMBOL | DES_KEY_FILE_SYMBOL | DIAGNOSTICS_SYMBOL | DIRECTORY_SYMBOL | DISABLE_SYMBOL | DISCARD_SYMBOL | DISK_SYMBOL | DUMPFILE_SYMBOL | DUPLICATE_SYMBOL | DYNAMIC_SYMBOL | ENDS_SYMBOL | ENUM_SYMBOL | ENGINE_SYMBOL | ENGINES_SYMBOL | ERROR_SYMBOL | ERRORS_SYMBOL | ESCAPE_SYMBOL | EVENT_SYMBOL | EVENTS_SYMBOL | EVERY_SYMBOL | EXPANSION_SYMBOL | EXPORT_SYMBOL | EXTENDED_SYMBOL | EXTENT_SIZE_SYMBOL | FAULTS_SYMBOL | FAST_SYMBOL | FOUND_SYMBOL | ENABLE_SYMBOL | FULL_SYMBOL | FILE_SYMBOL | FIRST_SYMBOL | FIXED_SYMBOL | GENERAL_SYMBOL | GEOMETRY_SYMBOL | GEOMETRYCOLLECTION_SYMBOL | GET_FORMAT_SYMBOL | GRANTS_SYMBOL | GLOBAL_SYMBOL | HASH_SYMBOL | HOSTS_SYMBOL | HOUR_SYMBOL | IDENTIFIED_SYMBOL | IGNORE_SERVER_IDS_SYMBOL | INVOKER_SYMBOL | IMPORT_SYMBOL | INDEXES_SYMBOL | INITIAL_SIZE_SYMBOL | IO_SYMBOL | IPC_SYMBOL | ISOLATION_SYMBOL | ISSUER_SYMBOL | INSERT_METHOD_SYMBOL | KEY_BLOCK_SIZE_SYMBOL | LAST_SYMBOL | LEAVES_SYMBOL | LESS_SYMBOL | LEVEL_SYMBOL | LINESTRING_SYMBOL | LIST_SYMBOL | LOCAL_SYMBOL | LOCKS_SYMBOL | LOGFILE_SYMBOL | LOGS_SYMBOL | MAX_ROWS_SYMBOL | MASTER_SYMBOL | MASTER_HEARTBEAT_PERIOD_SYMBOL | MASTER_HOST_SYMBOL | MASTER_PORT_SYMBOL | MASTER_LOG_FILE_SYMBOL | MASTER_LOG_POS_SYMBOL | MASTER_USER_SYMBOL | MASTER_PASSWORD_SYMBOL | MASTER_SERVER_ID_SYMBOL | MASTER_CONNECT_RETRY_SYMBOL | MASTER_RETRY_COUNT_SYMBOL | MASTER_DELAY_SYMBOL | MASTER_SSL_SYMBOL | MASTER_SSL_CA_SYMBOL | MASTER_SSL_CAPATH_SYMBOL | MASTER_SSL_CERT_SYMBOL | MASTER_SSL_CIPHER_SYMBOL | MASTER_SSL_CRL_SYMBOL | MASTER_SSL_CRLPATH_SYMBOL | MASTER_SSL_KEY_SYMBOL | MASTER_AUTO_POSITION_SYMBOL | MAX_CONNECTIONS_PER_HOUR_SYMBOL | MAX_QUERIES_PER_HOUR_SYMBOL | MAX_SIZE_SYMBOL | MAX_UPDATES_PER_HOUR_SYMBOL | MAX_USER_CONNECTIONS_SYMBOL | MEDIUM_SYMBOL | MEMORY_SYMBOL | MERGE_SYMBOL | MESSAGE_TEXT_SYMBOL | MICROSECOND_SYMBOL | MIGRATE_SYMBOL | MINUTE_SYMBOL | MIN_ROWS_SYMBOL | MODIFY_SYMBOL | MODE_SYMBOL | MONTH_SYMBOL | MULTILINESTRING_SYMBOL | MULTIPOINT_SYMBOL | MULTIPOLYGON_SYMBOL | MUTEX_SYMBOL | MYSQL_ERRNO_SYMBOL | NAME_SYMBOL | NAMES_SYMBOL | NATIONAL_SYMBOL | NCHAR_SYMBOL | NDBCLUSTER_SYMBOL | NEXT_SYMBOL | NEW_SYMBOL | NO_WAIT_SYMBOL | NODEGROUP_SYMBOL | NONE_SYMBOL | NUMBER_SYMBOL | NVARCHAR_SYMBOL | OFFSET_SYMBOL | OLD_PASSWORD_SYMBOL | ONE_SHOT_SYMBOL | ONE_SYMBOL | PACK_KEYS_SYMBOL | PAGE_SYMBOL | PARTIAL_SYMBOL | PARTITIONING_SYMBOL | PARTITIONS_SYMBOL | PASSWORD_SYMBOL | PHASE_SYMBOL | PLUGIN_DIR_SYMBOL | PLUGIN_SYMBOL | PLUGINS_SYMBOL | POINT_SYMBOL | POLYGON_SYMBOL | PRESERVE_SYMBOL | PREV_SYMBOL | PRIVILEGES_SYMBOL | PROCESS_SYMBOL | PROCESSLIST_SYMBOL | PROFILE_SYMBOL | PROFILES_SYMBOL | PROXY_SYMBOL | QUARTER_SYMBOL | QUERY_SYMBOL | QUICK_SYMBOL | READ_ONLY_SYMBOL | REBUILD_SYMBOL | RECOVER_SYMBOL | REDO_BUFFER_SIZE_SYMBOL | REDOFILE_SYMBOL | REDUNDANT_SYMBOL | RELAY_SYMBOL | RELAYLOG_SYMBOL | RELAY_LOG_FILE_SYMBOL | RELAY_LOG_POS_SYMBOL | RELAY_THREAD_SYMBOL | RELOAD_SYMBOL | REORGANIZE_SYMBOL | REPEATABLE_SYMBOL | REPLICATION_SYMBOL | RESUME_SYMBOL | RETURNED_SQLSTATE_SYMBOL | RETURNS_SYMBOL | REVERSE_SYMBOL | ROLLUP_SYMBOL | ROUTINE_SYMBOL | ROWS_SYMBOL | ROW_COUNT_SYMBOL | ROW_FORMAT_SYMBOL | ROW_SYMBOL | RTREE_SYMBOL | SCHEDULE_SYMBOL | SCHEMA_NAME_SYMBOL | SECOND_SYMBOL | SERIAL_SYMBOL | SERIALIZABLE_SYMBOL | SESSION_SYMBOL | SIMPLE_SYMBOL | SHARE_SYMBOL | SHUTDOWN_SYMBOL | SLOW_SYMBOL | SNAPSHOT_SYMBOL | SOUNDS_SYMBOL | SOURCE_SYMBOL | SQL_AFTER_GTIDS_SYMBOL | SQL_AFTER_MTS_GAPS_SYMBOL | SQL_BEFORE_GTIDS_SYMBOL | SQL_CACHE_SYMBOL | SQL_BUFFER_RESULT_SYMBOL | SQL_NO_CACHE_SYMBOL | SQL_THREAD_SYMBOL | STARTS_SYMBOL | STATS_AUTO_RECALC_SYMBOL | STATS_PERSISTENT_SYMBOL | STATS_SAMPLE_PAGES_SYMBOL | STATUS_SYMBOL | STORAGE_SYMBOL | STRING_SYMBOL | SUBCLASS_ORIGIN_SYMBOL | SUBDATE_SYMBOL | SUBJECT_SYMBOL | SUBPARTITION_SYMBOL | SUBPARTITIONS_SYMBOL | SUPER_SYMBOL | SUSPEND_SYMBOL | SWAPS_SYMBOL | SWITCHES_SYMBOL | TABLE_NAME_SYMBOL | TABLES_SYMBOL | TABLE_CHECKSUM_SYMBOL | TABLESPACE_SYMBOL | TEMPORARY_SYMBOL | TEMPTABLE_SYMBOL | TEXT_SYMBOL | THAN_SYMBOL | TRANSACTION_SYMBOL | TRIGGERS_SYMBOL | TIMESTAMP_SYMBOL | TIMESTAMP_ADD_SYMBOL | TIMESTAMP_DIFF_SYMBOL | TIME_SYMBOL | TYPES_SYMBOL | TYPE_SYMBOL | UDF_RETURNS_SYMBOL | FUNCTION_SYMBOL | UNCOMMITTED_SYMBOL | UNDEFINED_SYMBOL | UNDO_BUFFER_SIZE_SYMBOL | UNDOFILE_SYMBOL | UNKNOWN_SYMBOL | UNTIL_SYMBOL | USER_RESOURCES_SYMBOL | USER_SYMBOL | USE_FRM_SYMBOL | VARIABLES_SYMBOL | VIEW_SYMBOL | VALUE_SYMBOL | WARNINGS_SYMBOL | WAIT_SYMBOL | WEEK_SYMBOL | WORK_SYMBOL | WEIGHT_STRING_SYMBOL | X509_SYMBOL | XML_SYMBOL | YEAR_SYMBOL | INNODB_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set3003=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( ((LA(1) >= ACTION_SYMBOL) && (LA(1) <= ADDDATE_SYMBOL)) || ((LA(1) >= AFTER_SYMBOL) && (LA(1) <= ALGORITHM_SYMBOL)) || LA(1) == ANALYZE_SYMBOL || LA(1) == ANY_SYMBOL || ((LA(1) >= AT_SYMBOL) && (LA(1) <= AVG_SYMBOL)) || LA(1) == BINLOG_SYMBOL || LA(1) == BIT_SYMBOL || ((LA(1) >= BLOCK_SYMBOL) && (LA(1) <= BOOL_SYMBOL)) || LA(1) == BTREE_SYMBOL || LA(1) == CASCADED_SYMBOL || ((LA(1) >= CATALOG_NAME_SYMBOL) && (LA(1) <= CHANGED_SYMBOL)) || ((LA(1) >= CIPHER_SYMBOL) && (LA(1) <= CLIENT_SYMBOL)) || ((LA(1) >= COALESCE_SYMBOL) && (LA(1) <= CODE_SYMBOL)) || LA(1) == COLLATION_SYMBOL || ((LA(1) >= COLUMNS_SYMBOL) && (LA(1) <= COLUMN_NAME_SYMBOL)) || LA(1) == COMMITTED_SYMBOL || ((LA(1) >= COMPACT_SYMBOL) && (LA(1) <= COMPRESSED_SYMBOL)) || LA(1) == CONCURRENT_SYMBOL || ((LA(1) >= CONNECTION_SYMBOL) && (LA(1) <= CONSTRAINT_SCHEMA_SYMBOL)) || LA(1) == CONTEXT_SYMBOL || LA(1) == CONTRIBUTORS_SYMBOL || LA(1) == CPU_SYMBOL || LA(1) == CUBE_SYMBOL || LA(1) == CURRENT_SYMBOL || LA(1) == CURSOR_NAME_SYMBOL || ((LA(1) >= DATAFILE_SYMBOL) && (LA(1) <= DATETIME_SYMBOL)) || LA(1) == DATE_SYMBOL || LA(1) == DAY_SYMBOL || LA(1) == DEFAULT_AUTH_SYMBOL || LA(1) == DEFINER_SYMBOL || LA(1) == DELAY_KEY_WRITE_SYMBOL || LA(1) == DES_KEY_FILE_SYMBOL || LA(1) == DIAGNOSTICS_SYMBOL || ((LA(1) >= DIRECTORY_SYMBOL) && (LA(1) <= DISK_SYMBOL)) || ((LA(1) >= DUMPFILE_SYMBOL) && (LA(1) <= DYNAMIC_SYMBOL)) || LA(1) == ENABLE_SYMBOL || LA(1) == ENDS_SYMBOL || ((LA(1) >= ENGINES_SYMBOL) && (LA(1) <= ENUM_SYMBOL)) || ((LA(1) >= ERRORS_SYMBOL) && (LA(1) <= ERROR_SYMBOL)) || ((LA(1) >= ESCAPE_SYMBOL) && (LA(1) <= EVERY_SYMBOL)) || LA(1) == EXPANSION_SYMBOL || LA(1) == EXPORT_SYMBOL || ((LA(1) >= EXTENDED_SYMBOL) && (LA(1) <= EXTENT_SIZE_SYMBOL)) || ((LA(1) >= FAST_SYMBOL) && (LA(1) <= FAULTS_SYMBOL)) || ((LA(1) >= FILE_SYMBOL) && (LA(1) <= FIXED_SYMBOL)) || LA(1) == FOUND_SYMBOL || LA(1) == FULL_SYMBOL || ((LA(1) >= FUNCTION_SYMBOL) && (LA(1) <= GET_FORMAT_SYMBOL)) || ((LA(1) >= GLOBAL_SYMBOL) && (LA(1) <= GRANTS_SYMBOL)) || LA(1) == HASH_SYMBOL || LA(1) == HOSTS_SYMBOL || ((LA(1) >= HOUR_SYMBOL) && (LA(1) <= IDENTIFIED_SYMBOL)) || LA(1) == IGNORE_SERVER_IDS_SYMBOL || ((LA(1) >= IMPORT_SYMBOL) && (LA(1) <= INDEXES_SYMBOL)) || LA(1) == INITIAL_SIZE_SYMBOL || LA(1) == INNODB_SYMBOL || LA(1) == INSERT_METHOD_SYMBOL || LA(1) == INVOKER_SYMBOL || LA(1) == IO_SYMBOL || ((LA(1) >= IPC_SYMBOL) && (LA(1) <= ISSUER_SYMBOL)) || LA(1) == KEY_BLOCK_SIZE_SYMBOL || LA(1) == LAST_SYMBOL || LA(1) == LEAVES_SYMBOL || LA(1) == LESS_SYMBOL || LA(1) == LEVEL_SYMBOL || LA(1) == LINESTRING_SYMBOL || LA(1) == LIST_SYMBOL || LA(1) == LOCAL_SYMBOL || LA(1) == LOCKS_SYMBOL || LA(1) == LOGFILE_SYMBOL || LA(1) == LOGS_SYMBOL || LA(1) == MASTER_AUTO_POSITION_SYMBOL || ((LA(1) >= MASTER_CONNECT_RETRY_SYMBOL) && (LA(1) <= MASTER_SSL_SYMBOL)) || ((LA(1) >= MASTER_SYMBOL) && (LA(1) <= MASTER_USER_SYMBOL)) || ((LA(1) >= MAX_CONNECTIONS_PER_HOUR_SYMBOL) && (LA(1) <= MAX_SIZE_SYMBOL)) || ((LA(1) >= MAX_UPDATES_PER_HOUR_SYMBOL) && (LA(1) <= MAX_USER_CONNECTIONS_SYMBOL)) || ((LA(1) >= MEDIUM_SYMBOL) && (LA(1) <= MICROSECOND_SYMBOL)) || LA(1) == MIGRATE_SYMBOL || ((LA(1) >= MINUTE_SYMBOL) && (LA(1) <= MIN_ROWS_SYMBOL)) || LA(1) == MODE_SYMBOL || LA(1) == MODIFY_SYMBOL || ((LA(1) >= MONTH_SYMBOL) && (LA(1) <= MULTILINESTRING_SYMBOL)) || ((LA(1) >= MULTIPOINT_SYMBOL) && (LA(1) <= MULTIPOLYGON_SYMBOL)) || ((LA(1) >= MUTEX_SYMBOL) && (LA(1) <= NATIONAL_SYMBOL)) || LA(1) == NCHAR_SYMBOL || LA(1) == NDBCLUSTER_SYMBOL || ((LA(1) >= NEW_SYMBOL) && (LA(1) <= NONE_SYMBOL)) || LA(1) == NO_WAIT_SYMBOL || LA(1) == NUMBER_SYMBOL || LA(1) == NVARCHAR_SYMBOL || ((LA(1) >= OFFSET_SYMBOL) && (LA(1) <= ONE_SYMBOL)) || ((LA(1) >= PACK_KEYS_SYMBOL) && (LA(1) <= PAGE_SYMBOL)) || ((LA(1) >= PARTIAL_SYMBOL) && (LA(1) <= PARTITIONS_SYMBOL)) || ((LA(1) >= PASSWORD_SYMBOL) && (LA(1) <= PLUGIN_SYMBOL)) || ((LA(1) >= POINT_SYMBOL) && (LA(1) <= POLYGON_SYMBOL)) || ((LA(1) >= PRESERVE_SYMBOL) && (LA(1) <= PREV_SYMBOL)) || LA(1) == PRIVILEGES_SYMBOL || ((LA(1) >= PROCESSLIST_SYMBOL) && (LA(1) <= PROXY_SYMBOL)) || ((LA(1) >= QUARTER_SYMBOL) && (LA(1) <= QUICK_SYMBOL)) || LA(1) == READ_ONLY_SYMBOL || ((LA(1) >= REBUILD_SYMBOL) && (LA(1) <= REDUNDANT_SYMBOL)) || ((LA(1) >= RELAYLOG_SYMBOL) && (LA(1) <= RELAY_THREAD_SYMBOL)) || LA(1) == RELOAD_SYMBOL || LA(1) == REORGANIZE_SYMBOL || LA(1) == REPEATABLE_SYMBOL || LA(1) == REPLICATION_SYMBOL || ((LA(1) >= RESUME_SYMBOL) && (LA(1) <= RETURNS_SYMBOL)) || LA(1) == REVERSE_SYMBOL || ((LA(1) >= ROLLUP_SYMBOL) && (LA(1) <= RTREE_SYMBOL)) || LA(1) == SCHEDULE_SYMBOL || LA(1) == SCHEMA_NAME_SYMBOL || LA(1) == SECOND_SYMBOL || ((LA(1) >= SERIALIZABLE_SYMBOL) && (LA(1) <= SERIAL_SYMBOL)) || LA(1) == SESSION_SYMBOL || LA(1) == SHARE_SYMBOL || LA(1) == SHUTDOWN_SYMBOL || LA(1) == SIMPLE_SYMBOL || LA(1) == SLOW_SYMBOL || LA(1) == SNAPSHOT_SYMBOL || ((LA(1) >= SOUNDS_SYMBOL) && (LA(1) <= SOURCE_SYMBOL)) || ((LA(1) >= SQL_AFTER_GTIDS_SYMBOL) && (LA(1) <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA(1) >= SQL_BUFFER_RESULT_SYMBOL) && (LA(1) <= SQL_CACHE_SYMBOL)) || LA(1) == SQL_NO_CACHE_SYMBOL || LA(1) == SQL_THREAD_SYMBOL || LA(1) == STARTS_SYMBOL || ((LA(1) >= STATS_AUTO_RECALC_SYMBOL) && (LA(1) <= STATUS_SYMBOL)) || LA(1) == STORAGE_SYMBOL || ((LA(1) >= STRING_SYMBOL) && (LA(1) <= SUBPARTITION_SYMBOL)) || ((LA(1) >= SUPER_SYMBOL) && (LA(1) <= SWITCHES_SYMBOL)) || ((LA(1) >= TABLESPACE_SYMBOL) && (LA(1) <= TABLE_NAME_SYMBOL)) || ((LA(1) >= TEMPORARY_SYMBOL) && (LA(1) <= TEMPTABLE_SYMBOL)) || ((LA(1) >= TEXT_SYMBOL) && (LA(1) <= THAN_SYMBOL)) || ((LA(1) >= TIMESTAMP_ADD_SYMBOL) && (LA(1) <= TIME_SYMBOL)) || ((LA(1) >= TRANSACTION_SYMBOL) && (LA(1) <= TRIGGERS_SYMBOL)) || ((LA(1) >= TYPES_SYMBOL) && (LA(1) <= UDF_RETURNS_SYMBOL)) || ((LA(1) >= UNCOMMITTED_SYMBOL) && (LA(1) <= UNDEFINED_SYMBOL)) || ((LA(1) >= UNDOFILE_SYMBOL) && (LA(1) <= UNDO_BUFFER_SIZE_SYMBOL)) || LA(1) == UNKNOWN_SYMBOL || LA(1) == UNTIL_SYMBOL || ((LA(1) >= USER_RESOURCES_SYMBOL) && (LA(1) <= USE_FRM_SYMBOL)) || LA(1) == VALUE_SYMBOL || LA(1) == VARIABLES_SYMBOL || ((LA(1) >= VIEW_SYMBOL) && (LA(1) <= WEIGHT_STRING_SYMBOL)) || LA(1) == WORK_SYMBOL || LA(1) == X509_SYMBOL || LA(1) == XML_SYMBOL || LA(1) == YEAR_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set3003))
                );
                PERRORRECOVERY=ANTLR3_FALSE;
                FAILEDFLAG=ANTLR3_FALSE;

            }
            else
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_MISMATCHED_SET_EXCEPTION;
                EXCEPTION->name         = (void *)ANTLR3_MISMATCHED_SET_NAME;
                EXCEPTION->expectingSet = NULL;

                goto rulekeyword_spEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto rulekeyword_spEx; /* Prevent compiler warnings */
    rulekeyword_spEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    {

        	retval.start->setType(retval.start, IDENTIFIER);

    }

    return retval;
}
/* $ANTLR end keyword_sp */

// $ANTLR start synpred1_MySQL
static void synpred1_MySQL_fragment(pMySQLParser ctx )
{
    // MySQL.g:804:2: ( qualified_identifier_with_wildcard )
    // MySQL.g:804:3: qualified_identifier_with_wildcard
    {
        FOLLOWPUSH(FOLLOW_qualified_identifier_with_wildcard_in_synpred1_MySQL4122);
        qualified_identifier_with_wildcard(ctx);

        FOLLOWPOP();
        if  (HASEXCEPTION())
        {
            goto rulesynpred1_MySQLEx;
        }
        if (HASFAILED())
        {
            return ;
        }


    }

// This is where rules clean up and exit
//
goto rulesynpred1_MySQLEx; /* Prevent compiler warnings */
rulesynpred1_MySQLEx: ;

}
// $ANTLR end synpred1_MySQL

// $ANTLR start synpred2_MySQL
static void synpred2_MySQL_fragment(pMySQLParser ctx )
{
    // MySQL.g:1593:4: ( OPEN_PAR_SYMBOL expression COMMA_SYMBOL )
    // MySQL.g:1593:5: OPEN_PAR_SYMBOL expression COMMA_SYMBOL
    {
         MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_synpred2_MySQL8991);
        if  (HASEXCEPTION())
        {
            goto rulesynpred2_MySQLEx;
        }
        if (HASFAILED())
        {
            return ;
        }


        FOLLOWPUSH(FOLLOW_expression_in_synpred2_MySQL8993);
        expression(ctx);

        FOLLOWPOP();
        if  (HASEXCEPTION())
        {
            goto rulesynpred2_MySQLEx;
        }
        if (HASFAILED())
        {
            return ;
        }


         MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_synpred2_MySQL8995);
        if  (HASEXCEPTION())
        {
            goto rulesynpred2_MySQLEx;
        }
        if (HASFAILED())
        {
            return ;
        }


    }

// This is where rules clean up and exit
//
goto rulesynpred2_MySQLEx; /* Prevent compiler warnings */
rulesynpred2_MySQLEx: ;

}
// $ANTLR end synpred2_MySQL

// $ANTLR start synpred3_MySQL
static void synpred3_MySQL_fragment(pMySQLParser ctx )
{
    // MySQL.g:1615:5: ( qualified_identifier OPEN_PAR_SYMBOL )
    // MySQL.g:1615:6: qualified_identifier OPEN_PAR_SYMBOL
    {
        FOLLOWPUSH(FOLLOW_qualified_identifier_in_synpred3_MySQL9125);
        qualified_identifier(ctx);

        FOLLOWPOP();
        if  (HASEXCEPTION())
        {
            goto rulesynpred3_MySQLEx;
        }
        if (HASFAILED())
        {
            return ;
        }


         MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_synpred3_MySQL9127);
        if  (HASEXCEPTION())
        {
            goto rulesynpred3_MySQLEx;
        }
        if (HASFAILED())
        {
            return ;
        }


    }

// This is where rules clean up and exit
//
goto rulesynpred3_MySQLEx; /* Prevent compiler warnings */
rulesynpred3_MySQLEx: ;

}
// $ANTLR end synpred3_MySQL
/* End of parsing rules
 * ==============================================
 */

/* ==============================================
 * Syntactic predicates
 */
static ANTLR3_BOOLEAN synpred3_MySQL(pMySQLParser ctx)
{
    ANTLR3_MARKER   start;
    ANTLR3_BOOLEAN  success;

    BACKTRACKING++;
    start	= MARK();
    synpred3_MySQL_fragment(ctx);	    // can never throw exception
    success	= !(FAILEDFLAG);
    REWIND(start);
    BACKTRACKING--;
    FAILEDFLAG	= ANTLR3_FALSE;
    return success;
}
static ANTLR3_BOOLEAN synpred2_MySQL(pMySQLParser ctx)
{
    ANTLR3_MARKER   start;
    ANTLR3_BOOLEAN  success;

    BACKTRACKING++;
    start	= MARK();
    synpred2_MySQL_fragment(ctx);	    // can never throw exception
    success	= !(FAILEDFLAG);
    REWIND(start);
    BACKTRACKING--;
    FAILEDFLAG	= ANTLR3_FALSE;
    return success;
}
static ANTLR3_BOOLEAN synpred1_MySQL(pMySQLParser ctx)
{
    ANTLR3_MARKER   start;
    ANTLR3_BOOLEAN  success;

    BACKTRACKING++;
    start	= MARK();
    synpred1_MySQL_fragment(ctx);	    // can never throw exception
    success	= !(FAILEDFLAG);
    REWIND(start);
    BACKTRACKING--;
    FAILEDFLAG	= ANTLR3_FALSE;
    return success;
}

/* End of syntactic predicates
 * ==============================================
 */






/* End of code
 * =============================================================================
 */
